news 2026/8/21 21:04:44

网络安全实战:内网渗透入门——横向移动、凭据窃取、域环境概览

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
网络安全实战:内网渗透入门——横向移动、凭据窃取、域环境概览

前言:城墙之后的黑暗森林

对于很多刚入门的网络安全从业者来说,攻克外网Web服务器往往是激动的最高时刻。当你看到那个黑色的CMD窗口在屏幕上弹出,或者Webshell管理界面里那个绿色的“连接成功”指示灯亮起,你觉得自己赢了。

但在我这样的红队老兵眼里,那仅仅是一场战役的序幕。甚至可以说,那只是站在了真正的战场门口。Web服务器,通常位于DMZ区(隔离区),它就像城堡的门房。你攻破了门房,但你真正想要的财宝——核心数据库、域控服务器、机密文档——都深藏在城堡内部的豪宅里。

这就是内网渗透。内网是一个完全不同的世界。在外网,你是幽灵,你可以利用无数个入口;在内网,你是入室抢劫的盗贼,你身处敌人的领地,每一根神经都要紧绷。这里有复杂的域环境、千丝万缕的信任关系、以及时刻盯着你的杀毒软件和流量审计设备。

本文将带你走进这座“黑暗森林”,以实战的视角,拆解域环境、凭据窃取与横向移动的底层逻辑。

第一章 域环境概览:理解战场的地形

在切入内网之前,你必须先搞清楚“地形”。在国内的企业环境中,90%以上的内网都是基于Windows域构建的。

1.1 工作组 vs 域:丛林法则 vs 中央集权

很多初学者只接触过自己的个人电脑,那是“工作组”模式。每一台电脑都是独立的王国,管理员密码只在本地有效。要想进隔壁电脑,你得知道隔壁电脑的密码。这就像原始丛林,各自为战。
而“域”则是高度组织化的中央集权。
在一个域里,有一台至高无上的服务器,叫做域控制器。它掌管着所有加入域的电脑和用户的账号密码。
当你在域内的任意一台电脑上输入用户名密码登录时,你的电脑并不是去查自己的本地数据库,而是把你的凭据封装好,发给域控制器,问:“老大,这个人的票是真的吗?让他进吗?”
域控制器核对无误后,发放一张“通行证”,你才能登录成功。
这给攻击者带来了什么?

  • 集中式攻击面:攻破了域控制器,就等于拿到了整个内网所有电脑的最高权限。这是“擒贼先擒王”的最高境界。
  • 信任链:域内的机器天然信任域控制器,甚至信任域内的其他机器。这种信任关系,就是我们横向移动的跳板。

1.2 域内的核心角色

在实战中,你必须识别出以下关键角色:

  • DC(Domain Controller):域控制器。终极目标。通常运行着DNS服务、NTP服务、Kerberos认证服务。一旦拿下DC,你就可以对整个域发号施令。
  • KRBTGT 账户:这是域内最特殊的账户,它是Kerberos服务的服务账户。它的密码哈希值是伪造“黄金票据”的原材料。拥有了它,你可以在域内永生。
  • 域管:域控制器上的本地管理员。他们可以在任何机器上做任何事。我们的终极目标就是获取他们的权限。
  • 本地管理员:每台电脑上还有一个本地管理员。虽然他在域里地位不高,但他可以控制这台机器,抓取这台机器上所有登录过的域用户的密码。

第二章 凭据窃取:寻找打开监狱的钥匙

在内网里,权限就是货币。你有了Webshell,只是拿到了一把低权限的钥匙。要想横向移动,你必须搜集更多的“钥匙”。

2.1 为什么要窃取凭据?

在内网渗透中,我们很少直接去破解明文密码(除非那是弱口令)。因为现在的密码策略都很强,破解太慢。
我们窃取的是Hash(哈希)
在Windows中,密码不会以明文存储,而是存储为Hash值。如果你拿到了Hash,你不需要解密出明文,就可以直接利用它去认证其他机器。这就是著名的**PTH(Pass The Hash,哈希传递)**攻击。

2.2 LSASS:内存里的金库

这是内网渗透最核心的知识点。
当你在Windows上登录成功后,为了方便下次操作(比如访问网络共享文件),系统会将你的凭证缓存在内存中。这个内存区域由一个进程守护,它叫LSASS.exe(本地安全机构子系统服务)。
只要你拿到了系统的 SYSTEM 权限(哪怕是本地管理员),你就可以把刀伸进LSASS的肚子里,把里面的Hash掏出来。
实战利器:Mimikatz
这是内网渗透的“瑞士军刀”。

