游客发表

kali渗透 sqlmap实操靶场

发帖时间:2026-10-17 04:42:18

靶机就摆在面前,渗透实操一台开了80端口的靶场Linux服务器。我敲下那条命令的渗透实操时候,心里其实没底——sqlmap -u "http://192.168.1.105/product.php?靶场id=1" --batch。结果它秒回一个“Parameter 'id' is 渗透实操vulnerable”。好家伙,靶场连指纹都没多问,渗透实操直接告诉我后端是靶场MySQL 5.7,还附带一个DBA权限。渗透实操

这玩意儿最狠的靶场地方在于,它不跟你玩虚的渗透实操。你给它一个带参数的靶场URL,它自己会去探测注入点类型、渗透实操数据库版本、靶场当前用户权限,渗透实操甚至能把整个库的表结构给你排出来。我第一次跑`--dbs`的时候,屏幕上刷刷刷列出五六个库名,那种感觉就像拿到了一把万能钥匙,但门后面是什么,得你自己推开门看。

光列出库名没用,得拿数据。`sqlmap -u "http://.../product.php?id=1" -D dvwa -T users --dump`,这条命令直接把users表的所有字段和记录倒出来了。密码是MD5加密的,但旁边就跟着明文用户名,admin、admin、password123,跟闹着玩似的。我盯着屏幕上那几行数据,心想这网站管理员心真大,连个防注入的参数过滤都没做。

不过实操里最让我意外的不是sqlmap本身,而是它跟Burp Suite配合时的效率。手动测注入点太慢了,你得一个个试单引号、布尔条件、时间延迟。但把Burp抓的HTTP包存成文件,丢给sqlmap跑`-r request.txt`,它能把Cookie、POST参数、请求头全带上,连登录态都不用重新弄。有一次我拿一个带XSS过滤的站点测,sqlmap自动切换了注入技术,从布尔盲注跳到时间盲注,最后用报错注入把数据带出来。这种自适应能力,比自己写脚本快一个量级。

但别以为sqlmap是万能的。有一次我碰上一个WAF,它拦截了所有包含“union select”的请求。sqlmap直接卡住,报错说“possible WAF detected”。这时候你得手动改tamper脚本,比如用`--tamper=space2comment`把空格替换成注释符,或者用`between`操作符绕过关键字过滤。折腾了半小时,才把一个简单的布尔注入点跑通。那会儿我才明白,工具再强,不懂底层原理就是抓瞎。

靶场里还有个细节值得说。跑`--os-shell`的时候,sqlmap会尝试通过堆叠注入写文件到服务器,然后反弹一个交互式shell。我第一次操作时没注意目录权限,写进去的PHP一句话木马直接被拒了。后来用`--web-root`指定可写目录,再配合`--os-cmd`执行系统命令,才拿到真正的shell。整个过程像拆积木,每一步都得看服务器脸色。

说到底,sqlmap就是个放大镜,把你手工测试时那些模糊的感觉变成精确的反馈。但放大镜本身不会告诉你哪里该看,判断注入点、评估风险、决定是否深入,永远得靠人脑。靶场里跑通了,真遇上生产环境,你照样得先问自己一句:这数据我该不该拿?

    热门排行

    友情链接