침해사고 대응 단계에서 피해 시스템 내에 정상적인 파일/비정상 징후 파일을 식별해야
분석과 후속 대처 단계로 넘어갈 수 있다
실행파일 PE 파일의 악성여부를 판별하는 방법을 알아보자
섹션의 엔트로피 분석
파일 엔트로피: 악성코드 여부 식별 역할
→ 악성 파일의 경우 노출되지 않기 위해 인코딩, 암호화를 거쳐 엔트로피가 높다
→ 엔트로피 값을 계산해보면 0~8에서 7 이상인 경우
도구는 PEScanner, PE studio
엔트리 포인트 분석
EXE파일을 실행하면 로더가 EXE파일과 추가적인 DLL 파일들을 링킹 해주고, 일을 마치면 실행파일 내에서 가장 먼저 실행되어야 하는 곳(엔트리포인트)으로 흐름을 바꾼다
→ 주로 .text, .code → 다른 곳에 속하면 악성코드 가능성 O
엔트리 포인트는 실행파일의 헤더안에 Image_optional_header에 위치해 있음
→ AddressOfEntryPoint(가장 먼저 실행될 코드의 주소값)
도구는 StudPE, CFF Explorer, PE_View, IDA
CRC Checksum 값 검사
CRC(Cyclic Redundancy Check)
: 실행 파일을 일정 비트 별로 검사해서 체크섬 값을 계산하기 위해 사용되는 순환중복검사, 보통은 전송되는 데이터 전송 중 손상여부 확인을 위해 사용
공격자가 시그니처 분석 기법을 우회하기 위해 악성코드 제너레이터로 매번 다른 코드를 자동생성하면, CRC Checksum 값 역시 변해야 함
→ CRC Checksum 값이 변하면 헤더에도 반영이 되어야 하지만, 제너레이터가 정교하게 만들어지지 않아 반영이 안 되면 CRC Checksum 값이 서로 달라짐
→ CRC Checksum 값이 헤더와 다르면 악성코드일 가능성 O
도구는 PEScanner
버전 및 설명 정보 분석
일반적인 실행 파일은 관리를 위해 리소스 섹션 .rsrc 내부에 파일의 버전(Version_info), 벤더 등 정보가 있음
→ 누락되어있거나 제대로 없으면 악성코드 의심
임포트 API 목록 분석
위험한 API로 분류되는 API를 임포트 하는 실행파일은 의심할만함
분석도구는 PE Studio, IDA
Ex)
Process Injection
: VirtualAllocEx(), WriteProcessMemory(), CreateRemoteThread()
File Down
: InternetOpenUrl()
InternetReadFile()
API 해시 사용여부 분석
위와 같은 위험한 API나 함수를 이름 그대로 호출하면 들키기 때문에 우회/은닉을 위해서
API 해시를 이용해서 동적 바인딩을 시도하는 경우 → API 해시 패턴 매칭을 이용해서 확인
해결방법: 악성 함수나 API 해시값 패턴 매칭을 해놓으면 됨!
실행파일 포함 여부
내부에 또 다른 실행파일이 포함되어 있는 경우
자체 파일에는 별 기능이 없는데 압축을 풀거나 복호화하는 식으로 악성파일을 실행
분석도구는 YARA, PE Carver 등의 도구로 mz 시그너처 확인
배치 스크립트 포함 여부
내부에 배치 스크립트(.BAT)를 포함하고 있는 경우, 악성파일 가능성 O
위와 유사한 경우로, 배치 스크립트가 내장된 경우가 흔치 않기 때문에 의심할만하고,
배치스크립트는 주로 전역변수 영역이나 리소스 섹션 내에 임베드되어있음
문자열 분석도구인 IDA, 리소스 섹션 내의 내용 확인 도구 CFF Explorer 사용
서명 정보 분석
MS 서명 정책에 따라 개발자에 의해 생성된 서명정보가 임베드되어있어야 정상(PE Authenticdoe)
서명정보는 PKCS#7 기반의 공개키 구조 → window os는 신뢰성을 검증하여 실행 여부 결정
→ 악성 실행파일은 signed 자료구조를 가지기가 어렵다
도구는 Sysinternals Suites\sigcheck
맬웨어 식별 훈련 :: 프로세스 이상징후 분석을 위한 정보추출 실습
이 포스팅은 KISA 아카데미(실전형 사이버훈련장) 에서 진행되는[중급]멜웨어 식별 훈련 교육 과정을 수료한 후 공부한 내용을 정리한 글입니다.프로세스의 이상징후 분석을 위한 정보추출 과정
eggsmong.tistory.com
'악성코드 분석' 카테고리의 다른 글
PE파일의 악성 및 비정상 여부 식별 실습 (0) | 2025.03.05 |
---|---|
맬웨어 식별 훈련 :: 악성 오피스 문서 식별방법 이론과 실습 (0) | 2025.02.16 |
맬웨어 식별 훈련 :: 오피스 문서의 포맷 실습 (0) | 2025.02.16 |
맬웨어 식별 훈련 :: 오피스 문서의 포맷 이론 (0) | 2025.02.15 |
맬웨어 식별 훈련 :: 악성파일의 구성요소 (0) | 2025.02.14 |