الجزء الثالث: كيف تتعلم Python و Bash لتصبح مبرمج أمن سيبراني حقيقي؟ (خارطة مركزة من قلب التخصص)

صورة غلاف توضح دمج لغتي بايثون وباش كأداة أساسية للمبتدئين في تعلم الأمن السيبراني

أهلاً بك يا صديقي مجدداً.

في المقال السابق، الدليل الشامل في الشبكات وأنظمة التشغيل، وضعنا معاً حجر الأساس: فهمنا كيف تتنقل البيانات عبر طبقات OSI السبع، وتعرّفنا على المنافذ والخدمات، وفرقنا بين بيئة Linux وبيئة Windows. وفي ختام ذلك المقال وعدتكم بأننا سننتقل للخطوة التالية في خارطة الطريق: البرمجة والسكربتات. واليوم، بمشيئة الله، نفي بهذا الوعد.

قبل أن نبدأ، دعني أوضح نقطة كثيراً ما تُسبب بلبلة للمبتدئين: نحن لا نتحدث هنا عن "تعلم البرمجة" بالمفهوم الذي يدرسه مهندس البرمجيات. نحن نتحدث عن أداة في يد مهندس الأمن السيبراني، أداة تجعله يفهم، ويؤتمت، ويكتشف، لا أن يبني تطبيقات تجارية معقدة.

لقطة كود توضح أول سكربت بايثون بسيط لفحص المنافذ المفتوحة كخطوة عملية للمبتدئين في الأمن السيبراني.

1. لماذا Python تحديداً، وليس أي لغة أخرى؟

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

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

2. خارطة تعلم مركزة: لا تتعلم Python كاملة

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

  1. المتغيرات وأنواع البيانات الأساسية (نصوص، أرقام، قوائم Lists، وقواميس Dictionaries).
  2. الجمل الشرطية والحلقات التكرارية (if / for / while) لأنها عماد أي سكربت فحص أو أتمتة.
  3. الدوال (Functions) لتنظيم الكود وإعادة استخدامه بدل التكرار.
  4. التعامل مع الملفات ومكتبة Sockets للتواصل الشبكي المباشر، وهي نقطة التقاطع الحقيقية بين البرمجة والشبكات التي شرحناها في المقال السابق.

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

3. أول سكربت عملي: فاحص منافذ بسيط (Port Scanner)

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

import socket

target = "127.0.0.1"
ports = [21, 22, 80, 443]

for port in ports:
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.settimeout(0.5)
    result = s.connect_ex((target, port))
    if result == 0:
        print(f"المنفذ {port} مفتوح")
    else:
        print(f"المنفذ {port} مغلق")
    s.close()

لاحظ كيف أن هذا الكود البسيط يستخدم بالضبط نفس مفاهيم المنافذ (Ports) التي شرحناها سابقاً؛ فحص المنفذ 22 يخبرك إن كانت خدمة SSH متاحة، وفحص المنفذ 80 يخبرك عن وجود خادم ويب. هذا هو جوهر الفكرة: البرمجة ليست معزولة عن الشبكات، بل هي أداة لتفعيل ما تعلمته نظرياً.

4. لغة Bash: يدك اليمنى داخل بيئة Linux

إلى جانب Python، لا يمكن أن تستغني عن Bash إن كنت تعمل داخل بيئة Kali Linux التي تحدثنا عنها سابقاً. Bash ليست لغة برمجة تطبيقات، بل هي لغة "أتمتة الأوامر" داخل الطرفية (Terminal). بدل أن تكتب عشرة أوامر يدوياً كل صباح، تكتبها مرة واحدة في ملف سكربت بامتداد .sh وتُشغّله بضغطة واحدة.

ابدأ بفهم:

  • المتغيرات وتمرير المدخلات (Arguments) للسكربت.
  • حلقات for البسيطة لتكرار أمر على قائمة من عناوين IP مثلاً.
  • الأنابيب (Pipes) ورمز | لربط مخرجات أمر بمدخلات أمر آخر، وهي فلسفة كاملة في عالم Linux.

5. كيف تربط هذا كله بمختبرك الخاص؟

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

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

كلمة أخيرة: الاستمرارية أهم من السرعة

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

في المقال القادم بإذن الله، سننتقل للخطوة الأهم قبل أي تطبيق عملي: المفاهيم الأمنية الجوهرية التي يقوم عليها هذا التخصص بالكامل، قبل أن نصل أخيراً لمرحلة بناء المختبر الخاص (Home Lab).

إن كانت لديك أي عقبة في تجربة السكربت أعلاه، أو أي استفسار حول Bash، اترك تعليقك وسنناقشه معاً.

كما يمكنك قراءة المقالات السابقه في قسم الامن السيبراني للموقع

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