目录
0x01 常规手段
ipconfig /all 获取网络配置信息
systeminfo 查询操作系统和版本信息、补丁信息等主机信息
systeminfo | findstr /B /C:"OS 系统" /C:"OS 版本" 查看系统相关信息
echo %PROCESSOR_ARCHITECTURE% 查看系统体系结构
wmic product get name,version 查看系统安装的软件和版本
wmic service list brief 查询本机服务信息
tasklist 查询进程列表
wmic process list brief 查询进程信息
wmic startup get commmand,caption 查看启动程序信息
net user 查看用户列表
net statistics workstation 查看开机时间
net localgroup administrators 获取本地管理员信息
query user || qwinsta 查看当前在线用户
netstat -ano 查询端口列表
wmic qfe get Caption,Description,HotFixID,InstalledOn 使用wmic命令查看安装在系统中的补丁
net share 查询本机共享列表
route print 查询路由表
arp -a 查询可用接口的arp缓存表
0x02 自动收集信息
为了简化操作,可以编辑脚本进行内网主机信息收集。在执行第一条的时候需要注意bat脚本的for语言用法,其基本格式为【在cmd窗口中输入:for %I in (command1) do command2】【在批处理脚本中输入:for %II in (command1) do command2】。其次是需要注意结果需要使用变量存放,我在输出的时候删除变量直接打印会有问题。
for /f "delims=" %%A in ('dir /s /b %WINDIR%\system32\*htable.xsl') do set "var=%%A"
wmic process get CSName,Description,ExecutablePath,ProcessId /format:"%var%" >> out.html
wmic service get Caption,Name,PathName,ServiceType,Started,StartMode,StartName /format:"%var%" >> out.html
wmic USERACCOUNT list full /format:"%var%" >> out.html
wmic group list full /format:"%var%" >> out.html
wmic nicconfig where IPEnabled='true' get Caption,DefaultIPGateway,Description,DHCPEnabled,DHCPServer,IPAddress,IPSubnet,MACAddress /format:"%var%" >> out.html
wmic volume get Label,DeviceID,DriveLetter,FileSystem,Capacity,FreeSpace /format:"%var%" >> out.html
wmic netuse list full /format:"%var%" >> out.html
wmic qfe get Caption,Description,HotFixID,InstalledOn /format:"%var%" >> out.html
wmic startup get Caption,Command,Location,User /format:"%var%" >> out.html
wmic PRODUCT get Description,InstallDate,InstallLocation,PackageCache,Vendor,Version /format:"%var%" >> out.html
wmic os get name,version,InstallDate,LastBootUpTime,LocalDateTime,Manufacturer,RegisteredUser,ServicePackMajorVersion,SystemDirectory /format:"%var%" >> out.html
wmic Timezone get DaylightName,Description,StandardName /format:"%var%" >> out.html
快速扫描内网网段
for /L %I in (1,1,254) do @ping -w 1 -n 1 192.168.101.%I | findstr "TTL="
0x03 初识Powershell
一个PowerShell脚本其实就是一个简单的文本文件,扩展名为“.ps1”,在该文件中包含一系列PowerShell命令,每个命令显示为独立的一行。
在Windows中为了防止恶意执行脚本,PowerShell提供了一个限制策略,限制了PowerShell脚本的执行。在需要执行“.ps1”脚本的时候需要修改该策略。
按照优先顺序显示每个作用域的执行策略,使用Get-ExecutionPolicy -List。查看PowerShell会话的有效执行策略,不带参数即可。
PowerShell操作文件的常规用法:
新建目录:New-Item whitecellclub-ltemType Directory
新建文件:New-Item light.txt-ItemType File
删除目录:Remove-Item "绝对路径\目录名"
显示文本内容:Get-Content file.txt
设备文本内容:Set-Content file.txt-Value "hello,World!"
追加内容:Add-Content file.txt-Value "++++"
清楚内容:Clear-Content file.txt