webug靶场3.0(渗透基础)
webug靶场3.0(渗透基础)
第一题:普通的GET注入
题目类型:SQL注入
使用工具:OWASP Mantra点击打开链接(hackbar),sqlmap
手工注入过程如下:
- 在“id=1”后面键入单引号根据错误信息判断此参数存在注入点并可判断出后台数据库为MySQL,错误信息如下:
- 为了进行Union查询首先需要使用“order by”关键字判断字段数,判断过程中可以使用二分。
- 通过上述判断有四个字段,接下来通过database()函数确定当前表所在的数据库。
- 确定当前数据库名称后,查看当前数据库存在那些表。
- 通过上述查询发现当前数据库下存在flag表,接下来查看flag表中有那些字段。
- 通过查看发现flag表中存在id,flag两个字段,接下来查看字段值。
- 最终得到flag
###使用sqlmap进行注入过程如下: - 首先在终端敲入以下命令获取当前数据库名称: sqlmap -u http://192.168.6.128/pentest/test/sqli/sqltamp.php?gid=1 -p gid --current-db
- 其次在终端敲入以下命令获取当前数据库中表格:sqlmap -u http://192.168.6.128/pentest/test/sqli/sqltamp.php?gid=1 -p gid -D pentesterlab --tables
- 最终在终端桥如一下命令获得flag表单中的信息:sqlmap -u http://192.168.6.128/pentest/test/sqli/sqltamp.php?gid=1 -p gid -D pentesterlab -T flag --dump
第二题:从图片中获得有用的信息
题目类型:数据隐藏,文件分析
使用工具:binwalk,vi
使用binwalk过程如下
- 首先将图片保存到本地,然后在图片目录下打开终端并敲入:binwalk 123.jpg
- 通过上述命令可以发现图片中隐藏了一个压缩包文件,敲入以下进行提取:binwalk -e 123.jpg
- 打开文件夹发现里面存在一个txt文件,内容为"密码123"
使用vi过程如下
- 首先在图片路径下选择打开终端然后输入vi 123.jpg 你会看到如下信息:
- 为了更方便的查看文件内容可以输入:%!xxd
- 接下来寻找查看文件内容在倒数第六行发现**Rar!**这是RAR文件的文件头。
- 接下来敲入**%!xxd -r** 将文件变回原始格式并将文件头前的所有信息删除掉,到最后文件内容如下:
- 敲入wq保存并退出到最后,并将文件名又123.jpg改为123.rar,解压后得到123.txt。里面内容为”密码123“
第三题:目录遍历
题目类型:枚举
使用工具:dirbuster或手动
使用dirbuster
- 首先打开dirbuster,设置好字典及url如图所是:
- 点击start,然后查看扫描出来的目录结构如下图所示:
- /san目录下第一个目录有点奇怪,右键选择浏览器打开获得flag,如图所示:
###手动 - 直接访问‘san/'目录可以直接获得目录结构
- flag就在第二个文件夹里面
第四题:密码爆破
题目类型:枚举
使用工具:hydra,burpsuite
###使用hydra破解
- 首先尝试使用admin,12345登录会的到以下错误信息
- 将上述信息作为hydra登录是否成功的盘读那字段,并使用rockyou.txt作为字典,最终在终端敲入如下命令:hydra -f -l admin -P /usr/share/wordlists/rockyou.txt -vV -t 64 192.168.6.128 http-post-form ‘/pentest/test/b2e16da5985ee1be/login.php:username=USER&pwd=PASS:login failure’
- 经过多次尝试才爆破成功,hydra虽然是神器但是用过程中还是总会出现这样那样的问题
使用Burpsuit破解
- 将浏览器首先设置代理
- 将登录请求发送给intruder,并设置好position
- 设置好payload,然后点击attack,接下来就是等待了。
第五题:头部注入
题目类型:注入
使用工具:手动
- 打开firefox开发者工具,逐个给头部参数后面添加单引号发现没有返回数据库错误。
- 使用Modify Headers 插件给其添加新的头部参数并将值设置为单引号测试到X-Forwarded-For头部时出现下述错误。
- 为此可以判断此参数为注入点,接下来所使用payload和第一题相同。
- 最终的到flag,如下图所示:
第六题:支付问题
题目类型:逻辑错误
使用工具:手动
- 第六题进入后需要密码,拿第七题密码试试发现能够登录进去,接下来配置代理使用Burpsuite捕获请求如下:
- 将请求中的两本书的价格改成0元,然后将书的数量改成>1本,发送请求,如下:
第七题:越权
题目类型:逻辑错误
使用工具:手动
- 首先使用tom:123456登录,页面如下:
- 点击更改密码进入下面页面:
- 通过观察Url中存在name参数且值为tom试着改为admin然后填入旧密码(旧密码没有校验)和新密码,点击更改密码。
- 使用admin及修改后的密码尝试登录,结果登录失败。
- 使用代理查看修改是的请求数据,如下:
- 使用修改后的登录,登录成功。
第八题:CRSF
题目不完善,未做
第九题:URL跳转
题目类型:参数fuzz
使用工具:手动,burpsuite
- 使用第七关给的帐号密码重新登录,一直浏览下去发现还是修改密码的那个流程。
- 最终通过阅读源码发现index.php存在url参数,最终将url参数赋值为百度首页地址成功跳转。
- 正确的解题思路应该是寻找所有可能的输入点输入百度地址查看是否能跳转,如果不能则可以通过fuzz URL中的参数(将参数的值都设置为百度首页地址)来尝试是否可以跳转成功。
第十题:文件下载
题目类型:文件包含
使用工具:手动
- 点击链接,结果发现如下错误,无法进入题目
- 通过查看根目录或通过路径爆破可以确定,本页面目录结构如下:
- 通过目录发现存在download.php,尝试下载第一张照片发现如下错误,为此可以确定路径。
- 题目说通过提示下载文件,那就下载db/config.php吧,为此构造payload如下**…/…/…/pentest/test/6/1/db/config.php**即可下载:
- 打开下载的到的文件,文件内容如下:
第十一题:文件下载
题目类型:文件包含
使用工具:手动
- 本题和上一题一样都是利用文件包含下载敏感文件,只不过是本题将数据传送方式由GET改成了POST,为此可以通过代理修改参数从而下载文件。
第十二题:找回密码
题目类型:文件上传,文件包含
使用工具:中国菜刀
- 创建一句话木马,代码如下:
- 将木马上传,并获得存储路径。
- 菜刀连接,但是D盘并没有东西…
- 不是要密码吗?那就上神器mimikatz
- 使用菜刀打开虚拟终端运行mimikatz
- 通过菜刀查看password.txt文件内容
第十三题:XSS
题目类型:跨站脚本攻击
使用工具:手工
- 最基本的反射型XSS
第十四题:XSS
题目类型:跨站脚本攻击
使用工具:手工
- 最基本的存储型XSS
第十五题:上传图片
题目类型:过滤绕过
使用工具:手工
- 尝试上传图片,出现下面提示。
- 上传文件传先下述错误。
- 还真是事多:(,接下来就看一下上传请求吧
- 通过上面请求看其看出filename中后缀名,Content-Type,以及照片的头不特征码这几部分最容易成为过滤的对象。接下来就一个个试,首先修改filename中后缀名为**.php**,结果如下:
- 好吧,成功了:>。
第十六题:剁手者的天堂
题目类型:过滤绕过
使用工具:手工
- 想去知名网站剁手那肯定是去淘宝了,直接输入淘宝网址出现下述错误:
- 只允许访问10.10.10.10,好吧,那就先访问下它:
- Really?!!, 好吧,接下来看下访问请求,如下:
- 难道要改host?但是我记得host头部是用来区分同一域名下不同的虚拟主机或者同一IP下不同的域名虚拟机使用的啊。放弃了,看源码:
- 呃…,好吧,此题解题方法是把host改为10.10.10.10,Referer改为百度的地址。结果如下:
愿路途漫长,以后莫失莫忘。 愿你不骄不躁,安稳顺心。
作者:菜鸟-传奇
本文版权归作者和博客园共有,重在学习交流,不以任何盈利为目的,欢迎转载。
敲敲小黑板:《刑法》第二百八十五条 【非法侵入计算机信息系统罪;非法获取计算机信息系统数据、非法控制计算机信息系统罪】违反国家规定,侵入国家事务、国防建设、尖端科学技术领域的计算机信息系统的,处三年以下有期徒刑或者拘役。违反国家规定,侵入前款规定以外的计算机信息系统或者采用其他技术手段,获取该计算机信息系统中存储、处理或者传输的数据,或者对该计算机信息系统实施非法控制,情节严重的,处三年以下有期徒刑或者拘役,并处或者单处罚金;情节特别严重的,处三年以上七年以下有期徒刑,并处罚金。