什么是git泄露? 当前大量开发人员使用git进行版本控制,对站点自动部署.如果配置不当,可能会将.git文件夹直接部署到线上环境.这就引起了git泄露漏洞. 打开靶机环境 查看网页内容 使用dirsearch进行扫描 python3 dirsearch.py -u <url> -e * 使用githack工具处理git泄露情况 python2 GitHack.py <url>(url格式:http(s)://XXX/.git/) 查看还原的信息 使用git log查看历史记录 当…
打开靶机 查看页面信息 使用dirsearch进行扫描 使用githack工具处理git泄露情况 使用git log命令查看历史记录 与 add flag 9b5b58-- 这次提交进行比对 即可拿到flag 方法二 使用git checkout命令查询输出文件 输入234261473210834.txt文件 文件内即为flag 命令解释 创建新分支:git branch branchName 切换到新分支:git checkout branchName 然后,上面两个命令也可以合成为一个命令:…
打开靶机环境 查看页面内容 使用dirsearch进行扫描 使用Githack工具处理git泄露情况 进入.git/refs目录 发现stash文件,使用notepad++打开文件 使用git diff 45c25c20bc571504e02c228f5536d0f2aa42849f命令进行比对 即可拿到flag 其他方法,来自官方write up(此方法未成功) 使用git stash list查看 执行 git stash pop 发现从 git 栈中弹出来一个文件,这个文件的内容就是 fl…
打开靶机 查看页面信息 使用dvcs-ripper工具进行处理 ./rip-hg.pl -v -u http://challenge-cf630b528f6f25e2.sandbox.ctfhub.com:10080/.hg/ 执行过程中发现有大量文件未成功拿到,查看已拿到文件信息 进入store/目录,查看fncache文件信息 在之前使用dvcs-ripper工具进行处理时,也出现了文件目录信息 可以看到flag文件名和存放位置,进入data/目录,查看文件信息 没有发现flag文件,根据页…
打开靶机 查看页面信息 使用dvcs-ripper工具进行处理 ./rip-svn.pl -v -u http://challenge-3b6d43d72718eefb.sandbox.ctfhub.com:10080/.svn/ 进入.svn/pristine/目录,查看文件信息 查看具体内容 成功拿到flag…
打开靶机 查看页面信息 在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容 以 index.php 为例:第一次产生的交换文件名为 .index.php.swp 再次意外退出后,将会产生名为 .index.php.swo 的交换文件 第三次产生的交换文件则为 .index.php.swn 访问该页面 下载完成后传入Linux中,使用vim编辑器打开 从window中传入Linux中需要更改文件名 文件名为…
打开靶机 查看页面信息 继续使用dirsearch进行扫描 python3 dirsearch.py -u http://challenge-d4234042e1d43e96.sandbox.ctfhub.com:10080/ -e * 找到了需要的文件,浏览器访问 下载完成后打开 拿到flag…
打开靶机 查看页面信息 使用dirsearch进行扫描 访问该网页,下载文件 使用Linux系统打开文件 发现一个特殊文件,使用浏览器打开 拿到flag 二.使用Python-dsstore工具查看该文件 下载地址 https://github.com/gehaxelt/Python-dsstore 使用软件处理该文件 使用浏览器查看该文件 成功拿到flag .DS_Store是什么? .DS_Store 文件利用 .DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件.通过.D…
打开靶机 查看网页内容 使用dirsearch进行扫描 命令如下 python3 dirsearch.py -u http://challenge-91f1f5e6a791ab02.sandbox.ctfhub.com:10080/ -e * 找到目标路径 访问如下地址,即可下载网站源码 http://challenge-91f1f5e6a791ab02.sandbox.ctfhub.com:10080/www.zip 下载完成后打开 发现名为flag_48739440.txt的文本文件 查看内…
打开靶机 查看页面 点击后发现几个目录 于是开始查找 在2/1目录下发现flag.txt 成功拿到flag 练习一下最近学习的requests库 附上源码 #! /usr/bin/env python # _*_ coding:utf-8 _*_ import requests url = "http://challenge-a2aa3d58b775fdfd.sandbox.ctfhub.com:10080/flag_in_here" for i in range(5): for j…
打开靶机 查看页面,是PHP info界面 只有这一个页面,查找一下有没有flag 拿到flag 浅谈ctf中phpinfo需要关注的点(转自先知社区) 1 https://xz.aliyun.com/t/6131 首先我们先谈谈 php各个版本的的差异 php5.2以前 __autoload()加载类文件,但只能调用一次这个函数,所以可以用spl_autoload_register()加载类 关于 autoload()函数,如果定义了该函数,该代码就会被调用 关于spl_autoload_re…
Git泄露 Log 首先介绍下.git:Git泄露:当前大量开发人员使用git进行版本控制,对站点自动部署.如果配置不当,可能会将.git文件夹直接部署到线上环境.这就引起了git泄露漏洞. 首先使用disarch工具扫描url,发现存在敏感文件git 命令格式: 工具介绍: GitHack:.git泄露利用工具,可还原历史版本 接下来使用GitHack进行文件恢复这里要注意需要在uri后面加.git 我们进入第一个文件夹 然后用git log查看历史记录 我们把文件恢复成add flag那个版…
扫描目录,发现.git泄露: 提取.git泄露的源码,得到许多文件: 网站这里: 这就要审计一下代码,找找漏洞了. 经过一番审计,猜数字对应的函数在api.php中: 我们要绕过这个$win_numbers,$win_numbers我们是无法控制的,毕竟函数在人家服务器上运行,我们只能输入数字,那么就只能在输入上做文章了,89行判断相等的数字个数时,用的是==,这不就是个弱类型漏洞吗,bool类型的true是可以和任何数据弱类型相等的,于是输入,抓包改包来刷钱: 刷钱就是爽...钱够之后去买fl…
最近在读一本技术类的书:朱赟——<跃迁:从技术到管理的硅谷路径>,其中聊了很多很有趣的观点,比如:技术管理.技术实践.硅谷文化.个人成长等. 读到关于硅谷人如何做code review这一篇时,不由想到了前段时间看过的一篇博客:如何写好Git commit log. 之前的工作用Git做版本管理工具,因此每次提交改动时都会写注释,其中也踩了一些坑,现在回想起来还是觉得很有收获. 这篇博客,聊聊我个人关于code review和Git commit的一些认知和资料总结,仅供参考... 参考资料:…
原文:https://www.jianshu.com/p/513ab6915dbd 在基于Jenkins进行CI持续集成的工作,在构建后上传蒲公英时想将本次版本的git commit信息同步到蒲公英的下载页面.Jenkins每次构建都会根据Git 的提交记录生成一个Web页面来显示自上次构建之后的提交记录列表(如图1),但是Jenkins却并没有提供可以获取这个Strings的功能.   1.Maven安装 下载地址:https://maven.apache.org/download.cgi(如…
彩蛋题建议大家首先自己动手去找一找 做 好 准 备 后 再 看 下 文 !           1.首页 使用域名查询工具查询子域名 2.公众号 此题关注ctfhub公众号即可拿到,不过多赘述. 3.题目入口 随便开启一个题目,抓包 在url中间添加换行或空格,再放包,即可拿到flag 4.Writeup 在Writeup里搜索egg即可拿到flag 5.工具 在工具里搜索egg,即可拿到flag flag就在链接里 6.赛事 一个套路 7.真题 8.投稿提交 这道题比较有意思,flag分别在不…
感谢原文作者:杨鲜生 原文链接:https://blog.csdn.net/u013252047/article/details/80230781 用git命令,想看到自己的操作记录,则可以使用log与reflog,它两个的区别如下: 1.git log 命令可以显示所有提交过的版本信息 例如 如果感觉太繁琐,可以加上参数 --pretty=oneline,只会显示版本号和提交时的备注信息 2. git reflog 可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 res…
本地git库中,查找其连接的远端服务器信息: 每个git库都会有一个配置信息文件.git/config. cat .git/config,可以看到信息如下: [core]         repositoryformatversion = 0         filemode = true         bare = false         logallrefupdates = true [remote "origin"]         url = git@repo.XXX.c…
解决git提交敏感信息(回退git版本库到某一个commit) Fri 07 June 2013 git是一个很好的版本库, 现在很多人用它, 并在github上创建项目, 相信大家都有过将敏感信息提交版本的经历, 如何删除? 好像只有删除版本库来解决, 其实我们可以通过回退版本库删除相应的commit来将提交的敏感信息去掉. 备份本地代码 首先我们将本地代码的更改备份一下, 以防丢失更改 回退本地代码的commit 备份完数据, 我们就可以先回退本地的版本库 git reset --hard…
rm -rf .git/gc.log ➜ test git:(abc) gp Auto packing the repository in background for optimum performance. See "git help gc" for manual housekeeping. warning: The last gc run reported the following. Please correct the root cause and remove .git/g…
Vim缓存 进入环境由于不懂得vim是什么借鉴大佬的博客 网页提示flag在index.php中我们按着这个思路去找 将文件保存下来因为是swp文件我们用kail进行打开 使用vim -r index.php.swp我们即可得到flag Ds-Store 打开环境按照题目意思下载ds_store 保存文件 用cat查看一下 访问这个地址即可找到flag…
网站源码 进入环境,首先我们用bp抓一下包 在HTTP请求方式GET/后添加两个负载,一个用于爆破文件名,一个用于爆破后缀名 得知网页源码的备份形式为www.zip,下载网页源码 打开记事本文件 发现是这个东西 通过url访问即可得到flag Bak文件 打开环境我们查看源码发现备份文件为bak,并且得知flag在index.php里,尝试index.php.bak 将文件下载打开我们便得到了flag…
把lg配置成了:git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit" 输入git lg即可看到效果:…
留一下万一之后用得着呢 工作原理 1.解析.git/index文件,找到工程中所有的: ( 文件名,文件sha1 ) 2.去.git/objects/ 文件夹下下载对应的文件 3.zlib解压文件,按原始的目录结构写入源代码 python GitHack.py http://www.XXX.com/.git 脚本下载地址 https://github.com/lijiejie/GitHack…
一道ctf题,文章搬运到了自己的网站上: http://101.132.137.140:202/archives/2019-11-16…
1. 查找改动某个文件所有的日志 git log --pretty=oneline somefile.java git log --oneline somefile.java git log --pretty=format:"%h %an,%cd : %s" somefile.java 2. 格式化输出,git log --pretty=format:" " 选项 说明 %H 提交对象(commit)的完整哈希字串 %h 提交对象的简短哈希字串 %T 树对象(tre…
1新建一个存储git的文件夹,命令是: toto@toto-K45VD:~$ mkdir gitfolder 2初始化一个git仓库,命令是: toto@toto-K45VD:~$cd gitfolder/ toto@toto-K45VD:~/gitfolder$ls toto@toto-K45VD:~/gitfolder$git init 初始化空的 Git版本库于 /home/toto/gitfolder/.git/ 注意:如果是第一次使用git,还要对git对进行如下配置 git conf…
任务要求 统计指定时间内,指定git地址与svn地址上的所有人员的代码行变更情况. 解决方案 最初为根据数据库中存储的所有git与svn地址来统计所有人员的提交代码行.之后由于库中存储的地址不全,改为通过gitlab api,找到上面的所有仓库,之后统计代码行.svn由于数据库中地址存储较全,所以还是从库中获取地址. 实际流程 git代码行统计: 任意一个git的ip地址内会包含很多仓库地址,每次调用api最多只能查出100条地址,需要设置起始查询的页数. 所以先调用api查询出来一共有多少页(…
0. 回顾 [Git] 009 逆转未来 的 "1" 画张导图 其实 --oneline 前有个"关键字参数" "--pretty" --oneline 只是 --pretty 的一种格式 还有 "short"."full"."fuller"."format"."raw" 等 用法,如,git --pretty=short 1. 更新 [Git]…
碎碎念 CTFHub:https://www.ctfhub.com/ 笔者入门CTF时时刚开始刷的是bugku的旧平台,后来才有了CTFHub. 感觉不论是网页UI设计,还是题目质量,赛事跟踪,工具软件都做得很不错. 而且因为独到的金币制度的确让人有一种想去刷题赚金币的感觉. 个人还是非常喜欢这个平台的. 某天随便瞅瞅CTFHub的工具页面,一页页地翻下去看看有没有什么需要的黑科技. 翻到最后一页时候,突然发现了个egg!! 然后注意到技能树的彩蛋部分. wow不错不错,有意思!! 虽然都不是很…