본문 바로가기

malware

신종 악성 코드를 발견. 이름하여 "Linux / GoARM.Bot"했습니다

728x90

신종 악성 코드를 발견. 이름하여 "Linux / GoARM.Bot"했습니다.

우리는 오늘 신종 악성 코드를 발견했습니다. 이름하여 "Linux / GoARM.Bot"했습니다.

이 악성 코드는 ELF / ARM 계열의 악성 코드이지만, ARM 라우터 제품 감염 전용 악성 코드이다. 
악성 코드 샘플을 VirusTotal에 업로드 했으므로 링크는 아래와 같습니다 ↓81c9fcf4f8c8d08c9ad13b5973a039d2e21d73e5e424d94507fb035a4744883427d4a7989b9af86e9ebddb25cbfc9dfcf6800141f476d6a76041a3d8fb437115c665453c6d8dd3723b4f7505e61ee6d02e5100b7de547127e1f5d593b06a894c



각각의 본 샘플은 중국 네트워크에있는 HFS 웹 서버에서 제공했다고합니다. 이미지 (클릭) ↓
 

Go 언어의 확인은 예를 들어 다음 Go 소스 코드 ↓

% 3d : t = % 3d start
% 3d : t = % 3d bytes [% d]
% 3d : t = % 3d end err % v
% 3d : t = % 3d fix32 % d
% 3d : t = % 3d fix64 % d
% 3d : t = % 3d varint % d
% 3d : fetching op err % v
% 3d : t = % 3d fix32 err % v
% 3d : t = % 3d fix64 err % v
% 3d : t = % 3d start err % v
% 3d : t = % 3d unknown wire = % d
% 3d : t = % 3d varint err % v
% 3d : t = % 3d end
% 3d : start-end not balanced % d

DoS 공격 기능에서 사용 된 http 헷타 템플릿 ↓

% s % s HTTP / 1.1
User-Agent : % s
; Domain = % s
; Path = % s
; Expires = % s
; Max-Age = % d
Host : % s 

"진 상황"

ELF Header :
Magic : 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class : ELF32
  Data : 2 's complement, little endian
  Version : 1 (current)
  OS / ABI : UNIX - System V
  ABI Version : 0
  Type : EXEC (Executable file)
  Machine : ARM
  Version : 0x1
  Entry point address : 0x3d398
  Start of program headers : 52 (bytes into file)
  Start of section headers : 244 (bytes into file)
  Flags : 0x5000002, has entry point, Version5 EABI
  Size of this header : 52 (bytes)
  Size of program headers : 32 (bytes)
  Number of program headers : 6
  Size of section headers : 40 (bytes)
  Number of section headers : 11
  Section header string table index : 6
만약 Entry Point가 0xc00로 설정하면 Hex은 이런 느낌 ↓
0000 7F 45 4C 46 01 01 01 00 00 00 00 00 00 00 00 00 .ELF ............
0010 02 00 28 00 01 00 00 00 98 D3 03 00 34 00 00 00 .. (......... 4 ...
0020 F4 00 00 00 02 00 00 05 34 00 20 00 06 00 28 00 ........ 4 ... (.
0030 0B 00 06 00 06 00 00 00 34 00 00 00 34 00 01 00 ........ 4 ... 4 ...
0040 34 00 01 00 C0 00 00 00 C0 00 00 00 05 00 00 00 4 ...............
0050 00 10 00 00 01 00 00 00 00 00 00 00 00 00 01 00 ................
0060 00 00 01 00 60 35 1B 00 60 35 1B 00 05 00 00 00 ....`5..`5 ......
0070 00 10 00 00 01 00 00 00 00 40 1B 00 00 40 1C 00 ......... @ ... @ ..
0080 00 40 1C 00 71 7E 16 00 71 7E 16 00 04 00 00 00 @ .. q ~ ..q ~ ......
0090 00 10 00 00 01 00 00 00 00 C0 31 00 00 C0 32 00 .......... 1 ... 2.
00A0 00 C0 32 00 60 90 01 00 44 B4 02 00 06 00 00 00 ..2.` ... D .......
00B0 00 10 00 00 51 E5 74 64 00 00 00 00 00 00 00 00 .... Q.td ........
00C0 00 00 00 00 00 00 00 00 00 00 00 00 06 00 00 00 ................
00D0 04 00 00 00 80 15 04 65 00 00 00 00 00 00 00 00 ....... e ........
00E0 00 00 00 00 00 00 00 00 00 00 00 00 00 2A 00 00 ............. * ..
ARM decompiler 올바른 Entry point (0x3d398)을 설정 한 후 :( 확대) ↓

Go 언어 runtime 증거가 근처 옆에 보입니다 ↓

Recompiling 노트 ↓ 최근 라우터를 노린 악성 코드가 많다 . 

특히 SOHO 라우터는 취약점이있는 가능성이 있으므로 세큐릿티 설정을 제대로 확인 한 후 

업데이트와 최신 펌웨어로 업데이트하십시오.




이 "Linux / GoARM.Bot"는 세계 최초로 Go 언어로 만들어진 악성 코드군요, 대발견하여 버렸습니다 (^ - ^ v


728x90