no image
Basic RCE L18
앞의 여러문제와 동일한 문제군요 :D 한번 풀어보도록 합시다! EP는 콜함수부터 시작을 하는군요? 일단 문자열 검색을 통해서 의심가는 부분을 찾아봅시다! 쉽게 찾을 수 있었습니다! 보니 위의 4011F4 주소의 strcmp를 통해서 문자열을 비교한다음 분기점을 통해서 넘어가는 것을 확인할 수 있습니다. Name = CodeEngn Serial = 12 앞의 문제들과 동일하게 넣어주도록 하겠습니다 :D 보니까 String2에는 새로운 헥스값과 String1에는 제가 넣은 값 12가 들어가더군요 :D 그럼 String2가 CodeEngn의 Serial이겠죠 ㅎㅎㅎ? 실행을 시켰더니 Serial이 맞다고 하네요 ! 이만 문제풀이를 마치도록 하겠습니다 :D
2020.04.02
no image
Forensics - 잔상
250점 짜리 문제네요 ~_~ compare이라는 이름의 알집과 함께 똑같은 사진 2개가 있습니다! 똑같은 사진을 비교하라는 건가 싶어서 HxD로 열어봤는데 똑같더라구요 ?! 그래서 두개의 파일의 헥스값을 검사 해보았습니다! 검사를 해보니 다른 부분이 중간중간 들어가 있는것을 확인해 볼 수 있었습니다 :D 그리고 이렇게 나열해 보았습니다! 위의 Hex값은 1번사진 밑의 Hex값은 2번사진인데 2번 사진의 4번째 값까지 이어붙이니까 "Hack"이 나오더라구요 :D 그래서 2번 사진의 Hex값을 이어붙이면 플래그가 나오지 않을까 싶었습니다! 고러.. 노가다를 했죠... 역시 다 찾은 다음에 아스키값으로 풀어내니까 flag가 나오네요 :D 이만 문제풀이였습니다!
2020.04.02
no image
Basic RCE L17
오늘의 문제는 Key값이 주어지고 Name을 맞추라고 하는군요 ㅎㅎㅎㅎ 힌트는 Name은 1자리이고 알파벳또는 숫자라고 합니다 :D EP 입니다 ㅎㅎㅎ 별다른거 없어보이니 바로 문자열 검색하였습니다 :D 분기점을 찾을 수 있었습니다! 그리고 프로그램을 실행해 보겠습니다 :D 일단 1자리이고 알파벳 또는 숫자라고 했으니 임의의 문자 a를 넣어주겠습니다 ㅎㅎㅎ! 입력을하니.. 문자를 더 입력하라고 하네요..? 정답은 한자리라면서...=_=... 그래서 저 문자열을 찾아가 보았습니다 :D 글자 수를 체크하는 곳이 보입니다! 브레이크를 걸고 실행해서 보니 EAX에 1이 담깁니다! 글자수가 들어가는 것 같아보이는군요..! 그래서 문제가 오류인가 생각을 해봤는데.. 이것도 문제이겠거니 해서 변경해주었습니다! 3을 ..
2020.04.01
no image
Old - 47 (score:150)
문제로 들어오니 Mail을 보내는게 있습니다! 일단 위의 그대로 보내보았습니다 :D 전송을 하니 메일 통신을 보여줍니다.. ~_~ 그런데 메일을 보내는 사람과 받는 사람이 지정이 되어 있네요..! 여기서 보내는 부분은 subject로 메일의 헤더부분을 보내는 것 같습니다 :D 그럼 "Cc:"라는 참조를 이용해서 저에게도 메일을 오게 만들면될 것 같습니다 ㅎㅎㅎ burp suite를 이용해서 "Cc:xxxxx@xxxx"를 넣어줍니다 :D 그리고 전송!! 통신을 확인해보니 Cc 항목이 잘 들어갔음을 볼 수 있으며 위의 TO 항목에 저의 메일이 포함되어 있습니다! 그럼 제 메일로 가보겠습니다 :D 메일이 왔네용 !? 이렇게 플래그를 획득할 수 있었습니다 :D 이만 문제풀이를 마치겠습니다!
2020.03.31
no image
Basic RCE L16
문제를 접해보니 L14, L15문제와 동일합니다 :D 분석을 시작해봅시다! EP입니다 ! 바로 문자열 검색을 하여 의심스러운 곳을 찾아보도록 하겠습니다 :D "Good Job!"이라는 문자열을 보고 분기점을 찾았습니다! 40159C에서 EAX 레지스터 값과 [EBP-3C]에 담겨져있는 값을 비교하는 군요 :D 일단 프로그램을 실행시켜보겠습니다! 이전 L14, L15에서 했던것 처럼 Name => "CodeEngn" Password => 12 를 입력하겠습니다 :D 예상대로 분기점에서 걸립니다! 레지스터 EAX에는 C가 담겨져 있고 스택 [EBP-3C]에는 E4C60D97의 값이 담겨져 있네요 :D 나와있지만 스택에 가서 한번 확인해봅시다! EBP 기준이기 때문에 [Relative to EBP]로 보겠습니..
2020.03.31
no image
Forensics - Terrorist
파일을 열어보니 그림이 보이지 않습니다..! 그럼 HxD로 열어서 분석을 해봅시다 :D 열어서 봤는데 ftypM4A가 보였습니다..! filetype이 m4a라고 하는 것보니 원래 음성파일인가 봅니다 :D 변환을 시켜주니 이상한 영어같기도한 말이 들립니다..! 그래서 HxD로 열심히 다른 단서를 찾을 수 있을까 했는데.. 안 찾아지더라구요... =_= 그래서 오디오를 무슨 짓을 했나 싶어.. 영화에서 가끔 거꾸로 암호화하는 듯한 장면들이 있기에 오디오 파일을 거꾸로 변환시켜보았습니다..! 그래서 들어보니... 다음 타겟 장소를 친절히 알려줍니다 :D 그럼 이만 문제풀이를 마치겠습니다 !
2020.03.31
no image
Forensics - Magic PNG
파일을 켜보니 그림이 보이지 않습니다..! 파일에 문제가 있나봅니다 :D HxD를 이용해서 PNG 파일을 오픈 시켜보았습니다 :D 일단 파일 시그니처 먼저 확인을 해봤었습니다 ! 정상적인 헤더 시그니처와 문제 파일의 헤더 시그니처가 살짝 다른 것을 찾을 수 있었습니다 :D 살짝 다른 부분을 변경해주었습니다! 변경해줬더니 살짝 그림이 보이기 시작합니다 :D 그런데.. 밑의 부분이 깨진건지.. 안보이네요 ㅠ_ㅠ 그래서 다른 부분도 고쳐야겠구나 싶었습니다 ㅎㅎㅎㅎ PNG 파일은 N개의 청크로 구성이 되어 있습니다 :D 밑의 사이트에서 저도 확인하면서 공부했어용 ~_~ PNG 파일 구조에 대한 간단히 잘 설명해 놓은 곳입니당 :D ↓ https://ryanking13.github.io/2018/03/24/png..
2020.03.30
no image
Basic RCE L15
문제를 보니 앞의 L14 문제와 동일하네요 :D Ollydbg로 열어보니 특별히 다른 건 없어 보입니다! 그래서 문자열 검색 기능을 이용해 의심가는 부분을 찾아보았습니다 :D "Cracked"과 "Try Again!"이 보입니다! 주소 458831의 비교문으로 주소 458837의 점프문으로 인해 분기가 나뉘어집니다 :D 그럼 458831에 BP를 걸어두고 실행을 시켜보았습니다! 프로그램이 하나 실행이 됩니다! Name과 Serial이 존재하는데 문제에서 Name이 "CodeEngn"일 때 Serial이 무엇인지를 알아내라고 했으니 Name에는 "CodeEngn"을 넣고 Serial에는 임의의 숫자를 넣어주도록 하겠습니다 :D 예상대로 BP에서 걸립니다 :D 조건문을 보면 EAX와 DS:[0045B844]..
2020.03.30

