第七章 主动信息收集

主动信息收集
• 直接与目标系统交互信息
• 无法避免留下访问的痕迹
• 使用受控的第三方电脑
  • 使用代理或已经被控制的主机
  • 做好被封杀的准备
  • 使用噪声迷惑目标,淹没真实的探测流量
• 扫描
  • 发送不同的探测,根据返回结果判断目标状态

发现
• 识别活着的主机
  • 潜在的被攻击目标
• 输出一个IP地址列表
• 2、3、4层发现

二层发现

优点:扫描速度快、可靠

缺点:不可路由

ARP协议

  抓包

• arping
• arping 1.1.1.1 -c 1
• arping 1.1.1.1 -d
• arping -c 1 1.1.1.1 | grep "bytes from" | cut -d" " -f 5 | cut -d "(" -f 2 | cut -d")" -f 1

• nmap 1.1.1.1-254 –sn
• nmap -iL iplist.txt -sn

• Netdiscover
  • 专用于二层发现
  • 可用于无线和交换网络环境
  • 主动和被动探测
• 主动
  • netdiscover -i eth0 -r 1.1.1.0/24
  • netdiscover -l iplist.txt
• 被动
  • netdiscover -p
  • 主动arp容易触发报警

三层发现

• 优点
  • 可路由
  • 速度比较快
• 缺点
  • 速度比二层慢
  • 经常被边界防火墙过滤
• IP、icmp协议

• Ping 1.1.1.1 –c 2
• Ping -R 1.1.1.1 / traceroute 1.1.1.1
• ping 1.1.1.1 -c 1 | grep "bytes from" | cut -d " " -f 4 | cut -d ":" -f 1

• fping 1.1.1.1 -c 1
• fping -g 1.1.1.1 1.1.1.2
• fping -g 1.1.1.0/24
• fping -f iplist.txt

• Hping
  • 能够发送几乎任意TCP/IP包
  • 功能强大但每次只能扫描一个目标 ☹
• hping3 1.1.1.1 --icmp -c 2
• for addr in $(seq 1 254); do hping3 1.1.1.$addr --icmp -c 1 >> handle.txt & done

发现——四层发现
• 优点
  • 可路由且结果可靠
  • 不太可能被防火墙过滤
  • 甚至可以发现所有端口都被过滤的主机
• 缺点
  • 基于状态过滤的防火墙可能过滤扫描
  • 全端口扫描速度慢
• TCP
  • 未经请求的ACK——RST
  • SYN——SYN/ACK、RST
• UDP
  • ICMP端口不可达、一去不复返

• nmap 1.1.1.1-254 -PU53 -sn
• nmap 1.1.1.1-254 -PA80 –sn
• nmap -iL iplist.txt -PA80 -sn

• hping3 --udp 1.1.1.1 -c 1
• for addr in $(seq 1 254); do hping3 –udp 1.1.1.$addr -c 1 >> r.txt; done
  • grep Unreachable r.txt | cut -d " " -f 5 | cut -d "=" -f 2
  • ./udp_hping.sh 1.1.1.0
• hping3 1.1.1.1 -c 1 (TCP)
  • Hping3 1.1.1.1
  • ./TCP_hping.sh
  • Flag 0 —— ACK、RST

端口扫描
• 端口对应网络服务及应用端程序
• 服务端程序的漏洞通过端口攻入
• 发现开放的端口
• 更具体的攻击面

• UDP端口扫描
  • 假设 ICMP port-unreachable 响应代表端口关闭
    • 目标系统不响应ICMP port-unreachable时,可能产生误判
  • 完整的UPD应用层请求
    • 准确性高
    • 耗时巨大

• Nmap
• nmap -sU 1.1.1.1
  • 默认的1000个参数
  • ICMP host-unreachable
• nmap 1.1.1.1 -sU -p 53
• nmap -iL iplist.txt -sU -p 1-200

• TCP端口扫描
  • 基于连接的协议
  • 三次握手
  • 隐蔽扫描
  • 僵尸扫描
  • 全连接扫描
  • 所有的TCP扫描方式都是基于三次握手的变化来判断目标端口状态

• 隐蔽扫描——syn
  • 不建立完整连接
  • 应用日志不记录扫描行为——隐蔽
• 僵尸扫描
  • 极度隐藏
  • 实施条件苛刻
  • 可伪造源地址
  • 选择僵尸机
    • 闲置系统
    • 系统使用递增的IPID
      • 0
      • 随机

隐蔽端口扫描
• nmap -sS 1.1.1.1 -p 80,21,25,110,443
• nmap -sS 1.1.1.1 -p 1-65535 --open
• nmap -sS 1.1.1.1 -p- --open
• nmap -sS -iL iplist.txt -p 80,21,22,23

• hping3
• hping3 1.1.1.1 --scan 80 -S
• hping3 1.1.1.1 --scan 80,21,25,443 -S
• hping3 1.1.1.1 --scan 0-65535 -S
• hping3 -c 10 -S --spoof 1.1.1.2 -p ++1 1.1.1.3

全连接端口扫描

