【渗透测试笔记】之【主动信息收集】

主动信息收集

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


发现

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

二层发现

  • 优点:扫描速度快、可靠
  • 缺点:不可路由
  • Arp协议
    抓包

【渗透测试笔记】之【主动信息收集】_第1张图片


工具

  • arping

探测192.168.2.1

arping 192.168.2.1 -c 4  # 只发送四个包

查看一个ip地址是否存在不同mac(是否存在ARP欺骗)

arping 192.168.2.1 -d

arping脚本

#!/bin/bash
interface=$1
prefix=$(ifconfig | grep 'inet 192' | cut -d ' ' -f 10 | cut -d '.' -f 1-3)
	for addr in $(seq 1 254); do
	arping -c 1 $prefix.$addr | grep "bytes from" | cut -d '' -f 5 | cut -d '(' -f 2 | cut -d ')' -f 1
done
  • nmap
    (十分强大、先简单提一下、下一节专门讲)

忽略端口扫描

nmap -sn 192.168.2.0/24  # 在24网段进行忽略端口ping扫描
  • Netdiscover
    专用于二层发现
    可用于无线和交换网络环境
    主动和被动探测
  1. 主动(容易触发入侵警报)
    netdiscover -i eth0 -r 192.168.1.0/24
    netdiscover -l iplist.txt
  2. 被动
    netdiscover -p
  • Scapy
    (很强大,简单提及)
    作为Python库进行调用
    也可作为单独的工具使用
    抓包、分析、创建、修改、注入网络流量

进入(如果提示没有安装gnuplot,需要执行apt-get python-gnuplot)

scapy
ARP().display()  # 查看ARP数据包内容
# 创建对象
arp=ARP()
arp.pdst="192.168.1.1"  # 输入要查询的IP
sr1(arp)  # 发送(广播)数据包
# 就会收到回包

三层发现

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

  • ping
ping 192.168.1.1 -c 4
  • traceroute
    路由追踪
traceroute baidu.com
  • nmap
nmap -sn 39.156.69.0/24
  • Fping
fping 39.156.69.79
# 显示:39.156.69.79 is alive

fping探测多个ip地址

fping -g 39.156.69.1 39.156.69.254

四层发现

优点:可路由、结果可靠、不太可能被防火墙过滤、还能发现所有端口都被过滤的主机。
缺点:状态防火墙可能过滤、全端口扫描速度慢。

TCP方式:

  1. 发送一个未经请求的ACK(三次握手第三阶段)——收到RST返回。
  2. 三次握手方式探测。
  • Scapy

  • nmap

nmap -sn 192.168.1.1/24 -PA 53  # 对53端口做ACK主机发现
nmap -sn 192.168.1.1/24 -PU 53  # 对53端口做UDP主机发现


端口扫描

(发现是发现主机,发现了主机再扫描端口)

  • UDP端口扫描:
nmap -sU 192.168.1.1/24  # 默认扫描常用1000个端口
nmap -sU 192.168.1.105 -p -  # 全端口扫描
  • 全连接端口扫描(TCP扫描):
nmap -sT 192.168.1.1/24 -p -
nmap -sT 192.168.1.104 -p 80,443
  • 隐蔽扫描:
nmap -sS/sA 192.168.1.105/24  # TCP SYN/ACK扫描
  • 僵尸扫描(高隐蔽)

检测僵尸机(僵尸机应该闲置,IPID递增(Incremental),开放80端口)

nmap 192.168.1.104 --script=ipidseq.nse -p 445

利用僵尸机扫描

nmap 192.168.1.105 -sI 192.168.1.104 -Pn -p -
# sI后接僵尸机


服务扫描

  • 获取banner信息

nc:

nc -nv 192.168.1.104 80

nmap:

nmap -sV 192.168.1.104 -p-


操作系统识别

最简单方法:识别TTL值

TTL起始值(排除人为修改):

  • Windows:128(65-128)
  • Linux/Unix:64(1-64)
  • 某些Unix:255

nmap:

nmap -O 192.168.1.104

SNMP扫描:

经常被默认配置
public/private/manager

  • onesixtyone:
    使用方法:
onesixtyone 192.168.1.104 public

常用连接字符字典路径:

/usr/share/doc/onesixtyone/dic.txt

使用字典爆破:

onesixtyone -c /usr/share/doc/onesixtyone/dic.txt 192.168.1.104 -o my.log -w 100

知道连接密码后查看更多信息:

  • snmpwalk
snmpwalk 192.168.1.104 -c public -v 2c

-v后为snmp的版本
查询指定oid查询:

snmpwalk-c public -v 2c 192.168.1.104 1.3.6.1.4.1.77.1.2.25
  • snmpcheck(人性化)

使用方法:

snmpcheck -t 192.168.1.104

使用-c修改public



SMB扫描

版本 操作系统
SMB1 Windows 2000/XP/2003
SMB2 Windows Vista SP/2008
SMB2.1 Windows 7/2008 R2
SMB3 Windows 8/2012
  • smb操作系统发现
nmap 192.168.1.103 -p 139,445 --script=smb-os-discovery.nse
nbtscan -r 192.168.1.1/24
  • 漏洞扫描
nmap -v -p 139,445 192.168.1.103 --script=smb-vuln-* --script-args=unsafe=1

容易把服务器扫down

SMTP扫描

nmap smtp.163.com -p 25 --script=smtp-enum-users.nse --script-args=smtp-enum-users.methods=[VRFY]

负载均衡识别

lbd www.baidu.com

WAF识别

  • nmap
nmap www.baidu.com --script=http-waf-detect.nse
  • WAFw00f
    查看可识别WAF
wafw00f -l
wafw00f www.baidu.com

你可能感兴趣的:(渗透测试,笔记)