Basic RCE L18

HelloMG
|2020. 4. 2. 17:58

Basic RCE L18 문제

앞의 여러문제와 동일한 문제군요 :D

한번 풀어보도록 합시다!

EP

EP는 콜함수부터 시작을 하는군요?

 

일단 문자열 검색을 통해서 의심가는 부분을 찾아봅시다!

분기점

쉽게 찾을 수 있었습니다!

보니 위의 4011F4 주소의 strcmp를 통해서 문자열을 비교한다음 분기점을 통해서 넘어가는 것을 확인할 수 있습니다.

프로그램 실행

Name = CodeEngn

Serial = 12

앞의 문제들과 동일하게 넣어주도록 하겠습니다 :D

strcmp

보니까 String2에는 새로운 헥스값과 String1에는 제가 넣은 값 12가 들어가더군요 :D

 

그럼 String2가 CodeEngn의 Serial이겠죠 ㅎㅎㅎ?

시리얼 입력

실행을 시켰더니 Serial이 맞다고 하네요 !

 

이만 문제풀이를 마치도록 하겠습니다 :D

'CTF > CodeEngn.kr' 카테고리의 다른 글

Basic RCE L19  (0) 2020.04.07
Basic RCE L17  (0) 2020.04.01
Basic RCE L16  (0) 2020.03.31
Basic RCE L15  (0) 2020.03.30
Basic RCE L14  (0) 2020.03.28

