内网信息收集-本机
0x00:from
--《内网安全攻防》
0x01:内网信息收集概述
渗透测试人员进入内网后,面对的是一片“黑暗森林”。所以,渗透测试人员首先需要对当前所处的网络环境进行判断。判断涉及如下三个方面。
我是谁?--对当前机器角色的判断。
这是哪?--对当前机器所处网络环境的拓扑结构进行分析和判断
我在哪?--对当前机器所处区域的判断
对当前机器角色的判断,是指判断当前机器是普通web服务器、开发测试服务器、公共服务器、文件服务代理服务器、DNS服务器还是存储服务器等。具体的判断过程,是根据机器的文件名、文件、网络连接等情况综合完成的。
对当前机器所处网络环境的拓扑结构进行分析和判断,是指对所处内网进行全面的数据收集和分析整理,绘制出大致的内网整体拓扑结构图。
对当前机器所处区域的判断,是指判断机器处于网络拓扑的那个区域,是在DMZ、办公区还是核心区。当然,这里的区域不是绝对的,只是一个大概的环境,处于不同位置的网络,环境不一样,区域界限也不一定明显。
0x02:收集本机信息
不管是在外网还是在内网中,信息收集都是重要的第一步。对于内网中的一台机器,其所处内网的结构是什么样的、其角色是什么使用这台机器的人的角色是什么,以及这台机器上安装了什么杀毒软件、这台机器是通过什么方式上网的、这台机器是笔记本还是台式机还是虚拟机,都需要通过信息收集来解答。
1.手动收集信息
本机信息包括操作系统、权限、内网IP地址、杀毒软件、端口、服务、补丁更新频率、网络连接、共享、会话等。如果是域内主机,操作系统、应用软件、补丁、服务、杀毒软件一般都是批量安装的。
通过本机的相关信息,可以进一步了解整个域的操作系统版本、软件及补丁安装情况、用户命名方式等。
1.查询网络配置信息
执行如下命令,获取本机网络配置信息。
2.查询操作系统及软件的信息
(1)查询操作系统和版本信息
如果是中文版则需要以下命令:
(2)查看系统体系结构
执行如下命令
(3)查看安装的软件及版本、路径等
利用wmic命令,将结果输出到文本中。具体命令如下
利用PowerShell命令,收集软件的版本信息。
3.查询本机服务信息
执行如下命令,查询本机服务信息
4.查询进程列表
执行如下命令,可以查看当前进程列表和进程用户、分析软件、邮件客户端、vpn和杀毒软件等进程。
执行如下命令,查看进程信息
常见杀软进程
或者:WMIC /Node:localhost /Namespace:\root\SecurityCenter2 Path AntiVirusProduct Get displayName /Format:List
5.查看启动程序信息
执行如下命令。查看启动程序信息。
6.查看计划任务
执行如下命令,查看计划任务
7.查看主机开机时间
执行如下命令,查看主机开放时间
8.查询用户列表
通过分析编辑用户列表,可以找出内网机器的命名规则。特别是个人机器的名称,可以用来推测整个域的用户命名方式。
执行如下命令,获取本地管理员(通常包含域用户)信息
执行如下命令,查看当前在线用户
9.列出或断开本地计算机与所连接的客户端之间的会话
执行如下命令,列出或断开本地计算机与所连接的客户端之间的会话。
10.查看端口列表
执行如下命令,查看端口列表、本机开放端口所对应的服务和应用程序
此时可以看到当前机器和哪些主机建立了连接,以及TCP、UDP等端口的使用和监听情况。可以先通过网络连接进行初步判断(例如,在代理服务器中可能会有很多机器开放了代理端口,更新服务器可能开放了更新端口8530,DNS可能开放了53端口等)。
11.查看补丁列表
执行如下命令,查看系统的详细信息
systeminfo
需要注意系统版本、位数、域、补丁信息及更新频率等。域内主机的补丁通常是批量安装的,通过查看本机补丁列表,就可以找到未打补丁的漏洞。
可以看到,当前系统更新了162个补丁。
使用wmic命令查看安装在系统中的补丁。
补丁的名称,描述,ID,安装时间等信息
12.查询本机共享列表
执行如下命令,查看本机共享列表和可访问的域共享列表(域共享在很多时候是相同的)。
利用wmic命令查找共享列表。
13.查询路由表及所有可用接口的ARP缓存表
执行如下命令,查询路由表及所有可以接口的ARP(地址解析协议)缓存表。
route print
arp -a
14.查询防火墙相关配置
(1)关闭防火墙
Windows server 2003及之前的版本,命令如下
Windows server 2003及之后的版本,命令如下
(2)查看防火墙配置
(3)修改防火墙配置
Windows Server 2003 及之前的版本,允许指定程序全部连接,命令如下。
Windows server 2003之后的版本,情况如下。
允许指定程序进入,命令如下:
允许指定程序退出,命令如下:
允许3389端口放行,命令如下:
(4)自定义防火墙日志的存储位置
15.查看代理配置情况
执行如下命令,可以看到服务器127.0.0.1 的1080端口的代理配置信息。
16.查询并开启远程连接服务
(1)查看远程连接端口
在命令行环境中执行注册表查询语句,命令如下。连接的端口为0xd3d,转换后为3389.
(2)在Windows server 2003中开启3389端口
(3)在Windows server 2008 和Windows server 2012中开启3389端口
17.远程桌面连接历史记录
cmdkey /l
0x03:自动收集信息
1.wmic_info.bat
为了简化操作,我们可以编写一个脚本,在目标机器上完成流程、服务、用户账户、用户组、网络接口、硬盘信息、网络共享信息、操作系统、安装的补丁、安装的软件、启动时运行的程序、时区等信息的查询工作。
WMIC(Windows management instrumentation command-line ,Windows管理工具命令行)是最有用的Windows命令行工具。在默认情况下,任何版本的Windows xp 的低权限用户不能访问wmic,win 7以上版本的低权限用户允许访问wmic并执行相关查询命令。
wmic脚本地址:http://www.fuzzysecurity.com/scripts/files/wmic_info.rar
执行该脚本,会将所有结果写入一个html文件中。
2.empire
Empire提供了用于收集主机信息的模块。输入命令"usemodule situational_awareness/host/winenum" 即可查看本机用户、域组成员、密码设置时间、剪贴板内容、系统基本信息、网络适配器信息、共享信息等。
另外,situational_awareness/host/computerdetails模块几乎包含了系统中所有有用的信息,例如目标主机事件日志、应用程序控制策略,包括RDP登录信息、PowerShell脚本运行和保存的信息等。需要管理员权限才能运行。