前言
本文主要是学习《内网安全攻防 渗透测试实战指南》的阅读笔记防止遗忘也是总结吧
基本命令
探测域内存活主机
利用NetBIOS
NetBIOS是局域网程序使用的一种应用程序编程接口,为程序提供了请求低级别服务的统一命令集,为局域网提供了网络及其他特殊功能。系统可以利用wins服务,广播及Lmhost文件等多种模式将NetBLOS名—特指基于netbios协议获得计算机名—-解析为相应ip地址,实现信息通讯
netblos的使用上传
nbt.exe,nbt.exe -m 192.168.124.0/24
./nbtscan -m 192.168.124.0/24
利用icmp协议快速探测内网
依次对内网的每个ip地址指向ping命令,可快速找到内网中所有存活的主机
for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.124.%I | findstr "TTL="
vbs脚本,执行注意修改ip段
cscript xxx.vbs
strSubNet = "192.168.0."
Set objFSO= CreateObject("Scripting.FileSystemObject")
Set objTS = objfso.CreateTextFile("C:\Windows\Temp\Results.txt")
For i = 1 To 254
strComputer = strSubNet & i
blnResult = Ping(strComputer)
If blnResult = True Then
objTS.WriteLine strComputer
End If
Next
objTS.Close
WScript.Echo "All Done !"
Function Ping(strComputer)
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * From Win32_PingStatus Where Address='" & strComputer & "'")
For Each objItem In colItems
Select case objItem.StatusCode
Case 0
Ping = True
Case Else
Ping = False
End select
Exit For
Next
End Function
通过arp探测内网
windows
arp.exe -t 192.168.124.0/24
linux(需要root权限)
apt-get install arp-scan
arp-scan --localnet
通过UDP发现内网存活主机
1.nmap
nmap -sU -T5 -sV --max-retries 1 192.168.124.129 -p 500
--max-retries < tries >: 扫描探针重发的端口盖数
2.msf
use auxiliary/scanner/discovery/udp_probe
use auxiliary/scanner/discovery/udp_sweep
3.unicornscan扫描
unicornscan -mU 192.168.124.129
扫描域内端口
msf
use auxiliary/scanner/portscan/tcp
收集域内基础信息
获取域内的用户和管理员信息
定位域管理员
在一个域中,当计算机加入域后,会默认给域管理员赋予本地系统管理员权限。因此,域管理员均可以访问本地计算机,且具备完全控制权限。
定位域内管理员的两种渠道:日志和会话。
日志是指本地机器的管理员日志,可以使用脚本或Wevtutil工具导出并查看。
会话是指域内每台机器的登陆会话,可以使用netsess.exe或PowerView等工具查询(可以匿名查询,不需要权限)。
PsLoggedon.exe
通过检验注册表里HKEY_USERS的key值来查询谁登陆过机器,同样也调用到了NetSessionEnum API。
PS:该工具的某些功能需要管理员权限
下载地址:https://docs.microsoft.com/en-us/sysinternals/downloads/psloggedon
参数 描述
- 显示支持的选项和用于输出值的度量单位
-l 仅显示本地登录,而不显示本地和网络资源登录
-x 不显示登录时间
\computername 指定要为其列出登录信息的计算机的名称
username 指定用户名,在网络中搜索该用户登陆的计算机
PVEFindADUser.exe
用于查找Active Directory用户的登录位置、枚举域用户,以及查找在特定计算机上登陆的用户,包括本地用户、通过RDP登陆的用户、用于运行服务和计划任务的用户。
运行该工具需要配置 .NET Framework 2.0 环境,并且需要具有管理员权限。
下载地址:https://github.com/chrisdee/Tools/raw/master/AD/ADFindUsersLoggedOn/PVEFindADUser.exe
.NET Framework 2.0环境下载地址(根据自己的环境下载):https://www.microsoft.com/zh-CN/download/details.aspx?id=1639
参数 描述
-h 显示帮助信息
-u 检测程序是否有新版本
-current ["username"] -current参数显示每台PC上当前登录的用户在域中。如果指定用户名(在引号之间),则仅将显示该特定用户登录的PC
-noping 阻止尝试枚举用户登录名之前对目标计算机执行ping命令
-target 此可选参数允许您指定要查询的主机。如果未指定此-target参数,则将查询当前域中的所有主机。如果决定指定-target,然后指定以逗号分隔的主机名。查询结果将被输出到report.csv文件中