Forensics - 잔상

HelloMG
|2020. 4. 2. 17:42

잔상 문제

250점 짜리 문제네요 ~_~

파일

compare이라는 이름의 알집과 함께 똑같은 사진 2개가 있습니다!

 

똑같은 사진을 비교하라는 건가 싶어서 HxD로 열어봤는데 똑같더라구요 ?!

그래서 두개의 파일의 헥스값을 검사 해보았습니다!

compare

검사를 해보니 다른 부분이 중간중간 들어가 있는것을 확인해 볼 수 있었습니다 :D

나열

그리고 이렇게 나열해 보았습니다!

위의 Hex값은 1번사진 밑의 Hex값은 2번사진인데

2번 사진의 4번째 값까지 이어붙이니까 "Hack"이 나오더라구요 :D

 

그래서 2번 사진의 Hex값을 이어붙이면 플래그가 나오지 않을까 싶었습니다!

고러.. 노가다를 했죠... 

flag

역시 다 찾은 다음에 아스키값으로 풀어내니까 flag가 나오네요 :D

 

이만 문제풀이였습니다!

'CTF > HackCTF' 카테고리의 다른 글

Web - LOL  (0) 2020.09.28
Reversing - Handray  (0) 2020.04.07
Forensics - Terrorist  (0) 2020.03.31
Forensics - Magic PNG  (0) 2020.03.30
Misc - QRCODE  (0) 2020.03.28

Basic RCE L17

HelloMG
|2020. 4. 1. 17:25

Basic RCE L17 문제

오늘의 문제는 Key값이 주어지고 Name을 맞추라고 하는군요 ㅎㅎㅎㅎ

힌트는 Name은 1자리이고 알파벳또는 숫자라고 합니다 :D

 

EP

EP 입니다 ㅎㅎㅎ

별다른거 없어보이니 바로 문자열 검색하였습니다 :D

분기점

분기점을 찾을 수 있었습니다!

그리고 프로그램을 실행해 보겠습니다 :D

프로그램 실행

일단 1자리이고 알파벳 또는 숫자라고 했으니

임의의 문자 a를 넣어주겠습니다 ㅎㅎㅎ!

Please Enter More Chars...

입력을하니.. 문자를 더 입력하라고 하네요..?

정답은 한자리라면서...=_=...

그래서 저 문자열을 찾아가 보았습니다 :D

글자 수 제한

글자 수를 체크하는 곳이 보입니다!

글자 수 확인

브레이크를 걸고 실행해서 보니 EAX에 1이 담깁니다!

글자수가 들어가는 것 같아보이는군요..!

그래서 문제가 오류인가 생각을 해봤는데.. 이것도 문제이겠거니 해서 변경해주었습니다!

