
Lock.gitech
YOUR WORLD, MORE SECURE
OBJECTIVE OF LOCKGITECH
Our objective for creating this project is to not only create a lock is that secure, but also implement features that improves the quality of life of the users. This is done through multiple ways, such as integrating biometrics into our locks, which is not only faster than typing out a passcode, but also more secure.

Features.
Lock.Gitech" – an IoT security project featuring a fingerprint sensor, a keypad, RFID integration, and a Telegram bot for OTP generation, all fortified by AWS security protocols that is used for data logging.


SYSTEM
ARCHITECTURE


Our system architecture comprises two primary components:
NodeMCU ESP8266
The NodeMCU ESP8266 serves as the central hub for managing authentication and data logging. It hosts:
-
Telegram Bot: A user-friendly Telegram bot interface facilitates seamless interaction with the system.
-
Fingerprint Sensor: Biometric authentication is handled by a fingerprint sensor, ensuring precise and reliable identification.
-
OTP Generation: Time-based One-Time Password (OTP) generation adds a layer of security.
-
AWS Data Logging: Utilizing AWS for data logging ensures secure storage and remote access to access logs.
-
LCD Display: The LCD offers real-time feedback and status updates to users.
Arduino Mega
The Arduino Mega complements the ESP8266 by managing user input and display functionalities. It features:
-
Keypad: A keypad enables users to input OTPs conveniently.
-
RFID Reader: RFID technology provides an alternative method for authentication.
Communication
To facilitate seamless operation, the ESP8266 and Arduino Mega communicate via serial communication, ensuring efficient coordination between the two devices.

DEVICE
FEATURES

Authentication.
In alignment with TR64 internet security standards, our door lock system meticulously integrates various authentication factors, reinforcing security measures and elevating user access protocols
Fingerprint
-
Elevate security standards with the incorporation of the Adafruit A608 fingerprint sensor, seamlessly linked to the ESP8266 platform and accessible through our Telegram bot.
-
Ensure a hassle-free and secure unlocking experience as the system responds exclusively to verified fingerprints, prioritizing simplicity and user confidence.
-
Enroll your fingerprint effortlessly via the Telegram bot to complete the registration process and enjoy personalized access control.

One-Time-Password
-
Utilizes a Telegram bot interface to streamline OTP generation and verification processes.
-
Employs the Telegram bot to create random numbers, which serve as unique OTPs upon request.


KeyPad
-
Through a keypad interface connected to Arduino Mega, users can conveniently generate a secure one-time passcode (OTP) originating from the ESP8266 module to unlock the door.
-
Modification of the passcode is restricted to individuals with knowledge of the current OTP, ensuring enhanced security and precise control over access permissions.

RFID
-
Implemented issuance of RFID tags and cards for streamlined access to our IoT security project.
-
Utilized compact RFID design, with slim cards fitting into standard wallets and tags attachable to keychains.
-
Integrated RFID technology into the Arduino Mega platform, enhancing communication between RFID readers and IoT system for robust access control.

SECURITY
FEATURES

AWS
Monitoring and Auditing
Data logging allows for the continuous monitoring of access attempts and the auditing of historical access records. This helps in identifying unauthorized access attempts or patterns that might indicate a security breach. For example, if a login attempt from an unusual location or at an odd time is detected, it could signal an attempted break-in.
Incident Response and Forensics
In the event of a security incident, data logs provide essential information that can help in understanding how the incident occurred, assessing the extent of any breach, and identifying the perpetrator
User Management and Access Control
For systems that rely on Telegram as a login feature, data logging helps in managing user access levels and permissions. By logging each user’s activities, administrators can review and adjust access rights based on actual usage patterns and security considerations.
Accountability
By keeping a detailed log of who accesses the door lock and when, it establishes accountability among users. In an environment where security is paramount, being able to trace access back to specific Telegram accounts can deter unauthorized access and encourage users to maintain the security of their login credentials.

TR64



