图文 暴力破解锁屏 PIN 解锁 Android 手机(或设备)

课程时长 16秒

学习期限 36个月 退款期限 不支持

原始价格 ¥9.90 优惠价格 ¥9.90 会员价格 免费

难度级别 初级 学习人次 50 综合评分 5.0

内容实用 5.0分

简洁易懂 5.0分

逻辑清晰 5.0分

50
0
0
0
  • 详情
  • 目录

🔓📱Android-PIN-暴力破解

通过暴力破解锁屏 PIN 解锁 Android 手机(或设备)。

将您的 Kali Nethunter 手机变成适用于 Android 设备的暴力 PIN 破解器!

📱怎么运行的

它使用 USB OTG 数据线将锁定的手机连接到 Nethunter 设备。它模拟键盘,自动尝试 PIN,并在尝试多次错误猜测后等待。

如何连接电话

[Nethunter 手机] <--> [USB 数据线] <--> [USB OTG 适配器] <--> [锁定的安卓手机]

USB HID Gadget 驱动程序提供 USB 人机接口设备 (HID) 的仿真。这使 Android Nethunter 设备能够模拟锁定手机的键盘输入。这就像将键盘插入锁定的手机并按下按键一样。

⏱使用 Samsung S5 尝试所有可能的 4 位 PIN 仅需 16.6 小时多一点,但使用优化的 PIN 列表应该会花费更少的时间。

你会需要

  • 锁定的 Android 手机
  • Nethunter 手机(或任何具有 HID 内核支持的 Android)
  • USB OTG(On The Go)电缆/适配器(USB 公头 Micro-B 到母头 USB A),以及标准充电线(USB 公头 Micro-B 到公头 A)。
  • 就这样!

🌟好处

  • 将您的 NetHunter 手机变成 Android PIN 破解机
  • 与其他方法不同,您不需要在锁定的手机上启用 ADB 或 USB 调试
  • 已锁定的安卓手机无需 root
  • 您无需购买特殊硬件,例如 Rubber Ducky、Teensy、Cellebrite、XPIN Clip 等。
  • 您可以轻松修改退避时间以破解其他类型的设备
  • 有用!

⭐特征

  • 破解 1 到 10 位任意长度的 PIN
  • 使用配置文件支持不同的手机
  • 针对 3、4、5 和 6 位 PIN 的优化 PIN 列表
  • 绕过手机弹出窗口,包括低电量警告
  • 检测手机何时拔出或关机,并等待每 5 秒重试
  • 每 X 次 PIN 尝试后可配置延迟 N 秒
  • 日志文件

安装

待定

执行脚本

如果您将脚本安装到 /sdcard/,则可以使用以下命令执行它。

bash ./android-pin-bruteforce

请注意,Android 使用 noexec 标志装载 /sdcard。您可以使用 验证这一点 mount

用法

Android-PIN-Bruteforce (0.2) is used to unlock an Android phone (or device) by bruteforcing the lockscreen PIN.
  Find more information at: https://github.com/urbanadventurer/Android-PIN-Bruteforce

Commands:
  crack                Begin cracking PINs
  resume               Resume from a chosen PIN
  rewind               Crack PINs in reverse from a chosen PIN
  diag                 Display diagnostic information
  version              Display version information and exit

Options:
  -f, --from PIN       Resume from this PIN
  -a, --attempts       Starting from NUM incorrect attempts
  -m, --mask REGEX     Use a mask for known digits in the PIN
  -t, --type TYPE      Select PIN or PATTERN cracking
  -l, --length NUM     Crack PINs of NUM length
  -c, --config FILE    Specify configuration file to load
  -p, --pinlist FILE   Specify a custom PIN list
  -d, --dry-run        Dry run for testing. Doesn't send any keys.
  -v, --verbose        Output verbose logs

Usage:
  android-pin-bruteforce <command> [options]

支持的 Android 手机/设备

这已经在包括三星 S5、S7、摩托罗拉 G4 Plus 和 G5 Plus 在内的各种手机上成功测试。

它可以解锁 Android 版本 6.0.1 到 10.0。执行暴力攻击的能力不取决于所使用的 Android 版本。这取决于设备供应商如何开发自己的锁屏。

查看电话数据库了解更多详情 https://github.com/urbanadventurer/Android-PIN-Bruteforce/wiki/Phone-Database

🎳PIN 列表

默认情况下使用优化的 PIN 列表,除非用户选择自定义 PIN 列表。

破解不同长度的 PIN

