该篇主要介绍环境探索相关的技术和工具,收集数据,为后期横向移动做准备。
Windows:net user net localgroup
linux:枚举/etc/passwd文件
mac:dscl . list /Users
windows:net user /domain net group /domain
mac:dscacheutil -q group
linux: ldapsearch
Get-GlobalAddressList
遍历系统中的窗口信息,可以根据窗口的名称判断系统中有哪些软件,尤其是安全软件
收集浏览器相关信息,比如书签,访问历史等,可以收集信息用来钓鱼操作。也可以用来发现是否存在内网访问的web服务
可以在仪表盘中收集云服务的资源信息,服务信息等
CI|CD服务,云函数服务,安全服务,审计日志服务
云对象存储相当于云端文件系统,用来存储数据
收集容器信息,容器镜像,pod节点,集群状态,容器日志
IsDebuggerPresent NtQueryInformationProcess BeingDebugged
收集驱动信息,暴露安装的安全软件,虚拟化配置,潜在的可利用的漏洞
windows:driverquery.exe EnumDeviceDrivers函数
linux: /dev目录遍历 lsmod modinfo
DSEnumerateDomainTrusts Nltest工具
收集文件和目录信息 dir
, tree
, ls
, find
\
工具gpresult api: Get-DomainGPO Get-DomainGPOLocalGroup
wevtutil.exe
使用端口扫描工具,或漏洞扫描工具,收集本地或远程运行的服务信息
windows: net view \\remotesystem net share
mac:sharing -l
net accounts (/domain)
, Get-ADDefaultDomainPasswordPolicy
, chage -l
, cat /etc/pam.d/common-password
, and pwpolicy getaccountpolicies
密码策略包括但不限于设置密码长度,密码组成,密码试错次数
收集外设信息,键盘,鼠标,打印机,智能卡,移动硬盘,无线网卡
windows net localgroup
mac: dscl . -list /Groups
linux:groups
windows net group /domain
mac:dscacheutil -q group
linux ldapsearch
收集当前系统中运行的进程信息
windows CreateToolhelp32Snapshot函数 任务管理器 tasklist
mac|linux ps命令 遍历/proc目录
reg命令,注册表中保存安装的软件信息,系统配置信息等
收集ip地址,主机名,或者其他可用来做横向移动的标识符。可以读取本地host文件C:\Windows\System32\Drivers\etc\hosts
or /etc/hosts。或者在arp缓存中获取数据
收集安全软件相关信息
收集操作系统版本,补丁信息,服务包,系统架构
windows HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Language
api GetUserDefaultUILanguage, GetSystemDefaultUILanguage, GetKeyboardLayoutList and GetUserDefaultLangID
mac|linux $LANG环境变量
ping tracert curl
Windows netsh wlan show profiles netsh wlan show profile "Wi-Fi name" key=clear
linux /etc/NetworkManager/system-connections/
mac security find-generic-password -wa wifiname
windows netstat net use net session
linux|mac netstat lsof
windows whoami %USERNAME%
linux who $USER
mac dscl . list /Users | grep -v '_' $USER
sc query, tasklist /svc, systemctl --type=service, and net start.
获取系统时间信息
参考文章:ATT&CK系列之防御规避篇-CSDN博客