Malware_Analysis 실습 1-1 정적분석
기초 정적분석 실습 으로아래 출처를 기반으로 작성하였습니다.
출처 : https://book.naver.com/bookdb/book_detail.nhn?bid=7327943
출처 : https://inf.run/Nib5
Malware Analysis 실습 예제 Lab01-01.exe와 Lab01-01.dll
1. 바이러스토탈에 파일을 업로드 후 기존 안티바이러스 시그니처에 일치하는 파일이 존재하는가?
- AV 시그니처에 일치하는 파일 존재.
* 2 ~ 7번 문제 모두 바이러스토탈 결과로 한번에 확인할 수 있으나 실습으로 다양한 프로그램 이용.
[참고]
2. 이 파일은 언제 컴파일 되었는가?
- PEView 통해 IMAGE_NT_HEADERS - IMAGE_FILE_HEADERS - Time Date Stamp 에서 확인 가능.
[참고]
3. 이 파일이 패킹되거나 난독화 징후가 있는가? 그렇다면 무엇으로 판단했는가?
- PEID 를 통해 컴파일러, 패킹 및 난독화 여부 확인 가능
- 실습 예제는 Microsoft Visual C++ 6.0 만들어졌으나 패킹 및 난독화되지 않음
[참고]
4. 임포트를 보고 악성코드 행위를 알아낼 수 있는가? 그렇다면 어떤 임포트인가?
- PEView 통해 SECTION.rdata - IMPORT Name Table 에서 확인 가능
- lab01 exe 파일의 경우 파일 생성 및 검색에 대한 함수를 사용
특정 파일 검색 후 파일 복사하거나 생성하는 것으로 추정
- lab01 dll 파일의 경우 소켓 통신을 할 수 있는 WS2_32 dll 사용
프로세스를 생성하여 소켓 통신을 시도하는 것으로 추정
5. 감염된 시스템에서 검색할 수 있는 다른 파일이나 호스트 기반의 증거가 존재하는가?
- 정적 분석과정에서 프로그램을 실행시킬 수 없으므로 Strings 프로그램으로 텍스트 추출하여 분석
- Import 함수를 참고하여 텍스트와 함께 확인시
kerne132.dll 존재 여부를 확인 후 존재하지 않을시 파일을 생성하는 것으로 추정
- 호스트 기반 증거로 kernel132.dll 파일을 존재여부로 악성 여부 식별 가능
6. 감염된 시스템에서 이 악성코드를 발견하기 위해 사용한 네트워크 기반의 증거는 무엇인가?
- Import 함수 참고시 WS2_32.dll을 통해 소켓 통신을 시도
- 신규 프로세스 생성 후 소켓 통신이 연결을 위한 'hello' 와 같은 텍스트가 포함되었으며
루프백으로 통신을 시도
- 네트워크 기반 증거로 IP_127[.]26[.]152[.]13 포함 여부로 확인 가능
7. 이 파일의 목적은 무엇이라고 판단했는가?
- 외부와 연결 시도하여 악의적인 행위를 할 수 있는 백도어 역할을 수행
'IT Security' 카테고리의 다른 글
정보보안) 랜섬웨어(ransomware) 대응 관련 참고 자료 (0) | 2022.08.09 |
---|---|
WEB) HTTP Request Smuggling (0) | 2022.03.26 |
리버싱) 레나튜토리얼-3 (Oops binary 수정) (0) | 2022.03.20 |
리버싱) 레나튜토리얼-3 (nag 제거) (0) | 2022.03.17 |
리버싱) 레나튜토리얼-2 (reverseMe Keyfile) (0) | 2022.03.15 |