في الحلقة الختامية للموسم الرابع من المسلسل الأمريكي Arrow، نجحت «فيليستي سموك»، مهندسة الكمبيوتر، من إعادة توجيه صاروخ يحمل رأسًا نوويًّا كان متجهًا لضرب مدينة Star City، فقط قبل بضعة أمتار من ضربه للمدينة، وذلك عن طريق جهاز «للأشعة تحت الحمراء» موجه ناحية الصاروخ، وسط احتفال أهالي المدينة في الشوارع لنجاتهم من موت محتوم.

مشهد من الحلقة الأخيرة من الموسم الرابع لمسلسل Arrow

في مشاهد لاحقة من نفس الحلقة تمكنت سموك من فعل نفس الأمر مع 15 ألف صاروخ نووي، وهي مجموع الصواريخ النووية الموجودة على الكوكب بأكمله، كان قد أطلقها شرير الموسم «ديميان دارك» بهدف تدمير العالم. وهكذا تمكَّنت فتاة عشرينية من القيام بما عجزت عنه منظومات دفاع جوي بعشرات المليارات، بينما كانت هي مسلحة فقط بجهاز تستطيع الحصول عليه من أمازون بأقل من 50 دولارًا. فضلًا عن تمكن «دارك» من السيطرة بالأساس على الترسانة النووية للكوكب بأكمله وإطلاقها بكبسة زر.

ميراث هوليوود

ربما تكون السطور السابقة قد جعلت هذا المشهد يبدو سخيفًا للغاية. لكن لا أستبعد أن تكون عزيزي القارئ قد مررت بالمشهد أو بعشرات المشاهد المشابهة دون أن تشعر بأي سخافة تُذكر. ربما شعرت بالإثارة عوضًا عن ذلك! فكيف لشباب غريبي الأطوار جالسين أمام شاشة كمبيوتر أو اثنتين أو ربما تسع شاشات برموز خضراء غريبة وألفاظ تقنية غامضة، قادرين من أماكنهم على التحكم بكل شيء والولوج لأي نظام.

على مدى أكثر من 40 عامًا كان الاختراق أو الهاكينج Hacking هو كلمة السر الرابحة لأي كاتب سيناريو؛ فهي تستطيع ضرب طائرين بحجر واحد. على جانب ستحصد حماس الجمهور المنبهر من غموض وروعة المشاهد التي تبدو له أشبه بالسحر. على الجانب الآخر ستوفر مَخرَجًا – وربما مَخارج – سهلًا يُزلِّل من أمام أبطال العمل كل عقبات الحبكة المنطقية.

إنها صفقة لا يمكن مقاومة سحر إغرائها، وهي دائمًا الحل السهل الذي يُمكِّن مجموعة الأبطال الهواة من سرقة الملايين من البنوك والتسلسل لمباني أجهزة الأمن والمخابرات.

بعيدًا عن الفانتازيا السينمائية

لكن، وبعيدًا عن الفانتازيا السينمائية، هل الاختراق في عالم الواقع أقل إثارة منه في شاشات السينما؟

الإحابة هي: قطعًا لا. العالم ينزف المليارات، فلا يمر يوم إلا وتتصدر المواقع والنشرات أخبار الاختراقات الأمنية وتسريب البيانات. ففي كل 32 ثانية يتعرض شخص ما لهجمة إلكترونية، ولا يُستعبَد أن تكون عزيزي القارئ أو ربما شخص ما في دائرتك قد تعرَّض لإحدى هذه الهجمات.

في عام 2021 كان من المتوقع أن يصل حجم الخسائر الناتجة عن عمليات الجريمة الإلكترونية إلى 6 تريليونات دولار، وهو رقم من المتوقع ارتفاعه ليصل إلى 10 تريليونات دولار بحلول 2025، وذلك مقارنةً بـ 3 تريليونات دولار فقط في عام 2015. في المقابل قُدرِّت حجم صناعة خدمات الأمن السيبراني بحوالي 217 مليار دولار، حيث أنفقت مثلًا شركة جوجل وحدها حوالي 10 مليارات دولار في السنوات الخمس الأخيرة لتقوية دفاعاتها وحمايتها ضد الهجمات السيبرانية.

