dvlinuxx-max/apsentry

GitHub: dvlinuxx-max/apsentry

apsentry 是一款防御性无线入侵检测系统,通过扫描 Wi-Fi 环境并与可信基准对比,识别 evil twin、恶意接入点和信号异常等无线威胁。

Stars: 0 | Forks: 0

# apsentry Evil Twin / Rogue AP 检测与无线威胁监控工具。apsentry 会扫描 Wi-Fi 环境,将其与可信的基准进行对比,并针对 evil twin、恶意接入点 (rogue access point)、MAC 欺骗、加密降级、信标洪泛 (beacon flood) 以及信号异常发出带有评分的 警报。它内置了一个实时 Web 仪表板和一个终端模式。 专为防御者打造:用于检测和解释针对您所有或运营的网络的此类攻击。本工具不会发起此类攻击。 ## 检测内容 | 特征 | 严重程度 | 触发条件 | |-----------|----------|------------------| | `evil_twin` | 最高至严重 | 同一 SSID 出现在第二个 BSSID 上,根据加密不匹配、供应商不匹配、随机 MAC 和更强信号等因素进行加权 | | `rogue_trusted_ssid` | 高至严重 | 受信任的 SSID 由不在基准中的 BSSID 广播(冒充) | | `bssid_downgrade` | 高 | 受信任的 BSSID 当前广播开放/较弱的安全协议(伪造 AP) | | `randomized_mac` | 低至中 | 使用本地管理(随机/伪造)MAC 的命名 AP | | `weak_crypto` | 中 | WEP 或其他已弃用的加密协议 | | `beacon_flood` | 中至高 | 同时出现大量带有随机 MAC 的开放 SSID | | `signal_anomaly` | 低 | 已知 AP 的信号在扫描之间出现剧烈波动 | | `new_ap` | 信息 | 尚未包含在基准(资产清单)中的 AP | ## 数据源 apsentry 会根据平台自动检测后端: - Windows:`netsh wlan show networks mode=bssid` - Linux:`nmcli device wifi list` - macOS:传统的 `airport -s` 扫描 - `demo`:一个合成环境,会注入 evil twin、开放克隆、恶意 MAC 和信标洪泛 (beacon flood),使引擎和仪表板无需硬件即可运行 - `replay`:读取从 `/api/export` 导出的 JSON 文件 使用 `--source` 强制指定数据源。 ## 用法 ``` python apsentry.py # web dashboard at http://127.0.0.1:8787 python apsentry.py scan # one scan + analysis in the terminal python apsentry.py monitor -i 10 # continuous terminal monitor python apsentry.py --source demo --scenario eviltwin scan python apsentry.py --source windows serve --port 8080 python apsentry.py --source demo serve # try the UI with no Wi-Fi card ``` 作为模块运行而不是通过 shim:`python -m apsentry ...`。 ### 基准 Evil Twin 是指冒充您信任网络的 AP,因此一旦 apsentry 了解了您的环境,检测效果就会达到最佳。 - 在仪表板中:“将当前状态快照为基准”会捕获可见的 AP,或者您可以单独信任/取消信任特定行。 - 基准以 JSON 格式存储(`--baseline path`,默认为 `apsentry-baseline.json`),并在启动时重新加载。 建立基准后,如果熟悉的 SSID 出现在未知的 BSSID 上,或者受信任的 AP 突然广播开放安全协议,就会被标记为冒充行为。 ## 仪表板 ``` python apsentry.py --source demo serve ``` 仪表板会显示环境风险评分、严重程度分布、包含完整推理和建议的实时威胁信息流、通道活动,以及一个可搜索的 AP 资产清单(包含信号、安全协议、供应商和信任状态)。它会每隔几秒钟轮询一次 JSON API(`/api/state`、`/api/scan`、`/api/baseline/*`、`/api/export`)。 ## 取消认证监控(可选) `apsentry/detection/deauth.py` 添加了对 802.11 deauth/disassoc 洪泛的 monitor-mode 检测,这既是拒绝服务攻击,也是许多 evil twin 攻击的准备阶段。它需要 `scapy` 以及处于 monitor mode 的无线接口(Linux): ``` pip install scapy ``` 该模块在没有 scapy 的情况下也可以安全导入;工具的其余部分仅依赖标准库。 ## 架构 ``` apsentry/ collectors/ per-platform Wi-Fi scan backends + demo/replay detection/ signatures, the aggregation engine, optional deauth monitor baseline.py trusted-AP store (JSON) scoring.py environment risk aggregation state.py rolling inventory, signal history, alert log monitor.py scan -> analyze -> score -> record loop server.py dashboard HTTP server + JSON API ui/ dashboard (HTML/CSS/JS, no framework) cli.py serve / scan / monitor ``` ## 授权 仅在您拥有或获得授权进行防御的网络上使用 apsentry。 被动扫描通常风险较低,但无线监控和任何 monitor-mode 捕获都必须遵守当地法律和您所在组织的规定。 ## 许可证 MIT
标签:Python, WIDS, 恶意双子检测, 无后门, 欺诈AP检测, 逆向工具