صفر وواحد: Binary و Hex و Encoding
إزاي الكمبيوتر بيشيل كل حاجة كأرقام، والـ bit والـ byte، و ASCII و Hex، و Base64… وليه Encoding مش حماية.
نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.
أهلاً بيك. الكمبيوتر مابيفهمش كلام ولا صور ولا فيديو. بيفهم حاجة واحدة بس: كهربا موجودة، أو مش موجودة… واحد، أو صفر.
الواحد أو الصفر ده اسمه bit. ولما نجمّع تمانية bits، يبقوا byte. والـ byte الواحد يقدر يشيل رقم من صفر لميتين خمسة وخمسين. وكل الملفات في الآخر مجرد bytes كتير ورا بعض.
طيب الحروف؟ اتفقوا على جدول اسمه ASCII، كل حرف ليه رقم. حرف A الكبير رقمه خمسة وستين، و B ستة وستين، وكده. ولما بتكتب كلمة، الجهاز بيشيلها أرقام.
وفيه طريقة تانية لكتابة الأرقام اسمها Hex. بتستخدم من صفر لتسعة، وبعدين الحروف من A لـ F. وهتشوفها في كل حتة في الأمن: في الـ hashes، وفي الـ memory، وفي تحليل البرامج. نجرب بـ Python. bin بتحوّل الرقم لـ binary، و ord بتجيب رقم الحرف، و hex بتحوّل لـ Hex. نشغّل…
print(bin(5))
print(ord("A"))
print(hex(255))المخرجات
0b101 65 0xff
دلوقتي أهم حاجة في الدرس. فيه حاجة اسمها Encoding، يعني تكتب نفس البيانات بشكل تاني. وأشهرها Base64. هنحوّل username و password لـ Base64. نشغّل… الكلام بقى شكله غريب، صح؟
import base64
secret = "admin:1234"
encoded = base64.b64encode(secret.encode()).decode()
print(encoded)المخرجات
YWRtaW46MTIzNA==
بس استنى… أي حد يقدر يرجّعه في سطر واحد. نشغّل… رجع زي ما هو.
import base64
secret = "admin:1234"
encoded = base64.b64encode(secret.encode()).decode()
print(encoded)
print(base64.b64decode(encoded).decode())المخرجات
YWRtaW46MTIzNA== admin:1234
علشان كده افتكر القاعدة دي كويس: Encoding مش حماية. Base64 أي حد يقدر يفكّه من غير أي key. ولو لقيت باسورد متخزّن Base64… يبقى ده باسورد مكشوف، وده finding لازم يتكتب في التقرير. دورك: فُك الـ Base64 ده: cm9vdA==. وشوف طالع إيه.
اطبع base64.b64decode("cm9vdA==").decode().
الحل: نشغّل… طلعت root.
import base64
print(base64.b64decode("cm9vdA==").decode())المخرجات
root
الدرس الجاي: الأجهزة بتكلّم بعض إزاي؟ الشبكات والـ IP Address. يلا بينا.
03 / دروس المسار (23)
- 01أهلاً بيك — يعني إيه أمن سيبراني؟
- 02الكمبيوتر بيشتغل إزاي من جُوّه؟
- 03نظام التشغيل: المدير اللي بيدير كل حاجة
- 04الملفات والـ Users والصلاحيات
- 05صفر وواحد: Binary و Hex و Encodingانت هنا
- 06الشبكات والـ IP Address
- 07الـ Ports والـ Protocols
- 08الـ DNS والـ HTTP: إزاي الموقع بيفتح؟
- 09تطبيق الويب: Client و Server و Database
- 10مفاهيم الحماية: CIA Triad
- 11Vulnerability و Threat و Risk
- 12Authentication و Authorization
- 13Least Privilege و Defense in Depth
- 14الـ Hashing: إزاي نحفَظ الباسورد صح
- 15الـ Encryption: Symmetric و Asymmetric و HTTPS
- 16تفكير المهاجم: الثقة والمدخلات
- 17الـ Attack Surface والـ Attack Vectors
- 18الـ Social Engineering والـ Phishing
- 19أنواع المهاجمين، والأخلاق، والقانون
- 20أنواع الاختبار والـ Scope والـ Rules of Engagement
- 21مراحل اختبار الاختراق
- 22جهّز الـ Lab بتاعك
- 23مراجعة نهائية: سيناريو كامل، وإنت رايح فين