全栈渗透

 人参与 | 时间:2026-10-17 06:51:30

拿到一台不出网的全栈渗透服务器,你手里只有一张网卡和一个浏览器。全栈渗透真正的全栈渗透全栈渗透,是全栈渗透从这台机器开始,往外一层层剥。全栈渗透

去年冬天一个项目,全栈渗透目标是全栈渗透一套内网办公系统。外网只开了一个443端口,全栈渗透跑着个老掉牙的全栈渗透Nginx。扫描结果出来,全栈渗透版本号明晃晃写着1.14.0。全栈渗透我盯着那个数字看了几秒——这玩意儿有已知的全栈渗透整数溢出漏洞,但利用条件苛刻,全栈渗透得配合特定模块。全栈渗透先放着。全栈渗透

真正有意思的是登录页。用户名框输入admin' or '1'='1,返回500。换成admin'--,页面卡了半秒,跳转到密码错误提示。后端在拼接SQL,但过滤了单引号。我试了试admin\,这次报错信息里带出了数据库类型——MySQL 5.7。

时间盲注。用sleep()函数逐字符猜库名。脚本跑了二十分钟,拿到office_db。表结构更简单,users表里躺着三十多条记录,密码是MD5。扔进hashcat,八位纯数字,三分钟出结果。admin的密码是19871023——生日。

登进后台,功能少得可怜。上传头像的接口没有校验文件类型,但上传目录不可执行。我传了个.htaccess试试,服务器返回403。行,这条路堵死。转头看数据库连接配置,文件里写着root:Root@123,但只允许localhost连接。鸡肋。

换个思路。后台有个“数据导出”功能,能把用户表导成CSV。抓包发现请求参数是table=users。改成table=../../../../etc/passwd,返回文件内容。任意文件读取。这下有意思了。

读/root/.ssh/id_rsa,权限不够。读/home/deploy/.bash_history,里面有一条ssh -i key.pem deploy@10.0.3.12。顺着找key.pem,在/home/deploy/backup/下。私钥到手,连内网机器。

10.0.3.12是台跳板机,上面挂着三个内网段。用fscan扫了一遍,10.0.5.0/24里有个Redis未授权。写SSH公钥进去,直接拿到root。这台机器连着数据库集群,/etc/hosts里列着所有节点。

最核心的账务系统在10.0.8.30。WebLogic,版本10.3.6。反序列化漏洞,weblogic.jar里那个XMLDecoder的洞。构造payload,反弹shell到跳板机。系统权限是weblogic,但/etc/sudoers里配了weblogic ALL=(ALL) NOPASSWD: /usr/bin/tar。tar提权,两行命令的事。

从外网到核心账务,一共七个小时。没有0day,全是配置错误和弱口令。那个Nginx的整数溢出漏洞最后也没用上——没必要了。

渗透测试这行干久了会发现,大部分目标根本不需要多高深的技术。一个没删的测试账号,一个没改的默认密码,一个没关的调试接口,足够了。真正难的是耐心,是把几十个不起眼的细节串成一条链。就像那台跳板机上的.bash_history,谁会想到运维随手敲的一条命令,最后成了整条攻击路径的钥匙。

收工前我把所有痕迹清了一遍,日志里只留下几个正常的404。客户第二天反馈说“系统运行正常”。嗯,确实正常,只是我进去转了一圈又出来了。

顶: 14踩: 35954