꿈을꾸는 파랑새

오늘은 (경북대)62230_1_농식품분야 AX 세부 추진현황 관련 조사 양식 악성코드에 대해 분석을 해 보겠습니다.
해당 악성코드는 디코이가 가짜인 악성코드입니다. 기본적으로 디코이 문서는 보여 주어야 하는데 해당 악성코드는 무려 3.40MB 이지만 파일을 실행하면 뜬금없이 SKT, KT, LGU 인터넷 개통 시 요금제 약정 및 개통에 관한 문의 문서가 보임
파일명:(경북대) 62230_1_농식품분야 AX 세부 추진현황 관련 조사 양식
사이즈:4 MB
MD5:59b0c45d4cba37aa060a1e4fc763d320
SHA-1:a3ede66911da1c0ce5e25164f59310de2c6c1a5d
SHA-256:afaca459c8ae07447aa1492a8e5eb33da7959e81279d7e5fad933ec8dc9758e6
일단 AX 부분이 궁금해서 검색을 해보니 농업, 농촌 노동력 감소 난제 해결을 위해 인공지능 전환(AX), 로봇
전환(RX) 기술 기반의 농업 로봇, 드론 활용과 협업기술 산업화이라는 주제 인것을 보아서 인공지능 전환(AX) 관한 부분 관련 직종을 노린 것 같기도 합니다. 해당 악성코드는 지난번하고 수법은 비슷하지만, 미끼 내용이 다릅니다.

악성코드 에 포함된 powershell 코드
악성코드 에 포함된 powershell 코드

악성코드 분석

다른 것 볼 것도 없고 단순하게 분석을 한다면 가칭 base64 1부분만 보면 끝입니다. 무작위로 이름으로 생성되는 vbs 가 핵심
DOCX 문서 추출하고 VBS, BAT, PowerShell 스크립트를 생성하는 것이 특징
경북대학교 또는 농식품 분야 관련 조사 문서처럼 위장하고 있으며 아마도 경북 대학교 농업생명과학대학 식품공학부 쪽일 확률이 높지 않을까? 생각이 됩니다.
아이콘 위치
C:\Program Files (x86)\HNC\Office 2022\HOffice120\bin\HCell.exe 명령어를 통해서 한컴오피스 HCell 아이콘을 하고 있습니다.
1.미끼 파일 추출
PowerShell 을 사용을 해서 현재 실행 중인 LNK 파일 자체를 읽어들이고 나서 다음 항목의 위치에서 파일을 추출합니다.
DOCX 시작 오프셋:10,344바이트
16진수 오프셋:0x2868
추출 길이:3,568,162바이트
추출된 파일은 원래 LNK와 같은 이름의. docx로 저장 이후 악성코드 실행 흔적을 감추려고 원본이 되는 lnk 파일은 삭제 처리합니다. 그리고 나서 추출한 docx 파일을 실행합니다. SKT, KT, LGU 인터넷 개통 시 요금제 약정 및 개통이 나오는 가짜 미끼 파일

악성코드 미끼 파일
악성코드 미끼 파일

전화번호로 하면 서울 수유 초등학교 졸업생인 것을 확인이 가능 아마도 해당 분이 운영하는 휴대폰 가게 컴퓨터가 해킹되어서 디코이로 사용된 느낌이…. 이것은 경찰분들의 조사 필요.
2.Windows Script Host Shell 객체 생성
0, False을 통해서 프로세스 창을 완전히 숨김(Hide) 상태로 실행하고 실행한 명령이 끝날 때까지 기다리지 않고 바로 비동기화 처리해버림
replacebatpath 명령어를 사용해서 실행 그리고 5자리 난수 파일을 C:\Users\Public\Videos\무작위.bat 생성
3.작업스케줄러 등록
SCHTASKS /CREATE /TN "office365" /TR "taskpath" /SC MINUTE /MO 10 /F 부분을 사용해서 
예약 작업 이름:office365
실행 주기:10분마다
실행 대상:Public\Videos 폴더의 랜덤 이름 VBS
작업 처리:/F 옵션으로 강제 덮어쓰기

작업스케줄러에 등록된 악성코드
작업스케줄러에 등록된 악성코드

다음 경로에 파일 생성
C:\Users\Public\Videos\무작위 5자리숫자.vbs
C:\Users\Public\Videos\무작위 5자리숫자.bat
C:\Users\Public\Videos\무작위 5자리숫자.ps1
4.다운로드 서버
bat 내부에 포함된 Base64 문자열 까보면 다음과 같은 사이트를 확보할 수가 있습니다.
hxxps://ntsng(.)name/download/ttps1
hxxps://ntsng(.)name/download/lcpy1
hxxps://ntsng(.)name/download/ps
hxxps://ntsng(.)name/download/pro
이 됩니다.

악성코드 Base64 디코딩
악성코드 Base64 디코딩

즉 BASE64_STRING~BASE64_STRING 7까지 내용은 다음과 같이 됩니다.
c:\users\public\pictures
hxxps://ntsgo(.)name/download/xtps1
hxxps://ntsgo(.)name/download/lcpy1
C:\users\public\pictures\ps.dat
hxxps://ntsgo(.)name/download/ps
C:\Users\Public\pictures\p2.ps1
hxxps://ntsgo(.)name/download/pro
5. 파일 삭제
del /q /f /s 등을 활용해서 하위 폴더를 포함해 파일을 강제로 삭제시킴 Public\Pictures 폴더에 정상적인 파일이 있으면 같이 삭제

Base64 디코딩 결과
Base64 디코딩 결과

6.curl.exe 사용 추가 파일 다운로드
-s: 출력 숨김
--max-time 30: 최대 30초 대기
-o: 지정한 파일로 저장
7.PowerShell 실행
PowerShell 실행 정책 우회
숨김 창 실행
별도의 PowerShell 프로세스 생성
사용자에게 실행 흔적을 최소화
문제는 정확하게 파악을 위해서는 추가적인 파일이 필요하지만 죽어서 더는 진행 안 됨 지난 한국방송통신대학교 학사 일정, 전세 계약 특별계약 정리 부분과 상당히 비슷함
결론 조심하자~

공유하기

facebook twitter kakaoTalk kakaostory naver band