CMP EAX,1

3을 1로 바꾸어 1글자여도 동작될 수 있도록 해주었습니다!

 

그리고 문자를 통해서 암호화가 되기 때문에 먼저 암호화가 어디서 이루어지는 찾아야합니다 :D

CALL 45B850

45BB9B 주소의 함수을 지나니 EAX에 어떤 키가 담기는 것을 확인했습니다 ㅎㅎㅎ

 

그래서 들어가서 분석을 해보았습니다!

KEY 생성

들어가서 보시다보면 이 위와같은 구조가 4개가 보였습니다!

그리고 이 루틴의 첫 시작이 제가 입력한 e인 것을 보아 KEY 생성하는 구간이구나 생각했습니다 ㅎㅎㅎ

'-'를 기준으로 총 5개가 있는데 위의 루틴은 첫번째 구간이니 'BEDA'를 만들어내는 녀석을 찾으면 될 것 같습니다 :D

루틴 설명

위의 사진과 같이 루틴의 수식을 다 적어 놓은 후..

python

파이썬을 이용해서 간단히 코딩해 보았습니다 :D

 

그리고 실행!!

F

beda가 포함된 녀석을 찾았습니다 :D

바로 "F"군요!!

맞는지 확인해 봐야겠죠 ㅎㅎㅎ?

Well done!

"Well done!"창이 뜨는군요 ㅎㅎㅎㅎ!

정답은 "F"이네용!

이제 MD5로 해쉬화해서 인증하면됩니다!

 

이만 문제풀이를 마치겠습니다 :D

'CTF > CodeEngn.kr' 카테고리의 다른 글

Basic RCE L19  (0) 2020.04.07
Basic RCE L18  (0) 2020.04.02
Basic RCE L16  (0) 2020.03.31
Basic RCE L15  (0) 2020.03.30
Basic RCE L14  (0) 2020.03.28

Old 47번 문제

문제로 들어오니 Mail을 보내는게 있습니다!

 

일단 위의 그대로 보내보았습니다 :D

메일 전송

전송을 하니 메일 통신을 보여줍니다.. ~_~

그런데 메일을 보내는 사람과 받는 사람이 지정이 되어 있네요..!

 

여기서 보내는 부분은 subject로 메일의 헤더부분을 보내는 것 같습니다 :D

그럼 "Cc:"라는 참조를 이용해서 저에게도 메일을 오게 만들면될 것 같습니다 ㅎㅎㅎ

burp

burp suite를 이용해서 "Cc:xxxxx@xxxx"를 넣어줍니다 :D

그리고 전송!!

성공

통신을 확인해보니 Cc 항목이 잘 들어갔음을 볼 수 있으며 위의 TO 항목에 저의 메일이 포함되어 있습니다!

 

그럼 제 메일로 가보겠습니다 :D

메일받았따

메일이 왔네용 !?

 

이렇게 플래그를 획득할 수 있었습니다 :D

 

이만 문제풀이를 마치겠습니다!

'CTF > Webhacking.kr' 카테고리의 다른 글

Old - 20 (score:200)  (0) 2020.04.07
Old - 1 (score:200)  (0) 2020.04.02
Old - 27 (score:150)  (0) 2020.03.28
Old - 19 (score:150)  (0) 2020.03.22
Old - 58 (score:150)  (0) 2020.03.06

Basic RCE L16

HelloMG
|2020. 3. 31. 17:29

Basic RCE L16 문제

문제를 접해보니 L14, L15문제와 동일합니다 :D

 

분석을 시작해봅시다!

EP

EP입니다 !

바로 문자열 검색을 하여 의심스러운 곳을 찾아보도록 하겠습니다 :D

분기점

"Good Job!"이라는 문자열을 보고 분기점을 찾았습니다!

40159C에서 EAX 레지스터 값과 [EBP-3C]에 담겨져있는 값을 비교하는 군요 :D

 

일단 프로그램을 실행시켜보겠습니다!

프로그램 실행

이전 L14, L15에서 했던것 처럼

Name => "CodeEngn"

Password => 12

