
eapmd5pass是Kali Linux中一款专注于破解EAP-MD5认证协议的工具。EAP-MD5Extensible Authentication Protocol – MD5 Challenge是一种基于MD5哈希算法的扩展认证协议常用于无线网络如802.1X认证场景或有线网络的身份验证其核心原理是认证服务器向客户端发送随机挑战值Challenge客户端使用用户密码对挑战值进行MD5哈希计算后返回响应值Response服务器验证响应值是否匹配以确认身份。由于EAP-MD5协议本身不加密传输挑战值和响应值且MD5算法属于单向哈希已知挑战值和响应值时可通过暴力破解尝试密码eapmd5pass正是利用这一特性通过捕获EAP-MD5认证过程中的数据包提取挑战值、响应值等关键信息结合字典暴力破解用户密码适用于网络安全测试中验证EAP-MD5认证的安全性。命令参数说明参数英文描述中文翻译与详细说明-i ifaceinterface name指定无线/有线网卡接口名称如wlan0、eth0用于实时监听并捕获EAP-MD5认证数据包。需确保网卡处于正常工作模式无线无需强制监控模式但若需捕获无线EAP-MD5包建议启用监控模式以提高捕获成功率。-r pcapfileread from a named libpcap file从指定的libpcap格式数据包文件通常为.cap后缀中读取数据适用于已提前捕获EAP-MD5认证包的场景无需实时监听。注意该参数不可与-U、-C、-R、-E参数同时使用后者用于手动输入认证信息前者从文件提取。-w wordfileuse wordfile for possible passwords指定密码字典文件路径工具会遍历字典中的每个密码模拟EAP-MD5认证过程计算响应值与捕获的响应值对比以确认正确密码。Kali默认字典路径为/usr/share/wordlists/如rockyou.txt需先解压。-b bssidBSSID of target network (default: all)指定目标网络的BSSID接入点MAC地址格式如AA:BB:CC:DD:EE:FF仅捕获该BSSID对应的EAP-MD5数据包默认不指定时捕获所有网络的EAP-MD5数据包。仅用于无线EAP-MD5场景有线场景无需该参数。-U usernameUsername of EAP-MD5 user手动输入EAP-MD5认证的用户名用于在未捕获完整数据包但已知用户名、挑战值、响应值等时直接进行密码破解。需与-C、-R、-E参数配合使用不可与-r参数同用。-C chalEAP-MD5 challenge value手动输入EAP-MD5认证的挑战值十六进制格式字符串该值由认证服务器发送给客户端是密码哈希计算的关键输入之一。需与-U、-R、-E参数配合不可与-r参数同用。-R responseEAP-MD5 response value手动输入EAP-MD5认证的响应值十六进制格式字符串该值由客户端计算后发送给服务器是破解时的对比基准。需与-U、-C、-E参数配合不可与-r参数同用。-E eapidEAP-MD5 response EAP ID value手动输入EAP-MD5响应包中的EAP ID值十进制整数通常为1-255用于匹配认证过程中的EAP会话。需与-U、-C、-R参数配合不可与-r参数同用。-vincrease verbosity level (max 3)增加详细输出级别可重复使用如-v、-vv、-vvv-v显示基础进度-vv显示每个密码的尝试过程-vvv显示数据包解析细节便于排查问题。-Vversion information显示eapmd5pass的版本信息并退出用于确认工具版本不同版本功能无显著差异核心逻辑一致。-husage information显示工具的使用帮助信息参数说明、用法示例并退出适合初次使用或忘记参数时参考。重要提示-r从数据包文件读取与-U/-C/-R/-E手动输入认证信息不可同时使用需根据实际场景选择其中一种方式提供EAP-MD5认证数据。使用教程1. 准备工作1.1 硬件与环境要求网卡支持若破解无线EAP-MD5如802.1X认证的Wi-Fi需无线网卡支持数据包捕获无需强制注入功能监控模式可提升捕获成功率若破解有线EAP-MD5普通有线网卡即可。软件依赖eapmd5pass依赖libpcap库用于数据包捕获与解析Kali Linux默认预装若缺失可通过sudo apt install libpcap-dev安装。字典文件需准备密码字典如Kali内置的rockyou.txt解压命令sudo gunzip /usr/share/wordlists/rockyou.txt.gz也可根据目标场景自定义字典如企业员工账号对应的密码规则字典。授权前提仅可对已授权的EAP-MD5认证网络进行测试未经授权破解属于违法行为需遵守《网络安全法》等相关法规。1.2 工具安装验证Kali Linux默认预装eapmd5pass通过以下命令验证是否安装及版本eapmd5pass -V若输出类似“eapmd5pass 1.4 (c) 2004-2012 Jim Fougeron”说明安装成功若未安装执行sudo apt update sudo apt install eapmd5pass2. 核心使用场景与操作步骤eapmd5pass主要有两种使用场景从数据包文件破解已捕获EAP-MD5认证包、手动输入认证信息破解已知用户名、挑战值、响应值等以下分场景详细说明。场景1从数据包文件破解推荐无需手动提取信息该场景适用于已通过工具如tcpdump、wireshark、airodump-ng捕获EAP-MD5认证数据包.cap格式的情况工具会自动从文件中提取用户名、挑战值、响应值等关键信息直接进行密码破解。步骤1捕获EAP-MD5数据包根据网络类型无线/有线选择对应的捕获工具确保捕获到完整的EAP-MD5认证过程至少包含“服务器发送挑战值”和“客户端返回响应值”两个数据包。子步骤1.1无线EAP-MD5数据包捕获802.1X Wi-Fi启用无线网卡监控模式可选提升捕获范围sudo airmon-ng start wlan0 # wlan0为无线网卡名称启用后变为wlan0mon使用airodump-ng捕获目标BSSID的数据包替换参数为实际值sudo airodump-ng -c 6 -b AA:BB:CC:DD:EE:FF -w eapmd5_capture wlan0mon参数说明-c 6目标信道、-b AA:BB:CC:DD:EE:FF目标BSSID、-w eapmd5_capture输出文件前缀捕获后生成eapmd5_capture-01.cap等文件。等待客户端进行EAP-MD5认证如用户连接Wi-Fi输入账号密码当airodump-ng捕获到EAP数据包时停止捕获按CtrlC。子步骤1.2有线EAP-MD5数据包捕获802.1X有线使用tcpdump捕获有线网卡如eth0的EAP数据包过滤EAP协议端口1812/1813或协议号0x888Esudo tcpdump -i eth0 -s 0 -w eapmd5_wired.cap ether proto 0x888E参数说明-i eth0有线网卡、-s 0捕获完整数据包、-w eapmd5_wired.cap输出文件、ether proto 0x888E过滤802.1X/EAP协议数据包。等待客户端进行有线EAP-MD5认证完成后按CtrlC停止捕获。步骤2使用eapmd5pass破解密码核心命令格式从.cap文件提取信息结合字典破解sudo eapmd5pass -r 数据包文件路径 -w 字典文件路径 [可选参数]示例1破解无线EAP-MD5数据包指定目标BSSID避免其他网络干扰sudo eapmd5pass -r eapmd5_capture-01.cap -w /usr/share/wordlists/rockyou.txt -b AA:BB:CC:DD:EE:FF -v参数说明-r eapmd5_capture-01.cap捕获的数据包文件、-w 字典路径rockyou.txt字典、-b BSSID仅处理目标网络数据包、-v显示基础进度。示例2破解有线EAP-MD5数据包无需BSSID参数sudo eapmd5pass -r eapmd5_wired.cap -w /usr/share/wordlists/rockyou.txt -vv参数说明-vv显示每个密码的尝试过程便于观察进度。步骤3查看破解结果破解过程中工具会遍历字典中的密码若某个密码计算出的响应值与数据包中的响应值匹配会输出类似以下结果“PASSWORD FOUND”后为正确密码EAP-MD5: Found user testuser EAP-MD5: Challenge: 1A2B3C4D5E6F7890 EAP-MD5: Response: 90876F5E4D3C2B1A EAP-MD5: Trying password 123456... No EAP-MD5: Trying password password... No EAP-MD5: Trying password test123... Yes! EAP-MD5: PASSWORD FOUND: test123 (for user testuser)若字典遍历完成未找到密码会输出“PASSWORD NOT FOUND in wordfile”需更换更全面的字典重新尝试。场景2手动输入认证信息破解无完整数据包已知关键信息该场景适用于未捕获完整数据包但通过其他方式获取了EAP-MD5认证的“用户名U、挑战值C、响应值R、EAP IDE”的情况如从认证服务器日志提取需手动输入这些信息进行破解。步骤1确认关键信息格式用户名-U字符串格式如“admin”“user01”挑战值-C十六进制字符串无空格如“1A2B3C4D5E6F7890ABCDEF1234567890”响应值-R十六进制字符串与挑战值长度一致如“90876F5E4D3C2B1A0FEDCBA9876543210”EAP ID-E十进制整数如1、5、10通常从EAP数据包头部获取。步骤2执行破解命令核心命令格式手动输入4个关键参数结合字典sudo eapmd5pass -U 用户名 -C 挑战值 -R 响应值 -E EAPID -w 字典文件路径 [可选参数]示例已知用户名为“admin”挑战值“1A2B3C4D5E6F7890”响应值“90876F5E4D3C2B1A”EAP ID为5sudo eapmd5pass -U admin -C 1A2B3C4D5E6F7890 -R 90876F5E4D3C2B1A -E 5 -w /usr/share/wordlists/rockyou.txt -vvv参数说明-vvv显示最详细的计算过程包括MD5哈希值对比便于排查参数是否正确。步骤3验证结果若密码存在于字典中工具会输出“PASSWORD FOUND”及正确密码若参数格式错误如挑战值非十六进制会提示“Invalid challenge value”需核对参数格式后重新执行。场景3实时监听破解无需提前捕获数据包该场景适用于实时监控网络当有客户端进行EAP-MD5认证时立即捕获并破解无需提前保存数据包文件。步骤1选择监听接口无线场景建议启用监控模式参考场景1的子步骤1.1有线场景直接使用有线网卡接口如eth0。步骤2执行实时监听命令核心命令格式指定监听接口结合字典实时捕获并破解sudo eapmd5pass -i 监听接口 -w 字典文件路径 [可选参数]示例1实时监听无线监控接口wlan0mon针对目标BSSIDsudo eapmd5pass -i wlan0mon -w /usr/share/wordlists/rockyou.txt -b AA:BB:CC:DD:EE:FF -v参数说明-i wlan0mon无线监控接口、-b BSSID仅监听目标网络的EAP-MD5认证、-v实时显示捕获进度。示例2实时监听有线接口eth0无目标过滤sudo eapmd5pass -i eth0 -w /usr/share/wordlists/rockyou.txt -vv步骤3等待认证并获取结果工具会持续监听接口上的EAP-MD5数据包当检测到客户端认证时自动提取关键信息并开始破解。破解成功后会立即输出密码按CtrlC可停止监听。若长时间无认证请求需确认目标网络是否在使用EAP-MD5认证或调整监听接口/范围。3. 常见问题与解决方案3.1 报错“Could not open pcap file: No such file or directory”问题原因-r参数指定的数据包文件路径错误或文件不存在。解决方案通过ls命令确认文件是否在当前目录若不在需输入完整路径如/home/kali/eapmd5_capture-01.cap重新捕获数据包确保输出文件正常生成如airodump-ng捕获后会生成“前缀-01.cap”文件。3.2 报错“Invalid challenge value (must be hex)”问题原因-C参数输入的挑战值非十六进制格式如包含字母G-Z、空格、特殊字符。解决方案核对挑战值是否为纯十六进制字符0-9、A-F/a-f删除多余空格或字符若从Wireshark提取挑战值需选择“Hex stream”格式而非“Decimal”或“ASCII”例如将“1A:2B:3C”转换为“1A2B3C”。3.3 工具无响应或未捕获到EAP-MD5数据包问题原因监听接口错误、网络无EAP-MD5认证请求、无线未启用监控模式。解决方案通过iwconfig无线或ifconfig有线确认接口名称正确如无线监控模式接口为wlan0mon非原始wlan0无线场景重新启用监控模式sudo airmon-ng start wlan0并确认目标网络正在进行EAP-MD5认证可通过Wireshark抓包验证有线场景确保网线连接正常且客户端正在发起802.1X认证如重启客户端网络连接触发认证。3.4 破解完成提示“PASSWORD NOT FOUND in wordfile”问题原因目标密码不在当前字典中或数据包中的认证信息不完整如响应值损坏。解决方案更换更全面的字典如Kali的/usr/share/wordlists/seclists/Passwords/Common-Credentials/10k-most-common.txt需先安装seclistssudo apt install seclists重新捕获数据包确保包含完整的EAP-MD5认证过程至少包含挑战包和响应包可通过Wireshark筛选“eap.md5”查看认证流程是否完整。3.5 报错“Permission denied”问题原因未使用root权限执行命令导致无法访问网卡或读取系统文件。解决方案在命令前添加sudo如sudo eapmd5pass -r ...确保以管理员权限运行若字典文件权限不足执行sudo chmod 644 字典路径赋予读取权限。4. 注意事项法律合规性优先EAP-MD5常用于企业、校园等场景的网络认证破解他人EAP-MD5密码可能获取内部网络访问权限属于严重违法行为。必须在获得明确书面授权的前提下使用该工具仅用于自身网络或授权测试。仅支持EAP-MD5协议eapmd5pass专为EAP-MD5设计不支持其他EAP类型如EAP-TLS、EAP-PEAP、EAP-TTLS若目标网络使用其他EAP协议需选择对应工具如eaphammer、freeradius-wpe。数据包完整性影响破解结果需确保捕获的数据包包含“EAP-MD5挑战”和“EAP-MD5响应”两个关键帧缺失任一帧会导致工具无法提取必要信息破解失败。可通过Wireshark验证筛选“eap.type 4”EAP-MD5类型码为4确认存在“Challenge”和“Response”字段。字典质量决定成功率EAP-MD5密码破解本质是暴力匹配字典需覆盖目标场景的常见密码如企业员工密码可能包含工号、生日、公司简称避免使用过小或无关的字典如纯数字字典无法破解字母数字组合密码。避免干扰正常网络实时监听或重新触发认证时需控制频率避免频繁发送数据包干扰目标网络正常运行如无线场景不建议长时间占用信道有线场景避免频繁断开客户端连接。5. 进阶技巧结合Wireshark提取EAP-MD5关键信息当需手动输入认证信息场景2时可通过Wireshark从数据包中精准提取用户名、挑战值、响应值、EAP ID步骤如下用Wireshark打开.cap文件在过滤器中输入eap.type 4筛选EAP-MD5数据包找到“EAP Request, MD5 Challenge”数据包服务器发送给客户端的挑战包展开“Extensible Authentication Protocol”→“EAP MD5 Challenge”记录“Challenge”字段的十六进制值如“1A2B3C4D5E6F7890”记录“EAP Header”中的“ID”值十进制如“5”即EAP ID-E参数。找到后续的“EAP Response, MD5 Challenge”数据包客户端发送给服务器的响应包展开“Extensible Authentication Protocol”→“EAP MD5 Response”记录“Response”字段的十六进制值如“90876F5E4D3C2B1A”展开“EAP MD5 Response”→“Name”记录用户名如“admin”即-U参数。将提取的4个信息代入场景2的命令即可手动执行破解。6. 工具版本与兼容性说明6.1 版本特性当前Kali Linux预装的eapmd5pass版本多为1.4稳定版核心功能无更新迭代EAP-MD5协议已成熟无需频繁更新版本差异主要体现在Bug修复如数据包解析兼容性通过eapmd5pass -V可查看当前版本。6.2 系统与硬件兼容性操作系统仅支持Linux系统如Kali、Ubuntu、DebianWindows/macOS需通过WSLWindows子系统或虚拟机运行直接安装会因libpcap库依赖问题失败。无线网卡无特殊要求支持数据包捕获的无线网卡均可如Realtek、Atheros、Broadcom芯片启用监控模式可提升无线EAP-MD5数据包的捕获率。有线网卡所有支持tcpdump/Wireshark捕获的有线网卡均可如Intel、Realtek千兆网卡无需额外配置。7. 总结eapmd5pass是一款轻量、专注的EAP-MD5密码破解工具核心价值在于快速提取EAP-MD5认证过程中的关键信息结合字典暴力破解密码适用于网络安全测试中验证EAP-MD5认证的安全性如检测弱密码风险。使用时需明确该工具的目的是帮助企业发现EAP-MD5认证的安全漏洞如员工使用弱密码而非非法入侵。需严格遵守法律规定仅在授权场景下操作同时需注意数据包完整性、字典合理性结合Wireshark等工具提升破解效率确保测试行为合法、合规、可控。