内网渗透-信息收集


主机发现

1
2
3
4
5
6
7
8
9
网络连接( netstat -ano)
路由表 (route print)
IP端 (192,172, 10)
NEW家族( net view、 net session)
ARP (arp -a)
nbtstat (nbtscan.exe cidr)
ICMP (ping -n 1 ip、ping -c 1 ip)
HOSTS (c:\Windows\system32\drivers\etc\hosts)
DNS Cache ( ipconfig /displaydns)

内网IP收集

1
2
3
4
5
ping c段
for /l %i in (1,1,255) do @ping 172.16.0.%i -w 1 -n 1 | find /i "ttl"
for /l %i in (1,1,255) do @ping 192.168.31.%i -w 1 -n 1 | find /i "ttl"
ping b段
for /I %i in (1,1,255) do @ping -a 10.0.%i.1 -w 1 -n 1 | find /i "ping"

利用NETBIOS发现主机

1
2
3
1.nbtstat(Windows自带命令)
获取目标主机MAC地址
nbtstat -A 192.168.100.200

扫描指定网段的主机名和网络开放共享

1
2
nbtscan.exe 192.168.100.1/24
SHARING表示开放,DC表示可能是域控

工作组/域下基础信息收集

  • 主机信息收集
  • 搜集本地敏感文件
  • 域信息收集
主机信息收集
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
权限(提权、虚拟机)whoami /all
操作系统(2003/xp、2008/win7、2012及以后、详细版本)
进程(杀软、hids等监控agent) tasklist /svc
网络配置( ipconfig /all)
网络连接 (本地端口、连接、代理、wpad) netstat -ano、 route print
用户(特定组) net localgroup administrators、 net user (用户名)
arp (arp -a)
RDP(记住密码、连接记录)
补丁(wmic qfe get hotfixid)
IPC连接(net use、net seesion)
默认共享( net share)
防火墙
启动项、日志防火墙
关闭
放行
防火墙放行
允许tcp53连入
netsh firewall add portopening TCP 53 “nc reverse shell"
netsh advfirewall firewall add rule name="nc bind shell" dir=in action=allow protocol=TCP
localport=53
允许tcp53出
netsh advfirewall friewall add rule name=“nc reverse shell" dir=out action=allow protocol=TCP
localport=53
2003允许指定进程全部连接
netsh firewall add allowedprogram c:\nc.exe "allow nc" enable
2003以后允许指定进程连入
netsh advfirewall firewall add rule name="pass nc" dir=in action=allow program="C:\nc.exe"
允许指定进程连出

内网定位

人员定位
  • 内部邮箱(X-Originating-IP)Bloodhound
  • 人力资源名单
  • 查找域管进程
文件定位
  • 特定部门、人员机器及特定部门文件服务器
  • 检查访问记录
  • SMB共享/FTP/Database
收集用户配置中搜集明文密码 - Windows
  • Windows无人值守文件

  • 常用目录

    1
    2
    3
    4
    5
    6
    C:\unattend.xml
    C:\Windows\Panther\Unattend.xml
    C:\Windows\Panther\Unattend\Unattend.xml
    C:\Windows\system32\sysprep.inf
    C:\Windows\system32\sysprep\sysprep.xml
    post/windows/gather/enum_unattend
  • 自动登录

    1
    2
    3
    4
    5
    6
    7
    8
    9
    reg query "HKLM\SOFTWARE\Microsoft\Windows NT\Currentversion\Winlgon"
    HTTP 401(.htpasswd)
    web.conf
    config.php
    tomcat-users.xml
    WEB-INF/Web.xml
    conn.asp
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\Web.config
    C:\inetpub\wwwroot\web.config
    收集用户配置中搜集明文密码 - Windows Command
  • 发现包含password文件

    1
    2
    3
    findstr /si password *.txt
    findstr /si password *.xml
    findstr /si password *.ini
  • 搜素常用配置文件