كل هذه المخاطر التي تحيط بنا وبالمقربين منَّا من كل حدب وصوب تُحتِّم على كلٍّ منَّا التخلي عن تصوراته السينمائية، والسعي لامتلاك الحد الأدنى من الوعي الأمني بالهجمات الإلكترونية، وكيف تحدث، وكيف يمكن الحماية منها.

بدون الخوض في أية تعقيدات تقنية، سأقوم باصطحابك خلال هذا المقال (وربما مقالات قادمة) في رحلة للتعرف أكثر وبشكل أعمق على عالم الاختراق والجريمة الإلكترونية والحروب السيبرانية التي تدور رحاها في كل مكان وزمان في العالم الافتراضي. لكن قبل أن نشرع في رحلتنا ينبغي أولًا أن نسأل السؤال الأهم: كيف تحدث في الواقع عمليات الاختراق؟

ما هو الاختراق الإلكتروني أو الـ Hacking؟

تُعرِّف شركة Kaspersky الاختراق الأمني أو الـ Hacking بأنه:

أي حادث ينتج عنه وصول غير مُصرَّح به إلى بيانات الكمبيوتر أو التطبيقات أو الشبكات أو الأجهزة. ويحدث عادةً عندما يتمكن المتسلل من تجاوز آليات الأمان.

لكن كيف يتمكن المتسلل من تجاوز آليات الأمان؟

في عالم الواقع إذا أراد لص ما اختراق أحد المنازل بهدف السرقة، فإن أولى الخطوات التي يقوم بها هي دراسة الهدف لجمع المعلومات. معلومات تجعله قادرًا على التعرف أكثر على الهدف وطبيعته. على سبيل المثال: موقع المنزل وتخطيطه الداخلي، عدد ساكنيه، مواعيد خروجهم من المنزل، طبيعة الجيران، أشكال الحماية المستخدمة في المنزل من أقفال وكاميرات، وربما كلب ألماني غير ودود عند المدخل.

هل المعلومات عن الهدف وحدها كفيلة لضمان نجاح اللص؟ بالتأكيد لا. بماذا ستفيده تلك المعلومات عندما يصل أخيرًا للخزانة وهو لا يملك أية فكرة عن كيفية عملها حتى يتمكن من فتحها؟

على شاشات السينما قد يبدو الاختراق أشبه بممارسات لا تخضع لأي منطق، لكن في الحقيقة يحتفظ العالم الإلكتروني بنفس منطق العالم الواقعي. إن أراد المخترق أو الهاكر اختراق نظام ما فإن عليه أولًا دراسة هذا النظام ومعرفة كيف تم بناؤه أولًا، حتى يتمكن ثانيًا من إيجاد الثغرات أو الوسائل التي تمكنه من تخطي آليات الأمان – إن وُجدت من الأساس – والولوج للنظام.

رغم اشتراك جميع الاختراقات الأمنية في النتيجة النهائية وهي «الوصول غير المُصرَّح به لنظام إلكتروني ما»، إلا أنها تختلف وتتنوَّع تنوعًا كبيرًا من حيث الأساليب والكيفية التي تؤدي لهذا الوصول، ومن حيث نوع وطبيعة النظام المخترق، ومن حيث حجم الاختراق وحجم الخسائر، وبالطبع من حيث المحفز والدافع وراء عملية الاختراق.

ما هو النظام؟

يُطلَق مصطلح نظام System على أي مجموعة من العناصر تترابط وتتفاعل فيما بينها ضمن إطار معين من القواعد أو الأهداف.

في عالم الكمبيوتر يتفاوت حجم النظام وشكله ومكوناته حسب سياق الحديث. يمكن النظر لتطبيق الآلة الحاسبة على هاتفك بأنه نظام إلكتروني مكوَّن من مجموعة من العناصر – أكواد برمجية – تترابط مع بعضها لتكوين التطبيق.

