防火墙的识别
通过发送一些数据包判断指定的端口是否开放,以下规则比较常见:
用nmap的话呢使用-sA这个参数,来匹配一下返回的内容,看下防火墙的一些问题。
负载均衡的识别
- 轮询:就是隔几秒换一个
- 区域:每个地方访问的IP不一样
- 智能:那个在这个时间段快用哪个
使用lbd进行识别:lbd www.baidu.com
WAF识别
使用wafw00f进行扫描:wafw00f http://www.baidu.com
使用nmap进行扫描:nmap www.baidu.com --script=http-waf-detect.nse
nmap常用参数
- 主机发现:
- -iL参数是对文件中扫描
- -iR参数随机扫描,需要提供一个个数
- –exclude参数排除指定的IP范围
- -sL参数只是单纯的列出IP
- -sn参数只是检测存活不做端口扫描
- -Pn参数强制发送,彻底删,即使没有收到目标收到的信息nmap还是发送该发送的数据包(防火墙)
- -PS/PA/PU/PY参数其实就是进行SYN ACK UDP这些类型的端口扫描
- -PE/PP/PM查看输出,时间戳,子网掩码
- -PO参数是进行IP层的Ping发现
- -n不做域名解析,-R 做反向域名解析
- –dns-servers 指定dns服务器
- –tracerout参数进行域名跟踪
- 端口扫描:
- -sS参数使用SYN扫描
- -sT全连接扫描
- -sA使用ACK的扫描
- -sW使用Windows窗口扫描
- -sM一个ACK+FIN的数据包
- -是sU使用UDP的扫描
- -sN参数就是什么都没有
- -sF参数就是发一个FIN包
- -sX参数就是发一个FIN+PSH+URG的包
- –scanflags 指定TCP的flags
- -sI参数是僵尸扫描
- sY/sZ参数是对SCTP参数扫描
- -sO是IP扫描
- -b对FTP中继扫描
- -p值参数指定端口
- U: T:后面跟着端口分别是UDP和TCP(-p U:20 T:21)
- -F使用快速扫描,扫的少的意思
- -r参数是连续扫描(默认是随机顺序扫描)
- -top-ports指定前面的多少个端口
- -sV进行服务识别
- –version-intensity指定服务扫描深度(0-9)
- 脚本扫描:
- -sC指定脚本
- –script=指定运行到脚本
- –script-args=指定参数
- –script-updatedb更新脚本
- –script-help是查看脚本帮助信息
- 操作系统检测
- -O参数检测OS
- –min-xxxxx这个看文档吧,太多了,就是最少的并行数啊,最少响应时间之类的设置
- –scan-delay 10s 每次探测间隔的秒数
- 防火墙绕过
- -D参数伪造源地址,只是产生噪声IP,迷惑目标系统
- -S欺骗原地址一般和-e配合
- -e指定网卡接口
- -g指定的原端口(nmap使用的)
- –proxies使用代理服务器进行扫描
- –data=hex 指定我们发送扫描包的时候增加数据
- –ip-options设置IP字段
- –spoof-mac 欺骗mac地址
- –badsum参数发送错误的checksum字段以此来欺骗部分防火墙