• nmap -sT 1.1.1.1 -p 80
• nmap -sT 1.1.1.1 -p 80,21,25
• nmap -sT 1.1.1.1 -p 80-2000
• nmap -sT -iL iplist.txt -p 80
• 默认1000个常用端口

• dmitry
  • 功能简单,但使用简单
  • 默认150个最常用的端口
• dmitry -p 172.16.36.135
• dmitry -p 172.16.36.135 -o output

• nc -nv -w 1 -z 192.168.60.4 1-100
• for x in $(seq 20 30); do nc -nv -w 1 -z 1.1.1.1 $x; done | grep open
• for x in $(seq 1 254); do nc -nv -w 1 -z 1.1.1.$x 80; done

服务扫描
• 识别开放端口上运行的应用
• 识别目标操作系统
• 提高攻击效率
  • Banner捕获
  • 服务识别
  • 操作系统识别
  • SNMP分析
  • 防火墙识别

• Banner
  • 软件开发商
  • 软件名称
  • 服务类型
  • 版本号
    • 直接发现已知的漏洞和弱点
• 连接建立后直接获取banner
• 另类服务识别方法
  • 特征行为和响应字段
  • 不同的响应可用于识别底层操作系统

• SNMP
  • 简单网络管理协议
  • Community strings
  • 信息查询或重新配置
• 识别和绕过防火墙筛选

BANNER扫描

• nc -nv 1.1.1.1 22 

• dmitry -p 172.16.36.135
• dmitry -pb 172.16.36.135

• nmap -sT 1.1.1.1 -p 22 --script=banner

• amap -B 172.16.36.135 21
• amap -B 172.16.36.135 1-65535
• amap -B 172.16.36.135 1-65535 | grep on

服务扫描——服务识别

• Banner信息抓取能力有限
• nmap响应特征分析识别服务
  • 发送系列复杂的探测
  • 依据响应特征signature
• nc -nv 1.1.1.1 80
• nmap 1.1.1.1 -p 80 -sV

• Amap
• amap 192.168.1.134 80
• amap 172.16.36.135 20-30
• amap 172.16.36.135 20-30 –q
• amap 172.16.36.135 20-30 -qb

操作系统识别
• 操作系统识别技术
  • 种类繁多
  • 好产品采用多种技术组合
• TTL起始值
  • Windows :128(65——128)
  • Linux / Unix : 64 (1-64)
  • 某些 Unix : 255

• nmap 使用多种技术识别操作系统
• nmap 1.1.1.1 -O
• 系统服务特征

• 被动操作系统识别
  • IDS
  • 抓包分析
• 被动扫描
• p0f
  • 结合ARP地址欺骗识别全网OS

SNMP扫描
• snmp
  • 信息的金矿
  • 经常被错误配置
  • public / private / manager
• MIB Tree
  • SNMP Management Information Base (MIB)
  • 树形的网络设备管理功能数据库
  • 1.3.6.1.4.1.77.1.2.25
• onesixtyone 1.1.1.1 public
• onesixtyone -c dict.txt -i hosts -o my.log -w 100

• snmpwalk 192.168.20.199 -c public -v 2c
• 用户
  • snmpwalk -c public -v 2c 1.1.1.1 1.3.6.1.4.1.77.1.2.25
• snmpcheck -t 192.168.20.199
• snmpcheck -t 192.168.20.199 -c private -v 2
• snmpcheck -t 192.168.20.199 -w

• Server Message Block 协议
  • 微软历史上出现安全问题最多的协议
  • 实现复杂
  • 默认开放
  • 文件共享
  • 空会话未身份认证访问(SMB1)
    • 密码策略
    • 用户名
    • 组名
    • 机器名
    • 用户、组SID

• nmap -v -p139,445 192.168.60.1-20
• nmap 192.168.60.4 -p139,445 --script=smb-os-discovery.nse
• nmap -v -p139,445 --script=smb-check-vulns --script-args=unsafe=1 1.1.1.1
• nbtscan -r 192.168.60.0/24
• enum4linux -a 192.168.60.10

• nc -nv 1.1.1.1 25
• VRFY root
• nmap smtp.163.com -p25 --script=smtp-enum-users.nse --script-args=smtp-enum-users.methods={VRFY}
• nmap smtp.163.com -p25 --script=smtp-open-relay.nse
• smtp-user-enum -M VRFY -U users.txt -t 10.0.0.1
• ./smtp.py

防火墙识别
• 通过检查回包,可能识别端口是否经过防火墙过滤
• 设备多种多样,结果存在一定误差

• Nmap有系列防火墙过滤检测功能
• nmap -sA 172.16.36.135 -p 22

负载均衡识别
• 广域网负载均衡
  • DNS
• HTTP-Loadbalancing
  • Nginx
  • Apache
• lbd www.baidu.com
• lbd mail.163.com

WAF识别
• WEB应用防火墙
• wafw00f -l
• wafw00f http://www.microsoft.com
• nmap www.microsoft.com --script=http-waf-detect.nse

原文地址:https://www.cnblogs.com/steven9898/p/11527359.html