_ _ ____ _ _ _
/ \ (_) _ __ / ___| | |_ _ __ (_)| | __ ___
/ _ \ | || '__|\___ \ | __|| '__|| || |/ / / _ \
/ ___ \ | || | ___) || |_ | | | || < | __/
/_/ \_\|_||_| |____/ \__||_| |_||_|\_\ \___|
AirStrike 是一个基于 Flask 和 Socket.IO 的 Web 界面,用于从浏览器编排 Wi-Fi 评估工具。
此版本特意专注于套件中最稳定的三种攻击:去认证、破解(握手包捕获 + aircrack-ng) 和 邪恶双子。
aircrack-ng 和可配置的字典进行暴力破解。hostapd/dnsmasq 克隆目标 SSID,设置 DHCP/DNS 欺骗,并可选地提供强制门户。所有其他实验性攻击存根已被移除,以保持 UI、API 和代码路径精简。
pippython -m venv .venv
source .venv/bin/activate
pip install -e . # 安装依赖项和 `airstrike` 控制台脚本
# 或者:pip install -r requirements.txt
$PATH 中可用的外部 CLI 工具:
aircrack-ng 工具包(airmon-ng、airodump-ng、aircrack-ng)iw、ip、ifconfig/net-toolshostapd、dnsmasq、iptables、dnsspoofsudo python run.py
运行程序强制使用 sudo,导出所需的环境变量,并确保 /etc/hosts 中包含 127.0.0.1 airstrike.local。
服务器默认绑定到 127.0.0.1:5000(仅回环);通过 http://airstrike.local:5000 或 http://127.0.0.1:5000 访问。(sudo airstrike 通过控制台脚本执行相同操作。)
在默认回环绑定下没有登录——对于单操作员设备,回环绑定本身就是访问控制,因此您可以直接进入仪表板。(如果您使用 AIRSTRIKE_BIND_ALL=1 暴露面板,登录门会自动打开;请设置 AIRSTRIKE_PASSWORD,或使用 AIRSTRIKE_REQUIRE_AUTH=1 / AIRSTRIKE_DISABLE_AUTH=1 强制开启/关闭认证。)
使用 扫描 选项卡发现网络,选择一个,然后切换到 攻击。攻击开始前您仍需确认授权,每次启动/停止都会记录到 airstrike-audit.log。实时日志和捕获摘要位于 结果 下。
要从另一台机器访问,建议使用 SSH 隧道(ssh -L 5000:127.0.0.1:5000 <host>)。在所有接口上暴露(AIRSTRIKE_BIND_ALL=1)会通过明文 HTTP 提供面板,不推荐这样做——请参阅 THREAT_MODEL.md。
app/config.py 的 config 字典中;设置 选项卡可以实时编辑它们。AIRSTRIKE_PASSWORD(登录)、AIRSTRIKE_SECRET_KEY(持久会话)、AIRSTRIKE_BIND_ALL=1(在所有接口上暴露——不推荐)、AIRSTRIKE_ORIGINS(非回环时的 Socket.IO CORS 白名单)、AIRSTRIKE_AUDIT_LOG(审计文件路径)。captures/ 目录下。run.py 是 app.cli:main 的一个薄层封装(也作为 airstrike 控制台脚本安装);它强制要求 root,映射 airstrike.local,并启动 Socket.IO。后端是一个可安装的 app/ 包(从原始扁平布局重构而来——参见 PR #8):
app/engine/ – 框架无关的攻击工作器(去认证、握手包捕获/破解、邪恶双子);无需 Flask 即可导入。app/core/ – 共享基础设施:网络/监听模式工具、sudo、日志记录,以及 验证、认证 和 审计 模块。app/services/ – 编排(攻击/扫描/设置)在蓝图和引擎之间。app/blueprints/ – Flask 路由;app/__init__.py 是 create_app() 工厂。app/static/ · app/templates/ – 前端(每个攻击的配置位于 app/static/js/modules/attacks/)。run.py · pyproject.toml – 入口点封装 + 打包。tests/ – pytest 测试套件(工厂/路由契约、解析器以及安全/认证回归测试)。utils/network_utils.set_managed_mode。airodump-ng、hostapd)会在攻击日志面板中显示。通过包管理器安装它们并重启 AirStrike。AirStrike 以 root 身份运行,因此其自身安全至关重要。强化措施包括:无 shell 执行(仅 argv)、对所有 OS 绑定的值进行输入验证、登录门 + CSRF + 同源策略强制、默认回环绑定、XSS 转义、经过身份验证的 Socket.IO 通道,以及授权门 + 审计日志。完整的信任模型、残余风险(特别是:无 TLS — 请使用 SSH 隧道)和安全操作清单详见 THREAT_MODEL.md。使用 pytest 运行测试套件。
AirStrike 执行主动、攻击性的攻击(去认证、握手包捕获、流氓 AP)。针对您不拥有或缺乏书面授权评估的网络进行此类攻击,在大多数司法管辖区都是非法的(例如美国 CFAA、FCC §333 关于去认证、英国 CMA、德国 StGB §202c)。这是一个实验室/研究/作品集工具:仅限在您自己的设备上或在授权参与中使用。应用内的授权门记录您的确认;它不授予权限。您对如何使用它负责。