본문 바로가기

코드분석 도구 개발하기(C언어) 코드분석/악성코드분석/코드 분석/악성 코드 분석/리버싱/바이러스 분석/CODE 분석/익스플로잇 분석 코드를 분석할때 복잡한 코드를 현재 내가 진행중인 위치와 코드의 얼만큼을 분석했고 얼만큼의 함수를 더 분석해야 하는지 파악하며, 코드의 전체적인 흐름과 빠른 동적분석 진행을 위해 제작하게 되었습니다. 동작 원리에 대해 간단히 설명하겠습니다. 우선 디버깅 할 대상의 프로세스를 CreateProcess 함수에 DEBUG_PROCESS를 인자로 호출하게 되면 프로세스가 생성될때 디버깅 이벤트를 발생할 수 있는 프로세스로 생성이 됩니다. 이때 디버깅 루프를 돌면서 각 이벤트에 맞춰 프로그래밍 해주면 됩니다. 디버깅 루프코드만 다음을 참조했습니다.(http://blogs.msdn.com/b/reiley/archiv.. 더보기
악성코드 샘플 수집스크립트 mwcrawler.py 윈도우 버전으로 포팅하기(B) 상세 분석 등록된 웹사이트 URL을 기반으로 악성코드를 수집하는 mwcrawler.py를 windows 버전으로 포팅한 것입니다. 실행방법은 윈도우에서 더블클릭으로 실행하여 메뉴를 선택하면 수집이 시작됩니다. 메뉴중에 1번은 프록시 IP/PORT를 설정해서 수집을 할 수 있고 2번은 기존과 동일하게 선택과 동시에 바로 수집을 합니다. 수집된 파일의 저장되는 경로는 C:\malware\unsorted\디렉토리 형태로 저장됩니다. - 스샷과 코드 수정한부분 등록 할 예정 - 코드 수정 1. 프록시서버를 사용하는 환경을 위하여 프록시 IP/PORT를 세팅할 수 있도록 수정했습니다. 2. magic 모듈을 제거하고 읽어들인 파일의 바이너리 데이터를 기반으로 exe, dll, sys, pdf, doc 등의 확장자.. 더보기
[악성코드]금융권 공격 악성코드 Ransomware Dropper 분석 [그림.1] Cuckoo SandBox동적분석 결과 [그림.2] 0x00411CA 주소에서 CALL rnasomew.0043EA30 함수를 호출하는데 이 함수의 내부로 들어가서 분석을 해보면 Heap을 생성하고, ransomware.exe PE의 .rdata섹션의 데이터를 생성된 Heap주소공간에 복사를 합니다. [그림.3] PE의 .rdata seciotn의 데이터를 Heap에 복사하는 과정입니다. [그림.4] 그리고 나서 복사된 원본 데이터를 1E51FCC값을 더하여 디코딩을 시작하는데 이중 루프문을 사용하여 총 11463Ah크기만큼 반복하고 44h회 만큼 더합니다. 결국 1163Ah*44h=49E768h(4843368)만큼 루프를 돌면서 디코딩을 하게 됩니다. [그림.5] 그리고 디코딩된 힙영역을 .. 더보기