Getting to the point now, I tried to hack the cameras using two generic techniques, not focusing on finding a specific software vulnerability. The two methods I used were a Deauthentication Attack and a Physical Security Attack. So let’s take a closer look at them:
A Wi-Fi deauthentication attack is a type of denial-of-service attack that targets communication between a user and a Wi-Fi wireless access point.
With this attack, one can disconnect a client from the access point that it is connected to. For more details check out the following links: https://en.wikipedia.org/wiki/Wi-Fi_deauthentication_attack and https://www.aircrack-ng.org/~~V:/doku.php?id=deauthentication
The Deauthentication Attack falls under the category of pre-connection attacks, meaning you can disconnect any device from any network before connecting to any of these networks and therefore without the need to know the password for the network.
Having said that, it was possible to disconnect the IP camera from the access point it was connected to (without having the AP password, as I mentioned earlier, since there wasn’t even the need to connect to the network), making it useless.
The camera would on normal occasions detect movement and/or noise and notify the user with an email if something was detected. Instead, during the attack the video feedback of the IP camera app was frozen and no notifications were sent when we triggered the sensors with motion and sound.
Below is the code I used for this simple attack (for a more detailed analysis on how to perform a deauthentication attack there is a great article on Hacker Noon):
Deauthenticating specifically the IP camera (only one client)
aireplay-ng --deauth [number of deauth packets] -a [AP MAC address] -c [IP camera MAC address] [interface]
Ex: aireplay-ng --deauth 1000 -a 11:22:33:44:55:66 -c 00:AA:11:22:33:44 mon0
You can possibly find the MAC address of the IP camera if you know the device’s brand since the first 6-digits of a MAC address identify the manufacturer (https://macvendors.com). You can also try to speculate which is the AP’s MAC address by the name of the SSID. Otherwise, you can use a more wide attack with the code below.
Deauthenticating all clients in a specific network
aireplay-ng --deauth [number of packets] -a [AP MAC address] [interface]
Ex: aireplay-ng --deauth 1000 -a 11:22:33:44:55:66 mon0
That wouldn’t be the case of course if the camera app was programmed to periodically check the connection with the router/device and report a lost connection by sending an email to the user for example.
It is also important to point out, that if the IP camera had a wired connection and not a wireless one, this attack would not be possible. When using wireless communication we should always keep in mind that the medium is air and air is accessible to all (thus more “hackable”).
Physical Security Attack
Physical security describes security measures that are designed to deny unauthorized access to facilities, equipment and resources and to protect personnel and property from damage or harm (such as espionage, theft, or terrorist attacks).
It doesn’t do much if you have top quality security “software-wise”, but the physical devices you are trying to secure are not themselves placed somewhere safe. In our case, the local distribution frame box, where the internet-telephone cables terminate, was in front of my friend’s house and unlocked. It would be very easy for someone to intervene in the cabinet, cut the cables and remove internet connection thus disabling the IP camera.
Without an Internet connection, the user would be under the illusion that everything is secure since he wouldn’t get an email notification (like he is supposed to if something is detected), and that his IP camera would alert him as soon as someone tried to invade into his house, while the camera would have just stopped working without any warning.