문제
풀이
파일 형식을 보니 java인 것을 확인
bintext를 사용하여 코드를 확인
if {vaultDoor.checkPassword[input]} {
이 조건문을 통해 비밀번호를 확인
그렇다면 checkPassword를 확인해보자.
byte[] passBytes = password.getBytes();
getBytes() 메소드는 문자열을 가져와서 배열 내에서 바이트로 변환
myBytes를 보면
Dec, Hex, Oct, Char로 이루어져있다.
이를 byte로 바꾸어
for문을 통해 passBytes와 myBytes를 비교
즉, password는 myBytes의 문자열
친구가 만들어준 툴(파이썬)을 이용하여 문제를 풀었다.
(파이썬으로 코드를 짜서 풀이 가능)
picoCTF{jU5t_4_bUnCh_0f_bYt3s_c194f7458e}
※ascii table
아스키 코드란 0에서 127 사이의 숫자를 각각 하나의 문자 또는 기호에 대응시켜 놓은 것
paperbun.org/ascii-charset-c-programming-s9ltasdxycwo
'Wargame & CTF > picoCTF' 카테고리의 다른 글
[picoCTF][Web]Insp3ct0r 문제 풀이 (0) | 2020.12.23 |
---|---|
[picoCTF][Reverse Engineering]asm1 문제 풀이 (0) | 2020.12.17 |
[picoCTF][Reverse Engineering]vault-door-3 문제 풀이 (0) | 2020.12.17 |
[picoCTF][Reverse Engineering]vault-door-1 문제 풀이 (0) | 2020.12.17 |
[picoCTF][Reverse Engineering]vault-door-training 문제 풀이 (0) | 2020.12.17 |