Overview
bin100
is a zip file containing modified ssh binaries and an encrypted password dump. Flipping the bits of the password dump reveals the plaintext and the key.
Writeup
After downloading the binary, we unzip it to find 3 files: modified versions ssh
and sshd
and a binary blob mac.h
. We noticed that flipping the bits of mac.h
gave us a plain text dump of passwords:
1
2
3
4
5
$ cat bitflip.py
import sys
for byte in open("mac.h", "rb").read():
sys.stdout.write(chr(~ord(byte) & 0xFF))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ python bitflip.py
SSH2_OUT: 192.168.88.61 user: root pass: foobar (ddtek.biz)
SSH2_OUT: 192.168.88.61 user: root pass: f00bar (ddtek.biz)
SSH2_OUT: 192.168.88.61 user: root pass: mypassw0rd (ddtek.biz)
SSH2_OUT: 10.0.2.15 user: root pass: supr3m3p0w3r (defcon.org)
pass_from: 10.0.2.15 user: root pass: supr3m3p0w3r (defcon.org)
SSH2_OUT: 192.168.88.151 user: emily pass: l0v3ly
SSH2_OUT: 192.168.88.151 user: emily pass: w0nd3rful
SSH2_OUT: 192.168.88.151 user: emily pass: n0pa$$w0rd
pass_from: 192.168.88.151 user: emily pass: l0v3ly (hackeruniversity.edu)
pass_from: 192.168.88.61 user: feather pass: l1ght3rthand1rt (ddtek.biz)
pass_from: 192.168.88.61 user: feather pass: wh@tsmypa$$ (ddtek.biz)
pass_from: 192.168.88.61 user: feather pass: justw@it (ddtek.biz)
pass_from: 192.168.88.61 user: feather pass: ohmygoD (ddtek.biz)
pass_from: 192.168.88.61 user: feather pass: l1ght3rthand1rt (ddtek.biz)
pass_from: 192.168.88.61 user: emily pass: l0v3ly (ddtek.biz)
At this point, we got stuck for a while. We tried every string in the decrypted text with no luck so we started digging further. The format of the text dump and the name mac.h
made it clear that this was a reference to skynet. We reversed all the modified functions in the ssh binaries and found that the ssh binary had a backdoor if one provided a password such that crypt(password) == "xzoQHjF6pMZlY"
. We started brute forcing on our GPUs while we took another look to see if there was an easier way.
And then we learned that the key server was initially malfunctioning and one decrypted passwords was the key: supr3m3p0w3r
.