본문 바로가기
악성코드 분석

악성코드 분석 18

by 윤라경 2024. 10. 10.

[2024.10.10]

 

[정적 분석]

> 분석 파일: Lab06-02.exe

 

01. 자동화 분석

 

> 분석 도구: virustotal.com

> 분석 결과: 38/73(V3, AlYac 탐지 못 함)

 

 

 

02. 패킹 여부 확인

 

> 분석 도구: PEiD, exeinfope

> 분석 결과: 패킹되어 있지 않음

 

 

 

03. PE 구조 확인

 

> 분석 도구: PEView, pestudio

> 분석 결과

 

 

인터넷 시그니처들이 새롭게 많이 나온 걸 볼 수 있다

InternetOpenUrlA는 url을 연다는 뜻이고, ReadFile의 경우 그 url을 읽는다는 뜻이다

GetConnectedState는 url 접속을 위한 네트워크 연결을 확인하는 것으로 추측된다

CloseHandle의 경우 이 함수를 실행해야만 아래의 함수들이 실행된다

InternetOpenA는 애플리케이션의 WinlNet 함수 사용을 초기화하는 함수로,

초기화 후 openurl 함수를 통해 접속하는 흐름으로 보인다

 

 

pestudio를 통해서도 WININET.DLL이 문제를 일으키는 것을 확인할 수 있다

 

 

D/W를 통해서 확인 시 WININET.DLL에서 인터넷 시그니처이 존재한다

 

 

04. 문자열 분석

 

> 분석 도구: strings, ollydbg

> 분석 결과

 

 

1.1 에러의 경우 네트워크 연결을 끊게 되면 나타난다

2.3은 cc.htm의 <!--X 커맨드를 찾을 수 없으면 나타나고,

2.2의 경우 읽어들일 내용이 없을 때 오류가 나타난다

마지막으로 2.1은 url이 존재하지 않을 경우 나타나는 오류로 보면 된다

 

 

cmd로 실행했을 때 현재 인터넷 연결은 되어 있지만,

페이지 접속이 불가하기 때문에 success가 뜨지만 동시에 error가 나타난다

 

 

ollydbg 확인 시에도 비슷한 문자열과 함수를 확인할 수 있다

 

 

현재 문자열에 있는 url 페이지를 가상 페이지로 만들어서 실습을 진행하려고 한다

먼저 HFS 프로그램을 실행 후 나에게 부여된 IP 주소로 들어가면 화면과 같다

 

 

아무 파일이나 생성 후 확장자를 .htm으로 변경시킨다

 

 

그런 다음 HFS에서 해당 파일을 오픈시키면 그 페이지가 생성된다

 

 

현재 cc.htm이 생성되어 있지만

 

 

내용을 입력하거나 수정한 게 없기 때문에 빈 화면이 나타난다

 

 

> 윈도우 hosts 파일

c:\WINDOWS\system32\drivers\etc\hosts

 

192.168.217.201 www.practicalmalwareanalysis.com

 

 

cc.htm 사이트가 만들어져 있다면 윈도우 xp로 와서

hosts 파일에서 윈도우 7의 IP 주소 입력 및 기존 악성 코드가 생성하는 주소를 삽입하고 저장한다

 

 

그런 다음 xp의 인터넷 창으로 해당 주소로 들어가게 되면 내가 설정한 페이지가 나온다

정상적으로 접근이 가능하다면

현재 인터넷 접속도 원활하다는 뜻이다

 

 

다음은 현재 이 기호가 악성 코드를 파싱하는 것이다

앞서 문자열 분석 부분에서 설명했듯이

2.3은 cc.htm의 <!--X 커맨드를 찾을 수 없으면 나타나기 때문에

cc.htm에 커맨드를 입력하고 Lab06-02.exe 파일을 실행하게 되면 모두 Success가 된다

 

*parsing: 데이터나 텍스트를 해석하고 구조화하는 과정

 

 

x라는 커맨를 찾지 못해서 현재는 Internet Connection만 나오게 된다

 

 

화면의 느낌표까지 적어도 에러가 나타나는 것을 확인할 수 있다

 

 

[동적 분석]

> 분석 파일: Lab06-02.exe

 

> 분석 도구: IDA Pro

> 분석 결과

 

 

 

IDA를 이용해 분석을 시도했을 때에도 파일의 시작점은 1000번대인 걸 알 수 있다

현재 Lab06-02.exe 파일의 메인 지점은 401130이다

 

 

빨간색이 점프하지 않는 구간, 초록색이 점프 구간이라고 볼 수 있다

현재 점프 구간을 거치게 되면 0EA60h라는 숫자를 확인할 수 있는데,

바로 아래의 Sleep을 보게 되면 딜레이라고 볼 수 있다

0EA60h이 16진수 값이며, 10진수로 변환하면 60,320로 나오기 때문에

현재 60초 동안 대기한다고 볼 수 있다

 

 

마지막은 종료시키기 때문에 60초 동안 대기 후 종료되는 것을

IDA를 이용해 흐름을 살펴보고 알게 되었다

 

 

확인을 위해 cmd 창에서 Lab06-02.exe 파일을 실행시킨 후

60초 동안 기다리고 종료되는 것까지 확인해 봤다

 

 

 

강의 소감

이번 Lab06-02.exe 파일을 통해 새로운 인터넷 시그니처를 알게 됐다

인터넷 시그니처들과 문자열 분석을 통해 나온 에러 문자로

대충 어떠한 목적의 파일인지 알 수 있었고,

내가 생각했던 대로 파일의 동향을 알 수 있고 직접 실행해 보는 시간이었다

'악성코드 분석' 카테고리의 다른 글

악성코드 분석 20  (0) 2024.10.15
악성코드 분석 19  (0) 2024.10.14
악성코드 분석 17  (1) 2024.10.08
악성코드 분석 16  (6) 2024.10.08
악성코드 분석 15  (0) 2024.10.04