渗透目录
作者:休闲 来源:热点 浏览: 【大 中 小】 发布时间:2026-10-17 06:09:03 评论数:
拿到一台Linux服务器,渗透目录第一件事不是渗透目录急着提权,而是渗透目录看清楚它到底长什么样。很多人上来就翻SUID、渗透目录找内核漏洞,渗透目录结果连对面跑了哪些服务、渗透目录谁是渗透目录管理员、有没有EDR都没摸清,渗透目录纯属瞎打。渗透目录渗透目录这件事,渗透目录说白了就是渗透目录给目标画一张地图,越细越好。渗透目录
我习惯从三个维度切进去:文件系统、渗透目录网络连接、渗透目录进程与服务。渗透目录这三块拼起来,基本能还原出这台机器在干什么、谁在用、以及它跟外界怎么联系。
文件系统:从根目录开始翻
先看/下面有什么。别只盯着/home和/root,真正有意思的东西经常藏在/opt、/srv、/var/www这些地方。有一次我碰到一台机器,/opt里放着一个自研的运维工具,配置文件里直接写了数据库密码,连加密都没做。这种就是典型的“运维方便自己,方便了攻击者”。
再看/etc。passwd和shadow不用多说,但别忽略/etc/crontab和/etc/cron.d/。定时任务里经常藏着以root身份跑的脚本,脚本本身可能可写,或者它调用的某个二进制文件可写。这就是提权的入口。还有/etc/fstab,看看有没有挂载了奇怪的目录,比如NFS共享或者U盘。
临时目录也别放过。/tmp、/var/tmp、/dev/shm,这些地方经常留着别人调试时的脚本、备份文件、甚至私钥。我见过有人在/tmp里放了一个.bash_history的副本,里面清清楚楚记录了他用mysql命令行连数据库的全过程,密码就在命令里。
网络连接:谁在跟谁说话
netstat -tulnp或者ss -tulnp,这两个命令能告诉你机器开了哪些端口、哪些进程在监听。但别只看LISTEN状态,ESTABLISHED的连接更有价值。一台Web服务器上如果有一条到内网数据库的ESTABLISHED连接,说明这台机器能访问内网,那它就是跳板。
还有arp -a,看看它最近跟哪些IP通过话。/etc/hosts和/etc/resolv.conf也能帮你判断这台机器在哪个网段、有没有内网DNS。有时候一台机器自己就是网关,那它的路由表ip route就是整个内网拓扑的缩影。
防火墙规则也得看。iptables -L -n或者firewall-cmd --list-all,能告诉你哪些端口是对外开放的、哪些是限制的。如果发现只允许特定IP访问SSH,那你就知道这台机器的管理员有点安全意识,得换个思路。
进程与服务:谁在跑,以什么身份跑
ps aux谁都会敲,但你要看的是那些以root身份跑、路径又比较奇怪的服务。比如一个跑在/home/user/bin/下面的守护进程,那多半是用户自己编译的,版本可能很老,漏洞一抓一个准。
再看systemctl list-units --type=service,系统服务里有没有那种名字很陌生、描述很含糊的。我曾经遇到一个叫backup-agent的服务,二进制文件在/usr/local/bin/下,用strings一看,里面硬编码了一个API密钥。这种就是典型的“自研服务,安全为零”。
还有一点容易被忽略:查看/proc下面那些进程的environ文件。cat /proc/,环境变量里经常藏着数据库连接串、API密钥、甚至云平台的临时凭证。这个技巧在云主机上特别好用,因为很多云厂商的SDK会把凭证塞进环境变量。
渗透目录不是一次性的活。你每拿到一个新信息,都要回头重新审视之前看过的目录。比如你先发现了一个数据库密码,那就要去找这个密码还能登录哪些服务;你先发现了一个可写的定时任务脚本,那就要去看这个脚本会调用哪些二进制。信息之间是互相咬合的,单看一个点没用,串起来才是完整的攻击路径。
最后说一句:别贪多。一台机器上可能有几十个潜在入口,但你只需要一个能走通的。把目录摸清楚,比盲目试漏洞效率高得多。