mimikatz.exe"privilege::debug""sekurlsa::logonpasswords""exit"

这条命令的经典程度不亚于任何一段黑客代码。

  • privilege::debug:提升权限,获取调试内核进程的权限。
  • sekurlsa::logonpasswords:从LSASS进程内存中提取所有登录过的用户密码和Hash。
    如果你看到输出里出现了NTLM哈希,甚至直接出现了明文密码,恭喜你,你拿到了通行证。
    对抗杀软
    现在的杀软见到Mimikatz就像见到杀父仇人。直接运行必死无疑。
    实战中,我们通常使用白名单程序加载Mimikatz(如procdump导出lsass.dmp后本地离线抓取),或者使用CS(Cobalt Strike)内置的hashdump功能,或者使用免杀的C#重写版本。

2.3 SAM 数据库:本地的保险柜

除了内存,Hash还睡在硬盘里。Windows的SAM数据库存储了本地账户的Hash。
你可以使用reg save命令导出注册表中的SAM和SYSTEM文件,然后离线解密。但这只能拿到本地用户的Hash,拿不到域用户的。

2.4 顺手牵羊:配置文件与历史记录

很多时候,最危险的不是系统本身,而是用户的习惯。

  • Navicat、PLSQL等数据库管理工具:它们的连接配置文件里往往存着连接数据库的密码。
  • 浏览器:Chrome、Edge的密码管理器里存着用户的Web登录密码。
  • RDP历史:注册表里可能存着之前远程桌面连接过的IP地址,甚至用户名。
  • 最近打开的文档:可能指向某个敏感的共享文件服务器。
    作为攻击者,拿到一台机器后,不要急着跑工具,先像侦探一样翻翻这些“垃圾桶”,往往有意外的惊喜。

第三章 横向移动:在迷宫中跳跃

当你手里握着抓来的Hash和密码,你就要开始移动了。横向移动,就是从一台受控机器,跳到另一台高价值机器的过程。

3.1 IPC$ 与计划任务:最朴素的跳板

这是最基础,但也最常用的手法。
IPC(InternetProcessConnection)是Windows为了共享资源而开放的管道。如果你有目标机器的管理员Hash,你可以建立一条IPC(Internet Process Connection)是Windows为了共享资源而开放的管道。如果你有目标机器的管理员Hash,你可以建立一条IPCInternetProcessConnection)是Windows为了共享资源而开放的管道。如果你有目标机器的管理员Hash,你可以建立一条IPC通道。
实战步骤

  1. 建立连接net use \\192.168.1.10\ipc$ password /user:username
  2. 上传恶意文件:将我们的后门程序拷贝到目标机器的某个目录(如C盘)。
  3. 创建计划任务:利用schtasks命令,让目标机器在特定时间运行我们的后门。
    schtasks /create /s 192.168.1.10 /tn "update" /tr c:\shell.exe /sc onstart /f /ru system
    这种方式简单粗暴,但动静大,容易被日志记录。而且如果你在流量侧没有加密,IPC$传输的文件会被防火墙轻易识别。

3.2 PsExec:经典但噪杂的战车

PsExec是Sysinternals套件里的工具,它允许你在远程机器上执行命令。
原理:它会将一个名为PSEXESVC的服务上传到目标机器,启动服务,通过管道执行命令,然后回显结果。
虽然好用,但缺点明显:

  1. 需要开启Admin$共享(很多企业会关闭)。
  2. 会留下明显的服务日志。
  3. 需要交互式登录,容易触发敏感的报警。

3.3 WMI:无声的幽灵

WMI(Windows Management Instrumentation)是Windows管理规范,它是系统内置的,通常不会被禁用。
相比于PsExec,WMI不需要上传文件到目标磁盘,直接在内存中执行。这就是所谓的“无文件攻击”。
实战指令

wmic /node:192.168.1.10 /user:admin /password:pass process call create"cmd.exe /c whoami"

更高级的玩法是结合PowerShellMOF(托管对象格式)文件进行持久化控制。WMI是红队最喜欢的横向移动方式之一,因为它隐蔽,且系统原生支持。

3.4 WinRM:HTTP协议的伪装者

