728x90
반응형

Reverse Engineering 30

디버깅 할 때 불편한 ASLR 기능(임의 BASE 주소) 끄기

Windows XP에서는 디버깅할 때 PE 파일 베이스 주소가 일정해 IDA 의 디스어셈블 내용과 비교하면서 볼 수 있습니다. 하지만, Windows 7 이상에서는 보안 기능 때문에 로드되는 PE 파일의 BASE가 매번 변경합니다. 그래서 32비트 파일 분석할 때는 Windows XP에서 디버깅했지만 요즘은 Windows XP에서 로드 안되는 32비트 파일도 나오고 64비트 악성코드도 점차 늘어나고 있습니다. 디버거와 IDA Pro 의 베이스주소가 달라 양쪽을 다보는 경우 주소 때문에 불편합니다. (계산해도 됩니다만.... 그건 좀) 해결 방법은 다음과 같습니다. 방법 1) IDA Pro Image base 변경 IDA Pro에서 'Edit' -> 'Segments' -> 'Rebase Program'으..

Reverse Engineering 2022.04.22

고전게임 실행기에서 사용하는 암호 찾기

고전 게임은 네트워크 단절된 윈도우 XP에서 하는데 파일을 다운로드 받았는데 압축 해제가 안됩니다. 처음에는 분할 압축을 인식 못하는걸까 리눅스에서도 풀어봤지만 안 풀립니다. 다른 컴퓨터의 최신 버전에서 압축을 해제하려고하니 암호를 물어봅니다. 암호가 걸려있어 안풀렸고 아마 구버전에서는 잘못된 파일이라고 인식했나봅니다. 암호가 뭔가해서 파일을 다운로드 한 고전게임 블로그를 검색했지만 찾을 수 없었습니다. (없거나 못 찾았거나...) 고전게임 실행기가 떠올랐습니다. 'URL 만 지정해주면 파일을 다운로드하고 실행까지해주니 프로그램 안에 암호 키가 내장되어 있겠구나...' 파일을 확인해보니 닷넷으로 작성되어 있습니다. 닷넷으로 작성된 파일은 dnspy로 코드를 보면 됩니다 전반적인 코드 흐름을 살펴보고 당연..

Adobe Flash 설치판 다운로드 주소

외부 인터넷과 연결되어 있지 않으면 Adobe Flash 다운로더로 설치 할 수 없습니다.또 Flash 파일을 분석하기 위해서 과거 버전이 필요한 경우가 있습니다. 다음 사이트에서 다운로드 하면 됩니다. https://www.adobe.com/support/flashplayer/debug_downloads.html 다양한 버전은 다음 주소에서 다운로드 받을 수 있습니다. https://helpx.adobe.com/flash-player/kb/archived-flash-player-versions.html

IDA 디컴파일러에서 Decompilation failure 될 때

IDA 디컴파일러(F5)로 디컴파일 하다보면 가끔 스택 문제도 실패하는 경우가 있습니다. 'Decompilation failure: xxxxxx: positive sp value has been found" 오류가 발생한 주소 앞 (여기서는 0x401018)으로 가서 [Alt + K] 로 Chage SP value 를 실행합니다. 이 값을 Current SP value 와 맞춰주면 됩니다. 다시 F5로 디컴파일 해보면 디컴파일된 내용이 나옵니다.

디스크 이미지 게임 Serenia 로더 분석