/s:显示当前或指定目录中所有文件
/b:显示文件名和扩展名

1
2
3
4
5
6
dir /b /s unattend.xml
dir /b /s web.config
dir /b /s sysprep.inf
dir /b /s sysprep.xml
dir /b /s *pass*
dir /b /s vnc.ini

域信息收集

  • 域用户、本地用户、SYSTEM
  • 查找DC
  • 访问域Tips
  • LDAP信息收集
域用户\本地用户\SYSTEM
1
2
3
4
5
6
7
8
9
10
域用户
domain\username
本地用户
hostname\username
SYSTEM
ntauthority\system
net localgroup administrators /domain
Tips:LDAP只能经过认证的域用户可以查询
即使机器加入域,本地用户也不能进行LDAP查询
SYSTEM等同于hostname$(机器用户),故SYSTEM可以进行LDAP查询

域内信息收集

  • 收集域内域控制器信息
  • 收集域控上域用户登录日志信息
  • 收集域内所有用户名以及全名、备注等信息
  • 收集域内工作组信息
  • 收集域管理员账号信息
  • 收集域内网段划分信息
  • 收集域内组织单位信息

查找域控制器

1
2
3
4
5
6
7
8
net group "Domain Controllers" /domain
Nslookup -type=SRV_ldap._tcp
nltest /DCLIST:domainname
netdom query pdc
dsquery server-linmit 0}^
sel log
net time /domain
Get-NetDomainControllers

非域机器访问DC

1
2
3
4
5
注: 将攻击机DNS设置为域控制器
场景A ( VPN接入 )
net家族( 不可用 )
adexplorer (输入账号密码即可)
csvde/Idifde

LDAP查询工具

1
2
3
4
5
ADSI 编辑器 adsiedit.msc
csvde.exe/Idifde.exe
ADExplorer
dsquery
adfind 与 admod

LDAP 语法

1
2
3
4
5
6
7
8
9
用与号(&)表示的 AND 运算符
(&(department=dm)(city=xinjiang))用竖线(|)表示的 OR 运算法
(|(department=1234)(department=56*))
用感叹号( !)表示的NOT运算符
(!(uid=dm))
用名称和值表达式的等号(=)表示的相等比较
(uid=dm)
用名称和值表达式中值的开头或结尾处的星号(*)表示的通配符。
(!(uid=d*))

相关对象重要属性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
计算机对象比较重要的属性有
cn,dNSHostName,lastLogon,operatingSystem,operatingSystemVersion,
sAMAccountName,servicePrincipalName,description
用户对象比较重要的属性有
sAMAccountName,displayName,lastLogon,pwdLastSet,mail,accountExpires,
memberOf,description,homeDirectory,scriptPath
分辨一个对象是计算机对象还是用户对象或者其他用户组等对象,需要用到objectClass、
objectCategory来判断
用户对象的objectClass为top,person,organizationalPerson,user;
计算机对象的objectClass为top,person,organizationalPerson,user,computer,比用户对象多
一个computer。
SAMAccountType为0x30000000,用户
SAMAccountType为0x30000001,机器用户
注:lastLogon属性不在DC间同步

LDAP信息收集-dsquery

1
2
3
4
5
6
查询所有用户
dsquery user | dsget user -samid -display -email
dequery * froestroot -filter "(sAMAccountType=805306368)" -attr sAMAccountName
displaynamedescription
锁定阀值、时间、观察时间
dsquery * -d root.com -limit 1 -attr lockoutthreshold lockoutduration lockoutobservationwindw

LDAP信息收集-Adfind

1
2
3
查询所有用户AdFind.exe -default -f "(sAMAccountType=805306368)" sAMAccountName displayname
lastlogon pwdLastSet mail homedirectory scriptpath -int8time
lastlogon;pwdlastset

信息收集工具

upload successful

内网其他信息收集

upload successful


文章作者: thirteensummer
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 thirteensummer !
  目录