This script is designed to remove basic PIN, password or pattern lock from a connected device. This method was tested and works on Android versions from Gingerbread (2.3) to Jelly Bean (4.1), but it may work on others.
The Console tab will show commands as they are run, and any errors that result. This technique does not require Root on most devices, but does require USB debugging to be enabled. It also requires a binary called 'sqlite3' which is part of stock android builds, but some customized builds do not include it. The 'sqlite3' binary needs to be located in /system/bin and requires Root.
Most devices are rootable if USB debugging is enabled, even if the screen is locked. If your device is not listed, check Device Manager for a device called 'Android Composite ADB Interface'. If this is not listed, then you need to install proper drivers. Otherwise your device may not have USB debugging enabled.
Step 1: Updates a sqlite database located at /data/data/com.android.providers.settings/databases/settings.db Table:secure; Field:lock_pattern_autolock; Value=0 (if it exists) Table:secure; Field:lockscreen.lockedoutpermanently; Value=0 (if it exists) Table:secure; Field:lockscreen.password_type; Value=65536
Step 2: SQLite updates may remove lock, so reboot device. If lock screen still shows try step 3.
Step 3: Delete file that stores hash of lock pattern. /data/system/gesture.key
Step 4: Reboot device again. Lock screen should be removed.
This script was developed for use in EnCase training. For more details, please click the following link: