728x90
힌트를 확인하자. 패스워드를 입력하면 다음레벨의 패스워드를 얻을 수 있다.
가까이 있다고 하니 같은 디렉토리인 /bin을 보았다.
뭔가 수상해 보이는 wrong.txt를 확인해 보니 다음과 같이 모스부호처럼 생긴 문자열이 출력이 되었다.
아무래도 언더바(_)는 0, 하이픈(-)은 1인 2진수 인 것 같다. 그리고 중간에 공백이 3개가 있으니 4글자 이라고 생각이 든다.
해서 다음과 같은 python 스크립트를 짜보았다.
간단히 설명하자면 wrong.txt파일을 열어서 첫 1라인을 읽어드린 뒤
하이픈은 1로, 언더바는 0으로 문자열 교체 후
공백에 따라 문자열을 잘라낸다.
int(i,2)는 i를 정수형으로 바꾸는데 두번째 인자는 i의 형태이다. (2진수 이므로 2)
그리고 chr()은 아스키값을 문자열로 치환한다.
실행 해 보면 mate라는 문자열을 얻게 된다.
/bin/level7 을 실행시켜 mate를 입력하면 끝
728x90
'ctf + wargame > 해커스쿨ftz' 카테고리의 다른 글
[ftz] level9 (0) | 2015.09.18 |
---|---|
[ftz] level8 (0) | 2015.09.18 |
[ftz] level6 (0) | 2015.09.17 |
[ftz] level5 (0) | 2015.09.17 |
[ftz] level4 (0) | 2015.09.17 |