إن دخلت أحد البنوك فإن كل الأجهزة الإلكترونية التي يستخدمها الموظفون، بالإضافة للبرامج المُثبتة على تلك الأجهزة تتصل جميعًا في حلقة – مغلقة على نفسها غالبًا – تُسمى شبكة، ويُطلَق على هذه الشبكة بكل ما تحتويه نظام البنك الإلكتروني.

يمكن أيضًا النظر للإنترنت بأكمله على أنه نظام. إنه فقط أكبر نظام إلكتروني على وجه الأرض بملايين – ربما مليارات – الأجهزة والبرمجيات والبروتوكولات التي يتصل بعضها ببعض من مشرق الكوكب لمغربه.

ستبدأ رحلتنا بمثال عملي – غير مُفصل – على إحدى الثغرات التي قد تُصاب بها تطبيقات الويب (مواقع الإنترنت)، والتي قد تتسبب في اختراقها، حيث إن مواقع الإنترنت التي تتصفحها ليست سوى برنامج كهذا الموجود على هاتفك أو على اللاب توب. إنه فقط برنامج مُطالب بأن يعمل على مدار الساعة ويكون متاحًا عنوانه للجميع. أعرف أنك بحلول الآن قد سئمت من كل هذا الكلام النظري، لذلك دعنا نجرب الإقلاع مباشرة دون أي مقدمات أخرى.

برنامج الويب – كما أي برنامج آخر – عبارة عن مجموعة من الأكواد البرمجية التي تأمر عتاد الكمبيوتر بتأدية مهام معينة. في الصورة التالية مثال لأحد هذه الأكواد.

كود مكتوب بلغة PHP – من تصميم الكاتب

إن قررت إغلاق المقال بعد ما رأيت، فسأعقد معك صفقة. لما تبقى من المقال لن أقوم بعرض أي كود برمجي آخر. وبدلًا من محاولة حشو رأسك بمعنى هذه الرموز والكلمات سأقوم بترجمة الكود إلى العربية، ولن تضطر لأن ترى هذا المشهد مجددًا.

ترجمة للكود السابق – من تصميم الكاتب

هذه هي ترجمة للأوامر الموجودة في الصورة، وبالتأكيد الوضع ألطف كثيرًا الآن.

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

إن توافق الاثنان فأنت مُصرَّح لك الدخول، ويقوم بتحويلك – غالبًا – لصفحة الموقع الرئيسية، إن لم يحدث، يقوم الموقع بإخبارك بإعادة المحاولة لأن البيانات التي أدخلتها غير صحيحة.

حقيقة الكمبيوتر

هنا دعني أتوقف لأخبرك سرًّا عن الكمبيوتر – وبالمناسبة هاتفك المحمول وأي جهاز إلكتروني ذكي هو نظريًّا كمبيوتر – إنها أجهزة في غاية الغباء!

إن أعطيت أمرًا لطفلك ابن السابعة بأن يذهب ليحضر لك ريموت التلفاز من فوق المنضدة، وعند ذهابه وجد الريموت على الكرسي، فإنه بالتأكيد لن يعود خالي الوفاض ليخبرك بأنه لم يجد الريموت في المكان المحدد، وأنه يحتاج إلى أمر جديد ليحضره لك من فوق الكرسي. وإن فعل ذلك فأنصحك بأن تترك مشاهدة التلفاز وتتفرغ قليلًا للاعتناء بطفلك، فإن لديك مشكلة حقيقية!

الكمبيوتر على العكس لن يُحضر الريموت؛ لأنك تحتاج أن تخبره بأن الريموت قد يكون أيضًا على الكرسي، أسفل الأريكة، ربما في سلة القمامة! ستحتاج أيضًا بأن تصف له الطريق الذي سيسير فيه في رحلته وكيف يتخطى العقبات التي قد تواجهه؛ لأنه إن وجد باب الغرفة مغلقًا في طريقه فسيعود إليك ويخبرك ببساطة أنك لم تأمره بفتح الباب! بصيغة أدق: فأنت لم تكتب له سطرًا – أو أسطرًا – تخبره أن يفتح الباب إن وجده مغلقًا، والأهم هو كيف!

