使用kali系统进行网络渗透

凌晨两点,使用渗透我对着屏幕上的系统终端窗口打了个哈欠。目标是进行一台部署在测试环境里的Linux服务器,开了22端口和80端口。网络密码爆破跑了半小时,使用渗透字典里全是系统常见弱口令,结果一无所获。进行我叹了口气,网络把kali里的使用渗透hydra停掉,转而扫了一下80端口上的系统web应用——一个老旧的WordPress站点,插件版本停留在三年前。进行

这就好办了。网络kali里预装的使用渗透searchsploit直接搜到了对应插件的远程代码执行漏洞,编号CVE-2021-24406。系统利用脚本是进行现成的,改一下目标IP,回车,反弹shell到手。整个过程不到十分钟,密码爆破纯属浪费时间。这种感受很真实:渗透测试里,最笨的方法往往最先被尝试,但真正有效的手段通常来自对目标资产的细致侦察。

kali系统本身不是什么魔法工具,它只是一个集成了数百个安全工具的Linux发行版。真正值钱的是你脑子里的思路。比如nmap扫描端口时,别光看开放状态,要结合服务版本判断潜在漏洞。我曾见过有人对着一个开了3389端口的Windows机器狂试弱口令,却忽略了对面其实开着WebDAV——明明可以走IIS短文件名猜解的路子,非要去撞南墙。

实际操作中,信息收集占掉整个渗透流程一半以上的时间。kali里的theHarvester能搜邮箱、子域名,maltego能画网络拓扑关系图,甚至你还可以用dmitry去查whois信息。但工具再多,不如自己写几行bash脚本去批量抓取网页标题和响应头。有一次我接了个授权测试,目标公司有个内部系统只对内网开放,外网扫描完全无果。后来我在他们公开的招聘页面里找到一条技术博客链接,博客挂在云服务器上,顺藤摸瓜摸到了他们VPN网关的IP,这才打开突破口。

渗透测试不是电影里那种炫酷的黑客敲键盘,更多时候是枯燥的日志分析和反复的尝试。kali里msfconsole的exploit模块确实强大,但用之前得先确认目标系统架构、补丁级别,甚至防火墙规则。我吃过亏——对着一个打了全部补丁的Windows Server 2019用永恒之蓝,结果shell没弹回来,倒把目标机器的smb服务打崩了,对方运维凌晨三点打电话过来骂人。那次之后我学乖了,exploit之前先跑一下nessus的漏洞扫描,确认可利用性再动手。

说回kali本身。它默认的桌面环境是xfce,轻量但功能齐全。我习惯把常用工具pin到收藏夹:burpsuite抓web包,wireshark看流量,sqlmap跑注入。但说实话,kali里一半的工具我从来没打开过,比如那些无线攻击的套件,现在企业基本都用WPA2-Enterprise,抓四次握手破解的概率低得可怜。工具多不代表效率高,关键还是得知道什么场景用什么刀。

最后提醒一句——用kali做渗透测试,前提是你有授权。别拿它去扫公网上的陌生IP,那是违法的。我见过太多初学者下载个kali就到处乱扫,最后把自己扫进了派出所。技术本身没有善恶,但使用技术的人得守住边界。测试环境的靶机不香吗?vulhub、DVWA、HackTheBox,随便哪个都比惹麻烦强。

夜深了,我关掉终端,屏幕上kali的绿色提示符慢慢暗下去。下一次测试,我打算试试那个新的API接口,说不定又是个有趣的入口。