查看网络配置
• Windows系统:ipconfig /all
• Linux系统:ifconfig
查看操作系统信息
• Windows系统:systeminfo | findstr OS
• Linux系统:uname –a 或 cat /proc/version
查看安装的软件及版本
• Windows系统: wmic product get name,version
wmic是什么?
• WMIC(Windows Management Instrumentation,Windows管理规范命令行)提供
了从命令行接口和批命令脚本执行系统管理的支持
• WMIC,是一款命令行管理工具。使用WMIC,我们不但可以管理本地计算机,而且还
可以管理同一Windows域内的所有远程计算机(需要必要的权限),而被管理的远程计
算机不必事先安装WMIC,只需要支持WMI即可。WMIC有一个能够分析、解释和执行
从命令行接收的别名(Alias)的引擎,它是一个可执行文件,名为WMIC.exe,这个文
件通常位于“c:\windows\system32\wbem”文件夹中(支持WinXP和Win2003系统
)。这样就比较好理解了吧,可以使用WMI管理远程计算机
查看安装的软件及版本
• Linux系统
• dpkg –l :列出所有安装的文件和库
• dpkg –l 软件名称 :列举安装的版本
查看本机服务信息
• Windows系统:wmic service list brief 或 net start
• Liunx系统 :service --status-all
• + 表示服务正在运行;
• - 表示服务已停止;
• 服务状态:service 服务名 status
查看进程列表
• Windows系统
• 查看进程:tasklist
• 查看某一个进程: tasklist | findstr “ftp”
• 查看进程:wmic process get name,processid
查看进程列表
• Linux系统
• 查看进程: ps –aux 或 ps –ef
• 搜索某个进程: ps –aux | grep ftp
查看启动信息
• Windows系统:wmic startup get command,caption
• Linux系统:dmesg
查看任务计划
• Windows系统:at 或 schtasks
• net start 可以查看对应的计划任务服务task scheduler是否启动
• Linux系统: crontab -l
查看开机时间
• Windows系统:net statistics workstation
• Linux系统:cat /proc/uptime
date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"
cat /proc/uptime| awk -F. '{run_days=$1 / 86400;run_hour=($1 %86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("系统已运行:%d天%d时%d分%d秒",run_days,run_hour,run_minute,run_second)}'
查看用户列表
• Windows系统:
• 查看本即用户列表:net user
• 查看本地管理员信息:net localgroup administrators
• 查看当前在线用户:query user || qwinsta
• Linux系统
• 查看所有用户: cat /etc/passwd
• 查看用户组: cat /etc/group
查看端口列表
• Windows系统: netstat –ano
• 根据pid结合tasklist可以找到具体的程序
• Linux系统: netstat –antpl
查看补丁列表
• Windows系统
• systeminfo
• wmic qfe get caption,description,hotfixid,installedon
查看本机共享列表
• Windows系统
• net share
• wmic share get name,path,status
查看路由表及ARP信息
• Windows系统
• route print
• arp -a
• Linux系统:
• arp –a
• route
查看防火墙相关配置
• Windows Server 2003之后:
• 查看防火墙配置: netsh firewall show config
• 打开防火墙配置: netsh advfirewall set allprofiles state on
• 关闭防火墙配置: netsh advfirewall set allprofiles state off
• 修改防火墙配置:
允许程序入站:• netsh advfirewall firewall add rule name="pass nc" dir=in action=allow program="C:\nc.exe"
• 允许指定程序出站 :• netsh advfirewall firewall add rule name="out nc" dir=out action=allow program="C:\nc.exe"
• 允许RDP(3389)端口放行: netsh advfirewall firewall add rule name="Remote
Desktop" protocol=TCP dir=in localport=3389 action=allow
查看注册表参数
• REG QUERY 命令参数(注册表)
查看远程连接情况
• 查看远程连接端口是否更改:很多时候RDP协议端口容易被更改
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber
开启和关闭远程桌面
• 打开远程桌面:
• REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v
fDenyTSConnections /t REG_DWORD /d 0 /f
• 关闭远程桌面:
• REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v
fDenyTSConnections /t REG_DWORD /d 1 /f
• 查看远程桌面开启状态:
• REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v
fDenyTSConnections /t REG_DWORD
查看当前用户权限
• Windows/Linux系统:whoami
查看域信息
• Windows系统
• ipconfig /all :查看网关地址、DNS的IP地址、域名、本即是否DNS服务器处于一个网段
• nslookup +域名 :解析出的域名服务器的IP地址和DNS服务器IP是否一致;
• systeminfo :确定用户的登陆域
查看域信息
• 判断是否在主域: net time /domain
• 依据:域服务器通常会同时作为时间服务器使用
• 注意:需要在域用户登录的机器中查看
• 查询当前登录域及登录用户信息: net config workstation
本机信息自动化收集——WMIC脚本
• WMIC(Windows Management InstrumentationCommand Line)
• 提供了从命令行接口和批命令脚本执行系统管理的支持
• 利用WMIC,管理工具命令行,编写脚本自动获取相关信息,然后输出一个HTML文档
域信息收集——查询域内所有用户
• 查询域内所有用户:net group /domain
• 注意:在域用户登录的机器中查看
查询域成员机器
• 查询域成员计算机:net group “domain computers”/domain
获取域密码策略信息
• 获取域密码策略信息:net accounts /domain
获取域信任信息
• 获取域信任信息:nltest /domain_trusts
域内活跃主机探测——NetBIOS探测
• NetBIOS(Network Basic Input/Output System)即网络基本输入/输出系统协议,。
• NetBIOS协议是一种在局域网上的程序可以使用的应用程序编程接口(API),为程序提供了请求低级服务的统一的命令集,作用是为了给局域网提供网络以及其他特殊功能,几乎所有的局域网都是NetBIOS协议的基础上工作的。
• nbtscan.exe是一个命令行工具,可以扫描本地或者远程网路上开放的NetBIOS名称服务,可以获取对应的域名信息。
ICMP扫描
• ICMP协议全称为 Internet Control Message Protocol (Internet控制报文协议),依次
对内网中的每个IP地址执行ping命令,可以快速找到内网中全部存活的主机
• 要求在cmd窗口执行:
• for /L %I in (1,1,254) Do @ping -w 1 -n 1 192.168.11.%I | findstr "TTL="
ARP扫描
• 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址
的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的
所有主机,并接收返回消息,以此确定目标的物理地址
• 工具:arp-scan.exe
Metasploit
进入:msfconsole
扫描搜索模块:search portscan
使用模块:use auxiliary/scanner/portscan/tcp或use 5
查看需要填写的参数:show options
设置参数:
set ports 80,139,445,22,3389
set ports 80,139,445,22,3389
直接运行: run/exploit
查询域内用户和管理员——查询用户列表
• 向域控制器查询:net user /domain
• 获取域内用户详细信息 :wmic useraccount get /all
• 查询存在用户 :dsquery user
• 查询本地管理员组用户:net localgroup administrators
查询管理员用户组
• 查询域管理员用户:net group “domain admins” /domain
• 查询管理员用户组:net group “Enterprise admins” /domain
敏感信息收集——资料、文件和数据
• 数据和文件定位:
• 定位内部人事组织架构
• 监视等重要人员
• 监视人员设备
• 人员存放文档的位置
• 列举文档服务器目录
核心业务机器
1、高级管理、人事、财务等个人电脑
2、产品管理系统服务器
3、办公系统服务器
4、财务应用系统服务器
5、核心产品源码服务器
6、数据库服务器
7、文件/共享服务器
8、电子邮件服务器
9、网络监控服务器
10、供应链服务器
敏感信息和文件
1、网站源码备份文件、数据库备份文件
2、各类数据库的WEB管理/后台入口
3、浏览器密码和浏览器Cookie
4、远程桌面连接
5、回收站
6、个人及服务器相关密码
7、无线密码
8、各类系统账号和密码等
9、浏览器浏览记录
基本的WEB架构
• ASP+Access+IIS 5.0/6.0+Windows Server
• ASP+MYSQL+ IIS 7.0 +Windows Server 2003
• PHP+MYSQL+IIS
• PHP+MYSQL+APACHE
• PHP+MYSQL+NGNIX
• JSP+MYSQL+NGNIX
• JSP+MYSQL+TOMCAT
• JSP+Oracle+tomcat
相关工具——PowerShell收集信息
PowerShell是微软推出的一款满足管理员对操作系统及应用程序扩展需求的一个脚本环境,是cmd.exe的加强版
• Powershell脚本的4种执行权限介绍
• Restricted - 默认的设置, 不允许任何script运行
• AllSigned - 只能运行经过数字证书签名的script
• RemoteSigned - 本地脚本不做限制,网络上下载的script就必须要有数字签名
• Unrestricted - 允许所有的script运行,权限最高
• windows默认不允许任何脚本运行,可以使用 "Set-ExecutionPolicy" cmdlet 来更改这个策略
PowerShell收集信息
• 下载地址:https://github.com/PowerShellEmpire/PowerTools
• PowerView是一款依赖Powershell和WMI对内网进行查询的渗透测试脚本