를 입력하겠습니다 :D

분기점

예상대로 분기점에서 걸립니다!

 

레지스터 EAX에는 C가 담겨져 있고

스택 [EBP-3C]에는 E4C60D97의 값이 담겨져 있네요 :D

 

나와있지만 스택에 가서 한번 확인해봅시다!

Relative to EBP

EBP 기준이기 때문에 [Relative to EBP]로 보겠습니다 :D

EBP-3C

예상대로 [EBP-3C]에는 E4C60D97이 담겨져 있네요 :D

 

Password로 12를 넣었는데 EAX에 C가 담긴다는 것은 16진수로 변환되어서 들어가는 것이니

정답은 E4C60D97을 10진수로 변환한 값이겠네용 :D

3838184855

계산기를 이용해서 10진수로 변환한 값을 가져옵니다!

성공!!

패스워드에 넣으니 "Good Job!"이 출력되네용 :D

 

L14, L15와 문제풀이 방식이 거의 동일한 문제네요!

이만 문제풀이를 마치겠습니다 :D

'CTF > CodeEngn.kr' 카테고리의 다른 글

Basic RCE L18  (0) 2020.04.02
Basic RCE L17  (0) 2020.04.01
Basic RCE L15  (0) 2020.03.30
Basic RCE L14  (0) 2020.03.28
Basic RCE L13  (0) 2020.03.22

Forensics - Terrorist

HelloMG
|2020. 3. 31. 17:06

Terrorist 문제

파일을 열어보니 그림이 보이지 않습니다..!

 

그럼 HxD로 열어서 분석을 해봅시다 :D

HxD

열어서 봤는데 ftypM4A가 보였습니다..!

filetype이 m4a라고 하는 것보니 원래 음성파일인가 봅니다 :D

m4a 변환

변환을 시켜주니 이상한 영어같기도한 말이 들립니다..!

그래서 HxD로 열심히 다른 단서를 찾을 수 있을까 했는데..

안 찾아지더라구요... =_=

 

그래서 오디오를 무슨 짓을 했나 싶어.. 영화에서 가끔 거꾸로 암호화하는 듯한 장면들이 있기에

오디오 파일을 거꾸로 변환시켜보았습니다..!

거꾸로 변환

그래서 들어보니... 다음 타겟 장소를 친절히 알려줍니다 :D

 

그럼 이만 문제풀이를 마치겠습니다 !

'CTF > HackCTF' 카테고리의 다른 글

Reversing - Handray  (0) 2020.04.07
Forensics - 잔상  (0) 2020.04.02
Forensics - Magic PNG  (0) 2020.03.30
Misc - QRCODE  (0) 2020.03.28
Misc - Who am I ?  (0) 2020.03.26

Forensics - Magic PNG

HelloMG
|2020. 3. 30. 22:46

Magic PNG 파일

파일을 켜보니 그림이 보이지 않습니다..!

 

파일에 문제가 있나봅니다 :D

HxD

HxD를 이용해서 PNG 파일을 오픈 시켜보았습니다 :D

일단 파일 시그니처 먼저 확인을 해봤었습니다 !

PNG 파일 헤더

정상적인 헤더 시그니처와 문제 파일의 헤더 시그니처가 살짝 다른 것을 찾을 수 있었습니다 :D

헤더 변경

살짝 다른 부분을 변경해주었습니다!

살짝 보임..

변경해줬더니 살짝 그림이 보이기 시작합니다 :D

그런데.. 밑의 부분이 깨진건지.. 안보이네요 ㅠ_ㅠ

 

그래서 다른 부분도 고쳐야겠구나 싶었습니다 ㅎㅎㅎㅎ

PNG 파일 구조

PNG 파일은 N개의 청크로 구성이 되어 있습니다 :D

밑의 사이트에서 저도 확인하면서 공부했어용 ~_~

 

PNG 파일 구조에 대한 간단히 잘 설명해 놓은 곳입니당 :D ↓

https://ryanking13.github.io/2018/03/24/png-structure.html

 

PNG 파일 구조

