0:00 توجد واجهات برمجة التطبيقات في كل مكان، وإذا كنت لا تعرف كيفية التعامل مع واجهة برمجة التطبيقات والعثور على نقاط الضعف، فأنت بالتأكيد تفوت الكثير من الأخطاء، سواء كنت صائد مكافآت الأخطاء أو مختبر اختراق أو مجرد متحمس لأمن الويب، قبل أن ننتقل إلى الفيديو، سأقوم بسرعة بعمل إعلان وقح، فقد طلب الكثير منكم تحديثًا لدورة UDMI، فهي موجودة هنا، إذا كان لديك وصول إلى UDMI بالفعل، فهي موجودة، يمكنك الحصول عليها مجانًا، إنها جزء مما اشتريته في الماضي، إذا لم يكن لديك وصول، فأنت تريد الحصول عليها، يوجد الكثير من المحتوى الجديد على جانب عميل XSS CSP وVones وCSRF، كما يمكنك تسميته، وسيتم تحديثه أيضًا ثلاث مرات أخرى في الأشهر الستة المقبلة، كل ما عليك فعله هو النقر فوق الرابط الموجود في الوصف أو تعليقات الدبوس والحصول عليه بنصف السعر اعتبارًا من اليوم، حسنًا، دعنا ننتقل إلى الفيديو، حسنًا، في هذا الفيديو، أريد التحدث عن بعض نقاط الضعف المفضلة لدي التي أبحث عنها
0:45 بالنسبة لواجهة برمجة التطبيقات، كيف تبحث عنه وكيف تتعامل معه ولماذا هذه هي التي أستخدمها بدءًا من أفضل 10 نقاط ضعف عامة في OAS لأنني أريد أن أوضح هذا الأمر ولكن أفضل 10 نقاط ضعف عامة هي نقاط الضعف مثل XSS وIDORs التي تريد البحث عنها في SSRF وأي قدرات قد تجدها في تطبيق تقليدي، كما تريد البحث عنها في واجهة برمجة التطبيقات لأن واجهة برمجة التطبيقات هي الواجهة الخلفية لهذا النظام، لذا فإن أي نقاط ضعف مغطاة في أفضل 10 نقاط ضعف في OAS أو أي إصدار من أفضل 10 نقاط ضعف في OAS، فهي قابلة للتطبيق أيضًا على واجهة برمجة التطبيقات. لا أريد تغطية هذا لأنني أشعر أن هناك الكثير من المحتوى حول البحث عن خوادم الويب التقليدية هذه على واجهة برمجة التطبيقات، لذلك أريد أن أتبع نهجًا أعمق لاختراق واجهة برمجة التطبيقات وأن أوضح لك ما هي
1:31 الثغرة التي أبحث عنها، لذلك أردت أن أوضح ذلك ولكن الآن دعنا نتحدث عن نقاط الضعف الإضافية بدءًا من النظر في نقاط ضعف المصادقة لأن المصادقة هي شيء أعتقد أنه يخيف الكثير من المتسللين عندما يتعلق الأمر بالبحث عن الثغرات الأمنية، وأعني بذلك أن المتسللين يجدون في كثير من الأحيان واجهة برمجة تطبيقات لا يمكنهم المصادقة عليها، ربما تتطلب بعض بيانات الاعتماد، والكثير من الأشخاص لا يبحثون عنها بالفعل، وهناك الكثير من الطرق التي يمكنك من خلالها القيام بذلك، والنهج الواضح للبحث عن بيانات الاعتماد لواجهة برمجة التطبيقات هو ببساطة الذهاب إلى GitHub عن طريق وضع عنوان URL لهذا الموقع أو واجهة برمجة التطبيقات المحددة في البحث والبحث ومعرفة ما إذا كان قد تم تسريب أي شيء، ولكن هذا يعمل فقط إذا تم ذكر هذا المجال أو المجال الفرعي المحدد في مستودع، وإذا كان الأمر كذلك، فيمكنك البحث عن هذه المفاتيح وسحبها
2:16 واستخدامها، ولكن أيضًا الشيء الآخر الذي يمكنك القيام به هو النظر في أسماء الرؤوس المحددة أو قيمة ملف تعريف الارتباط، لذلك إذا كانت قيمة ملف تعريف الارتباط تحتوي على شيء فريد جدًا لهذا التطبيق أو لهذا الموقع أو لهذه الشركة، فأنت تريد أيضًا البحث عن ذلك ومعرفة ما إذا كان لا يمكنك العثور على أي شيء، لكنني أشعر أن GitHub هو الأسهل في التنظيف، والعديد من الشركات أكثر على دراية بتسريب بيانات الاعتماد على GitHub ويبحث عنها الكثير من المتسللين ولكن أعتقد أن هناك شيئًا لم يتم تغطيته بالكامل بعد وهو Postman في الواقع يمكنك الذهاب إلى Postman واستخدام شيء مثل porsch pirate أعتقد أن هذا هو اسم الأداة إنها أداة مذهلة أنها موجودة في مجموعة الأدوات الخاصة بي التي أستخدمها ولكن يمكنك فقط كتابة اسم شركة وربطه بهذا الأصل المحدد ولكن هذا أيضًا صاخب جدًا لذا عليك القيام بالكثير من العمل اليدوي أو مجرد الحصول على بعض البرامج النصية أو الغلافات حول هذه الأداة التي ستنظفها وتمنحك نتائج أفضل ولكن Postman مكان جيد حقًا لأنه في كثير من الأحيان يقوم الأشخاص بإلقاء مواصفات واجهة برمجة التطبيقات الخاصة بهم في ملف ثم
3:03 ينشرونها على post man.com وينسون أن مفاتيحهم ربما تكون مبرمجة بشكل ثابت لقد منحني هذا بعض المكافآت الرائعة حقًا وحتى لو لم أحصل على أي مكافآت فإنه يمنحني إمكانية الوصول إلى الكثير من الأصول الرائعة التي لعبت بها وقد ولدت لي عملاء محتملين لذا ضع ذلك في الاعتبار هناك طريقة واحدة يمكنك من خلالها إلقاء نظرة على Postman GitHub والدوران السابق على Google وإجراء بعض عمليات البحث على Google ولكن تذكر دائمًا أنه توجد دائمًا طريقة للدخول إلى هذه التطبيقات سواء كانت التسجيل الذاتي أو البحث عن بيانات الاعتماد، لذلك إذا رأيت شيئًا يتطلب منك المصادقة فلا تخف، ابحث عن طريقة للحصول على المصادقة، والطريقة الثانية هي نوع من المساعدة ومع هذا النوع المحدد من الثغرات الأمنية، يتم استخدام رؤوس مثل X المعاد توجيهها لتجاوز المصادقة لأنه في بعض الأحيان تقوم الكثير من هذه التطبيقات بإدراج عناوين IP محددة في القائمة البيضاء أو السماح بها، سواء كان ذلك مضيفًا محليًا أو ما إذا كان
3:48 نطاق VPN الذي تستخدمه هذه الشركة، لذلك إذا تمكنت من إيجاد طريقة لمعرفة نطاق IP الذي يستخدمونه أو يمكنك استخدام القوة الغاشمة لذلك أو ربما وضع المضيف المحلي هناك، فسيؤدي ذلك إلى تجاوز آلية المصادقة الأولى، ثم عليك محاربة أي شيء وراء طريقة المصادقة المحددة هذه، لذا فإن أحد الأمثلة التي لدي مؤخرًا في Discord الخاص بي هو أن بعض المتسللين الذين أعمل معهم وجدوا هذا الأصل في برنامج مكافأة الأخطاء ولم يتم مصادقتي بطريقة ما وضع شخص ما علامة X مُعاد توجيهها للرأس هناك، وقد ظهرت رسالة خطأ مختلفة عن تلك التي رأيناها سابقًا، ومن خلال رؤية السلوك المختلف في التطبيق بناءً على هذه هيذر المحددة، تمكنا من تسجيل الدخول وإدخال هذا التطبيق في FFF ثم العثور على نقاط نهاية إضافية كانت عرضة للخطر، لذا فهذا مثال واحد على ما يمكنك القيام به، ربما
4:34 لا يتمثل نهجك في الحصول على المصادقة في العثور على بيانات الاعتماد أو التسجيل والحصول على ملف تعريف ارتباط فعلي، ولكن يمكنك العثور على رؤوس أخرى بما في ذلك x44 وكل شيء آخر مشابه له، والذي سيتم إدراجه أدناه والذي يمكنك استخدامه لتجاوز المصادقة، لقد اعتنينا بالمصادقة حتى الآن، والآن نحتاج إلى التحدث عن التفويض، هناك فرق بين الاثنين، المصادقة هي كيفية تسجيل الدخول، وكيف تتجاوز تسجيل الدخول على هذا التطبيق مقابل التفويض بالنسبة لي، يتم تفويضك لاستخدام مورد معين بتفويض، هناك نوعان مختلفان من الثغرات الأمنية يأتيان في النوع الأول، وهو مجرد البحث عن منصات onof، مما يعني منصات غير مصادق عليها يمكنك الوصول إليها وقد تحتوي على معلومات العصير وتتطلب الحصول على تفويض أو لديك نوع من الوصول إلى الرافعة المالية
5:21 لتكون قادرًا على الوصول إلى ذلك، على سبيل المثال، فكر في نقطة نهاية قد تكون قائمة بالمستخدمين الذين من المفترض أن يكون لهذا التطبيق حق الوصول إليهم، ولكن بطريقة ما أو بمجرد الانتقال مباشرةً إلى تلك القائمة، يمكنك الحصول على قائمة بهذا المستخدم لهذا التطبيق الذي تريد إلقاء نظرة عليه لأن الفرق بين الإبلاغ عن هذه الثغرة الأمنية كإفصاح عن معلومات مرحبًا، فهو يسرب قائمة بالمستخدمين مقابل إفصاح عن معلومات مرحبًا، فهو يسرب قائمة المستخدمين إلى مستخدم واحد، فهذان الاثنان لهما مستويات خطورة مختلفة، ومن الواضح أنك تريد التأكد من البحث عنهما، لذلك في أي وقت تجد فيه ثغرة أمنية أو تجد نقطة نهاية مثيرة للاهتمام، لا يجب أن يكون طلب الحصول عليها، فقد يكون في الواقع منشورًا، يمكنك فقط إزالة ملف تعريف الارتباط أو يمكنك إزالة رمز o الخاص بك أو رمز البيرة، أيًا كان ما تصرح به لنفسك داخل التطبيق ومعرفة ما إذا كان يمكنك الوصول إلى تلك النقطة الداخلية بدون
6:08 رأس التفويض، لقد كان هذا مكانًا جيدًا بالنسبة لي لمضاعفة مكافآتي أو تصعيد مكافآتي بالفعل، لذا ضع ذلك في الاعتبار، ولكن هناك أيضًا نهج آخر لـ التفويض الطبقة الثانية من التفويض لا تنطبق على الكثير من واجهات برمجة التطبيقات ولكن الشيء المفضل لدي للقيام به مع ثغرات التفويض هو اختبار تصعيد الامتيازات مع مستخدمين مختلفين لذا فإن هذا يشبه إلى حد ما الأخير ولكنه يتطلب وجود أنواع مختلفة من المستخدمين لذا على سبيل المثال فكر في هذا كبرنامج موارد بشرية يسمح لك برنامج الموارد البشرية أو التطبيق هذا بالحصول على عضو ومدير وربما بعض مديري الموارد البشرية على سبيل المثال تريد أن تكون قادرًا على اختبار كل وظيفة واحدة داخل كل من مستويات المستخدم المختلفة هذه ومعرفة أي منها يمكنك الوصول إليه وأي منها يمكنك استخدامه وأي منها لا يمكنك استخدامه في كثير من
6:53 الأحيان أشعر أن الكثير من المؤسسات تقدم وظائف جديدة في هذه التطبيقات وينسون تمامًا البحث عن عناصر التحكم في الوصول المختلفة أو مستويات الوصول المختلفة التي يمتلكها هؤلاء المستخدمون في الواقع ألقى رئيس الملائكة دوغلاس داي محاضرة جيدة حقًا من هامكون العام الماضي والتي قدمها حول هذا سأربطها أدناه ألق نظرة عليها ولكن النهج في هذا هو أن تقوم بعمل قائمة بجميع الوظائف المختلفة بدءًا من المسؤول وأعلى مستوى وصول لديك ثم تنظر إلى الوثائق المختلفة وتضع علامة أي منها من المفترض أن يكون لديه حق الوصول إلى ماذا على سبيل المثال إذا كان لديك شيء مثل إرسال مصروف تريد التأكد من أنك تعرف أن المسؤول يمكنه إرسال مصروف ويمكن للمستخدم إهانة المدير حتى تنطبق هذه على ثلاثة مستخدمين ولكن ربما الوظيفة المختلفة التي لا يُقصد أن تكون لجميع الثلاثة هي إضافة مستخدم إلى المؤسسة ربما يكون المسؤول هو الوحيد الذي يمكنه القيام بذلك وليس المدير وليس المستخدمين المختلفين لديك ولكنك
7:39 تريد اختبار هذه الوظيفة مع الامتيازين الآخرين من المستوى الأدنى لذا فهذا مكان جيد حقًا إنه يدوي للغاية ويشبه الكثير من العمل الذي يجب القيام به ولكن الكثير من الناس يتخطونه لأنه يتطلب الكثير من العمل ويستغرق الكثير من الوقت ولكن هذا هو السبب في أنك تجد أخطاء أفضل إذا قضيت الوقت في فهم التطبيق بالفعل وفهم منطق هذا التطبيق من أجل البحث عن الثغرات الأمنية وقد أبقيت الأفضل للأخير من خلال الاحتفاظ بـ XSS أو ربما ليس حتى XSS في حد ذاته ولكن بالنظر إلى نوع محتوى واجهات برمجة التطبيقات هذه للأخير لأن هذا أيضًا أحد أكثر أنواع الثغرات الأمنية التي يتم الاستخفاف بها يخطئ الكثير من الناس وذلك لأنه عندما تتفاعل مع واجهة برمجة التطبيقات، تتوقع في كثير من الأحيان أن تعيد واجهة برمجة التطبيقات قيمة بتنسيق Json وإذا لم تكن معتادًا على ذلك، فمن المفترض أن تقدم لك أي واجهة برمجة تطبيقات تعود نصًا من المفترض أن يكون بتنسيق Json وإذا كان لديك HTML داخل
8:24 نوع محتوى Json، فلن يتم عرض HTML هذا، ولكن ما لاحظته في كثير من الأحيان هو أن الشركات تفسد هذا الأمر بالفعل وتعيد HTML داخل تلك الاستجابة، ثم سيتم عرض HTML وإذا وضعت برمجة نصية متقاطعة هناك، فقد يؤدي ذلك إلى إثارة التحدي هنا هو إيجاد طريقة لدخول HTML الخاص بك في الاستجابة، وفي بعض الأحيان لا يمكنك القيام بذلك بسبب طبيعة التطبيق، ولكن هذا ما يجعله ممتعًا حقًا، لذا فإن أول شيء تريد القيام به هنا هو أنك تريد العثور على نقطة نهاية واجهة برمجة التطبيقات التي ترجع كنوع محتوى مضبوط على HTML، ثم تريد معرفة كيف يمكنني الحصول على مدخلاتي، سواء كان مساري، ربما يكون شيئًا أضعه في بيانات المنشور أو في طلب الحصول، كيف يمكنني جعل هذا المدخل ينعكس في الاستجابة أثناء تعيين نوع المحتوى على HTML تلك تصنع بعض التحديات الرائعة حقًا والكثير من التحديات الرائعة ثم تشويش نقطة النهاية هذه ومعرفة ما إذا كانت هناك أي
9:11 معلمات أو أي طريقة للحصول على خطأ سيعيد فقط ما قدمته في الاستجابة لقد كانوا رائعين حقًا لقد وجدت الكثير منهم في الماضي وما زالوا صالحين للغاية ولكن أشعر أن الكثير من المتسللين فاتتهم ذلك لأنه يجب عليك الانتباه إلى المحتوى t والكثير من الوقت لا ينظر إليه الناس في هذا السبب في أن الكثير من المتسللين المتميزين والكثير من المتسللين الأفضل عندما ينتبهون إلى التفاصيل الصغيرة ولكن هذا هو كل ما أعتقد أنني أريد تغطيته في هذه الحلقة هناك واحد آخر هناك مسار العبور إذا كنت تريد مشاهدة مقطع فيديو كامل عن مسار العبور أو Graphql في المرة القادمة أرسل لي تعليقًا ربما سأفعل أحدهما أو الآخر ربما أفعل كليهما يعتمد ذلك على عدد التعليقات التي نتلقاها لذا أرسل لي تعليقًا أخبرني أيهما تريد رؤيته بعد ذلك وإذا لم تكن قد فعلت ذلك بالفعل افعل لي معروفًا انقر فوق هذا إعجاب انقر فوق هذا اشتراك الزر وأصبح ذلك الصديق وسأراكم جميعًا في الفيديو القادم والسلام