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

+ Recent posts