This is the main screen of the app. We can see all the wifi networks and our patrol device, represented by a policeman icon.
If the user clicks the button "intruder", it will place the intruder in a random location in the school.
If the user clicks the button "Wifi Ranges", it will show the ranges of all wifi signals (including the intruder's signal).
When our Wifi patrol device listen to the intruder signal, it will launch an alarm on the top of the screen and the tageted network icon red
The students at Erindale Secondary School created a device to gather data from the school environment. Let's use this device to make sure that no one will be able to invade the School's network!
What it does
Do you know the man-in-the-middle attack? Basically, the intruder launches a wifi signal with the same SSID of the victim's wifi. When an innocent user tries to connect to the wifi (with the same SSID he already knew, but this one is launched by the intruder!) he will send his user name and password. And at this moment he caught in the trap... Actually, he is sending his credentials to the fake wifi created by the intruder. And now, the intruder has access to the school's wifi network. To prevent it to happen, we can use the device to hear all the wifi signals in the building. Then we will use the signal strength to triangulate the geospatial origin of the signal. We already know where the routers of the school are located, so if the signal cames from another place it should be an intruder!
How I built it
I used react.js and leaflet. There is a really useful package called react-leaflet that helped me a lot!
Challenges I ran into
I had done react apps before and leaflet project, as well. But never used both of them at the same time. It may be a little tricky to deal with the react states and the rendering of the map at the same time. But fortunately, I get the main idea in time to develop the app.
Accomplishments that I'm proud of
I think to most challenging part was learning to interact with react components and leaflet maps at the same time.
What I learned
react-leaflet! It is a wonderful tool, and I'm sure it will be really useful to me in the future.
What's next for Wifi Patrol
This is a prototype and for now everything is running in the frontend. It will need to request info to an IoT device in real-time. For this, it will need a backend API providing real-time information. Also, here we are focusing on just one type of attack, we may expand the App's functionalities to detect many other cybersecurity threatens.