使用 --length 命令行选项。

使用此命令破解 3 位 PIN 码, ./android-pin-bruteforce crack --length 3

使用此命令破解 6 位 PIN 码 ./android-pin-bruteforce crack --length 6

优化的 PIN 列表从何而来?

优化的 PIN 列表是通过从数据库泄漏中提取数字密码然后按频率排序生成的。所有未出现在密码泄漏中的 PIN 都附加到列表中。

优化的 PIN 列表是从 Ga$$Pacc DB Leak 生成的(21GB 解压,688M 帐户,243 个数据库,138920 个数字密码)。

4 位 PIN 列表

使用来自不同来源的 4 位 PIN 列表的原因是因为它比从 Ga$$Pacc DB Leak 生成的列表提供更好的结果。

optimised-pin-length-4.txt 是所有可能的 4 位 PIN 的优化列表,按可能性排序。可以 pinlist.txthttps://github.com/mandatoryprogrammer/droidbrute 找到文件名

此列表经 iSEC Partners 高级安全工程师 Justin Engler 和 Paul Vines 许可使用,并用于他们的 Defcon 演讲,使用机器人可重构按钮 Basher(和 C3BO)进行机电 PIN 破解

用面具破解

掩码使用具有标准 grep 扩展格式的正则表达式。

./android-pin-bruteforce crack --mask "...[45]" --dry-run

  • 要尝试从 1900 年到 1999 年的所有年份,请使用掩码 19..
  • 要尝试第一位数字为 1 且最后一位数字为 1 的 PIN,请使用掩码 1..1
  • 要尝试以 4 或 5 结尾的 PIN,请使用 ...[45]

📱不同手机的配置

设备制造商创建自己的锁屏,不同于默认或普通 Android。要找出您的手机需要哪些键,请将键盘插入手机并尝试不同的组合。

使用命令行参数加载不同的配置文件 --config FILE

例子: ./android-pin-bruteforce --config ./config.samsung.s5 crack

您还可以 config 通过自定义发送的时间和密钥来编辑文件。

以下配置变量可用于支持不同手机的锁屏。

# Timing
## DELAY_BETWEEN_KEYS is the period of time in seconds to wait after each key is sent
DELAY_BETWEEN_KEYS=0.25

## The PROGRESSIVE_COOLDOWN_ARRAY variables act as multi-dimensional array to customise the progressive cooldown
## PROGRESSIVE_ARRAY_ATTEMPT_COUNT__________ is the attempt number
## PROGRESSIVE_ARRAY_ATTEMPTS_UNTIL_COOLDOWN is how many attempts to try before cooling down
## PROGRESSIVE_ARRAY_COOLDOWN_IN_SECONDS____ is the cooldown in seconds

PROGRESSIVE_ARRAY_ATTEMPT_COUNT__________=(1  11 41)
PROGRESSIVE_ARRAY_ATTEMPTS_UNTIL_COOLDOWN=(5   1  1)
PROGRESSIVE_ARRAY_COOLDOWN_IN_SECONDS____=(30 30 60)

## SEND_KEYS_DISMISS_POPUPS_N_SECONDS_BEFORE_COOLDOWN_END defines how many seconds before the end of the cooldown period, keys will be sent
# set to 0 to disable
SEND_KEYS_DISMISS_POPUPS_N_SECONDS_BEFORE_COOLDOWN_END=5
## SEND_KEYS_DISMISS_POPUPS_AT_COOLDOWN_END configures the keys that are sent to dismiss messages and popups before the end of the cooldown period
SEND_KEYS_DISMISS_POPUPS_AT_COOLDOWN_END="enter enter enter"

## KEYS_BEFORE_EACH_PIN configures the keys that are sent to prompt the lock screen to appear. This is sent before each PIN.
## By default it sends "escape enter", but some phones will respond to other keys.

# Examples:
# KEYS_BEFORE_EACH_PIN="ctrl_escape enter"
# KEYS_BEFORE_EACH_PIN="escape space"
KEYS_BEFORE_EACH_PIN="escape enter"

## KEYS_STAY_AWAKE_DURING_COOLDOWN the keys that are sent during the cooldown period to keep the phone awake
KEYS_STAY_AWAKE_DURING_COOLDOWN="enter"

## SEND_KEYS_STAY_AWAKE_DURING_COOLDOWN_EVERY_N_SECONDS how often the keys are sent, in seconds
SEND_KEYS_STAY_AWAKE_DURING_COOLDOWN_EVERY_N_SECONDS=5

