반응형

분류 전체보기 714

[247CTF] THE ENCRYPTED PASSWORD - 리버싱 / IDA

247CTF 에서 제공하는 EASY 난이도의 리버싱 문제 문제에서 제공되는 파일은 encrypted_password 이다. 해당 파일을 리눅스 환경에서 실행시키면 Enter the secret password : 라는 문구가 출력되고 뭔가 입력을 했을때, 조건과 다르면 바로 종료가 된다. IDA 도구를 이용해 해당 바이너리를 연 뒤 main 함수에서 F5를 눌러 수도코드를 보면 위와 같은 내용이 들어있다. s 라는 변수에 875e9409f9811ba8560beee6fb0c77d2 라는 값이 저장되고, s2 에는 0x5A53010106040309, 0x5C585354500A5B00, 0x555157570108520D, 0x5707530453040752 값이 들어있는것이 보인다. for 문에서 s2와 s를 ..

워게임/247CTF 2023.10.10

[2022 화이트햇 콘테스트] C-2 - 포렌식 / WinPrefetchView

2022 화이트햇 콘테스트 예선에 출제되었던 문제 이전 C-1 문제와 이어지는 문제이다. (https://hackingstudypad.tistory.com/651) C-2 문제는 공격자가 자격증명을 덤프한 뒤 유출할 때 사용한 도구 이름과 해당 도구가 데이터를 유출하기 위해 최초 실행된 시각을 찾는것이 목표이다. 지난 B-3 문제에서 공격자가 다운받은 도구모음(p.tar) 의 압축을 풀면 공격자가 공격에 사용한 여러 도구들이 있는것을 확인했었다. 도구와 관련된 문제이니 이번에 사용한 도구도 여기 있는 tcping.exe, mimidrv.sys, mimikatz.exe, mimilib.dll, nbtscan.exe, netsess.exe, pscp.exe, rclone.exe 중 하나가 정답일 것이다. 이..

CTF/포렌식 2023.10.09

[247CTF] THE MORE THE MERRIER - 리버싱 / HxD

247CTF에서 제공하는 EASY 난이도의 리버싱 문제 리버싱이라고 부르기 민망할 정도로 쉬운 문제이다. 문제에서는 the_more_the_merrier 라는 바이너리 파일이 하나 주어진다. ELF 파일이길래 KALI 로 옮겨서 실행해 봤더니 Nothing to see here... 라는 문구만 나오고 아무일도 벌어지지 않는다. 실행해서 플래그를 찾는게 아니라 바이너리 내부 어딘가 숨겨져 있는 느낌이었다. HxD로 열어서 Nothing to see here 부분 근처를 찾아봤더니 한글자씩 띄엄띄엄 적혀있는 플래그를 찾을 수 있었다. 중간에 있는 00 00 00 공백을 모두 지우고 하나로 합쳐 제출하면 문제를 해결할 수 있다.

워게임/247CTF 2023.10.08

[2022 화이트햇 콘테스트] C-1 - 포렌식 / WinPrefetchView

2022 화이트햇 콘테스트 예선에 출제되었던 문제 이전 B-3 문제와 이어지는 문제이다. (https://hackingstudypad.tistory.com/649) C-1 문제는 공격자가 자격증명을 덤프하기 위해 사용한 도구 이름과 프리패치 로그 상에서 해당 도구가 마지막으로 실행된 시각을 찾는것이 목표이다. 지난 B-3 문제에서 공격자가 다운받은 도구모음(p.tar) 의 압축을 풀면 mimikatz.exe 가 있다는 것을 알아냈었다. mimikatz는 워낙 유명한 자격증명 덤프 도구이기 때문에 문제에서 요구하는 첫번째 정답은 바로 알아낼 수 있다. 이제 프리패치를 확인해서 mimikatz 가 언제 실행되었는지 보기만 하면 된다. 프리패치를 분석할때는 위의 WinPrefetchView 라는 도구를 사용한..

CTF/포렌식 2023.10.07

[247CTF] SENSITIVE SERVER MEMORY - MISC / Metasploit

247CTF 에서 제공하는 EASY 난이도의 MISC 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 설명을 보면 웹 서버의 메모리에 관련된 문제라고 하면서 2014년 이후 패치가 됐을까 하는 의문을 던지고 있다. 웹서버, 메모리, 2014을 키워드로 찾아보면 Heartbleed 취약점에 관련된 것이라는 것을 쉽게 알아낼 수 있다. 맨땅에서 페이로드부터 다 작성해서 풀면 굉장히 어렵겠지만 다행히 옛날 취약점이라 적당한 툴을 이용해면 금방 해결할 수 있다. 특히 칼리리눅스에 내장된 Metasploit 을 이용하면 쉽다. 터미널에서 msfconsole 을 입력해 메타스플로잇 콘솔에 접속해준다. 프롬포터가 나오면 search heartbleed 라고 입력해준..

워게임/247CTF 2023.10.06

[2022 화이트햇 콘테스트] B-3 - 포렌식 / Sysmon View

2022 화이트햇 콘테스트 예선에 출제되었던 문제 이전 B-2 문제와 이어지는 문제이다. (https://hackingstudypad.tistory.com/647) B-3 문제는 공격자가 악성 행위를 위해 다운로드 받는 도구 모음(tar)의 sha1 해시값을 구하는 것이 목표이다. 문제 해결에는 Sysmon 로그를 이용했다. 윈도우 키 + r 을 눌러 실행창을 연 후 eventvwr 를 입력해 이벤트 뷰어를 열어봤다. 이벤트 뷰어 창에서 응용 프로그램 및 서비스 로그 - Microsoft - Windows 를 따라가면 Sysmon 이라는 로그가 보인다. Sysmon 로그는 마이크로소프트에서 제공하는 Sysinteranls suite 에 포함된 도구로 아주 강력한 윈도우 이벤트 로깅 기능을 제공한다. 기본..

CTF/포렌식 2023.10.05

[247CTF] HIDDEN FLAG FUNCTION - 포너블 / 버퍼오버플로우 / IDA / Pwndbg / Pwntool

247CTF 에서 제공하는 간단한 버퍼오버플로우 문제 문제에서는 hidden_flag_function 바이너리 파일과 원격 접속 주소가 제공된다. IDA 를 이용해 해당 바이너리를 열어봤을 때 flag, chall, main 세 함수가 정의되어 있었다. main 함수에서는 chall 함수를 호출하고 있고 chall 에서는 scanf로 사용자의 입력을 받는다. v1 의 크기가 68인데 입력값 범위를 체크하지 않아 버퍼오버플로우가 가능해 보인다. 마지막 flag 함수는 서버 내부의 flag.txt 파일을 불러와 내용을 출력해주는데 어디서도 호출하고 있지 않아 실행되지 않는 함수이다. 버퍼오버플로우를 통해 리턴 주소를 변경시켜 flag 함수가 실행되도록 만들어야 한다. pwndbg를 이용해 바이너리를 분석한다..

워게임/247CTF 2023.10.04

[2022 화이트햇 콘테스트] B-2 - 포렌식 / Wireshark

2022 화이트햇 콘테스트 예선에 출제되었던 문제 이전 B-1 문제와 이어지는 문제이다. (https://hackingstudypad.tistory.com/644) B-2 문제는 악성코드를 다운받는 공격자 서버의 종료와 버전을 알아내는 것이 목표이다. 이전 문제에서 악성 스크립트가 실행되었던 시각을 프리패치의 WSCRIPT 의 Last Run Time 를 통해 확인했었다. 악성코드를 다운받은것은 이 시간 이후일 것이기 때문에 시간을 기준으로 잡고 분석을 진행했다. 제공된 Win10 이미지에서 바탕화면의 Log 폴더에 들어가면 pcapng 파일들이 있는것을 볼 수 있다. 이중 첫번째 1.pcapng 파일을 통해 시간을 알 수 있다. 스크립트가 실행된 2022-10-13 18:50:40 근처의 패킷을 살펴보..

CTF/포렌식 2023.10.03

[247CTF] MY MAGIC BYTES - 암호학 / XOR

247CTF 에서 제공하는 MODERATE 난이도의 암호학 문제 XOR 과 관련된 문제이다. 문제에서 제공되는 것은 my_magic_bytes.jpg.enc 파일이다. 해당 파일의 내용을 보면 전혀 무엇인지 알 수 없는 상태로 암호화가 되어있다. 문제 설명에 나와있듯이 어떤 키값으로 XOR 되어있기 때문이다. .jpg.enc 라는 확장자를 통해 암호화 되기 전에는 jpg 파일이었음을 알 수 있다. 키 값을 찾아내기 위해서는 jpg 파일이 기본적으로 가지는 특징들을 이용해야 한다. jpg XOR key = enc 라면 end XOR jpg = key 이기 때문이다. 가장 쉽게 확인할 수 있는 것은 jpg 파일의 시그니처이다. 파일마다 조금씩 다르긴 하지만 어떤 jpg 파일들은 FF D8 FF E0 00 1..

워게임/247CTF 2023.10.02

[247CTF] AN IMPOSSIBLE NUMBER - MISC / 정수 오버플로우 / C

247CTF 에서 제공하는 EASY 난이도의 MISC 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. IMPOSSIBLE NUMBER 라고 하는것을 보니 정수 오버플로우와 관련되었음을 직감할 수 있다. 예전에 비슷한 문제를 다뤘었다. (https://hackingstudypad.tistory.com/619) 문제에서 제공되는 C 코드는 이렇다. impossible_number 를 입력받는데 impossible_number 이상이고, impossible_number 가 impossible_number + 1 보다 커야한다는 조건이 걸려있다. 상식적으로 이런 숫자는 없지만 C언어의 int형을 사용하기 때문에 이 문제는 아주 쉽게 해결할 수 있다. int 형의 경..

워게임/247CTF 2023.10.01
반응형