본문 바로가기
AI 스쿨 리팩토링 보안직무 과정

15주차 과제 - 악성코드 샘플 분석

by IT스터디큐브 2022. 12. 20.

15주차 과제물 - 악성코드 샘플 분석.pptx
1.94MB


 이번 주에는 악성코드 샘플을 분석해보도록 하겠습니다. 지난번에 구축했던 VMware Workstation의 가상환경에서 윈도우 7을 설치하여 진행하였습니다.

 

과제 발표에 사용한 PPT 파일을 첨부합니다. 만약 지금 제가 거치고 있는 AI 스쿨 교육과정이 더 궁금하시다면 다음 링크를 통해 자세한 정보를 확인해 주세요.

https://cafe.naver.com/itscholar

 

정보보안전문가 취업카페 스칼라 : 네이버 카페

비전공자 전문IT교육, 정보보안전문가, 보안을 아는 개발자, AI 양성교육, IT기술리더, 창업가 양성

cafe.naver.com


 악성코드 샘플은 수업을 위해서 제공된 bton02setup.exe입니다.

 악성코드 분석에 앞서 이전 주차에 미비했던 실습환경을 좀 더 개선해 보려고 했습니다. 그리하여 대부분의 프로그램들을 작동시킬 수 있었지만 Wireshark를 작동시키는 방법을 찾지 못하여 이번 발표에는 제외되었다는 점 유념해 주시기를 바랍니다.

 실습 순서는 정적 분석 이후 동적 분석을 진행하는 방식으로 진행됩니다.

 [이미지 1]

 가장 먼저 VIRUSTOTAL에 bton02setup.exe의 분석을 요청하였습니다. 바이러스토탈의 71개 안티바이러스 엔진 중 53개의 엔진이 해당 파일이 악성 코드라고 검진하였습니다. 해당 악성코드가 정확히 어떤 방식으로 작동하는지 알아보기 위해 각 백신 엔진의 검진명을 구글에 검색해 보았습니다.

 검색 결과중 국내 백신이기에 검색 결과를 편하게 볼 수 있는 안랩의 검색결과를 PPT에 첨부하였습니다. 네이버의 검색 순위를 조작하던 조직이 악성코드를 배포하기위해 만든 악성코드라는 점을 확인할 수 있었습니다.

 [이미지 2]

 PEID와 Exeinfo PE에서 해당 파일을 검사해보았습니다. 검사 결과 마이크로소프트 비주얼 C로 코딩된 프로그램임을 확인했고, 따로 패킹되지 않은 것으로 보이기에 디패킹 과정은 생략하도록 하겠습니다.

 [이미지 3]

 [이미지 4]

 PEVIEW를 통한 분석 내용입니다. 해당 파일이 2015/08/04애 제작된 것을 확인할 수 있었으며, ADVAPI32.DLL파일을 호출하여 해당 DLL의 기능들을 사용하는 것을 확인할 수 있었습니다.

 [이미지 5]

 STRINGS를 사용하여 분석한 내용입니다. 안타깝게도 bton02setup.exe를 확인해 봤을 때 무의미한 문자열이 대부분이었습니다. 다만 중간 중간에 존재하던 URL을 확인할 수 있었고 STRINGS 분석 내용의 중간 부분에서 Dictionary가 필요하다는 오류문이 발견되었습니다. 해단 Dictionary가 정확히 어떤 종류인지는 모르겠지만 원시코드를 읽어내기 위해서 추가적인 Dictionary를 설치해야 정확한 내용을 볼 수 있는 것으로 보입니다.

 

 [이미지 6]

 

 정적 분석의 마지막으로 Bintext입니다. Bintext에서는 명령어라 보기 힘든 문자열들과 URL들을 발견할 수 있었습니다.



 다음은 동적 분석 입니다. 동적 분석에 들어가기 전에, 사용하기로 결정했던 프로그램들에서 스냅샷을 찍어 두었습니다. 그 후 악성코드 파일을 실행하였습니다. 악성코드 파일을 실행하자 악성코드 파일이 바로 자가삭제되었고 프로그램 호환성 관리자 오류 메세지가 나타났습니다.

 

 [이미지 7]


 가장 먼저 CPORT입니다. CPORT에서는 여러 프로세스들이 새로 등장한 것을 볼 수 있었고 그중에 Unknown(알 수 없는) 프로세스가 나타나서 포트를 열고 통신을 시도하는 모습을 관찰할 수 있었습니다. 해당 포트는 짧은 시간동안 열렸고 얼마지나지 않아 닫혔습니다.

 Autoruns로 시작 프로그램의 변동사항을 조사하자 변동사항이 없다는 결과를 얻을 수 있었습니다

 

 

 [이미지 8]


 SystemExplorer를 이용해서 스냅샷을 비교해 보았을 때 파일과 레지스트리에 상당한 변동이 있음을 발견할 수 있었습니다.



 정리하자면 정적 분석에서 bton02setup 파일은 여러 DLL파일에 접근하여 해당 DLL 파일의 기능을 이용해서 디렉토리 설정과, 미상의 파일 생성 등의 행위를 할 것이라 예상되었습니다. 동적 분석에서 레지스트리에 상당한 편집과 시스템 폴더, 사용자 계정 폴더등에파일 생성, 변조 등이 관찰되었습니다. 또한 CPORT에서 미상의 프로세스가 포트를 열고 닫는 행위역시 관찰되었습니다.

 하지만 dictionary의 문제 등으로 bton02setup의 내부 명령어를 정확하게 확인하지 못했고, Wireshark 프로그램이 준비되지 않아 실제로 열린 포트로 어떤 통신이 오고가는 것을 확인하지 못한 점은 미비점으로 남습니다.

댓글