E-post: anwenqq2690502116@gmail.com
Sikter mot tingenes internett, en ny variant av "Gaffyt" Trojan vises
Nylig, Huorong Security Lab oppdaget en virusinntrengningshendelse, som ble bekreftet å være en ny variant av Gafgyt Trojan-viruset etter undersøkelse og analyse.
Gafgyt er et IoT-botnett-program basert på IRC-protokollen, som hovedsakelig infiserer Linux-basert IoT-enheter å sette i gang distribuerte tjenestenektangrep (DDoS). Det er den største aktive IoT-botnett-familien bortsett fra Mirai-familien.
Etter at kildekoden ble lekket og lastet opp til GitHub i 2015, ulike varianter og bedrifter dukket opp etter hverandre, utgjør en større sikkerhetstrussel for brukere. Akkurat nå, Huorongs sikkerhetsprodukter kan avskjære og drepe de ovennevnte virusene. Enterprise-brukere blir bedt om å oppdatere virusdatabasen i tide for forsvar.
1. Prøveanalyse
Viruset gir først nytt navn til sin egen prosess til "/usr/sbin/dropbear" eller "sshd" å skjule seg:
endre navn på prosessen
Blant dem, den krypterte strengen er funnet, og dekrypteringsalgoritmen er byte XOR til 0xDEDEFFBA. Ved bruk, bare de brukte dekrypteres individuelt, men bare 4 er faktisk referert:
Kryptert streng og dekrypteringsalgoritme
Den første referansen er bare å sende ut den tilsvarende strengen til skjermen, og de to midterste referansene er operasjoner på vakthundprosessen for å unngå å miste kontrollen på grunn av omstart av enheten:
dekryptere og sitere
De resterende operasjonene utføres i en løkke, inkludert initialisering av C2-tilkoblingen (94.156.161.21:671), sende plattformenhetstypen, motta returkommandoen og utføre den tilsvarende moduloperasjonen. Og sammenlignet med kildekoden lekket av Gafgy, formatet og behandlingen av kommandoen har ikke endret seg mye, og formatet på kommandoen er fortsatt "!*Kommando [Parameter]"
sløyfeoperasjonskode
I processCmd-funksjonen, totalt 14 kommandoer blir svart på og tilsvarende DDOS-angrep blir lansert, gjelder også: "HTTP", "CUDP utvidelse", "UDP", "STD", "JSC", "TCP", "SYN" , "ACK", "CXMAS", "JUL", "CVSE", "ALT", "CNC", "NIGGA"
kommandoskjermbilde - IoT-sikkerhet
Blant dem, CUDP, UDP, JSC, og TCP-moduler kan alle sende tilfeldige strenger til den angitte IP-en og porten, og kan rekonstruere TCP- og UDP-pakker med selvbygde IP-hoder for å skjule kildens IP-adresse.
meldingsstruktur
Prefikset C antas å være forkortelsen for custom. Tar CUDP og UDP som eksempler, i den originale versjonen av Gafgyt, parametrene i den utstedte kommandoen inkluderer: ip, havn, tid, forfalsket, pakkestørrelse, pollinterval og andre feltverdier og flaggbiter For konstruksjon av UDP-pakker. I denne prøven, derimot, de observerte resultatene viser at det er anvendelsen av disse parameterne til ulike grader av restriksjon, som kan øke fleksibiliteten til spesifikke typer DDOS-angrep.
Sammenligning av CUDP og UDP
Funksjonene til andre moduler inkluderer å legge til et stort antall User-Agent-strenger, som brukes til å starte HTTP-kommandoer for CC-angrep:
CC angrep
Inkludert for angrep mot Valves Source Engine-servere: ("Kildemotor" forespørsler er en del av den daglige kommunikasjonen mellom klienter og spillservere ved å bruke Valve-programvareprotokollen)
Angrep mot spillindustrien
Inkludert CNC-kommandoer som kan bytte tilkoblings-IP:
bytte tilkobling IP
Inkluderer SYN- og ACK-angrep:
SYN og ACK angrep
Inkludert UDP STD flomangrep:
STD angrep
Inkludert XMAS-angrep: (det er, Juletreangrep, ved å sette alle flaggbitene til TCP til 1, dermed forbruker mer responsbehandlingsressurser i målsystemet)
Juleangrep
NIGGA-modulen tilsvarer KILLATTK-kommandoen i originalversjonen, som stopper DoSS-angrep ved å drepe alle barneprosesser bortsett fra hovedprosessen
NIGGA-modul
Komparativ analyse
Funksjonen processCmd som lagrer hovedlogikken i kildekoden inkluderer PING, GETLOCALIP, SKANNER, E-POST, SKROT, UDP, TCP, HOLDE, KILLATTK, og LOLNOGTFO-moduler. Bare forenklede versjoner av UDP- og TCP-moduler eksisterer samtidig i variantutnyttelsen som ble fanget denne gangen. .
Og i driften av å skaffe den lokale IP-en, den opprinnelige versjonen henter den lokale IP-en gjennom /proc/net/route og returnerer den gjennom GETLOCALIP-modulen. Den samme get-operasjonen er observert i denne varianten, men det er ingen GETLOCALIP-modul og ingen referanser er observert.
Få lokal IP
Det er verdt å merke seg at det ikke finnes noen originalversjon av SCANNER-modulen som brukes til å sprenge SSH (havn 22) i denne typen prøve, og det er ingen andre varianter som bygger inn flere "applikasjoner/enhet" sårbarheter som kan spres gjennom nyttelast. Det kan sees at angriperen deler opp forplantningsmodulen i uavhengige programmer, og etter vellykket pålogging til offerverten, han vil laste ned kommunikasjonseksemplet for neste trinn ved å kjøre skallkoden, det er, analyseprøven.
Eksempel på utfør shellcode
Ta prøvene hentet fra samme kilde som et eksempel, angriperen fjernet feilsøkingsinformasjonen for de fleste prøvene, bortsett fra noen få, som for eksempel: x86.