The misuse of this software can result in criminal activities. The author(s) will not be held responsible for its abuse.
A captive portal able to intercept DNS look-ups and give out a login interface according to the URL. Currently it implements Google, Facebook and Yahoo login masks but can be extended. Google sign-in template is the default one.
When the user connects for the first time from a smartphone, a login portal pops up asking to perform the signin in order to start browsing and, after the data is sent, an error is retrieved.
Login data is then stored in the flash memory of the ESP8266 and can be seen visiting anydomain.com/logs
The built-in LED will blink 10 times to confirm successful start-up and 5 times when a user logs in.
Simply install the sketch using the Arduino IDE on a ESP8266 compatible board, use the correct SPIFFS setup and LED pin. No extra hardware is needed.
You can set up a catch all captive portal plus three single websites to hack so that if the user goes to the website, a fake page will be presented to harvest credentials. In the main file there are all the configurations, namely the WiFi public SSID and captive portal page.
I use it with a power bank, choosing a smaller board and a micro LiPo battery it can be made even more portable.
Based on the ESPortal project by OxMarco
I kept the license on as most of the code is theirs.