渗透测试常用工具
Nmap
1. 基本参数
| 参数 | 描述 |
|---|---|
| -sP | ping扫描,Nmap在扫描端口时,默认都会使用ping扫描,只有主机存活,Nmap才会继续扫描 |
| -sS | 执行速度快,不容易被注意到, 可以避免被记入目标系统的日志, 需要root权限 |
| -sV | 进行服务版本扫描 |
| -O | 操作系统检测, 存在误报 |
| -Pn | 扫描之前不需要用ping命令 有些防⽕墙禁⽌ping命令 可以使⽤此选项进⾏扫描 |
| -sA | 这项高级的扫描方法通常用来穿过防火墙的规则集 |
| -e eth0 -S ip | 可以伪装源地址进行扫描 这样好处在于不会被对方发现自己的真实IP |
| -A | 全面系统检测、启用脚本检测、扫描等 |
| -v | 它会给出扫描过程中的详细信息 |
| -F | 快速扫描模式, 比扫描所有65535个端口要快 |
| -p | 指定端口 |
| -T0 | (偏执的) 非常慢的扫描, 用于IDS逃避 |
| -T1 | (鬼祟的) 缓慢的扫描, 用于IDS逃避 |
| -T2 | (文雅的) 降低速度以降低对带宽的消耗, 一般不同 |
| -T3 | (普通的) 默认,根据目标的反应自动调整时间 |
| -T4 | (野蛮的) 快速扫描, 需要在很好的网络环境下进行扫描, 请求可能会淹没目标 |
| -T5 | (疯狂的) 极速扫描, 以牺牲准确度来提升扫描速度 |
2. 脚本扫描
| 名称 | 功能 |
|---|---|
| —script=auth | 负责处理鉴权证书(绕开鉴权)的脚本 |
| —script=broadcast | 在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务 |
| —script=brute | 提供暴力破解方式,针对常见的应用如http/snmp等 |
| —script=default | 使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力 |
| —script=discovery | 对网络进行更多的信息,如SMB枚举、SNMP查询等 |
| —script=dos | 用于进行拒绝服务攻击 |
| —script=exploit | 利用已知的漏洞入侵系统 |
| —script=external | 利用第三方的数据库或资源,例如进行whois解析 |
| —script=fuzzer | 模糊测试的脚本, 发送异常的包到目标机, 探测出潜在漏洞 intrusive: 入侵性的脚本, 此类脚本可能引发对方的IDS/IPS的记录或屏蔽 |
| —script=malware | 探测目标机是否感染了病毒、开启了后门等信息 |
| —script=safe | 此类与intrusive相反,属于安全性脚本 |
| —script=version | 负责增强服务与版本扫描(Version Detection)功能的脚本 |
| —script=vuln | 负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067 |
Hydra
1. 基本参数
| 名称 | 功能 |
|---|---|
| -R | 继续从上一次进度接着破解 |
| -S | 采用SSL链接 |
| -s | PORT 可通过这个参数指定非默认端口 |
| -l | LOGIN 指定破解的用户,对特定用户破解 |
| -L | FILE 指定用户名字典 |
| -p | PASS 小写,指定密码破解,少用,一般是采用密码字典 |
| -P | FILE 大写,指定密码字典 |
| -e ns | 可选选项, n: 空密码试探; s: 使用指定用户和密码试 |
| -C FILE | 使用冒号分割格式,例如“登录名:密码”来代替-L/-P参数 |
| -M | FILE 指定目标列表文件一行一条 |
| -o | FILE 指定结果输出文件 |
| -f | 在使用-M参数以后,找到第一对登录名或者密码的时候中止破解 |
| -t | TASKS 同时运行的线程数,默认为16 |
| -w | TIME 设置最大超时的时间,单位秒,默认是30s |
| -v / -V | 显示详细过程 |
| server | 指定服务名,支持的服务和协议 |