E-mail: anwenqq2690502116@gmail.com
Sigter mod tingenes internet, en ny variant af "Gaffyt" Trojan vises
For nylig, Huorong Security Lab opdagede en hændelse med virusindtrængen, som blev bekræftet at være en ny variant af Gafgyt Trojan-virussen efter undersøgelse og analyse.
Gafgyt er et IoT-botnet-program baseret på IRC-protokollen, som hovedsageligt inficerer Linux-baseret IoT-enheder at iværksætte distribuerede lammelsesangreb (DDoS). Det er den største aktive IoT-botnet-familie bortset fra Mirai-familien.
Efter dens kildekode blev lækket og uploadet til GitHub i 2015, forskellige varianter og bedrifter dukkede op efter hinanden, udgør en større sikkerhedstrussel for brugerne. På nuværende tidspunkt, Huorongs sikkerhedsprodukter kan opsnappe og dræbe ovennævnte vira. Enterprise-brugere anmodes om at opdatere virusdatabasen i tide til forsvar.
1. Prøveanalyse
Virussen omdøber først sin egen proces til "/usr/sbin/dropbear" eller "sshd" at skjule sig selv:
proces omdøb
Blandt dem, den krypterede streng er fundet, og dekrypteringsalgoritmen er byten XOR af 0xDEDEFFBA. Når det bruges, kun de brugte dekrypteres individuelt, men kun 4 er faktisk refereret:
Krypteret streng og dekrypteringsalgoritme
Den første reference er kun at udsende den tilsvarende streng til skærmen, og de to midterste referencer er operationer på overvågningsprocessen for at undgå at miste kontrollen på grund af genstart af enheden:
dekryptere og citere
De resterende operationer udføres i en sløjfe, herunder initialisering af C2-forbindelsen (94.156.161.21:671), sende platformenhedens type, modtagelse af returkommandoen og udførelse af den tilsvarende moduloperation. Og sammenlignet med kildekoden lækket af Gafgy, formatet og behandlingen af kommandoen har ikke ændret sig meget, og kommandoens format er stadig "!*Kommando [Parameter]"
sløjfedriftskode
I processCmd-funktionen, ialt 14 kommandoer reageres på, og tilsvarende DDOS-angreb lanceres, inklusive: "HTTP", "CUDP forlængelse", "UDP", "STD", "JSC", "TCP", "SYN" , "ACK", "CXMAS", "JUL", "CVSE", "ALT", "CNC", "NIGGA"
kommando skærmbillede - IoT sikkerhed
Blandt dem, CUDP, UDP, JSC, og TCP-moduler kan alle sende tilfældige strenge til den angivne IP og port, og kan rekonstruere TCP- og UDP-pakker ved hjælp af selvbyggede IP-headere for at skjule kildens IP-adresse.
besked struktur
Præfikset C gættes til at være forkortelsen for skik. Tager CUDP og UDP som eksempler, i den originale version af Gafgyt, parametrene i den udstedte kommando inkluderer: ip, Havn, tid, forfalsket, pakkestørrelse, pollinterval og andre feltværdier og flagbits Til konstruktion af UDP-pakker. I denne prøve, imidlertid, de observerede resultater viser, at det er anvendelsen af disse parametre til forskellige grader af begrænsning, som kan øge fleksibiliteten af specifikke typer DDOS-angreb.
Sammenligning af CUDP og UDP
Funktionerne i andre moduler omfatter tilføjelse af et stort antal User-Agent-strenge, som bruges til at starte HTTP-kommandoer til CC-angreb:
CC angreb
Inkluderet til angreb mod Valves Source Engine-servere: ("Kildemotor" forespørgsler er en del af den daglige kommunikation mellem kunder og spilservere ved hjælp af Valve-softwareprotokollen)
Angreb mod spilindustrien
Inklusive CNC-kommandoer, der kan skifte forbindelses-IP:
switch forbindelse IP
Inkluderer SYN- og ACK-angreb:
SYN og ACK angreb
Herunder UDP STD oversvømmelsesangreb:
STD angreb
Inklusiv XMAS-angreb: (det er, juletræsangreb, ved at sætte alle flagbits af TCP til 1, dermed forbruge flere ressourcer til responsbehandling af målsystemet)
XMAS angreb
NIGGA-modulet svarer til KILLATTK-kommandoen i den originale version, som stopper DoSS-angreb ved at dræbe alle underordnede processer undtagen hovedprocessen
NIGGA modul
Sammenlignende analyse
Funktionen processCmd, der gemmer hovedlogikken i kildekoden, inkluderer PING, GETLOCALIP, SCANNER, EMAIL, RUSK, UDP, TCP, HOLDE, KILLATTK, og LOLNOGTFO-moduler. Kun forenklede versioner af UDP- og TCP-moduler eksisterer side om side i varianten udnyttelse, der blev fanget denne gang. .
Og i driften af at opnå den lokale IP, den originale version henter den lokale IP gennem /proc/net/route og returnerer den gennem GETLOCALIP modulet. Den samme get-operation observeres i denne variant, men der er intet GETLOCALIP-modul, og der observeres ingen referencer.
Få lokal IP
Det er værd at bemærke, at der ikke er nogen original version af SCANNER-modulet, der bruges til at sprænge SSH (Havn 22) i denne type prøve, og der er ingen andre varianter, der indlejrer flere "applikationer/enhed" sårbarheder til at spredes gennem nyttelast. Det kan ses, at angriberen opdeler udbredelsesmodulet i uafhængige programmer, og efter at have logget ind på offerværten, han vil downloade kommunikationseksemplet til næste trin ved at udføre shell-koden, det er, analyseprøven.
Eksekver shellcode eksempel
Som eksempel tages prøverne fra samme kilde, angriberen fjernede fejlfindingsoplysningerne for de fleste prøver, bortset fra nogle få, såsom: x86.