WinRM(Windows Remote Management)是基于WS-Management协议的。默认监听5985(HTTP)和5986(HTTPS)端口。
很多企业为了方便运维,会开启WinRM。对于攻击者来说,这简直是福音。
因为5985端口看起来像是一个Web端口,很容易被忽视。
利用winrs命令即可远程执行:

winrs -r:http://192.168.1.10:5985-u:user-p:pass"cmd /c whoami"

这就像是在用HTTP协议进行远程控制,流量极具伪装性。

3.5 PSEXEC 的高阶版:服务执行

如果你拿到了域管Hash,想批量控制全网的机器,你可以通过SC(Service Control)命令远程创建服务。这比计划任务更底层,也更难被普通运维人员察觉。

第四章 代理与转发:打通隧道的命脉

很多新手会遇到一个问题:我拿下了Web服务器,能Ping通内网其他机器,但是我手里的攻击工具(在 我的笔记本 上运行)连不上内网的目标。
为什么?因为你的电脑和目标内网是不通的,中间隔着防火墙和路由器。Web服务器是唯一的中转站。
你需要做端口转发代理

4.1 正向连接 vs 反向连接

  • 正向:你在目标机器开一个端口,你去连它。如果目标在内网深处,你连不上。
  • 反向:你在自己的机器(或VPS)开一个端口,让目标机器来连你。这是内网穿透的核心。

4.2 MSF 与 CS 的代理方案

MSF (Metasploit Framework)
在MSF中,获得Shell后,你可以添加路由:
run autoroute -s 10.10.10.0/24
这样,MSF的所有模块都可以通过这个Session跳转,去攻击内网其他网段。这是最方便的“一层代理”。
Socks代理
如果我想用我自己电脑上的Nmap去扫内网,MSF提供了socks4asocks5代理模块。
开启代理后,配合proxychains工具,就能让任何工具都通过这台肉鸡去访问内网。
proxychains nmap -sT -Pn 10.10.10.5
多层代理
如果内网很大,分了核心区、办公区、生产区,你可能需要“嵌套”。
Web服务器 -> 核心区服务器 -> 生产区服务器。
这就需要配置链式代理,像接力赛一样把流量一层层传进去。这在实战中非常考验耐心,一旦断了一环,整个隧道就塌了。

第五章 结语:看不见的战争

内网渗透,是一场关于耐心逻辑的战争。它不像外网Web渗透那样,充满了各种花哨的Payload和绕过技巧。内网渗透更多时候是枯燥的:你要分析复杂的网络拓扑,要一遍遍尝试抓取的Hash,要小心翼翼地避开杀毒软件的探头,要在日志的缝隙中求生存。

从信息收集开始,绘制网络地图;
通过凭据窃取,积累手中的筹码;
利用横向移动,一步步逼近核心;
最后,在域控制器上插上胜利的旗帜。
这是一个收敛的过程。从最初的迷茫,到最后的掌控全局。
但我必须最后提醒一句:权限越大,责任越大
内网往往承载着企业的核心命脉。一个误删文件的命令,一个死循环的进程,都可能导致严重的生产事故。在实战演练中,我们追求的是“控制权”,而不是“破坏力”。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 21:00:31

Wand-Enhancer:免费解锁Wand专业版功能,白送手机修改器遥控器

Wand-Enhancer:免费解锁Wand专业版功能,白送手机修改器遥控器 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/GitHub_Trending/we/Wand-Enhancer Wand 免费版有…

作者头像 李华
网站建设 2026/8/21 21:00:09

Book118文档下载器:3分钟把文档存成PDF

Book118文档下载器:3分钟把文档存成PDF 【免费下载链接】book118-downloader 基于java的book118文档下载器 项目地址: https://gitcode.com/gh_mirrors/bo/book118-downloader 想把Book118网站上的文档存到本地?官网只给免费预览:只能…

作者头像 李华
网站建设 2026/8/21 20:57:27

STM32智能盆栽灌溉系统:Proteus仿真与实物开发全流程指南

这次我们来看一个基于STM32单片机的智能盆栽灌溉系统设计,并且是带Proteus仿真的完整项目。对于很多嵌入式初学者、电子爱好者或者需要完成课程设计、毕业设计的同学来说,找到一个能跑通、有仿真、代码硬件都齐全的项目非常关键。这个项目就属于这类“开…

作者头像 李华