文章目录
- 一、单机基础信息搜集
- 1、查询操作系统版本:
- 2、查看系统体系,判断位数:
- 3、查看安装软件的版本及路径:
- 4、查询机器服务信息:
- 5、查询进程列表:
- 6、查看机器自启动程序信息:
- 7、查看计划任务:
- 8、查看主机开机时间:
- 9、查看本机用户列表:
- 10、查询当前机器所有用户的详细信息
- 11、查看本地管理员(包含域用户):
- 12、查看当前在线用户:
- 13、列出或断开本地计算机与所连接的客户端之间的会话:
- 14、查询端口列表
- 15、查看安装在系统中的补丁:
- 16、查看本机共享列表和可访问的域共享列表:
- 17、查询路由表及arp缓存:
- 18、查看杀毒软件
- 19、关于防火墙的配置:
- 20、远程操作防火墙
- 21、查看代理配置状况:
- 22、查询并开启远程连接服务:
- 23、激活guest用户
- 24、Windows自带的端口转发
- 25、net session清除
- 二、域信息搜集
一、单机基础信息搜集
首先判断自己是谁,命令whoami
判断是否处在域环境,查看本机的所有网络配置,命令ipconfig /all
利用nslookup可以判断DNS服务器IP和域控IP,一般会将DNS服务搭建在域控机器上。
1、查询操作系统版本:
#英文系统版本
systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
#中文系统版本
systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
/B:从第一行开始匹配 /C:匹配后面的字符串
2、查看系统体系,判断位数:
echo %PROCESSOR_ARCHITECTURE%
wmic cpu get DataWidth /format:list
processor:处理器 architecture:体系结构
3、查看安装软件的版本及路径:
#执行速度有点慢
wmic product get name,version
#powershell
powershell "Get-WmiObject -class Win32_Product |Select-Object -Property name,version"
4、查询机器服务信息:
wmic service list brief
5、查询进程列表:
tasklist
wmic process list brief
6、查看机器自启动程序信息:
wmic startup get command,caption,user
wmic startup list full
7、查看计划任务:
#win7要改一下编码,chcp 437
schtasks /query /fo LIST /v
8、查看主机开机时间:
net statistics workstation
9、查看本机用户列表:
net user
10、查询当前机器所有用户的详细信息
wmic useraccount list brief
11、查看本地管理员(包含域用户):
net localgroup administrators
12、查看当前在线用户:
query user || qwinsta
13、列出或断开本地计算机与所连接的客户端之间的会话:
net session
14、查询端口列表
netstat -ano
15、查看安装在系统中的补丁:
systeminfo
#使用wmic
wmic qfe get Caption,Description,HotFixID,InstalledOn
wmic qfe get description,installedOn,HotFixID,InstalledBy
wmic qfe get CSName,Description,hotfixid
16、查看本机共享列表和可访问的域共享列表:
net share
wmic share get name,path,status
17、查询路由表及arp缓存:
route print
arp -a
18、查看杀毒软件
wmic /namespace:\\root\securitycenter2 path antivirusproduct GET displayName,productState, pathToSignedProductExe
19、关于防火墙的配置:
(1)关闭防火墙 //需要管理员权限
netsh firewall set opmode disable //03及之前版本
netsh advfirewall set allprofiles state off //03之后版本
(2)查看防火墙配置
netsh firewall show config
(3)修改防火墙配置
允许指定程序的全部连接(03之前):
netsh firewall add allowedprogram c:\nc.exe "allow nc" enable
#允许指定程序连接(03之后):
netsh advfirewall firewall add rule name="pass nc" dir=in action=allow program="C:\nc.exe"
#允许指定程序退出:
netsh advfirewall firewall add rule name="Allow nc" dir=out action=allow program="C:\nc.exe"
#允许3389端口放行:
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow
#(4)自定义防火墙日志的储存位置
netsh advfirewall set currentprofile logging filename "C:\windows\temp\fw.log"
20、远程操作防火墙
使用前提:远程系统需要开启允许Windows防火墙远程管理
。
开启命令:
netsh advfirewall set currentprofile settings remotemanagement enable
远程操作方法:
netsh -r 192.168.0.2 -u TEST\administrator -p domain123! advfirewall firewall add rule name="any" protocol=TCP dir=in localport=any action=allow
21、查看代理配置状况:
reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
22、查询并开启远程连接服务:
查看远程连接端口 得到结果0xd3d–>3389
REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /V PortNumber
在Win2003中开启3389端口:
wmic path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections
在2008和2012中开启3389端口:
wmic /namespace:\\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS !="") call setallowtsconnections 1
wmic /namespace:\\root\cimv2\terminalservices path win32_terminalservicesetting where (TerminalName='RDP-Tcp') call setuserauthenticationrequired 1
reg add "HKLM\SYSTEM\CURRENT\CONTROLSET\CONTROL\TERMINAL SERVER" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f
允许远程桌面连接
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
对于信息搜集,我们还可以使用自动化的工具,例如:wmic_info.bat,其会将执行的结果写入html。
下载地址:http://www.fuzzysecurity.com/scripts/files/wmic_info.rar
同样,还可以使用Empire中的信息搜集模块,==============================================================================+++++++++++++++++++++++++++++++++后续补充
23、激活guest用户
net user guest /active:yes
net user guest 123456
net localgroup administrators guest /add
24、Windows自带的端口转发
#安装IPv6
netsh interface ipv6 install
#将本机22端口转发到1.1.1.1的22端口
netsh interface portproxy add v4tov4 listenaddress=* listenport=22 connectaddress=1.1.1.1 connectport=22
#查看转发配置
netsh interface portproxy show all
#删除配置
netsh interface portproxy delete v4tov4 listenaddress=* listenport=22
#添加防火墙规则,允许连接22端口
netsh firewall set portopening protocol=tcp port=22 name=Forwardmode=enable scope=all profile=all
#另外注意防火墙的关闭与开启
netsh firewall set opmode disable
netsh firewall set opmode enable
25、net session清除
net session /delete /y
net use的发起方删除链接:
net use * /del /y
二、域信息搜集
探测内存存活机器
for /L %a in (1,1,254) DO @ping -n 1 192.168.1.%a | findstr "TTL" >> pinglog.txt
搜集当前内网中的dns信息
for /L %a in (1,1,254) DO @nslookup 192.168.1.%a | find "Name:" >> dnslog.txt
获取SID命令:
whoami /all
net user //查看本地机器的用户
net user /domain //查看域内所有用户
net user 用户名 /domain //查看指定域用户的信息
查看域内存在的用户,仅在server服务器上可以执行:
dsquery user
获取域内用户的详细信息:
wmic useraccount get /all
查看本地管理员组用户:会返回一个本地和一个域内的
net localgroup administrators
定位域管理员:
net group "domain admins" /domain
查询域管理员用户组:
net group "Enterprise Admins" /domain
添加域管理员
#添加域用户
net user shuteer xy@china110 /ad /domain
#添加域用户到域管理员组
net group "domain admins" shuteer /ad /domain
#查看域管理员组
net group "domain admins" /domain
查看当前登录域及登录用户信息:
net config workstation
判断主域: 域服务器通常作为时间服务器使用
net time /domain
会有三种情况,被拒绝说明存在域,但不是域用户。
查询所在域:
net view /domain
查询域内全部机器:
net view /domain:HACKERGU //列出的是计算机的名称
查询域内所有用户组列表:
net group /domain
通常Domain Admins和Enterprise Admins对域内所有域控具有完全控制权限。
查询所有域成员机器:仅仅是域成员,列出的是计算机名称
net group "domain computers" /domain
获取域信任关系:
nltest /domain_trusts
查找域控
查看域控的机器名:
nltest /DCLIST:HACKERGU
netdom query pdc
查看域控主机名,并列出其IP:
Nslookup -type=SRV _ldap._tcp
查看当前时间:
net time /domain //会返回时间服务器的域名,通常时间服务器就是域控制器。
查看域控制器组:返回域控机器名
net group "Domain Controllers" /domain