【内网渗透】— 内网信息收集(4)
内网信息收集
渗透测试人员进入内网后,面对的是一片”黑暗森林”,所以,渗透测试人员首先要对当前所处的网络环境进行判断,判断主要涉及以下三方面:
- 我是谁?—— 对当前机器角色的判断。
- 这是哪?—— 对当前机器所处的网络环境的拓扑结构进行分析和判断。
- 我在哪?—— 对当前机器所处区域的判断。
本文主要介绍内网渗透测试中的一些常用的指令,实际中大家根据自己的实际情况,选择自己需要的指令,完成工作或者学习的任务。
本机信息收集
本机信息收集包括操作系统、权限、内网IP地址段、杀毒软件、端口、服务、补丁更新频率、网络连接、共享、会话等。如果是域内主机,那么操作系统、应用软件、补丁、服务、杀毒软件一般都是批量安装的。
手动信息收集
-
查询网络配置信息
- inconfig /all
-
查询操作系统及软件信息
- systeminfo | findstr /B /C:”OS Name” /C:”OS Version” 查询操作系统和版本信息 英文系统
- systeminfo | findstr /B /C:”OS 名称” /C:”OS 版本” 查询操作系统和版本信息 中文系统
- echo %PROCESSOR_ARCHITECTURE% 查看系统体系结构
- wmic prouct get name, version 查看安装的软件的版本、路径等
- powershell “Get-WmiObject -class Win32_Product |Select-Object -Property name, version” PowerShell收集软件的版本信息
-
查询本机的服务信息
- wmic service list brief 查询本机服务信息
-
查询进程列表
- tasklist 查看当前进程列表和进程用户
- wmic process list brief 查询进程信息
-
查看启动程序信息
- wmic startup get command, caption
-
查看计划任务
- schtasks /query /fo LIST /v
-
查看主机开机时间
- net statistics workstation
-
查询用户列表
- net user 查看本机用户列表
- net localgroup administrators 获取本地管理员信息
- query user || qwinsta 查看在线用户
-
列出或断开本地计算机与所连接的客户端的对话
- net session
-
查询端口列表
- netstat -ano
-
查看补丁列表
- systeminfo 查看系统详情
- wmic qfe get Caption,Description,HotFixID,InstalledOn 查看补丁的名称、描述、ID、安装时间等
-
查询本机共享列表
- net share 查看本机共享列表和可访问的域共享列表
- wmic share get name,path,status 查找共享列表
-
查询路由表以及所有可用接口的ARP缓存表
- route print
- arp -a
-
查询防火墙相关配置
- netsh firewall set opmode disable 关闭防火墙(Windows Server 2003 以前的版本)
- netsh advfirewall set allprofiles state off 关闭防火墙(Windows Server 2003 以后的版本)
- netsh firewall show config 查看防火墙配置
自动信息收集
为了简化手动信息收集的繁琐步骤,我们可用使用自动化脚本 —— WMIC(Windows Management InstrumentationCommand Line,Windows管理工具命令行)脚本,脚本下载地址,执行该脚本以后,会将信息收集的结果写入HTML文档。
域信息收集
查看当前全权限
- whoami 查看当前权限
- whoami /all 获取SID
- net user xxx /domain 查询指定用户的详情信息
判断是否存在域
- ipcondig /all 可查看网关IP地址、DNS的IP地址、域名、本机是否和DNS服务器处在同一网段等… 然后,通过反向解析查询命令nslookup来解析域名的IP地址,用解析到的IP地址进行对比,判断域控服务器和DNS服务器是否在同一台机器上。
- systeminfo 对比查看”域(域名)”和”登录服务器(域控制器)”的信息是否互相匹配。
- net config workstation 对比查看”工作站域DNS名称(域名)”和”登录域()域控制器”的信息是否相匹配。
- net time /domain 判断主域。
探测域内存活主机
- 使用nbtscan扫描本地或远程TCP/IP网络上开放的NetBIOS名称服务器,使用方法:nbt.exe 192.168.1.1/20, 输出的结果第一列为IP地址,第二列为机器名和所在域的名称,第三列即最后一列为及其所开启的服务的列表。
- 使用ICMP协议快速探测内网
- arp-scan工具 使用方法:arp.exe -t 192.168.1.1/20
- Empire的arpscan模块
- Nishang中的Invoke-ARPScan.ps1脚本
- ScanLine脚本
扫描域内端口信息
- telnet命令进行扫描
- S扫描器
- Metatsploit框架,”msfconsole”下的”serach portscan”命令
- PowerSploit的Invoke-ARPScan.ps1脚本
- Nishang中的Invoke-PortScan模块
- 端口banner信息的利用
收集域内基础信息
- net view /domain 查询域
- net view /domain:HACHE 查询域内的所有计算机
- net group /domain 查询域内的所有计算机
- net group “domain computers” /domain 查询所有域成员计算机列表
- net accounts /domain 获取域密码信息
- nltest /domain_trusts 获取域信任信息
查找域控制器
- nltest /DCLIST:hacke 查看域控制器的机器名
- Nslookup -type=SRV_ldap._tcp 查看域控制器的主机名
- net time /domain 查看当前时间
- net group “Domain Controllers” /domain 查看域控制器组
- netdom query pdc 查看域控制器的机器名
获取域内的用户和管理员信息
- 查询域内用户列表
- net user /domain 向域控制器进行查询
- wmic useraccount get /all 获取域内用户的详细信息
- dsquery user 查看存在的用户
- net localgroup administrators 查询本地管理员用户
- 查询域管理员用户组
- net group “domain admins” /domain 查询域管理员用户
- net group “Enterprise admins” /domain 查询管理员用户组
定位域管理员
在域网络攻击测试中,获取域内的一个支点后,需要获取域管理员权限;定位域内管理员的常规渠道,一是日志,二是会话。
常见域管理员定位工具:
- psloggedon.exe
- PVEFindADUser.exe
- netview.exe
- Nmap的NSE脚本
- PowerView脚本
- Empire的user_hunter模块
查找域管理进程
- net group “Domain Admins” /domain 获取域管理员列表
- tasklist /v 列出本机的所有进程及进程用户
- net group “Domain Controllers” /domain 查询域控制器列表
- NetSess -h 收集所有活动域的会话列表
分析域内网段划分情况及拓扑结构
在掌握了内网的相关信息后, 渗透测试人员可以分析目标网络的结构和安全防御策略,获取网络信息、各部门的IP地址段,绘制内网的拓扑结构图。
域分析工具BloodHound
BloodHound是一款免费的工具。一方面,BloodHound通过图与线的形式,将域内用户、计算机、组、会话、ACL以及域内所有的相关用户、组、计算机、登陆信息、访问控制策略之间的关系,直观地展现在Red Team成员面前,为他们更便捷地分析域内情况、更快速地在域内提升权限提供条件;另一方面,BloodHound帮助Blue Team成员更好地对己方网络系统进行安全检查,以保证域的安全性。BloodHound使用图形理论,在环境目录中自动理清大部分人员之间的关系和细节。使用BloodHound,可以快速、深入地了解活动目录中用户之间的关系,获取哪些用户具有管理员权限、哪些用户对所有的计算机都具有管理员权限、哪些用户是最有效的用户组成员等信息。
BloodHound可以在域内导出相关的信息,将采集的手数据导入本地Neo4j数据库,并进行展示和分析。
此外,由于BloodHound相关知识较多,有兴趣的朋友可以自行网上查阅相关资料,在此不做过多介绍。
敏感信息的防护
核心业务机器的类型
- 核心业务机器
- 高级管理人员、系统管理员、财务/人事/业务人员的计算机
- 产品管理系统服务器
- 办公系统服务器
- 财务应用系统服务器
- 核心产品原码服务器
- 数据库服务器
- 文件服务器、共享服务器
- 电子邮件服务器
- 网络监控系统服务器
- 其他服务器
- 敏感信息和敏感文件
- 站点源码备份文件、数据库备份文件
- 各类数据库的Web管理入口
- 浏览器密码和浏览器Cookie
- 其他用户会话、3389和ipc$连接记录,”回收站”中的信息
- Windows无线密码
- 网络内部的各种账号及密码
敏感信息的防护
在内网找中,攻击者经常会进行基于应用和文件的信息收集,从总体上来看,攻击者一是想进一步了解已攻陷机器所属人员的职位,二是想在机器中使用一些命令来寻找自己想要的资料。
针对攻击者的行为,建议用户在内网中工作时,不要将特别重要的资料存储在公开的计算机中,在必要时应对Office文档进行加密且密码不能太简单。