信息网络的深度,直接关系到内网渗透测试的成败
内网信息网络概述 进入内网后,要对环境有所判断。紧张包括
php

123
(1) 对当前机器角色的判断(2) 对当前机器所在网络环境的拓扑构造进行剖析和判断(3) 对当前机器所处区域的判断
对当前机器角色的判断,指判断当前机器是普通web做事器,开拓测试做事器,公共做事器,文件做事器,代理做事器,DNS做事器还是存储做事器等,详细的判断过程,是根据机器的主机名,文件,网络连接等情形综合完成的。
对当前机器所在网络环境的拓扑构造进行剖析和判断,指对所处内网进行全面的数据网络和剖析整理,绘制出大致的内网整体拓扑构造图
对当前机器所处区域的判断是指机器处于网络拓扑中的那个区域,是在DMZ,办公区还是核心区。
网络本机信息手动网络本机信息 本机信息包括操作系统,权限,内网IP地址段,杀软,端口,做事,补丁更新频率,网络连接,共享,会话等。如果是域内主机,操作系统,运用软件,补丁,做事,杀软一样平常都是批量安装的。
1.查询本机网络配置
php
1
ipconfig /all
2.查询操作系统及软件的信息
(1)查询操作系统的版本信息
php
1
systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
php
1
systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
image-20200523091942157
(2)查看系统体系构造
plain
1
echo %PROCESSOR_ARCHITECTURE%
image-20200523092311657
(3)查看安装的软件及版本,路径等
php
1
wmic product get name,version
image-20200523092509673
由于做事器中尚未安装任何软件,以是就显示如上图。
3. 查询本机做事信息
php
1
wmic service list brief
image-20200523093455077
4. 查询进程列表
实行如下命令,可以查看当提高程列表的进程用户,剖析软件,邮件客户端,VPN和杀软等进程
php
1
tasklist
image-20200523093401608
查看进程信息
php
1
wmic process list brief
image-20200523094007096
5. 查看启动程序信息
php
1
wmic startup command,caption
image-20200523094306188
6. 查看操持任务
php
1
schtasks /query /fo LIST /v
image-20200523094558304
7. 查看开机韶光
实行如下命令,查看开机韶光
php
1
net statistics workstation
image-20200523094910357
8. 查询用户列表
实行如下命令,查看本机用户列表
php
1
net user
image-20200523095346301
通过剖析本机用户列表,可以找出内网机器的命名规则。特殊是个人机器的名称,可以用来推测全体域的用户命令办法
实行如下命令,获取本地管理员(常日包含域用户)信息
php
1
net localgroup administrators
image-20200523095728956
可以看到,本地管理员有一个组,一个用户,如图2-13所示。默认Dmain Admins组中为域内机器确当地管理员用户。在真实的环境中,为了方便管理,会有域用户被添加为域机器确当地管理用户。
实行如下命令,查看当前在线用户
php
1
query user || qwinsta
image-20200523100902647
9. 列出或断开本地打算机与所连接的客户端之间的会话
php
1
net session
10. 查询端口列表
php
1
netstat -ano
image-20200523101851074
11. 查看补丁列表
实行如下命令,查看系统的详细信息
php
1
systeminfo
image-20200523102149634
image-20200523102307651
php
1
注:需把稳系统的版本,位数,补丁信息及更新频率等。域主机的补丁常日是批量安装的,通过查看本机补丁列表,就可以找到未打补丁的漏洞。可以看到,当前系统更新了九个补丁
利用wmic命令查看安装在系统中的补丁,详细如下:
php
1
wmic qfe get Caption,Description,HotFixID,InstalledOn
image-20200523103330515
12. 查询本机共享列表
实行如下命令,查看本机共享列表和可访问的域共享列表(域共享在很多时候是相同的)
image-20200523105616990
利用wmic命令查找共享列表,详细如下
php
1
wmic share get name,path,status
image-20200523110932455
13. 查询路由表及所有可用接口的ARP缓存表
image-20200523113029832
image-20200523113715849
14. 查询防火墙干系配置
(1)关闭防火墙
Windows Server 2003以及之前的版本
php
1
netsh firewall set opmode disable
Windows Server 2003之后的版本
php
1
netsh advfirewall set allprofiles state off
(2)查看防火墙配置
php
1
netsh firewall show config
(3)修正防火墙配置
Windows Server 2003及之前的版本,许可指定的程序全部连接
php
1
netsh firewall add allowdprogram c:\nc.exe "allow nc" enable
Windows Server 2003之后版本,情形如下。
许可指定程序进入,命令如下:
php
1
netsh advfirewall firewall add rule name="pass nc" dir=in action=allow program="C: \nc.exe"
许可指定程序退出,命令如下:
php
1
netsh advfirewall firewall add rule name="Allow nc" dir=out action=allow program="C: \nc.exe"
许可3389端口放行,命令如下:
php
1
netsh advfirewall firewall add rule name="Remote Desktop" protocal=TCP dir=in localport=3389 action=allow
自定义防火墙日志的存储位置
php
1
netsh advfirewall set currentprofile logging filename "C:\windows\temp\fw.log"
15. 查看代理配置情形
实行如下命令,可以看到做事器127.0.0.1的1080端口的代理配置信息,如图2-22所示
php
1
reg query "HKEY_CURRENT_USESoftware\Microsoft\Windows\CurrentVersion\Internet Settings"
16. 查询并开启远程连接做事
(1)查看远程连接端口
在命令行环境中实行注册表查询语句,命令如下。连接的端口为0xd3d,转换后为3389
php
1
REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStation\RDP-Tcp" /V PortnNumber
(2)在Windows Server 2003 中开启3389端口
php
1
wmic path win32_terminalservicesetting where (__CLASS != "") call setallowtsconnections 1
(3)在Windows Server 2008和Windows Server 2012中开启3389端口
php
1
wmic /namespace:\\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections 1
自动网络本机信息
编写一个bat脚本用于自动化网络本机信息。
image-20200525001943341
Empire下的信息网络内网工具学习之Empire后渗透
查询当前权限查看当前权限查看当前权限,命令如下:
php
1
whoami
得到一台主机的权限后,有如下三种情形
本地普通用户:当前win10本机的user用户
image-20200525224317654
本地管理员用户:当前为win server 2008 R2本机的administrator用户
image-20200525224729027
域内用户:当前为hacke域内的adminstrator用户
image-20200525224901386
在这三种情形中,如果当前内网中存在域,那么本地普通用户只能查询本机干系信息,不能查询域内信息,而本地管理员用户和域内用户可以查询域内信息。域内的所有查询都是通过域掌握器实现的(基于LDAP协议),而这个查询须要经由权限认证,以是,只有域用户拥有这个权限,当域用户实行查询命令时,会自动利用kerberos协议进行认证,无须额外的输入账号密码
域渗透之Kerberoast攻击
LDAP观点和事理先容
本地管理员administrator权限可以直接提升为Nauthority或System权限,因此,在域中,除普通用户外,所有机器都有一个机器用户。实质上,机器的system用户对应的便是域里面的机器用户。以是,利用system权限可以运行域内的查询命令。
获取域SID实行如下命令,得到域SID
php
1
whoami /all
image-20200525231626329
当前域的SID为S-1-5-21-14.......5644
域用户administrator的SID为S-1-5-21-14.......5644-500
查询指定用户的详细信息
php
1
net user XXX /domain
image-20200525232003763
可以看到testuser在域中属于Domain Users组
判断是否存在域 在得到本机的干系信息后,要判断当前内网中是否存在域。如果当前内网中存在域,就须要判断所控主机是否在域内。
利用ipconfig命令php
1
ipconfig /all
查看网关IP地址,DNS的IP地址,域名,本机是否和DNS做事器处于同一网段等信息。通过域名,利用nslookup反向查询
image-20200526165941469
查看系统详细信息 实行命令
php
1
systeminfo
如图所示
image-20200526182917930
如图所示,如果”域”为”WORKGRUOP”,那么当前做事器不在域内。
查询当前登录域及登任命户信息php
1
net config workstation
image-20200526195850998
当事情站域DNS名称为”域名”,”登录域”用于表示当前登录的用户是域用户还是本地用户,此处表示当前登录为本地用户。
image-20200526200833383
此时表示当前登录的是域用户
判断主域php
1
net time /domain
实行命令,判断主域(域做事器常日同时作为韶光做事器利用)
image-20200526201142634
可见DC.kache.testlab为域做事器
探测域内存活主机 内网存活主机探测是内网渗透测试中不可或缺的一个环节。可在白天和晚上分别进行比拟剖析存活主机和对应的IP地址
利用NetBIOS快速探测内网 NetBIOS的事情流程便是正常的机器名解析查询应答过程,因此推举优先利用
php
1
nbtscan.exe 192.168.1.0/20
image-20200526203710918
利用ICMP协议探测内网利用如下命令循环探测全体C端网络
php
1
for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.1.%I | findstr "TTL="
image-20200526203133836
此外还可以利用ARP探测内网
探测域内端口 通过查询目标主机的端口开放信息,不仅可以理解目标主机所开放的做事,还可以找出其开放做事的漏洞,剖析目标网络的拓扑构造等,详细须要关注以下三点:
php
123
端口的Banner信息端口上运行的做事常见运用的默认端口
在进行内网渗透测试时,常日会利用Metasploit内置的端口扫描器进行扫描,也可以上传端口扫描工具进行扫描。
端口的Banner信息,参考文章 戳这里
网络域内信息 确定了当前内网拥有的域,且所掌握的主机在域内,就可以进行域内干系信息的网络了。接下来讲的查询命令实质上都是通过LDAP协议到域掌握器上进行查询的,以是在查询时,须要进行权限认证。只有域用户才拥有此权限,本地用户无法运行接下来先容的查询命令(System权限用户除外)
### 查询域
查询域的命令如下:
php
1
net view /domain
image-20200528212921146
查询域内所有打算机 实行如下命令,就可以通过查询得到的主机名对主机角色进行初步判断。
php
1
netview /domain:hacke
image-20200528213114534
查询域内所有用户组列表 实行如下命令,查询域内所有用户组列表
php
1
net group /domain
image-20200528213434255
该域中有13个组。系统自带的常用用户身份如下
php
123456
Domain Admins域管理员对域内所有的域掌握器有完备掌握权限Domain Computers 域内机器Domain Controllers 域掌握器Domain Guest域访客 权限较低Domain Users域用户Enterprise Admins 企业系统管理员用户 对域内所有域掌握器有完备掌握权限
查询域管理员账号
php
1
net group "domain admins" /domain
查询域掌握列表
php
1
net group "domain controllers" /domain
查询所有域成员打算机列表
php
1
net group "domain computers" /domain
image-20200528214914111
获取域密码信息 实行如下命令,获取域密码策略,密码长度,缺点锁定等信息。
php
1
net accounts /domain
image-20200528215223633
获取域信赖信息 实行如下命令,获取域信赖信息
php
1
nltest /domain_trusts
image-20200528215418928
查看域掌握器查看域掌握器的机器名 实行如下命令,可以看到,域掌握器的机器名为”DC”
php
1
nltest /DCLIST:hacke
image-20200528215708407
查看域掌握器的主机名 实行如下命令,可以看到,域掌握器的主机名为”dc”
php
1
Nslookup -type=SRV _ldap._tcp
image-20200528225003374
查看当前韶光 在常日情形下,韶光做事器为主理事器
php
1
net time /domain
image-20200528225251740
查看域掌握器组 实行如下命令,查看域掌握器组。
plain
1
net group "Domain Controllers" /domain
image-20200528225625032
注:在实际网络中一样平常存在两台或者两台以上的域掌握器,用于容灾。
php
1
netdom query pdc
image-20200528225805986
获取域内的用户和管理员信息查询所有域用户列表 (1)向域掌握器进行查询
实行如下命令,向域掌握器DC进行查询
php
1
net user /domain
image-20200528230157066
(2)获取域内用户的详细信息
实行如下命令得到域内用户的详细信息
php
1
wmic useraccount get /all
image-20200528230409615
(3)查询本地管理员用户
php
1
net localgroup administrators
image-20200528230620079
查询域管理员用户组 (1)查询域管理员用户
实行如下命令
php
1
net group "domain admins" /domain
image-20200528231229311
(2)查询管理员用户组
实行如下命令
php
1
net group "Enterprise Admins" /domain
image-20200528231520883