## DELAY_BEFORE_STARTING is the period of time in seconds to wait before the bruteforce begins
DELAY_BEFORE_STARTING=2
## KEYS_BEFORE_STARTING configures the keys that are sent before the bruteforce begins
KEYS_BEFORE_STARTING="enter"

弹出窗口

我们在冷却时间结束前发送密钥,或者在冷却时间期间发送。这是为了保持锁屏应用程序处于活动状态,并消除任何有关 PIN 尝试错误次数或电池电量不足警告的弹出窗口。

测试从 NetHunter 手机发送密钥

测试从终端发送密钥

从笔记本电脑使用 ssh 连接到 NetHunter 手机,并使用此命令测试发送密钥:

在此示例中,发送了回车键。

echo "enter" | /system/xbin/hid-keyboard /dev/hidg0 keyboard

在此示例中,发送了 ctrl-escape。

echo "left-ctrl escape" | /system/xbin/hid-keyboard /dev/hidg0 keyboard

注意:发送 config 文件变量中的键组合是不同的。目前仅 ctrl_escape 支持。

在此示例中,发送了密钥 a、b、c。

echo a b c | /system/xbin/hid-keyboard /dev/hidg0 keyboard

测试从应用程序发送密钥

此 Android 应用程序是一个虚拟 USB 键盘,您可以使用它来测试发送键。

https://store.nethunter.com/en/packages/remote.hid.keyboard.client/

如何发送特殊密钥

将此列表用于以下变量:

  • KEYS_BEFORE_EACH_PIN
  • KEYS_STAY_AWAKE_DURING_COOLDOWN
  • KEYS_BEFORE_STARTING

要发送特殊密钥,请使用以下标签。可以在 hid_gadget_test 源代码中找到此列表。

