打开靶机环境 查看页面内容 使用dirsearch进行扫描 使用Githack工具处理git泄露情况 进入.git/refs目录 发现stash文件,使用notepad++打开文件 使用git diff 45c25c20bc571504e02c228f5536d0f2aa42849f命令进行比对 即可拿到flag 其他方法,来自官方write up(此方法未成功) 使用git stash list查看 执行 git stash pop 发现从 git 栈中弹出来一个文件,这个文件的内容就是 fl…
打开靶机 查看页面信息 使用dirsearch进行扫描 使用githack工具处理git泄露情况 使用git log命令查看历史记录 与 add flag 9b5b58-- 这次提交进行比对 即可拿到flag 方法二 使用git checkout命令查询输出文件 输入234261473210834.txt文件 文件内即为flag 命令解释 创建新分支:git branch branchName 切换到新分支:git checkout branchName 然后,上面两个命令也可以合成为一个命令:…
什么是git泄露? 当前大量开发人员使用git进行版本控制,对站点自动部署.如果配置不当,可能会将.git文件夹直接部署到线上环境.这就引起了git泄露漏洞. 打开靶机环境 查看网页内容 使用dirsearch进行扫描 python3 dirsearch.py -u <url> -e * 使用githack工具处理git泄露情况 python2 GitHack.py <url>(url格式:http(s)://XXX/.git/) 查看还原的信息 使用git log查看历史记录 当…
打开靶机 查看页面信息 使用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…
add 添加新文件到 Git 代码仓库的索引中 $ git add filename mv 移动或重命名文件 $ git mv old-filename new-filename rm 从工作目录和 Git 代码索引中删除文件 $ git rm filename status 查看目前工作目录的代码状态,自上次提交以来的添加.修改和删除等 $ git status diff 查看自上次提交以来,本地代码改动的具体情况 $ git diff commit 提交修改的代码(只是提交到本地的代码库,不…
彩蛋题建议大家首先自己动手去找一找 做 好 准 备 后 再 看 下 文 !           1.首页 使用域名查询工具查询子域名 2.公众号 此题关注ctfhub公众号即可拿到,不过多赘述. 3.题目入口 随便开启一个题目,抓包 在url中间添加换行或空格,再放包,即可拿到flag 4.Writeup 在Writeup里搜索egg即可拿到flag 5.工具 在工具里搜索egg,即可拿到flag flag就在链接里 6.赛事 一个套路 7.真题 8.投稿提交 这道题比较有意思,flag分别在不…
本地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…
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…
留一下万一之后用得着呢 工作原理 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…
碎碎念 CTFHub:https://www.ctfhub.com/ 笔者入门CTF时时刚开始刷的是bugku的旧平台,后来才有了CTFHub. 感觉不论是网页UI设计,还是题目质量,赛事跟踪,工具软件都做得很不错. 而且因为独到的金币制度的确让人有一种想去刷题赚金币的感觉. 个人还是非常喜欢这个平台的. 某天随便瞅瞅CTFHub的工具页面,一页页地翻下去看看有没有什么需要的黑科技. 翻到最后一页时候,突然发现了个egg!! 然后注意到技能树的彩蛋部分. wow不错不错,有意思!! 虽然都不是很…
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 stash  将当前修改存储起来 git stash apply 恢复最近一次存储 git stash apply stash@{2} 恢复某一次存储 git stash list 查看存储列表 git stash clear 清除所有存储 git stash drop stash@{2} 删除某一次存储…
0. 我准备模拟两种情况 第一种 第二种 情况简析 仓库中的最新版本发现 Bug,需要立即修复 当前在 "dev" 分支中工作到一定程度,尚不能提交,但删之可惜 ps: 在分支中没有提交就切其他分支,改动部分会被覆盖 下面是 "Git" 的温馨提示 error: Your local changes to the following files would be overwritten by checkout: ... Please commit your chan…
一.branch(分支) 1.创建分支 git branch dev 2.切换分支 git branch dev 3.合并分支 git merge bug 4.查看分支 git branch 5.删除分支 git branch -d bug 应用场景: 线上项目在master分支,正在开发的模块在dev分支 修改bug在bug分支上,修改完bug后,回到master分支,并和修改后的bug分支合并,删除bug分支, 切换到dev分支继续开发,开发完成后,切换master分支,合并 二.stash…
手注 查询数据库 -1/**/union/**/select/**/database(),2 查询表名 -1/**/union/**/select/**/group_concat(table_name),2/**/from/**/information_schema.tables/**/where/**/table_schema='sqli' 查询字段名 -1/**/union/**/select/**/group_concat(column_name),2/**/from/**/informa…
手注 查询数据库名 查询数据表名 查询字段名 查询字段信息 脚本(from 阿狸) #! /usr/bin/env python # _*_ coding:utf-8 _*_ url = "http://challenge-c58db5e5b714ee25.sandbox.ctfhub.com:10080/" import requests def postPL(pl = '', mask=['</code></br>ID: 1</br>','<…
手注 打开靶机 查看页面信息 抓取数据包 根据提示注入点在User-Agent文件头中 开始尝试注入 成功查到数据库名 查询数据表名 查询字段名 查询字段信息 成功拿到flag 盲注 测试是否存在时间盲注 测试成功,开始盲注 查询数据库名 查询数据表名 查询字段名 查询字段信息 成功拿到flag 附上脚本 #! /usr/bin/env python # _*_ coding:utf-8 _*_ import requests import sys import time session=req…
手注 打开靶机 查看页面信息 查找cookie 测试是否为cookie注入 抓包 尝试注入 成功查询到数据库名 查询表名 查询字段名 查询字段信息 成功拿到flag sqlmap 查询数据库名 python2 sqlmap.py -u "http://challenge-e27e712ceeb91bac.sandbox.ctfhub.com:10080/" --cookie "id=1" --level 2 --dbs 查询数据表名 python2 sqlmap.p…