Skip to content

Latest commit

 

History

History
150 lines (106 loc) · 6.67 KB

README.md

File metadata and controls

150 lines (106 loc) · 6.67 KB

PiPass (v1)

PiPass (rhymes with "bypass") is an implementation of bulk password automation via RPi-Zero-W based USB keystroke injection, controlled from a locally hosted web interface.

An example use-case could be the erasure and BIOS reset of several hundred laptops at the end of a hardware lease where unique and horrific system passwords have been set on every device. It could be used in other ways, but you should bear in mind that it's no more secure than if you wrote a load of passwords on a sheet of paper and should be handled accordingly.

P4wnP1_aloa : https://github.com/RoganDawes/P4wnP1_aloa
Kali : https://www.kali.org/
RPi-Zero-WH : https://www.amazon.co.uk/dp/B08VHL6CZG
jQuery : https://jquery.com/
Bulma : https://bulma.io/

The hardware uses a Kali based "P4wnP1 A.L.O.A" build on a Raspberry Pi Zero-W. I'm using Bulma and jQuery for the web interface, interacting with PHP and a BASH script in the backend.

Updated Web Interface (Mon 26th Apr)

Interaction with the web interface is kept simple. Asset numbers are validated against the password list in realtime. Matched assets have their password displayed. To avoid accidental injection, the "Go!" button is enabled only after the checkbox is marked. If the keystroke injection fails, a notification is displayed. Typically this takes around 1 second. If the keystroke injection is successful, a confirmation message is displayed almost immediately.

Connect RPi to laptop

The portable battery is not essential, but it lasts all day and avoids any delay while the WiFi reassociates. The RPi-Zero is hosting a simple web interface.

Enter asset number and send keystrokes

The web interface validates the asset number, and you can view the password for cross-reference. Press "Go!" to inject the keystrokes.

h/t to @stevenhorner for spotting issue with QWERTZ keyboard layout!

Detailed Description

The convential approach to this task is that a list of asset numbers (or serial numbers) is supplied, along with the corresponding passwords.

...
LAP-00254, zfKX8cryUgJuHajk
LAP-00255, VscuXQ8MrbLqTJNh
LAP-00256, 9KFCHBAvYXD6ezas
LAP-00257, V4FW3SKAMhbDPmtJ
...

The laptop is switched on, the boot process is interrupted, and you're prompted to type in a BIOS password. Find the BIOS security settings, and to clear the system password you're prompted for the password, again. Then you clear the system password, reset the BIOS to it