최근 GoN 2018 신입생 리쿠르팅 문제나, pragyan CTF등의 대회에서 PNG 파일 구조를 조작해둔 포렌식 문제를 종종 봤는데, 그러한 문제들을 푸는 과정에서 공부한 PNG 파일 구조를 정리해보았다.

ryanking13.github.io

위의 사이트에서 보셨다시피

PNG 파일에서 필수 청크가 IHDR, IDAT, IEND라고 합니다 :D

 

그래서 문자열 검색기능을 이용해서 찾아보기 시작했습니다!

idat

IDAT을 검색했을 때 10008번째 오프셋의 idat가 소문자로 되어 있는 것을 발견할 수 있었습니다 :D

대문자로 이루어져야하니 변경해 주도록 합시다 ㅎㅎㅎㅎ

IDAT

변경해주고! 저장합니다 ㅎㅎㅎ

 

그리고 확인해보면....

성공!

귀여운 그림이 완성되면서 밑부분에 flag를 확인할 수 있었습니다 :D

 

사진 속 주인공은 롤 게임 캐릭터인 룰루 같네용 >_<

 

그럼 이만 문제풀이를 마치도록 하겠습니다 :D

'CTF > HackCTF' 카테고리의 다른 글

Forensics - 잔상  (0) 2020.04.02
Forensics - Terrorist  (0) 2020.03.31
Misc - QRCODE  (0) 2020.03.28
Misc - Who am I ?  (0) 2020.03.26
Misc - BF  (0) 2020.03.20

Basic RCE L15

HelloMG
|2020. 3. 30. 21:47

 

L15 문제

문제를 보니 앞의 L14 문제와 동일하네요 :D

EP

Ollydbg로 열어보니 특별히 다른 건 없어 보입니다!

 

그래서 문자열 검색 기능을 이용해 의심가는 부분을 찾아보았습니다 :D

분기점

"Cracked"과 "Try Again!"이 보입니다!

주소 458831의 비교문으로 주소 458837의 점프문으로 인해 분기가 나뉘어집니다 :D

 

그럼 458831에 BP를 걸어두고 실행을 시켜보았습니다!

프로그램

프로그램이 하나 실행이 됩니다!

 

Name과 Serial이 존재하는데 문제에서 Name이 "CodeEngn"일 때

Serial이 무엇인지를 알아내라고 했으니

Name에는 "CodeEngn"을 넣고

Serial에는 임의의 숫자를 넣어주도록 하겠습니다 :D

조건

예상대로 BP에서 걸립니다 :D

 

조건문을 보면 EAX와 DS:[0045B844]와 비교를 하고 있습니다!

밑에서 보니 친절하게 DS:[0045B844]는 6160이라는 것을 보여주고 있네요 :D

 

그래도 한번 확인해보도록 합시다!

45B844

역시 메모리주소 45B844에 6160의 값이 들어있습니다 :D

메모리 상에는 리틀엔디언 방식으로 들어가기 때문에 거꾸로 읽으셔야합니다 ㅎㅎㅎ

C

그럼 EAX의 정체는 무엇일까요 ?

 

제가 12를 입력했는데 EAX에는 C로 담겼습니다 ㅎㅎㅎ

즉, 제가 입력한 Serial값이 16진수로 변환된다는 것을 알 수 있겠죠!

 

그럼 답을 알 수 있겠죠 :D

24,928

6160을 10진수로 바꾸면 24928이 됩니다!

hack!!

이제 Serial에 넣어주도록 합시다!

crack!!!

역시나 예상대로 16진수로 변환되어 6160으로 들어갑니다 :D

성공!

계속해서 실행하니 크랙이 되었다고 하네용 :D

 

앞의 문제와 동일한 방식으로 풀면되는 문제네요!

그럼 이만 문제풀이를 마치겠습니다 :D

'CTF > CodeEngn.kr' 카테고리의 다른 글

Basic RCE L17  (0) 2020.04.01
Basic RCE L16  (0) 2020.03.31
Basic RCE L14  (0) 2020.03.28
Basic RCE L13  (0) 2020.03.22
Basic RCE L12  (0) 2020.02.28