본문 바로가기

IT전공관련

LAYER 7 CTF 문제풀이(Layer's letter, knock knock, Do not touch me!)

**사진 자료는 사이트가 막히는 이유로

준비하지 못했습니다!

먼저  Layer's Letter은 영어로된 암호를 푸는 것이었는데,

대문자는 대문자끼리

소문자는 소문자끼리 그 알파벳보다 알파벳순서로 7번째 위에 있는 알파벳을 고르는 것이 었습니다. ex) H >> A , I >> B 앞부터 7글자는 맨뒤로 이동해서 계산

ex) A >> T, B >> S

이렇게 해서 암호를 풀면됩니다.

그리고 knock knock는 답이 나와있습니다...

그 다음 마지막으로 

Do not touch me!를 설명해보자면,

먼저 이 문제는 리버싱문제로 일단 이쯤에 브레이크를 걸고

(이건 사진자료가 있습니다.)

이렇게 아무수나 넣어놓고 끝까지 실행시켜 보았습니다.

그랬더니 !!  어셈블리어가 끝나갈 쯤에 이렇게 문자열이

하나 등장했습니다.


웬지 수상하게 생겨서 한번 저 문자열을 넣고 프로그램을 실행시켜보았습니다. 그리고 어셈블리어를 해석해봤는데,


먼저 문자열을 입력시키면 앞에서부터 하나씩 문자를 

찾아서 00F91205줄에서 {EBP-60}과 XOR시키는 구조입니다.

그래서 {EBP-60}값을 봤는데, 밑에 값이 나왔습니다.

{EBP-60}값은 >> 7 즉 정리해서 말하자면,

문자열을 입력하면, 문자열 하나하나를 각각 십진수 7, 

이진수로는 0111과 XOR시키는 것입니다.

그래서 만약 Aa를 입력하면,

      A                                    a

01000001                    01100001

00000111      XOR      00000111

------------------------------------

01000110                    01100110

즉 F(70)과 f(102)가 나옵니다.

이 모든것을 종합하여 마지막쯤에 등장한 문자열

AKF@|chX~hrXlihpXfisn8z를 0111과 XOR시킨 문자열을 

넣고 돌렸더니, 

이렇게 Correct! 가 떴습니다!





'IT전공관련' 카테고리의 다른 글

어셈블리어를 정리해보자!(2)  (0) 2017.12.02
에셈블리어를 정리해보자!(1)  (0) 2017.11.15
웹 프로그래밍 방학 활동 PPT  (0) 2017.08.17
해커스쿨 FTZ-6 문제풀이  (0) 2017.08.15
해커스쿨 FTZ-5 문제풀이  (0) 2017.08.15