Serenia 는 1982년 만들어진 어드벤쳐 게임입니다.이때 어드벤쳐 게임은 상당수 텍스트인데 간단하지만 그림도 나오는 어드벤쳐 게임입니다. IBM 버전이 만들어 졌을 때 아직 MS-DOS(IBM에서는 PC-DOS)가 완전히 시장을 차지 않았을테고 도스 게임 중에는 도스(!)를 직접 탑재한 게임도 있었습니다. 이 게임도 자체 부팅 기능이 있습니다. 부트 이미지네요.일반적인 부트 이미지는 아닙니다. FAT 영역입니다. ROOT 입니다.여러 파일이 보이네요. 어셈블리로 게임 만들었을까요 ? 보통 DOSBox에서는 이런 디스크 이미지는 별도 방법으로 실행해야 합니다. 하지만 제가 구한 게임 버전은 그냥 SERENIA.COM만 실행하면 됩니다. 원리가 어떻게 될까요 ? 한번 분석해 봤습니다.(전부다 본건 아니..

Reverse Engineering 2013.03.21

OS X에서 IDA를 이용한 원격 디버깅

인터넷을 검색해봐도 IDA를 이용한 원격디버깅 방법을 자세히 설명한게 없어 한번 작성해 봤습니다. 도움되었으면 합니다. ---------------- IDA는 원격 디버깅 기능으로 네트워크가 연결될 경우 다른 OS의 파일을 디버깅 할 수 있다. 하지만, 테스트 결과 Windows IDA로 Mac 실행 파일을 Windows IDA로 디버깅 할 경우 오류가 잦아 Mac IDA로 디버깅 하라는 조언을 받았다. 따라서, Mac의 가상 머신(여기서는 VMware Fusion 이용)에 OS X을 설치하고 원격 디버깅하는 방법을 선택했다. 실제 Mac 1. 실제 Mac 시스템에 IDA Pro 설치 원격 Mac (가상머신) 원격 디버깅 대상이 되는 시스템 (여기서는 VMware Fusion에 OS X 10.7 Lion..

쇼설커머스 접속했더니 왜 laaan.cn이 뜨지 ?!

2011년 6월 6일(화) 새벽 1시쯤 쇼설커머스에 뭔가 올라왔나 싶어 접속했는데 모유명 쇼설커머스 사이트가 너무 지연되더군요. 그래서, 시간도 늦게해서 아침에 일어나서 사이트에 접속했더니 http://www.laaan.cn 사이트가 계속 뜨는 겁니다. 직감적으로 이건 해당 쇼설커머스에 뭔가 일이 생겼다고 느꼈죠. 한번 분석을 진행해 봤습니다. - 그나저나 네트워크 분석은 잘 안해봐서 많이 지연되었네요. 이걸 전문적으로 하는 사람들은 정말 빨리 찾았을텐데 말이죠. 1. laaan.cn 우선 문제의 laaan.cn 사이트를 검색해 봤습니다. 문의가 꽤 많더군요. 사이트에 가보니 플래쉬 파일 암호화 사이트 같습니다. (중국어라...) 2. Wireshark로 패킷을 떴죠. 저는 인터넷을 VMWare에서만 진..

가상화 프로그램 Virtual PC vs VMware

Virtual PC 2007 SP1 은 마이크로소프트사의 가상 시스템 프로그램입니다. 무료라 악성코드 테스트 시스템에서 주로 이용했죠. 하지만, 최신 시스템 (회사 테스트 컴퓨터와 새로 구매한 집 컴퓨터)에서는 문제를 일으킵니다. 회사 테스트 컴퓨터의 경우 가상머신 창을 닫을 때 오류가 발생하고 집 컴퓨터에서는 사용하다가 가상화 프로그램 자체가 응답 없음이 되어버리더군요. 보다 원활한 작업을 위해서 VMware를 구매했고 테스트를 했는데 역시 상용 제품이 좋네요. 제품에는 Virtual PC의 이미지를 읽을 수 있다고 되어 있지만 제가 사용한 이미지는 읽을 수 없어 다시 윈도우를 설치했습니다. 특히 스냅샷 기능은 참 편리합니다. 하지만, VMware 를 실행 중일 때 Virtual PC 를 실행하면 오류..

키로거 분석

* 키로거 키로거(Keylogger)는 키입력 내용을 기록하는 프로그램이다. 키로거가 기업에서 직원이나 부모가 아이들을 모니터링하기 위해 사용되지만 누군가 개인 사생활을 파악하기 위해서 악용되기도 한다. * 후킹 흔히 사용되는 키로깅 방식은 윈도우 API인 SetWindowsHookEx를 이용한 글로벌 메시지 훅과 드라이버를 이용한 키보드 후킹이 있다. SetWindowsHookEx( Int idHook, // 훅 종류 HOOKPROC lpfn, // 지정한 이벤트 발생시 처리하는 프로시저 주소 HINSTANCE hMod, // lpfn이 있는 DLL 의 시작 첫주소 DWORD dwTreadID // Thread ID }; idHook 에 해당하는 내용은 다음과 같으며 악성코드는 보통 02(키보드), 0..

헥사에디터 : Hiew 8.00

오늘 Hiew 제작자로부터 Hiew 8.00 파일과 그 파일을 해제할 수 있는 암호키, 라이센스 키를 받았습니다. Hiew는 구매하고 2달 후(제작자에게 돈이 입금된 후) 최신 버전을 보내줍니다. 8.00 버전은 ARMv6 디스어셈블 기능이 추가된거 외에는 이전 버전하고 크게 달라진건 잘 모르겠네요. * Hiew history: 8.00 ( 29 Jan 2009 ) - ARMv6 disassembler - "ArmCodeDetection = On/Off" in ini-file - Xor string (Edit/F8) is back! - Names shift offset (F12/F6) - Names export (F12/Shift-F12) - PE section rva/offset correction (..

SysTracer - 시스템 변화 추적 시스템

http://www.blueproject.ro/systracer 악성코드를 분석하기 위해서는 변경되는 파일과 레지스트리 등을 모니터링 해야한다. 개별 프로그램을 이용해도되지만 변화를 한꺼번에 보여주는 프로그램이 존재한다. SysTracer 도 그런 프로그램 중 하나이다 SysTracer can scan your system and record information about: changed files and folders modified registry entries system services system drivers applications that are configured to run at computer startup running processes loaded dlls 다만 상용 프로그램이다.

헥사 에디터 HIEW

다양한 헥사 에디터가 존재하지만 그중 가장 사랑 받는 제품은 단연 HIEW 이다. - 홈페이지 : http://www.hiew.ru/ - 제작자 : Eugene Suslikov (sen@kemtel.ru) - 가격 : 1년 64 달러 평생 199 달러 HIEW로 파일을 읽으면 아래와 텍스트 모드로 나온다. (설정 파일에서 변경 가능) 엔터를 입력하면 헥사 모드로 변환된다. 다시 엔터를 입력하면 디스어셈블을 볼 수 있다. push, call, jmp 등의 숫자를 입력하면 해당 주소로 입력하고 백스페이스를 입력하면 다시 돌아온다. 악성코드 분석자 채용에 HIEW와 IDA 사용에 능숙한 사람이 있을만큼 이 프로그램은 널리 사랑받고 있다. Hiew history: 8.00 ( 29 Jan 2009 ) - ARM..

헥사 에디터 : HE (도스)

(주 : 도스 프로그램입니다. 최신 윈도우에서는 실행되지 않습니다. 2023년에도 검색해서 방문하는 분이 계셔서 글 남겨 봅니다.) 악성코드 분석 혹은 리버스 엔지니어링의 처음은 헥사 에디터가 아닐까 싶다. 어느 정도 내공(?)이 쌓이면 간단한건 헥사 내용만으로 악성코드 유무를 판단할 수도 있다. 헥사 에디터는 다양한데 이중 도스 실행 파일인 HE(Hexa Editor)를 개인적으로 많이 사용한다. 이 프로그램을 사용하는 이유는 다음과 같다. 1. 특수 코드 표시 대다수의 헥사 에디터는 특수 기호를 표시하지 않는다. (보통 . 으로 표시) 특수 기호가 표시될 경우 암호화 여부등을 쉽게 알 수 있어 특수 코드 표시가 필요하다. 2. 파일 비교 두개 파일 비교 기능이 편하다. 단점이라면 도스 프로그램으로 긴..

디버거(Debugger) : Immunity Debugger

http://www.immunitysec.com/products-immdbg.shtml OllyDbg를 바탕으로 exploit 와 악성코드 분석에 용의하도록 제작되었다고 한다. 설치를 위해서는 파이썬(Python) 필요하며 윈도우 2000은 서비스 팩이 높아야하는 것으로 보인다. (초기 윈도우 2000 버전으로 테스트 할 때 실행안됨) ---------- Announcing Immunity Debugger v1.0 After almost a year of intensive development and internal use, we are pleased to announce the public release of Immunity Debugger v1.0. When we started developing I..

728x90
반응형