هنا تكمن روعة علوم الكمبيوتر وترويعها في الوقت نفسه. أنت لست مُطالبًا فقط بأن تكتب الكود البرمجي الذي يؤدي العمل المطلوب، أنت أيضًا مُطالب بوضع كل الأخطاء والعقبات الممكنة في الحسبان! لكن ماذا إن فشلت في ذلك؟

في الحقيقة لقد فشلت في ذلك بنفسي عندما كتبت الكود البرمجي في المثال السابق لعملية تسجيل دخول المستخدم للموقع.

رجوعًا للكود – المُترجم للعربية وليس الأصلي – فإنه يبدأ بجلب كلمة السر التي أدخلها المستخدم، ومن ثَمَّ إدخالها مباشرة إلى قاعدة البيانات لمقارنتها بكلمة المرور المسجلة.

ماذا إن قام مستخدم الموقع -بدلًا من إدخال كلمة المرور- بإدخال كود برمجي لقاعدة البيانات المستخدمة في الموقع؟!

حاول أن تقوم عزيزي القارئ بتخمين نتيجة ما قام به المستخدم… قبل متابعة القراءة.

حسنًا… إن كان تخمينك أن الكمبيوتر – ولأنه لم يُؤمر بعدم تنفيذ أي كود برمجي يرسل له من طرف المستخدمين – سيقوم بمنتهى السذاجة بتنفيذ كود المُستخدم، فأنت على صواب!

عند هذه النقطة سيتمكن المستخدم لدينا من كتابة الأكواد وتنفيذها وكأنه يملك الموقع!

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

لكن وفي كل الحالات لقد تمكن المستخدم من اختراق الموقع؛ لأنه وبحسب التعريف السابق تمكَّن من الوصول غير المصرح به لبيانات النظام (الموقع الإلكتروني)، بعد تخطيه آليات الأمن التي وُضعت أثناء تصميم الموقع، مما عرَّض التطبيق في النهاية لهذه الثغرة المميتة.

 

استطاع المستخدم اختراق التطبيق، ليس عن طريق ارتداء الـ hoodies السوداء أو ضغط مئات الأزاز على لوحة المفاتيح في ثوانٍ وبشكل عشوائي. تمكن من ذلك فقط لأنه على علم ودراية بكيفية بناء النظام الذي قام باستهدافه وهو تطبيقات الويب، والأخطاء الشائعة التي يقع فيها المبرمجون وما تسببه من ثغرات وكيف يمكن استغلالها.

لم يكن ذلك سوى مثال واحد – مبالغ في تبسيطه بالطبع – للأخطاء التي من الممكن أن تتسبب في اختراق أنظمة تطبيقات الويب. في عالم الواقع بالتأكيد لن يكون العثور على مثل هذه الثغرات – والتي تسمى الحقن Injection – واستغلالها بمثل هذه السهولة والبساطة. وليس هدف هذا المقال الاستفاضة في شرح آليات وتقنيات الاختراق، إنما كان تسليط الضوء على ممارسة تعد للكثيرين في غموضها أشبه بطقوس تحضير الأرواح، لكنها في الحقيقة ليست سوى دراسة عميقة، وإبداع، وكثير من البحث والعمل الجاد.

في الختام يمكن القول بأن الكمبيوتر ليس سوى آلة تقوم بتنفيذ تسلسل منطقي يُزوَّد به من قبل مهندسيه ومبرمجيه، وأن المُخترِق على الجانب الآخر ليس سوى شخص يقوم في غالب وقته بدراسة هذا التسلسل المنطقي؛ ليتمكن في النهاية من إيجاد وسيلة لتقويض هذا التسلسل المنطقي، وإجبار الكمبيوتر على الإتيان بسلوك لم يكن مُخططًا له.

مقالات الرأي والتدوينات لا تعبر بالضرورة عن وجهة نظر هيئة التحرير.