반응형

보안 63

[justCTF] That's not crypto - 리버싱 / uncomplye6

어렵지 않은 리버싱 문제 crypto 문제가 아니라고 문제 제목에서부터 강력하게 어필하고 있다. 문제에서 주어지는 것은 checker.pyc 파일이다. .pyc 파일을 파이썬 코드로 복구하는데는 uncompyle6 라는 도구를 사용한다. pip install uncompyle6 라고 입력하면 다운로드 받을 수 있다. uncompyle6 이라고 입력하면 아래쪽에 디컴파일된 결과가 출력된다. from random import randint def make_correct_array(s): from itertools import accumulate s = map(ord, s) s = accumulate(s) return [x * 69684751861829721459380039 for x in s] def val..

CTF/리버싱 2023.02.15

[boot2root] Vulnerable Adventure 2 - MISC / Python

이전 문제(https://hackingstudypad.tistory.com/413) 와 연계되는 문제이다. 똑같이 전에 제공되었던 client.py 파일을 이용해서 풀 수 있다. import struct import socket import random s = socket.socket() port = 1013 s.connect(('35.238.225.156',port)) coins = 100 health = 100 mana = 100 posx = 0 posy = 0 goblin = 0 terminated = 0 dummyflag = 0 vuln = random.randint(1,500) while(1 == 1): print "Welcome to game" print "What would you like ..

CTF/MISC 2023.02.11

[CTFlearn] Reykjavik - 리버싱 / IDA

CTFlearn 의 예순 여섯번째 문제 이번엔 쉬운 난이도의 리버싱 문제이다. 문제 설명을 보면 gdb 를 이용해보라고 하는데 더 쉬운 IDA 를 이용해 풀것이다. 문제 제목인 Reykjavik 는 아이슬란드의 수도라고 한다. 문제 출제자가 아이슬란드 사람인가 보다. 문제에서 주어지는 것은 Reykjavik 바이너리 파일이다. 한번 실행시켜 봤는데 인자로 플래그를 입력받는듯 했다. 바로 IDA 라는 디스어셈블러를 이용해 바이너리를 열어보았다. main 함수의 수도 코드를 살펴보니 v3 변수에 사용자가 입력한 인수를 저장하고 아래쪽에 strcmp 함수로 v3 와 CTFlearn{Is_This_A_False_Flag?} 가 같은지 비교하고 있다. 같으면 아래쪽 printf 가 실행되는데 이건 가짜 플래그라고..

워게임/CTFlearn 2023.02.09

[boot2root] Vulnerable Adventure - MISC / Python

이번 문제는 뭐라 분류해야 할지 몰라서 MISC 로 넣었다. MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 설명을 읽어보면 client 를 실행시켜 플래그를 얻으라고 한다. 문제에서 주어지는 파일은 client.py 파일이다. import struct import socket import random s = socket.socket() port = 1013 s.connect(('35.238.225.156',port)) coins = 100 health = 100 mana = 100 posx = 0 posy = 0 goblin = 0 terminated = 0 dummyflag = 0 vuln = random.randint(1,500) print(vuln) ..

CTF/MISC 2023.02.08

[JISCTF] REV102 - 리버싱 / Uncompyle6

푸는데 머리조금 아팠던 리버싱 문제이다. 역시나 수학은 어려운것 같다.. 문제에서 주어지는 것은 be_true 라는 바이너리 파일이다. 무슨 파일인지 보려고 HxD로 열어봤는데 중간중가네 pys, pyt 이런 단어들이 보여서 파이썬으로 만들어진 것이라고 추측했다. 확실하게 파이썬이라고 생각한건 을 구글에 검색한 결과 파이썬 제너레이터라는 검색결과가 나왔기 때문이다. 그래서 해당 파일의 확장자를 .pyc 로 바꾸고 분석을 시작했다. .pyc 파일을 파이썬 코드로 복구하는데는 uncompyle6 라는 도구를 사용한다. pip install uncompyle6 라고 입력하면 다운로드 받을 수 있다. python3 uncompyle6 이라고 입력하면 이렇게 파이썬 코드를 복구할 수 있다. import opera..

CTF/리버싱 2023.01.22

[CTFlearn] Blank Page - 포렌식 / Unicode / HxD

CTFlearn의 쉰 여덟번째 문제 이번엔 조금 참신한 포렌식 문제이다. 이전에도 Unicode와 관련된 비슷한 유형의 문제를 풀어본 적 있는데 (https://hackingstudypad.tistory.com/354) 이번 문제의 풀이법은 조금 다르다. 문제 설명을 읽어보면 Super Agent School을 졸업한 스파이인 나에게 Master-Mind가 비밀 지령을 줬는데 읽지 못하겠다고 도와달라고 한다. TheMessage.txt 파일이 주어지는데 메모장으로 열어보면 아무것도 없는 빈 파일이다. 메모장을 드래그 한번 해봤더니 그래도 뭔가 내용이 들어있는것 처럼 블록이 잡히는걸 볼 수 있었다. 그래서 HxD를 이용해 TheMessage.txt 파일을 열어봤다. 안에 많은 내용이 적혀있었는데, 자세히 ..

워게임/CTFlearn 2023.01.18

[JISCTF] Malicious2 - 포렌식 / John the Ripper

간단한 포렌식 문제 Malicious 1 이 있었는지 기억이 안나는데 일단 캡쳐해둔건 Malicious 2 밖에 없다. 별다른 문제 설명 없이 mycv.docx 파일만 덩그러니 주어진다. mycv.docx 파일을 열려고 보니 비밀번호가 걸려있었다. docx같은 오피스 파일 비밀번호를 crack 하기위해 John the Ripper 라는 도구를 자주 사용한다. 여러가지 비밀번호를 crack 해주는 기능을 가지고 있다. 칼리 리눅스에서 offic2john > hash 명령어로 hash 파일을 생성해준 다음 john 명령어로 John the Ripper 를 사용해 hash 파일의 원래 값을 찾아준다. 조금 더 확실하게 찾기 위해 강력한 wordlist 파일은 rockyou.txt 파일을 --wordlist 옵..

CTF/포렌식 2023.01.10

[Affinity CTF] wholeisbetter - 포렌식 / Base64

pdf와 관련된 포렌식 문제 난이도가 그렇게 어렵지 않은 문제이다. 이전에 Root Me에서 비슷한 문제를 풀이했었다. (https://hackingstudypad.tistory.com/340) 문제에서 주어지는 것은 There_is_a_flag_somewhere.pdf 파일이다. 안에 들어있는 내용은 위와 같은데, 이번 문제에서는 내용은 전혀 읽어볼 필요도 없다. 주어진 pdf 파일을 strings 명령어로 살펴보니 중간에 누가봐도 수상한 문자열들이 보였다. Li0t, Li4t, LS0u 등이 계속 반복되는데 뭔가 Base64로 인코딩 된 것 같았다. 이 데이터는 Root Me에서 했던것 처럼 PDFStreamDumper 라는 도구를 이용해서도 확인이 가능하다. CyberChef(https://gchq..

CTF/포렌식 2023.01.07

[CTFlearn] GandalfTheWise - 포렌식 / HxD / Base64 / XOR

CTFlearn 의 마흔아홉번째 문제 이번에도 익순한 포렌식 카테고리의 jpg 파일 문제이다. 그래도 이번 문제는 조금 생각이 필요하다. https://hackingstudypad.tistory.com/266 https://hackingstudypad.tistory.com/288 https://hackingstudypad.tistory.com/305 https://hackingstudypad.tistory.com/311 https://hackingstudypad.tistory.com/338 조금씩 다르긴 하지만 이전에 비슷한 문제를 많이 풀이했었다. 이번 문제에서 주어지는 Gandalf.jpg 파일이다. 간달프 할아버지와 함께 멋진 문구가 적혀있다. 주어진 Gandalf.jpg 파일을 HxD 라는 도구를..

워게임/CTFlearn 2022.12.26

[CTFlearn] Simple Steganography - 포렌식 / HxD / Steghide

CTFlearn의 마흔 네번째 문제 이번 문제는 문제 제목처럼 말그대로 간단한 스테가노그래피 문제이다. 문제 설명에 친절하게 Steghide 라는 도구를 사용하라고 힌트까지 줬다. 우선 문제에서 주어진 Minions1.jpeg 파일은 위와 같다. 귀여운 미니언 사진이다. 문제 힌트대로 Steghide 라는 도구를 사용해볼 텐데, 그 전에 우선 알아야 할 것이 있다. steghide 도구에서 --extract -sf 이라고 옵션을 주게되면 파일 안에 숨어있는 데이터를 추출할 수 있다. 추출하기전 보이는것과 같이 passphrase 를 물어보는데 올바른 passphrase 를 입력하지 못하면 위처럼 extract 를 하지 못한다. 어딘가에 숨어있을 passphrase 를 먼저 찾아야 한다. simple st..

워게임/CTFlearn 2022.12.13
반응형