如何用Meterpreter实现内网渗透?

17 人参与

内网渗透测试中,获得一个Meterpreter会话往往只是起点,而非终点。真正的挑战在于如何利用这个立足点,像水银泻地般渗透到网络深处,触及那些隐藏在层层防护后的核心资产。Meterpreter作为Metasploit框架的灵魂,其威力在横向移动和权限维持阶段才真正显现。

从立足点到跳板:信息收集的艺术

拿到一个shell就急着横冲直撞?别急。有经验的红队成员会先花时间把当前环境“摸透”。sysinfogetuid只是开胃菜,关键是run post/windows/gather/enum_domain这类后渗透模块。它能帮你理清这台机器在域里的角色——是普通工作站,还是可能存有密码哈希的域控制器?ipconfig /allroute print的输出得仔细分析,那些额外的网卡和路由条目,往往指向了隔离的管理网段或VPN通道。

更隐蔽的一招是使用arp_scanner或通过meterpreter加载powershell脚本来扫描同网段存活主机。动静要小,速度要慢,毕竟内网的IDS可能正盯着异常的ARP流量。这些信息构成了你下一步行动的作战地图。

横向移动:不止一种打法

有了地图,就该选择路径了。Meterpreter提供了多种横向移动的“交通工具”。最经典的是利用窃取的凭证进行psexec攻击。用hashdumpmimikatz模块抓取本地或域账户的NTLM哈希后,use exploit/windows/smb/psexec,将SMBPass设置为“哈希值”(格式为LMHASH:NTHASH),目标指向另一台主机的IP。成功了,你就获得了在新主机上的另一个会话。

  • Pass the Hash (PtH): Windows环境下,NTLM哈希本身就能用来认证,无需破解成明文密码。这让横向移动的效率呈指数级提升。
  • 令牌窃取与假冒: 如果当前进程有高权限令牌(比如域管登录过的服务),incognitosteal_token命令能让你瞬间“变成”那个用户,无缝访问网络资源。
  • 服务与计划任务投递: 对于更严格的环境,可以通过sc命令远程创建服务,或者用schtasks部署计划任务,将payload投递到目标并执行。这种方式更贴近系统管理行为,不易触发警报。

端口转发:打通任督二脉

内网里经常遇到这种情况:你控制的机器B能访问核心服务器C的数据库端口3306,但你的攻击机A却不行。这时portfwd命令就是关键桥梁。在Meterpreter会话中执行portfwd add -L 0.0.0.0 -l 3306 -p 3306 -r 192.168.10.20,等于在B机上开了一个通向C机3306端口的隧道。你在A机上连接B机的IP和3306端口,流量就会通过Meterpreter会话被转发到C机的真实服务上。这下,原本不可达的内部服务,对你来说就是“本地服务”了。

权限维持:留下不被察觉的后门

渗透进去不算完,还得能留得下。蓝队一旦发现入侵,会迅速清除威胁、重置密码。因此,建立隐蔽的持久化访问至关重要。persistence脚本是基础选项,它会通过注册表、服务或启动文件夹建立自启动。但太常见了,容易被查杀。

更高级的做法是“无文件”持久化。比如,利用meterpretermigrate命令,将会话迁移到像lsass.exesvchost.exe这样的关键系统进程内存中,与合法进程共存。或者,通过WMI事件订阅来触发payload执行,这种后门几乎不落地,极难通过传统文件扫描发现。再比如,篡改用于组策略更新的脚本(.bat, .vbs),当下一次组策略刷新时,你的代码就会在所有域内机器上执行。

说到底,用Meterpreter进行内网渗透,是一场对耐心、细致和创造力的考验。它要求你不仅是一个漏洞利用者,更要成为一个系统的理解者、网络流量的塑造者。每一个命令背后,都是对目标网络生态的深刻揣摩。工具本身不会思考,但使用工具的人必须时刻思考。

参与讨论

17 条评论
  • 怀旧邮筒

    看了半天,感觉作者在炫技😂

    回复
  • 创意无限者

    这个hash怎么导出来的?

    回复
  • 社恐小萝卜

    我之前也用migrate进lsass,差点被蓝队盯

    回复
  • Fallen Leaf

    别老说psexec是唯一办法,很多环境根本禁SMB

    回复
  • 量子之翼

    脚本太多,复制粘贴都快成职业病

    回复
  • 和风絮语

    整体思路还行

    回复
  • 狮子小威

    谁能把这套流程写成视频教程啊

    回复
  • 岁月邮差

    真是横向移动的神器

    回复
  • 代码织梦

    其实除了psexec,还可以尝试wmiexec,针对禁SMB的机器更稳

    回复
  • 神秘学者

    在使用incognito窃取令牌后,怎么确保不会被安全软件检测到?

    回复
  • 暴怒狂战士

    那如果目标只开放RDP,能否通过meterpreter转发实现远程桌面?

    回复
  • 炽翎骑士

    这个portfwd真的挺好用

    回复
  • 蜜桃小乖乖

    我去年红队演练时,先枚举域信息,发现隐藏网段,用portfwd把数据库端口拉到本地,拿到敏感数据,也提醒我后期要清理日志。

    回复
  • 幸福的花园

    migrate到关键进程这招有点东西

    回复
    1. 拽到没朋友

      @ 幸福的花园 这招隐蔽性还蛮高的

      回复
  • 软糖星语

    哈希传递那段有点启发,但实战环境总比想的复杂。

    回复
    1. 社交空调

      @ 软糖星语 太对了,环境一变就出各种幺蛾子。

      回复