您现在的位置是:烟消火灭网 > 焦点

linux操作系统渗透测试

烟消火灭网2026-10-17 07:46:26【焦点】4人已围观

简介拿到一台Linux服务器,第一件事不是敲命令,是看它的历史命令。管理员在.bash_history里留下的痕迹,往往比任何漏洞扫描器都值钱。有一次我接了个授权测试,目标是一台跑着旧版Apache的Ce

拿到一台Linux服务器,作系第一件事不是统渗透测敲命令,是作系看它的历史命令。管理员在.bash_history里留下的统渗透测痕迹,往往比任何漏洞扫描器都值钱。作系有一次我接了个授权测试,统渗透测目标是作系一台跑着旧版Apache的CentOS,端口扫了半天没发现明显入口,统渗透测最后翻历史记录,作系看到管理员曾经用root执行过一条`mysql -u root -p123456`,统渗透测数据库密码就这么躺在文本文件里。作系顺着这条线,统渗透测我连上MySQL,作系利用UDF提权,统渗透测半小时拿到shell。作系这活儿不高级,但管用。

Linux渗透的核心思路,其实就一句话:找到那个“信任的边界”。系统的每个服务、每个用户、每个开放端口,都是一个边界。边界上总有缝隙——可能是没打补丁的内核,可能是配置错误的sudo规则,也可能是某个服务以root权限运行却存在路径遍历漏洞。我见过一台服务器,对外开放了SSH和Nginx,Nginx配置里把`/etc/passwd`当静态文件目录映射了出去。攻击者直接访问URL就把密码文件下载了,连爆破都省了。

别急着上Metasploit。先手动摸一遍。`netstat -tlnp`看监听端口,`ps aux`看进程,`cat /etc/passwd`看用户列表——这些基础命令的排列组合,能帮你拼出系统的画像。有个技巧:检查`/etc/crontab`和`/var/spool/cron/`,如果某个定时任务以root运行,而且脚本路径可写,那你就有了稳定的提权路径。我碰到过一次,管理员写了个备份脚本,每五分钟执行一次,脚本里调用了`/tmp/backup.sh`,而`/tmp`目录任何人都能写入。我放了个反向shell的payload进去,等了两分钟,连接就回来了。

提权是渗透里最有意思的部分。内核漏洞利用是最后手段,因为容易把系统搞崩。优先看SUID文件——`find / -perm -4000 -type f 2>/dev/null`。有些老掉牙的程序,比如`find`、`vim`、`less`,如果以SUID root存在,直接就能通过它们的`!`命令逃逸到shell。还有个容易忽略的点:`sudo -l`看看当前用户能免密执行什么。我见过一个普通用户被赋予了`sudo /usr/bin/passwd`的权限,这看起来人畜无害,但配合`passwd`的`--root`选项,可以修改root密码文件。

横向移动也别死磕一台机器。拿到一台后的第一件事是抓内存里的明文密码——`/proc`目录下有些进程的环境变量里藏着密钥。检查`/etc/shadow`是否能读,能读就扔到hashcat里跑弱口令。内网里其他机器的SSH密钥,往往就存在当前用户的`~/.ssh/`下,而且没设密码。我上次从一台跳板机里翻出三台服务器的免密登录配置,整个内网就平趟了。

这套流程不复杂,但需要耐心。别指望一个0day通吃所有系统,真正的突破口往往藏在配置细节里。管理员懒得改默认密码、忘了删测试账号、把备份文件放在web目录下——这些人类习惯的漏洞,比任何代码漏洞都致命。渗透测试的本质不是炫技,是跟管理员比谁更细心。你多看一眼日志,多试一个弱口令,可能就省下了一整夜的暴力破解。

很赞哦!(14964)