SECURITY
TESTING
Testing 1: WPS aircrack hacking
We are going to hack into the wifi using aircrack and Wifi Protected Setup. Using a virtual machine (Virtual Box) running Kali Linux OS, a router with WPS, and a Wireless Network Adapter capable of monitor mode, we are going to crack WPS. Once we have cracked the WPS, we will have access to the APs. We will then use Nmap to identify the devices and services available and capture the packets sent by esp8266.
Secondly, we are going to make use of the tool wpscrack.py to make the program executable (chmod +x wpscrack.py).
We will scan the access point to attack and save its MAC address of it using the sudo command (sudo iwlist scan wlan0) and (ip link show wlan0 | awk '/ether/ {print $2}').
Subsequently, we will set our IoT device into monitor mode using (sudo airmon-ng start wlan0) and finally attack the access point using (wpscrack.py –iface mon0 –client <MAC address> –bssid <AP MAC address> --ssid <AP name > -v).
Testing 2: Wi-Fi packet sniffing, man in the middle
Once we are in the AP, we will use Nmap to identify the ESP8266 ($ nmap [scan type...] options {target specification)).
After we have identified the ESP8266's IP address, we can use Wireshark to capture its packets, to decrypt the messages to identify the telegram handles used, through packets sent to AWS.
Testing 3: Wi-Fi Denial of service.
With Wi-Fi DoS, we can deny the users access to their locks, as it prevents the ESp8266 from communicating with telegram and AWS.
Since we have identified the Wi-Fi SSID and the IP address of the LockGitech, we can use a command to send the packet that makes the user inaccessible to a wifi network, type the below command.
aireplay-ng -0 <number of packets> -a <bssid of target network> -c <target client> <wifi name>
bssid of target network = copy the BSSID of victim’s router.
Target client=paste the MAC address of the user, you want to disconnect specifically. (optional)
Wifi name = your adaptor name.
Now, we need to configure our channel.
Stop the network scanning. Press CTRL+C.
airodump-ng -c <broadcasting channel of router> -i <wifi name>
To disconnect all users type the below command.
aireplay-ng -0 <number of packets> -a <bssid of target network> -c <target client> <wifi name>
This will send an authentication packet and make all users inaccessible to the wifi network.
Now, no user will have permission to connect with the network until we stop sending packets.
Testing 4: Brute force OTP using Dictionary Attack.
In this scenario, a brute force attack is conducted to get the OTP authentication number for the keypad system. The attack involves systematically testing combinations of passwords ranging from 000000 - 999999 and injecting them into Arduino to determine the OTP that was sent.
-
Password Wordlist: Specify the path to the appropriate Numlist.
-
Arduino Mega IP Address: [Arduino_IP]
hydra -P /path/to/password/Numlist.txt [Arduino_IP] http-post-form "/login.php:password=^PASS^:Invalid password"
Hydra submits HTTP POST requests to the keypad login page, varying the password parameter. The response "Invalid password" indicates unsuccessful authentication attempts, while successful authentication would lead to access granted.
Testing 5: RFID duplication method
We will use the RFID duplication method to help us gain unauthorised access to the location with the digital lock. We can either intercept and capture the radio signals transmitted between the real RFID credentials and the RFID reader or use specialized hardware, such as flipper zero, to capture the data of a stolen RFID tag.
Once the data is captured, we will be able to extract the information stored on the RFID tag. We will then duplicate it on another RFID card, giving us unauthorized access to one of the factors of authentication

IMPROVEMENTS.
In our IoT security project focusing on a smart lock system, we've made significant strides in delivering a functional and secure solution within the allocated timeframe. Despite facing constraints on time and resources, we're pleased with the progress we've achieved and the core functionalities we've implemented.
Given the limited duration for development, we're satisfied with the foundational features we've integrated into the smart lock system. These include essential authentication methods such as fingerprint recognition, keypad entry, and RFID card access. By incorporating these authentication mechanisms, we've ensured that the smart lock meets the fundamental requirements for secure access control.
However, it's important to recognize the potential for further enhancements and refinements if we had the opportunity to continue working on the project. With additional time and resources, we could explore the implementation of advanced features aimed at improving both user experience and system security.
Description of Features to Implement/Improve on
Magnetic Locking System
Maintenance:
-
Magnetic locks have fewer moving parts, requiring minimal maintenance compared to servo motors.
Speed and Response Time:
-
Magnetic locks offer rapid locking and unlocking due to instantaneous electromagnetic force, while servo motors may have slower response times.
Durability:
-
Magnetic locks are known for their durability as they rely on electromagnetic force, reducing the risk of mechanical wear and failure over time compared to servo motors.
Complimenting Telegram Bot with Mobile Application
User Interface Customization:
-
A mobile app allows for customizing the user interface to provide a more intuitive and tailored experience for users whereas, Telegram is chat-based interfaced which has its limitations.
Advanced Functionality:
-
With a mobile app, you can integrate advanced functionalities such as push notifications for lock status updates, real-time monitoring of access logs, and interactive visualizations of security data.
Implementation of a Cloud Storage
Scalability:
-
Cloud storage effortlessly accommodates the growth of user data and access configurations in your smart lock system without requiring additional hardware.
Accessibility:
-
Users can conveniently manage their fingerprint, RFID, and keypad access data for the smart lock from anywhere with an internet connection, enhancing flexibility and user experience.
Reliability:
-
Cloud storage ensures data integrity, availability, and protection against loss or unauthorized access, providing peace of mind for the security and reliability of your smart lock system.








