esp8266如何破解wifi密码及详细步骤

esp8266连接wifi 1、建立工程 我开发的时候比较早,用的是nonos_v1.5.0的sdk,最新的v2.1.0的sdk烧录好固件后,上电会一直出fatal exception 28的错误,搞了一天没弄清楚,所以用还留着的v1.5.3的sdk讲解,具体使用方法不会有很大改变,详细也可以参考api文档。
打开解压sdk包,将example文件夹下的iot_demo复制替换到app文件夹下,并将driver_lib/include/driver下的uart.h、uart_register.h复制到app/include下,driver_lib/driver下uart.c复制到app/driver下,同时将driver_lib下makefile文件改名或者删除,懂makefile的朋友可以自行修改makefile文件否则会出现编译错误,目录结构如下。
我们主要修改的是user_main.c这个文件,将user_init()函数是程序入口,里的内容全删了
此外头文件修改为
#include “ets_sys.h”
#include “osapi.h”
#include “user_interface.h”
#include “uart.h”1234
user_rf_pre_init()这个函数不要删除,放着即可,这样user_main.c文件只有void user_rf_pre_init(void)、void user_init(void)这两个函数,以及4个头文件。
2、连接wifi 要连接wifi首先要指定要连接的wifi账号和密码,则需要定义两个变量来存放它们,同时还需要定义一个结构体用于存放:wi-fi station 接口参数。
struct station_config station_cfg;
uint8 ssid[]=“xxx”; //wifi名
uint8 password[]=“xxx”; //wifi密码123
新买到的模块默认是作为ap,这里我们需要将它修改作为station,这样才能连wifi,这里我将这几个操作放入一个函数里面。
void icache_flash_attr
user_set_station_config(void)
{
wifi_set_opmode(station_mode); //设置为station mode
os_strcpy(station_cfg.ssid, ssid); //ssid名称
os_strcpy(station_cfg.password, password); //密码
wifi_station_set_config(&station_cfg); //设置wifi帐号和密码
}12345678
注:添加icache_flash_attr宏定义是因为8266的iram空间有限,所以上电启动时不能把所有数据都放入iram,只有在需要用到的时候才载入,因此推荐一般的函数都加icache_flash_attr。
这样我们就能把这个函数放到user_init()中了,如下所示。
void user_init(void)
{
uart_init(bit_rate_115200,bit_rate_115200); //设置波特率为115200
os_printf(“sdk version:%s\n”, system_get_sdk_version()); //打印sdk版本
user_set_station_config(); //set station config
//user_set_station_config()中调用wifi_station_set_config(&station_cfg)
//底层会自动连接对应路由,不需要调用 wifi_station_connect 来进行连接。
}12345678
编译通过后烧入固件就能查看效果了。
esp8266如何破解wifi密码及详细步骤
1、esp8266模块 首先,你要有一块esp8266模块,像这样的,最好是有底板的,带micro口的,这些淘宝上都可以搜到的,我的就是淘宝上买的,大概30-40rmb左右,当然,如果你的动手能力比较强的话可以自己做底板。
2、将固件下载到esp8266中 在这里你需要下载两个东西,就是flash下载工具和固件
flash下载工具:http://espressif.com/zh-hans/support/download/other-tools
将自己的esp8266插到电脑上,确定连接没问题的话打开设备管理器看下自己的串口是多少。
将下载的flash下载工具解压,打开espflashdownloadtool_v3.4.9.2.exe,打开是这样的,选择esp8266 downloadtool
在这里需要注意的几点是:
(1)固件选择之前下载的固件dns.ino.ino.nodemcu.bin。
(2)地址输入0×00000(可能地址这一栏会出现红色的状况,导致无法烧入固件,此时把下载器关了重启下,然后把地址那栏清空再自己手动输入就好了)。
(3)这边需要将donotchgbin勾选起来,否则烧入固件后可能没有wifi,当然不同的板子可能不太一样,这个请大家自行测试。
(4)这边串口按照自己之前查的选择就行了,波特率115200就可以了。
其他设置按照红框里面的选择就行。
设置完这些后就点击start开始烧flash,烧完后如果模块正常的话电脑会多出来一个叫hh的wifi,这个wifi就是esp8266发出来的。
如果没有显示hh,就按下esp8266的rst键复位,等个几秒钟就会显示出来。此时你就可以连接hh了。wifi的密码为:m1234567
注:如果通过上面的方法还没有显示wifi的话,你可以试试擦除flash,擦除flash的方法请参考:http://bbs.eeworld.com.cn/thread-497588-1-1.html。在这里我就不详述了,擦完大概是下图的样子,然后重新按照上面的步骤烧flash就可以了。
3、用arduino上传web到esp8266 到arduino官网下载适合你自己系统的软件:https://www.arduino.cc/en/main/software
web源码:http://pan.baidu.com/s/1miywnt
web源码上传工具:http://pan.baidu.com/s/1o8cec7
我的是windows系统,arduino版本是1.8.4,安装完后打开工具——开发板——开发板管理器,此时会自动更新,过个数分钟更新完毕后(当然,如果用外网的话可能几秒钟就能解决),搜索eps8266,选择第二个,版本选2.2.0,然后安装。
将上面解压后的web源码上传工具的tools放到arduino根目录里合并,然后返回以下界面,点击文件——新建,新建一个项目,将里面的代码清空,然后点击文件——保存,将项目保存到一个你能找到的位置,点击工具——esp8266 sketch data upload,会出现以下的提示,选择no,会发现新建的项目中多出来一个data文件夹,里面是空的,然后将上面下载的web源码\data里面的三个文件复制到这个文件夹里面。
然后再返回arduino,点击工具,开发板按照自己买的选择,端口选择自己的端口,其他设置如下图红框里面的。
设置完后点击esp8266 sketch data upload,这时不会出现提醒,开始上传web页面,等个1分钟左右esp8266上的蓝灯不闪烁了就表示上传完了。
然后电脑连接hh的wifi,浏览器输入192.168.1.1/backdoor.html就能进入web页面了,如下图,路由器型号选择通用型,然后输入你测试的wifi编号,点确定,电脑提示ssid伪造成功,手机就会发现出现了个和你测试的wifi一样的没有加密的wifi,原来的hh会不见了,8266的蓝灯常亮,手机连接那个wifi后过几秒会自动弹出路由器升级的页面,然后输入管理员密码,点击开始升级,此时你的esp8266会将管理员密码保存,升级完后,8266的灯就会灭掉。
电脑重新连接hh,进入web页面后管理员密码会在下面的红框这一块显示,这时,就表示获取密码成功了。
esp8266设置热点步骤 将esp8266设置为一个热点,可供其他设备连接并交换数据,主要使用的函数:wifi.softap(ssid, password, channel, hidden)。
参数说明:
ssid:wifi热点名称,支持最大63个英文字符;
password:密码设置,可选参数,也就是可以没有密码,如果设定为wpa2-psk;
channel:信道设置,可选参数,1-13,没有填写则默认为1;
hidden:是否隐藏ssid,可选参数,如果设置为true则隐藏。
esp8266开启的默认ip地址为192.168.4.1,可以使用softapconfig (local_ip, gateway, subnet) 函数进行修改。
参数说明:
local_ip:软热点的地址;
gateway:网关地址;
subnet:子网掩码。
程序流程:
1、连接nodemcu板子到usb接口,打开arduino ide编辑器界面,选择好开发板型号和串口号。
2、在arduino ide的编辑器界面,开始部分添加头文件。
[cpp] view plain copy#include 《esp8266wifi.h》
3、声明各ip地址。
[cpp] view plain copyipaddress local_ip(192,168,4,4);
ipaddress gateway(192,168,4,1);
ipaddress subnet(255,255,255,0);
4、配置软ap参数。
[cpp] view plain copywifi.softapconfig(local_ip, gateway, subnet);
5、启动ap模式。
[cpp] view plain copywifi.softap(“softap001”,“123456789”);
6、获取ip地址。
[cpp] view plain copyserial.print(“soft-ap ip address = ”);
serial.println(wifi.softapip());
下载完成后,在手机或笔记本上wifi可以搜到设置的ap。
整体代码如下:
[cpp] view plain copy#include 《esp8266wifi.h》
ipaddress local_ip(192, 168, 4, 4);
ipaddress gateway(192, 168, 4, 1);
ipaddress subnet(255, 255, 255, 0);
void setup() {
// put your setup code here, to run once:
serial.begin(115200);
wifi.softapconfig(local_ip, gateway, subnet);
wifi.softap(“softap001”, “123456789”);
serial.print(“soft-ap ip address = ”);
serial.println(wifi.softapip());
}
void loop() {
// put your main code here, to run repeatedly:
}

苹果WWDC 2017下周开幕 MacBook系电脑将全系更新
中国智能手机在俄罗斯市场占有率占首位
中国通信简史
物联网产业是如何分类的
什么是电平转换
esp8266如何破解wifi密码及详细步骤
工业轨式环网型1路Profibus-DP光端机的功能特点及应用分析
模电笔记-多级放大电路基础
变频器在片材挤出机的应用
医疗产业模式从治疗转向保健,便携医疗设备将大行其道
轧机牌坊磨损有什么影响?该如何维修
基于变电站技术和计算机网络通信技术实现高压监控系统的设计
是德科技成功助力中兴通讯建立5G NR NTN数据连接
联通与腾讯又推出“王卡宽带”,打破联通长期以来的高价策略
英特尔因吃不起三款新iPhone芯片或转单台积电
KW36 MCU HardFault问题查找和破解方法
有源钳位正激电路分析之电流变压器的环路稳定性
iPhone 16 Pro系列将搭载双4800万像素传感器,升级潜望式远摄
面部识别技术存在的最大问题是什么
2010年电子元器件业持续好转