악성코드 분석 시작

악성코드 및 포렌식|2021. 2. 2. 14:42

 

 

peview 프로그램을 다운받고 EXE 를 아무거나 집어넣어보면

 

 

 

 

 

 

원래 4A 5D 인데

잘보면 5A4D로나온다

 

그이유는

리틀엔디안 때문이다

 

 

 

genesis8.tistory.com/37

 

리틀 엔디안 VS 빅 엔디안

먼저 둘을 비교하기에 앞서 엔디언이란 무엇인가? 엔디언(Endianness)은 컴퓨터의 메모리와 같은 1차원의 공간에 여러 개의 연속된 대상을 배열하는 방법을 뜻하며, 바이트를 배열하는 방법을 특히

genesis8.tistory.com

little endian(윈도우)

 

 

big endian(리눅스)

 

 

두개씩 쪼갠다음에 뒤에 것을 앞으로 가져오고 앞에 것을 뒤로 가져온다.

 

 

 

 

4d 5a를 윈도우에서 10진수로 바꾸면 그값은?

먼저 리틀 엔디안 으로 먼저 바꾸고 10진수로 바꾸면됩니다.

 

5A 4D 는 23,117

 

이런걸하는이유는 메모리 스택구조때문에 위에서부터아래로 순서대로 들어간다. 더빠르다

 

 

빅엔디안은 사람과 읽고쓰는 방법이 같아서 메모리의값을 보는데 편리하다.

 

 

 

구조분석 프로그램(PEview)를 통한 exe파일 분석

IMAGE_DOS_HEADER : MS-DOS 운영체제에서 실행, 항상 MZ로 시작, 이 파일은 PE

MS_DOS Stub : MS-DOS에서 실행 불가

SECTION : 파일 실행에 필요한 데이터(코드, 변수, 이미지, 외부 호출함수 등)

- text : 소스코드

- data : 정적, 전역 변수

- rdata : 읽기 전용. 상수, 배열 등

 

 

 

 

 

윈도우 실행파일과 패커(Packer)

실행파일 내부 로직, 헤더, 외부호출함수, 데이터 등을 숨기거나, 백신 탐지를 우회하기 위해

내부 데이터를 압축

* 용량 축소 목적이 아님

 

 

 

 

 

 

 

영원한 악성코드는없고 한두시간 하루면 거의 사라집니다.

 

백신이나오기전까지 최대한 많이 퍼트리려고 노력합니다. 일반적으로는

 

한나절에 다 사라지게 됩니다.

 

 

 

 

일반적으로 눈에 안뛰도록 자바스크립트 난독화개념으로 분석을 어렵게하기위해서 꼬아서 놔둔것이다.

 

 

 

 

 

 

악성코드 분석 종류

자동화 분석

- ‘Virustotal, Hybrid Analsys’ 과 같은 자동분석 서비스를 이용

 

정적 분석

- 악성코드 실행 없이 코드 내부 구조, 흐름, 외부 호출함수, 데이터, 해시, 문자열 등 파악

 

동적 분석

- 가상환경에서 악성코드를 실행하여 네트워크, 프로세스, 메모리 분석을 통해 실행 전/

환경 변화를 분석

 

코드 역공학 분석

- 악성코드 실행파일(exe)을 소스코드 또는 어셈블리 코드로 변환하여 악성코드 내부

알고리즘, 코드 실행 루틴, 실행되지 않은 부분 등을 확인

- 정적/동적 혼합 분석

 

 

 

댓글()