غارق في الذكاء الاصطناعي والمخاطر الأمنية لاستخدامه، تحدي SANS Holiday Hack لعام 2023 لقد كانت تجربة غنية للتنقل عبر سلسلة من 21 هدفًا اختبرت ووسعت مهارات الأمن السيبراني المتعددة.
كانت أفضل التحديات التي واجهتني هي تعقب هلوسة الذكاء الاصطناعي في تقرير اختباري، وتصعيد الامتيازات على نظام Linux، والبحث عن الغش في ألعاب Game Boy، واستخدام Azure REST API للبحث عن الكود المصدري لتطبيق Azure Function وفي النهاية استغلال الثغرة الأمنية. خدمة شهادة SSH، وممارسة استخدام إمباكيت مجموعة الأدوات و سيرتيبي لاستغلال الضعفاء خدمات شهادة الدليل النشطواستغلال ثغرات حقن SQL وإلغاء تسلسل Java في التطبيقات الفضائية.
وفيما يلي، أشارككم المسار الذي اتبعته للتغلب على بعض أبرز التحديات.
مراسل
ChatNPT، وهو نموذج لغة كبير (LLM) يستخدم لإنشاء بعض التحديات، أنشأ ملفًا تقرير اختبار الاختراق حول نقاط الضعف المكتشفة في شبكة North Pole Systems، والتي يظهر بعضها كجزء من التحديات القادمة. ومع ذلك، قام موقع ChatNPT بالهلوسة ببعض التفاصيل الواردة في التقرير. باستخدام ChatGPT، أو برنامج LLM مفضل آخر، كانت المهمة هي وضع علامة على الأقسام التي تحتوي على معلومات مهلوسة. كان النهج الذي اتبعته هو طرح أسئلة محددة على ChatGPT حول المحتوى لشرح ما لم أفهمه في البداية، وفي النهاية لاكتشاف الحالات الشاذة. ثلاثة من الأقسام التسعة تحتوي على أخطاء.
كما أكد ChatGPT، يحتوي هذا القسم على رقم منفذ غير صالح وهو 88,555، وهو أعلى بكثير من أعلى رقم منفذ صالح وهو 65,535:
هنا لاحظت على الفور أن SEND ليس طريقة طلب HTTP.
لقد خلط ChatNPT بين رقم إصدار PHP المذكور في القسم الثامن من التقرير إما كإصدار بروتوكول HTTP أو كنص خاطئ لما كان ينبغي أن يكون "طلب HTTP HEAD" في هذا القسم. بالإضافة إلى ذلك، يعد الكشف عن تسجيل Windows أو مفاتيح المنتج في رأس الموقع نصيحة سيئة.
Linux PrivEsc
في هذا التحدي، كان الهدف النهائي هو الإجابة على سؤال ولكن هذا السؤال كان مخفيًا في ملف قابل للتنفيذ لا يمكن الوصول إليه:
بينما هناك أساليب مختلفة لتصعيد الامتيازات على جهاز Linux، سمح هذا التحدي بملف قابل للتنفيذ مخصص يسمى com.simplecopy مع تعيين بت SUID ليتم إساءة استخدامه. إذا تم تعيين بت SUID لمالك الملف وكان المالك كذلك جذر، فسيتم تنفيذ هذا الملف دائمًا بامتيازات الجذر حتى بواسطة المستخدمين غير الجذر على النظام. لقد استخدمت الأمر التالي للبحث في النظام بأكمله عن الملفات العادية التي تم تعيين بت SUID للمالك، مع تجاهل أي إخراج خطأ:
com.simplecopy يبدو أنها نسخة ضعيفة، ولكنها مبسطة، من المعيار cp جدوى. في الواقع اقترحت رسالة المساعدة نفس الشيء:
الاستخدام: نسخة بسيطة
كان النهج الذي اتبعته هو ما يلي: إنشاء المعلومات لمستخدم يتمتع بامتيازات الجذر، وإلحاق هذه المعلومات بنسخة من ملف / الخ / باسود الملف، ثم استبدال القديم باسود الملف مع النسخة. التالي، استخدم su لتسجيل الدخول كمستخدم جديد.
ومع وصول الجذر إلى النظام، تمكنت من العثور على الملف القابل للتنفيذ com.runmetoanswer في /جذر، قم بتشغيله وتخمين الإجابة: سانتا.
تم تقديم الإجابة أيضًا في ملف التكوين /etc/runtoanswer.yamlولكن لا يمكن قراءة هذا الملف إلا بامتيازات الجذر أو باستخدام com.simplecopy لنسخه إلى / ديف / stdout.
خراطيش اللعبة: المجلد 2 والمجلد 3
يتضمن التحديان الهندسة العكسية الخفيفة لملفات Game Boy ROM. الأولى كانت لعبة حيث كان الهدف هو تجاوز الحارس، والكشف عن البوابة، وفك تشفير إجابة موجة الأثير. لقد حصلنا على نسختين من اللعبة مع تلميح لإلقاء نظرة على فرق بينهم. كان نسخ عدد قليل من البايتات السداسية المختلفة من إصدار إلى آخر كافيًا للكشف عن البوابة، مما أدى إلى غرفة بها راديو يبث الإجابة بشفرة مورس:
رمز مورس |
دا دا ديت |
دي دا دي ديت |
دا دا دا دا داه |
دي دا ديت |
دا-دي-دا-داه |
|
الرسالة |
g |
l |
0 |
r |
y |
والثانية كانت لعبة يمكنك من خلالها كسب النقاط من خلال القفز لجمع العملات المعدنية؛ ومع ذلك، فإن الحصول على أكثر من 998 نقطة سيؤدي إلى تحويل نقاطك إلى 0، وفي ظل ظروف معينة، يؤدي إلى ظهور رسالة حول وجود خطأ تجاوز. كان الهدف هو الكشف عن الخطوات العائمة للجزء التالي من الخريطة حيث تم تخزين العلم، ولكن هذا يتطلب مهارة في القفز. وبدلاً من ذلك، اكتشفت كيفية الطيران بمساعدة محاكي لعبة BGB Game Boy ومزيج من وظيفة البحث عن الغش والفحص البصري لذاكرة الوصول العشوائي (RAM) أثناء اللعب للعثور على البايت السداسي الذي يتحكم في موضع اللاعب على الخريطة - بشكل أساسي، لقد توصلت إلى خبير في اللعبة رمز.
كان العلم !توم + قزم!.
شهادة SSHenanigans
على الرغم من أن استخدام الشهادات بدلاً من أزواج المفاتيح العامة والخاصة يحسن أمان المصادقة عبر SSH، إلا أن خدمة توقيع شهادة SSH التي تم تكوينها بشكل خاطئ قد تسمح للمهاجم بالحصول على شهادة بشكل غير قانوني للمصادقة كمستخدم آخر. تم إعداد التحدي بالطريقة التالية.
An وظيفة Azure تم نشر التطبيق على Northpole-SSH-certs-fa.azurewebsites.net تقوم بإرجاع شهادات SSH إلى أي شخص يوفر مفتاح SSH العام. يمكن استخدام هذه الشهادات للمصادقة عبر SSH ssh-server-vm.santaworkshopgeeseislands.org كمستخدم مراقب.
المضيف في هذا المجال هو جهاز Azure الظاهري، لذلك بعد تسجيل الدخول كانت خطوتي الأولى هي جمع المعلومات من بيانات تعريف المثيل حيث سيكون ذلك ضروريًا للمكالمات إلى Azure REST API لاحقًا، وعلى وجه التحديد، كنت بحاجة إلى معرف الاشتراك واسم مجموعة الموارد. كنت بحاجة أيضًا إلى رمز وصول لاستخدام واجهة برمجة التطبيقات هذه، والتي تمكنت من الحصول عليها من خلالها باستخدام الهوية المدارة. يجب بعد ذلك استخدام هذا الرمز المميز الذي تم الحصول عليه في رأس تفويض HTTP عند إجراء مكالمات إلى Azure REST API.
في هذه المرحلة، كان لدي كل ما يلزم لإجراء استدعاء API الحصول على تكوين التحكم بالمصدر من تطبيق Azure Function. لقد أجريت المكالمة ومن بين خصائص التكوين وجدت عنوان URL لملف الكود المصدري للتطبيق على GitHub.
كشف فحص الكود المصدري أن التطبيق يقبل معلمة ثانية: ناظر. إذا كان طلب HTTP POST إلى /api/create-cert نقطة النهاية لا ترسل قيمة ناظر، ثم افتراضي قزم تم إرجاعها، ولكن هنا تكمن ثغرة أمنية. استخدام جناح Burp يمكنني اعتراض طلب HTTP POST وإدراج القيمة مشرف. كنت أعرف أن أطلب مشرف لأنه كان الرئيسي في /etc/ssh/auth_principals/alabaster الملف الموجود على الجهاز الظاهري وأردت الوصول إلى الدليل الرئيسي لـ Alabaster.
مع وجود شهادة SSH لمدير المشرف في يدي، قمت بتسجيل الدخول إلى نفس الجهاز الظاهري الذي قمت بتسجيل الدخول إليه مرمر ووجد قائمة المهام الخاصة بـ Alabaster في الدليل الرئيسي الخاص به. تحتوي القائمة على كلمة العلم: خبز الزنجبيل.
نشط الدليل
بدءًا من نفس الجهاز الظاهري مثل التحدي السابق، نظر هذا التحدي في كيفية تكوين خطأ خدمة شهادة الدليل النشط يمكن إساءة استخدامها من قبل مهاجم للمصادقة كمستخدم آخر. مثل مرمر كان لدي دليل مليء بـ إمباكيت الأدوات ولكن معظمها يتطلب اسم مجال الخادم المستهدف وعنوان IP واسم المستخدم وكلمة المرور لتسجيل الدخول - وهي معلومات لم أحصل عليها بعد.
لذا كانت الخطوة الأولى الجيدة هي معرفة الأذونات الخاصة بي لـ Azure REST API حيث ليست هناك حاجة للاتصال بواجهة برمجة تطبيقات واحدة تلو الأخرى فقط لتلبية رسالة رفض الترخيص. وهكذا، أنا سرد كافة الأذونات لمجموعة الموارد الذي اكتشفته في التحدي السابق.
منذ أن رأيت أن لدي العديد من الأذونات حول قراءة خزائن المفاتيح، انتقلت إلى إدراجهم ووجدت اثنين: Northpole-IT-KV و Northpole-SSH-certs-kv.
حان الوقت لتبديل واجهات برمجة التطبيقات. حتى الآن كنت أقوم بإجراء مكالمات إلى نقاط النهاية Management.azure.com ولكن بعض أجزاء Azure Key Vault قيد التشغيل vault.azure.net ويتطلب هذا المورد رمز الوصول الخاص به. مرة أخرى استخدمت بلدي الهوية المدارة للحصول على رمز الوصول ولكن هذه المرة تحويل المورد إلى vault.azure.net.
In Northpole-IT-KV، I وجدت اسم سرا. باستخدام هذا الاسم، I طلبت قيمة هذا السر، والذي تبين أنه برنامج PowerShell النصي لـ إنشاء مستخدم Active Directory تسمى قزم. والأهم من ذلك، أنني حصلت الآن على جميع المعلومات اللازمة للاستفادة من مجموعة أدوات Impacket.
باستخدام GetADUsers.py كشف عن مستخدم آخر في المجال قد يكون محل اهتمام: com.wombleycube. لقد تمكنت أيضًا من الاتصال عبر SMB بخادم Active Directory باستخدام smbclient.py. تحتوي حصة الملف ذات الاهتمام على أ super_secret_research الدليل ولكن لم أتمكن من قراءته باسم قزم.
ولحسن الحظ، تمكنت من الوصول إلى أداة أخرى: سيرتيبي. يتم استخدام هذا للعثور على قوالب الشهادات التي تم تكوينها بشكل خاطئ لخدمات شهادات Active Directory وإساءة استخدامها. أدرجت الأداة قالبًا واحدًا ضعيفًا نظرًا لأنها تسمح لطالب الشهادة بتقديم نموذج تعسفي اسم بديل للموضوع والشهادة الصادرة التي تمنح العميل المصادقة على الاسم المقدم.
بعد طلب الشهادة مع com.wombleycube تم إدراجه في حقل الاسم البديل للموضوع، واستخدمت أيضًا Certipy للحصول على تجزئة NT لـ com.wombleycube باستخدام تلك الشهادة. ثم، عن طريق تمرير تجزئة Wombley إلى smbclient.py، لقد تمكنت من الاتصال عبر SMB بخادم Active Directory كـ com.wombleycube والوصول إلى super_secret_research الدليل الذي يحتوي على تعليمات التحدي التالي في تعليمات لإدخال القمر الصناعيGroundStation.txt.
مكبر صوت للوصول إلى باب جزيرة الفضاء
للوصول إلى التحديات في النظام الفضائي قطعة الأرض، كان مطلوبًا استخدام LLM لإنشاء صوت مزيف لـ Wombley Cube يتحدث عبارة المرور. نظرًا لوجود ملف صوتي لـ Wombley يحكي قصة وعبارة المرور، كان استخدامه تافهًا لوفو AI لإنشاء صوت يحاكي صوت Wombley لنطق عبارة المرور والمصادقة بنجاح.
بدون ضمانات إضافية، تواجه المصادقة الصوتية تحديات خطيرة كآلية أمنية في عصر ماجستير إدارة الأعمال.
الوصول إلى الكاميرا
بعد أن نطقت عبارة المرور، استقلت قطارًا نقلني بعيدًا إلى الجزء الأرضي المسؤول عن التواصل مع أحد الأشخاص داخل اللعبة. كيوبسات، وهو نوع من الأقمار الصناعية الصغيرة. في المحطة الأرضية حصلنا على Wireguard التكوين لإعداد اتصال مشفر لهذا CubeSat.
البرنامج الموجود على هذا القمر الصناعي متوافق مع إطار عمل NanoSat MO (NMF)، وهو إطار برمجي طورته وكالة الفضاء الأوروبية لصالح CubeSats. يأتي هذا الإطار مع SDK لتطوير واختبار التطبيقات الفضائية. كما أنها توفر أداة اختبار المستهلك (CTT)، كتطبيق أرضي وكأداة لسطر الأوامر، للاتصال بالمشرف الموجود على متن الطائرة، وهو منسق البرامج الذي يعتني ببدء تشغيل التطبيقات الفضائية وإيقافها بالإضافة إلى تنسيق المهام الأخرى.
كان التحدي يكمن في معرفة كيفية توجيه تطبيق الكاميرا الموجود على اللوحة لالتقاط صورة، ثم استرداد اللقطة. لقد اتخذت الخطوات التالية.
بعد تشغيل واجهة CTT، قمت بإدخال URI الخاص بالمشرف للاتصال بالمشرف. ثم قمت بالتحقق من التطبيقات المتاحة، ووجدت تطبيق الكاميرا، وبدأت تشغيله. أعاد تطبيق الكاميرا عنوان URI الخاص به، والذي استخدمته للاتصال به. بعد ذلك، قمت بتنفيذ الإجراء Base64SnapImage، الذي أمر الكاميرا الموجودة على اللوحة بالتقاط صورة.
يقدم تطبيق الكاميرا أيضًا خدمة معلمات يمكنها إرجاع قيمتين: عدد اللقطات التي تم التقاطها ولقطة JPG المشفرة في base64. ومع ذلك، لا يبدو أن واجهة CTT توفر طريقة لعرض الصورة أو نسخ قيم المعلمات مباشرة من الواجهة، على الرغم من أنني تمكنت من رؤية القيمة المطلوبة كانت موجودة. لذلك كنت بحاجة إلى طريقة ملتوية للحصول على الصورة.
لقد اكتشفت أن واجهة CTT بها تمكين الجيل الزر الذي يقوم بتشغيل النشر المجدول بانتظام لقيمة المعلمة. من سطر أوامر CTT، يمكنني بعد ذلك الاشتراك في المعلمة المطلوبة، واستلام القيمة عند نشرها، وإعادة توجيهها إلى ملف.
نظرًا لأنني كنت أقوم بتشغيل CTT في حاوية Docker، قمت بنسخ الملف إلى نظام المضيف الخاص بي باستخدام عامل الإرساء cp، أزل الملف من محتوى الملف، ثم قام Base64 بفك تشفير الصورة لعرض العلامة: قهر موسم العطلات!.
تحويل الصواريخ
وكان التحدي الأخير هو استخدام نظام استهداف الصواريخ تطبيق على CubeSat داخل اللعبة لإعادة توجيه صاروخ من الأرض إلى الشمس. قدم هذا التطبيق إجراء واحد فقط: تصحيح. يبدو أن تشغيله لا يفعل الكثير باستثناء طباعة SQL VERSION الأمر ومخرجاته كما لو تم تشغيلها بواسطة قاعدة بيانات يستخدمها التطبيق:
الإصدار (): 11.2.2-MariaDB-1:11.2.2+maria~ubu2204
تساءلت على الفور عما إذا كانت هناك ثغرة أمنية في حقن SQL. توفر واجهة CTT حقلاً لإدخال وسيطة لـ تصحيح الإجراء، لذلك حاولت إدخال أمر آخر:
; عرض المنح لـ CURRENT_USER();
المنح الخاصة بـ targeter@%: منح الاستخدام على *.* إلى `targeter`@`%` تم تحديده بواسطة كلمة المرور '*41E2CFE844C8F1F375D5704992440920F11A11BA' |
منح targeter@%: GRANT SELECT، INSERT ON `missile_targeting_system`.`satellite_query` TO `targeter`@`%` |
المنح لـ targeter@%: منح الاختيار على `missile_targeting_system`.`pointing_mode` إلى `targeter`@`%` |
منح targeter@%: منح الاختيار على `missile_targeting_system`.`messaging` إلى `targeter`@`%` |
المنح الخاصة بـ targeter@%: منح الاختيار على `missile_targeting_system`.`target_coerates` إلى `targeter`@`%` |
منح targeter@%: منح التحديد على `missile_targeting_system`.`pointing_mode_to_str` TO `targeter`@`%` |
حسنًا، حان الوقت لنهب قاعدة البيانات! ال pointing_mode و pointing_mode_to_str الجداول الموضحة للمكان الذي يتجه إليه الصاروخ حاليا:
; اختر * من pointing_mode؛
المعرف: 1 | الوضع الرقمي: 0 |
; حدد * من pointing_mode_to_str؛
المعرف: 1 | الوضع الرقمي: 0 | str_mode: وضع نقطة الأرض | str_desc: عندما تكون قيمة pointing_mode 0، يقوم نظام الاستهداف بتطبيق إحداثيات الهدف على الأرض. |
المعرف: 2 | الوضع الرقمي: 1 | str_mode: وضع نقطة الشمس | str_desc: عندما تكون قيمة pointing_mode 1، يتم استهداف نقاط النظام عند الشمس، مع تجاهل الإحداثيات. |
من هذه المعلومات أدركت أنني بحاجة إلى تغيير numerical_mode القيمة في pointing_mode الجدول ل 1ولكن لم يكن لدي الإذن لتحديث هذا الجدول.
لقد حصلت على إذن لإدراج صفوف جديدة في ملف Satellite_query الجدول، والذي يحتوي حاليًا على صف واحد بقيمة غير معروفة حتى الآن في ملف موضوع العمود والكود المصدر لفئة Java يسمى الأداة المساعدة لـ SatelliteQueryFileFolder في ال النتائج العمود.
حتى هذه اللحظة كان الإخراج من تصحيح كان من السهل عرض الإجراء في الجزء الموجود أسفل الصفحة خدمة مشغل التطبيقات علامة التبويب المقدمة من المشرف في واجهة CTT. ومع ذلك، لا يبدو أن قيمة الكائن يتم عرضها بشكل صحيح في الجزء. من الناحية المثالية، سيكون من الجيد رؤية التفريغ السداسي للكائن، والذي يمكن الحصول عليه بمساعدة يريشارك أو باستخدام SQL HEX وظيفة. كشف هذا أنني كنت أتعامل مع كائن Java متسلسل.
بعد القراءة باستخدام بروتوكول تسلسل كائنات Java، تمكنت من فك تشفير البايتات السداسية:
بايت سداسي عشري |
الرمز / المعنى |
ملاحظة (قيم ASCII للبايتات السداسية بخط أحادي المسافة) |
ACED |
STREAM_MAGIC |
رقم سحري. |
0005 |
STREAM_VERSION |
إصدار بروتوكول الدفق هو 2. |
73 |
TC_OBJECT |
بداية الكائن. |
72 |
TC_CLASSDESC |
بداية تعريف الطبقة. |
001F |
الطول |
يبلغ طول اسم الفئة 31 بايت. |
536174656C6C697465517 |
القيم |
اسم الفصل هو الأداة المساعدة لـ SatelliteQueryFileFolder. |
12D4F68D0EB392CB |
الإصدار التسلسلي |
معرف فريد مرتبط بهذه الفئة المتسلسلة. |
02 |
SC_SERIALIZABLE |
الفصل قابل للتسلسل. |
0003 |
المجال |
يحتوي الفصل على ثلاثة حقول. |
5A |
نوع البيانات – قيمة ASCII Z |
الحقل الأول هو منطقي. |
0007 |
الطول |
يبلغ طول اسم هذا الحقل 7 بايت. |
69735175657279 |
الاسم |
اسم هذا المجال هو isQuery. |
5A |
نوع البيانات – قيمة ASCII Z |
الحقل الثاني هو منطقي. |
0008 |
الطول |
يبلغ طول اسم هذا الحقل 8 بايت. |
6973557064617465 |
الاسم |
اسم هذا المجال هو isUpdate. |
4C |
نوع البيانات – قيمة ASCII L |
الحقل الثالث هو كائن. |
000F |
الطول |
يبلغ طول اسم هذا الحقل 15 بايت. |
706174684F72537 |
الاسم |
اسم هذا المجال هو pathOrStatement . |
74 |
TC_STRING |
يتم إعطاء نوع فئة هذا الكائن في سلسلة. |
0012 |
الطول |
يبلغ طول هذه السلسلة 18 بايت. |
4C6A6176612F6C616E |
القيم |
نوع فئة هذا الكائن هو جافا/لانج/سلسلة. |
78 |
TC_ENDBLOCKDATA |
نهاية تعريف الطبقة. |
70 |
TC_NULL |
لم يتم تحديد الطبقة الفائقة. |
00 |
القيم |
الحقل المنطقي isQuery لديه القيمة زائف. |
00 |
القيم |
الحقل المنطقي isUpdate لديه القيمة زائف. |
74 |
TC_STRING |
قيمة pathOrStatement الحقل عبارة عن سلسلة. |
0029 |
الطول |
قيمة pathOrStatement يبلغ طول الحقل 41 بايت. |
2F6F70742F536174656C6 |
القيم |
قيمة pathOrStatement الميدان هو /opt/SatelliteQueryFileFolderUtility.java |
أدى الحصول على هذا الكائن عبر Wireshark إلى إرجاع رقم سحري غير صحيح و الإصدار التسلسلي، ولكن ليس عند استخدام وظيفة HEX.
لفهم ما INSERT في Satellite_query الجدول سيفي بالغرض، فقد قمت بإدراج هذا الكائن في صف جديد من الجدول واستلمت مرة أخرى نفس كود مصدر Java في ملف النتائج عمود. في الواقع، يتوافق هذا السلوك مع ما رأيته في هذا الكود باسم الحصول على النتائج وظيفة أ الأداة المساعدة لـ SatelliteQueryFileFolder موضوع.
تأخذ هذه الوظيفة مسار تنفيذ مختلفًا اعتمادًا على قيم الحقول الثلاثة للكائن: isQuery, isUpdateو pathOrStatement. اذا انااستعلام و isUpdate كاذبة، ثم تقوم الدالة بالتحقق مما إذا كان pathOrStatement هو المسار والدليل. إذا كان الأمر كذلك، فإنه يقوم بإرجاع قائمة الملفات الموجودة في الدليل؛ وإلا فإنه يفترض أنه تم توفير ملف ويحاول إرجاع محتويات هذا الملف.
من ناحية أخرى، إذا كانت قيمة isQuery وisUpdate صحيحة، فستقوم الوظيفة بتنفيذ محتوى pathOrStatement باعتباره SQL قم إفادة. ما كان علي تنفيذه هو ما يلي:
تحديث pointing_mode SET numerical_mode = 1؛
لقد قمت بتغيير البايتات الضرورية (الموضحة أدناه) في الكائن المتسلسل، وقمت بإدخال الأمر الفائز:
; أدخل في استعلام القمر الصناعي
(هدف)
القيم
(0xACED00057372001F536174656C6C697465517565727946696C65466F6C6465725574696C69747912D4F68D0EB392CB0200035A0007697351756572795A000869735570646174654C000F706174684F7253746174656D656E747400124C6A6176612F6C616E672F537472696E673B7870010174002C55504441544520706F696E74696E675F6D6F646520534554206E756D65726963616C5F6D6F6465203D20313B)
ختامية
هذه ليست سوى بعض المجالات التي يغطيها تحدي SANS Holiday Hack لعام 2023؛ كان هناك العديد من الآخرين الذين نظروا إلى أمن رموز الويب JSON، تكسير كلمات المرور مع hashcatوالتكسير الافتراضي لأقفال الأمتعة و أقفال تركيبة دوارة, حقن بايثون نان، وذلك باستخدام لغة الاستعلام كوستو For الصيد بالتهديد، تدقيق سجلات DKIM وSPF للمساعدة في التعرف على رسائل البريد الإلكتروني الضارة والألعاب الصغيرة القابلة للاختراق.
بشكل عام، أنا متأكد من أن هذه المجموعة الواسعة من التحديات الممتعة لا يمكن إلا أن تكون مفيدة لأي شخص يحاول مواجهتها. وبينما أتطلع بالفعل إلى تحدي العام المقبل، فإنني أتقدم بالشكر الجزيل لمنظمي تحدي SANS Holiday Hack على وضع تحدي هذا العام.
يمكنك قراءة أبرز ما لدي من تحدي 2022 على تصدع ذلك! يسلط الضوء على KringleCon 5: الحلقات الذهبية.
- محتوى مدعوم من تحسين محركات البحث وتوزيع العلاقات العامة. تضخيم اليوم.
- PlatoData.Network Vertical Generative Ai. تمكين نفسك. الوصول هنا.
- أفلاطونايستريم. ذكاء Web3. تضخيم المعرفة. الوصول هنا.
- أفلاطون كربون، كلينتك ، الطاقة، بيئة، شمسي، إدارة المخلفات. الوصول هنا.
- أفلاطون هيلث. التكنولوجيا الحيوية وذكاء التجارب السريرية. الوصول هنا.
- المصدر https://www.welivesecurity.com/en/cybersecurity/cracking-2023-sans-holiday-hack-challenge/