reversing
-
-
-
[HackCTF] BabyMIPSWargame/study 2022. 2. 22. 20:54
1. Description babymips라는 파일이 하나 주어진다. ubuntu에서 file 명령어를 통해 살펴보면 다음과 같다. 32-bit MIPS 아키텍처에서 실행되는 프로그램임을 알 수 있다. MIPS는 학교에서 컴퓨터 아키텍처 과목을 수강할 때 pipelining 등을 설명하기 위해 예시로 항상 나오던 cpu 아키텍처였는데, 실제로는 처음 보는 것 같다. 현재 실행 중인 pc는 x86-64 기반의 cpu이므로 동적 분석을 하기 위해서는 qemu 같은 도구를 이용해야 할 것 같다. 2. Analysis 우선 동적분석을 하기에 앞서 ida로 babymips 파일을 열어보았다. int __cdecl main(int argc, const char **argv, const char **envp) { i..
-
[SCTF 2021] secure_enoughWargame/study 2022. 1. 26. 22:29
1. Description "I made secure communication algorithm. No one can see my message."라는 문구와 함께 out.pcap 파일, my_client 바이너리 파일이 주어진다. out.pcap 파일은 서버와 통신하면서 오고 가는 패킷 정보를 보여주며, my_client 파일은 서버와 소켓 통신을 하는 클라이언트의 바이너리 파일인 듯하다. 해당 문제는 reversing, binary 태그가 달려있었다. 2. Analysis my_client 파일을 ida로 열어서 분석을 진행하면서 out.pcap 파일을 번갈아 보는 방식으로 분석을 진행했다. 먼저 my_client 파일의 main 함수는 아래와 같다. 인자 검사를 한 후, 몇 가지 함수를 호출하고 프..
-
[reversing.kr] PEPasswordWargame/study 2022. 1. 4. 02:02
1. Description 파일을 다운로드하면 다음과 같이 두 개의 .exe 파일을 확인할 수 있다. 각 파일을 실행해 보자. 1) Original.exe 위와 같이 "Password is ????????????" 문자열을 포함하는 메시지 박스가 출력되고 종료된다. 2) Packed.exe 대화 상자가 나타나고 문자를 입력할 수 있다. 따로 확인 버튼은 없다. 2. Analysis 1) Original.exe 먼저 Original.exe 파일을 분석해보겠다. Exeinfo PE로 패킹 유무를 검사해보았다. 따로 패킹은 되어 있지 않다. 이어서 ida로 파일을 열어보았다. 스택에 선언된 변수들에 대하여 do-while 반복문으로 xor 연산을 진행하고 메시지 박스를 호출한다. 메시지 박스 호출 부분에 bp..
-
-
-
Debugging ToolsReverse Engineering 2020. 11. 20. 02:15
1. Ollydbg http://www.ollydbg.de/ OllyDbg v1.10 www.ollydbg.de 32-bit debugger이다. 위 첨부된 링크에서 다운 받을 수 있으며, 가벼워서 처음 리버스 엔지니어링을 접할 때 이용하기에 좋다. 앞으로 작성할 리버싱 핵심원리 공부 관련 포스팅에서는 Ollydbg를 이용하여 리버싱을 할 것 같다. 64-bit program에서 debugging 할 수 없는 제약사항이 있다. 2. x64dbg https://x64dbg.com/#start x64dbg Built on open-source libraries x64dbg uses Qt, TitanEngine, Zydis, Yara, Scylla, Jansson, lz4, XEDParse, asmjit an..