钥匙标签 钥匙标签
左键 f6
右键 f7
左移 f8
右移 f9
左-alt f10
右-alt f11
左元 f12
右元 插入
返回
Esc 键 翻页
备份程序 德尔
标签 结尾
空格键 向下翻页
大写锁定 正确的
f1 左边
f2 向下
f3 kp-输入
f4 向上
f5 数字键盘(的第一个键

要同时发送多个密钥,请使用以下列表:

  • ctrl_escape(发送左键和转义)

如果您需要更多组合键,请在 GitHub 问题列表中打开一个新问题。

自定义渐进冷却

文件的以下部分 config 控制渐进式冷却。

## The PROGRESSIVE_COOLDOWN_ARRAY variables act as multi-dimensional array to customise the progressive cooldown
## PROGRESSIVE_ARRAY_ATTEMPT_COUNT__________ is the attempt number
## PROGRESSIVE_ARRAY_ATTEMPTS_UNTIL_COOLDOWN is how many attempts to try before cooling down
## PROGRESSIVE_ARRAY_COOLDOWN_IN_SECONDS____ is the cooldown in seconds

PROGRESSIVE_ARRAY_ATTEMPT_COUNT__________=(1  11 41)
PROGRESSIVE_ARRAY_ATTEMPTS_UNTIL_COOLDOWN=(5   1  1)
PROGRESSIVE_ARRAY_COOLDOWN_IN_SECONDS____=(30 30 60)

该数组与此表相同。

尝试次数 尝试直到冷却 冷却
1 个 5 个 30
11 1 个 30
41 1 个 60

为什么不能使用笔记本电脑,或者即将推出 Windows 或 Linux 版本?

该脚本通过模拟 USB 人机接口设备 (HID) 工作,在本例中为键盘和鼠标输入。笔记本电脑具有单向 USB 端口,Android 移动设备/手机具有双向 USB 端口。模拟键盘需要双向端口。

这在未来可能会改变,因为 USB-C 应该是单向的。

Android 如何模拟键盘

使用 发送密钥 /system/xbin/hid-keyboard。要对此进行测试并发送密钥 1,您可以使用 echo 1 | /system/xbin/hid-keyboard dev/hidg0 keyboard

在 Kali Nethunter 中,/system/xbin/hid-keyboardhid_gadget_test.c. 这是一个用于测试 Linux 内核中包含的 HID 小工具驱动程序的小程序。该文件的源代码可以在 https://www.kernel.org/doc/html/latest/usb/gadget_hid.htmlhttps://github.com/aagallag/hid_gadget_test找到。

🔧故障排除

如果不是暴力破解 PIN

检查电缆的方向

Nethunter 手机应附有普通 USB 数据线,而锁定手机应附有 OTG 适配器。

OTG 数据线应连接到锁定的 Android 手机。常规 USB 数据线应连接到 Nethunter 手机。

请参阅有关如何连接电话的图形。

检查它是否正在模拟键盘

您可以通过使用常规充电/数据 USB 数据线将 NetHunter 手机连接到计算机来验证 NetHunter 手机是否成功模拟键盘。在破解时打开记事本等文本编辑器,您应该会看到它在文本编辑器中输入 PIN 码。

请注意,您不需要为此使用 OTG 电缆。

尝试重启手机

尝试关闭手机电源,如果可能的话甚至取出电池。

尝试新电缆

尝试使用新的电缆/适配器,因为电缆/适配器可能有故障。

如果它没有使用正确的 PIN 解锁手机

您可能发送密钥的速度太快,手机无法处理。增加配置文件中的 DELAY_BETWEEN_KEYS 变量。 💡如果您没有看到手机屏幕上出现 4 个点,则可能它没有收到 4 个按键。

🔋管理功耗

如果您的手机电量过快耗尽,请按照以下步骤操作:

  • 开始前确保两部手机都已充满电至 100%
  • 如果可能,降低受害者手机和 NetHunter 手机的屏幕亮度
  • 将两部手机都置于飞行模式,但您可能希望启用 WiFi 以通过 SSH 访问 NetHunter 手机。
  • 锁定的手机将为 NetHunter 手机供电,因为它显示为键盘配件
  • 使用带 Y 型分线器的 USB OTG 线外接电源,可以边破解边给 NetHunter 手机充电
  • 休息一下,为您的设备充电。使用 CTRL-Z 暂停脚本并使用 fg shell 命令恢复。
  • 避免 SEND_KEYS_STAY_AWAKE_DURING_COOLDOWN_EVERY_N_SECONDS 配置选项。这将导致锁定的手机使用更多电池来保持屏幕供电。而是使用 SEND_KEYS_DISMISS_POPUPS_N_SECONDS_BEFORE_COOLDOWN_END 选项(默认)。

检查诊断报告

使用命令 diag 显示诊断信息。

bash ./android-pin-bruteforce diag

如果您在插入 USB 数据线时收到此消息,请尝试从锁定的 Android 手机中取出电池并重新启动。

[FAIL] HID USB device not ready. Return code from /system/xbin/hid-keyboard was 5.

usb-devices 命令的工作原理

诊断命令使用 usb-devices 脚本,但它只是确定 USB 电缆是否连接不正确的一部分所必需的。这可以从 https://github.com/gregkh/usbutils/blob/master/usb-devices 下载

使用详细输出

使用该 --verbose 选项检查配置是否符合预期。这在您修改配置时特别有用。

使用试运行

--dry-run 在不向设备发送任何密钥的情况下使用该选项来检查它是如何运行的。这在您修改配置或开发期间特别有用。

试运行将:

  • 不发送任何密钥
  • KEYBOARD_DEVICE 如果 or HID_KEYBOARD 缺失,将继续而不是中止。

隐藏 USB 模式

在 NetHunter 手机的 shell 中尝试此命令: /system/bin/setprop sys.usb.config hid

💣已知的问题

  • 这无法检测到何时猜到了正确的 PIN 和手机解锁。
  • 你的手机可能没电了🔋在找到正确的 PIN 码之前关闭电池。
  • 未经审查,不要相信来自未知来源的电话配置文件。配置文件是 shell 脚本,可能包含恶意命令。

🚀路线图

  • [完成] 作品
  • [完成] 检测 USB HID 故障
  • [完成] 改进使用和命令行选项/配置文件
  • [完成] 为 n 位 PIN 添加暴力破解
  • [完成] 已知数字的掩码
  • [完成] 反向破解 PIN 列表(查找哪个最近的 PIN 解锁了设备)
  • [完成] 实现可配置的锁屏提示
  • [完成] 10 次尝试后实施冷却时间更改
  • [工作中] 查找/测试更多设备以进行暴力破解
  • 添加进度条
  • 添加预计到达时间
  • ASCII 艺术
  • 更好的 NetHunter GUI
  • 为 iPhone 实施
  • 检测手机何时解锁(使用 Nethunter 相机作为传感器?)
  • 破解 Android 模式(先尝试常见模式)

🙋贡献

欢迎请求请求。对于重大更改,请先打开一个问题来讨论您想要更改的内容。

请确保适当地更新测试。

😎作者和致谢

由 Andrew Horton (@urbanadventurer) 开发。

👏以下人员提供了很大帮助:

  • Vlad Filatov (@v1adf):为 Wiki 电话数据库测试许多电话

动机

我开发这个的最初动机是解锁三星 S5 Android 手机。它属于某个已经过世的人,他们的家人需要访问上面的数据。由于手边没有 USB Rubber Ducky 或任何其他硬件,我尝试了多种方法,最终意识到我必须开发一些新的东西。

信用

优化的 PIN 列表来自 iSEC Partners 的高级安全工程师 Justin Engler (@justinengler) 和 Paul Vines,并在他们的 Defcon 演讲中使用了机电 PIN 破解与机器人可重构按钮 Basher(和 C3BO)。.

图形

由 Andrew Horton 设计并感谢使用这些免费矢量包:

🗿与其他解锁已锁定 Android 手机的项目和方法的比较

是什么让这个项目与众不同?

有人问我,当有其他开源 Android PIN 破解项目时,是什么让这个项目与众不同。

Android-PIN-Bruteforce 是独一无二的,因为它可以从 NetHunter 手机破解 Android 手机上的 PIN,并且不需要预先破解锁定的手机。

有用:

  • 无需购买特殊硬件,例如 Rubber Ducky、Celebrite 或 XPIN Clip。
  • 没有 ADB 或 root 访问权限(手机不必预先破解)。
项目 亚行/USB 调试 需要根 需要 $ 硬件 商业的
⭐Android-PIN-暴力破解 网猎手机
github.com/PentesterES/AndroidPINCrack 是的 是的
github.com/ByteRockstar1996/Cracking-Android-Pin-Lock 是的 是的
github.com/sch3m4/androidpatternlock 是的 是的
github.com/georgenicolaou/androidlockcracker 是的 是的
github.com/MGF15/P-解码 是的 是的
github.com/BitesFor/ABL 是的 是的
github.com/wuseman/WBRUTER 是的
github.com/Gh005t/Android-BruteForce 是的
github.com/mandatoryprogrammer/droidbrute 橡皮鸭 $
github.com/hak5darren/USB-Rubber-Ducky 橡皮鸭 $ 是的
github.com/bbrother/stm32f4androidbruteforce STM32F4 开发板 $
hdb-team.com/product/hdbox/ 高清盒子 $$ 是的
xpinclip.com XPIN 剪辑 $$ 是的
cellebrite.com/en/ufed/ Cellebrite UFED $$$ 是的

其中一些项目/产品确实很棒,但它们实现了与 Android-PIN-Bruteforce 不同的目标。

如果项目需要 gestures.key 或 password.key,我将其列为需要 root。如果项目需要自定义引导加载程序,我将其列为同时需要 ADB 和 root。如果您希望在此表中列出您的项目,请打开一个新问题。这些项目中的每一个都有链接📚相关项目和进一步阅读部分。

😭普通电话用户

  • 试试 DataGenetics PIN 分析中的前 20 个 PIN ,显然可以解锁 26.83% 的手机。
  • 使用短信锁屏旁路应用程序(需要在手机锁定前安装应用程序)
  • 使用 Samsung Find My Mobile(需要在手机锁定前进行设置)
  • 使锁定屏幕 UI 崩溃(Android 5.0 和 5.1)
  • 使用 Google 忘记模式、忘记 PIN 或忘记密码(Android 4.4 KitKat 及更早版本)
  • 恢复出厂设置(您丢失所有数据😭)

🤖已经更换安卓 ROM 的用户

如果手机已经 root,开启了 USB 调试,或者开启了 adb。

  • 使用自定义恢复刷新 Pattern Password Disable ZIP(需要 TWRP、CMW、Xrec 等)
  • 删除 /data/system/gesture.keypassword.key(锁定设备上需要 root 和 adb)
  • 破解 /data/system/gesture.keypassword.key(锁定设备上需要 root 和 adb)
  • 更新 sqlite3 数据库 settings.db(锁定设备上需要 root 和 adb)

🔬法医调查员

这些方法可能很昂贵,而且通常只有专门的电话取证调查员才会使用。

按难度和费用排序:

  • 利用启用的 USB 调试(Oxygen Forensic Suite)
  • 带有键盘模拟的暴力破解(⭐Android-PIN-Bruteforce、RubberDucky 攻击、XPIN Clip、HBbox)
  • JTAG(与设备板上的 TAP(测试访问端口)接口)
  • 在系统编程(ISP)(涉及直接连接到设备板上闪存芯片上的引脚)
  • Chip Off(拆焊并从设备中取出闪存芯片)
  • 时钟故障/电压故障注入(绕过 PIN 限制的硬件 CPU 时序攻击)
  • 引导加载程序漏洞利用(攻击引导加载程序的零日漏洞利用。来自 Grayshift 和 Cellebrite 的 GrayKey)

JTAG、ISP 和 Chip Off 技术现在用处不大,因为大多数设备都是加密的。我不知道对使用时钟故障的电话 PIN 进行任何实际攻击,如果您知道使用这种技术的产品,请告诉我,以便我将其包括在内。

🕵安全专业人员和技术电话用户

将 USB HID Keyboard Bruteforce 与一些专用硬件一起使用。

  • RubberDucky 和 ​​Darren Kitchen 的 Hak5 暴力破解脚本
  • 为 USB Teensy 编写脚本
  • 购买昂贵的取证硬件
  • 或者您可以在您的 NetHunter 手机上使用 Android-PIN-Bruteforce!

尝试使用一个非常棒的项目 Duck Hunter 来模拟用于 Android PIN 破解的 RubberDucky 有效载荷没有奏效。它可能因为有效负载长度而使手机崩溃。

📚相关项目和进一步阅读

没有 NetHunter 的 USB HID 硬件

hak5 12x17:使用 USB Rubber Ducky 在 16 小时内破解任何 4 位 Android PIN https://archive.org/details/hak5_12x17

Hak5:USB Rubber Ducky https://shop.hak5.org/products/usb-rubber-ducky-deluxe

USB-Rubber-Ducky 有效负载 https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads

青少年 https://www.pjrc.com/teensy/

暴力破解带有 STM32F4Discovery 开发板的 Android 手机 https://github.com/bbrother/stm32f4androidbruteforce https://hackaday.com/2013/11/10/brute-forcing-an-android-phone/

针对 Mac EFI PIN 的自动暴力攻击(使用 Teensy) https://orvtech.com/atacar-efi-pin-macbook-pro-en.html https://hackaday.io/project/2196-efi-bruteforcer

Droidbrute:一个 Android PIN 破解 USB rub​​ber ducky payload,通过统计生成的单词列表变得高效。 https://github.com/mandatoryprogrammer/droidbrute

关于 hak5 情节和 Android 蛮力 4 位密码的讨论论坛 https://forums.hak5.org/topic/28165-payload-android-brute-force-4-digit-pin/

NetHunter HID 键盘攻击

NetHunter HID 键盘攻击 https://www.kali.org/docs/nethunter/nethunter-hid-attacks/

Linux 内核 HID 支持

人机接口设备 (HID) https://www.kernel.org/doc/html/latest/hid/index.html#

Linux USB HID 小工具驱动程序和 hid-keyboard 程序 https://www.kernel.org/doc/html/latest/usb/gadget_hid.html https://github.com/aagallag/hid_gadget_test

USB 设备脚本 https://github.com/gregkh/usbutils/blob/master/usb-devices

破解 Android PIN 和图案文件

AndroidPINCrack - 给定哈希和盐(需要手机上的 root)来暴力破解 Android 密码 https://github.com/PentesterES/AndroidPINCrack

Android Pattern Lock Cracker - 给定 SHA1 哈希的 Android Pattern 暴力破解(需要手机上的 root) https://github.com/sch3m4/androidpatternlock

一般恢复方法

[Android][指南]破解和绕过 Android 密码/模式/人脸/PI https://forum.xda-developers.com/showthread.php?t=2620456

使用 ADB 和 Shell 脚本的 Android BruteForce https://github.com/Gh005t/Android-BruteForce

取证方法和硬件

PATCtech 数字取证:破解 Android 密码 http://patc.com/online/a/Portals/965/Android%20Passcode.pdf

XPIN 剪辑 https://xpinclip.com/

HDB 团队的 HDBox https://hdb-team.com/product/hdbox/

Cellebrite UFED https://www.cellebrite.com/en/ufed/

来自 Grayshift 的 GrayKey https://www.grayshift.com/graykey/

密码分析

使用机器人可重构按钮 Basher(和 C3BO)进行机电 PIN 破解 https://www.defcon.org/html/defcon-21/dc-21-speakers.html#Engler

DataGenetics PIN 分析https://datagenetics.com/blog/september32012/index.html

第一章 下载方法