يعقوب الحربي
يعقوب الحربي

@az7rb

25 تغريدة 326 قراءة Dec 09, 2021
السلام عليكم
بتكلم عن الجافا سكربت وملفاتها واهميتها لمختبر أختراق تطبيقات الويب، وأمور أخرى أقروها بالملخص أسفل هذي التغريدة.
#برمجة #الامن_السيبراني
#BugBounty #javascript
ملخص
1. مقدمة
2. ليش كمختبر أختراق تتعلم اساسيات الجافا سكربت كأقل تقدير
3. كيف نستخرج ملفات جافا سكربت مخفيه بالسورس كود (بدون ادوات)
4. ثغرات ممكن تلاقيها بملفات الجافا سكربت.
5. مصادر بتفيدك.
بالبداية إذا كنت مهتم بثغرات الويب ومتعلم من دورة تصبح مختبر اختراق من 0 الى الاحتراف بأسبوع وعندك قناعه مُسبقه من مقدم الدورة ماتتعلم ولا لغة برمجة أنصحك ماتكمل الموضوع عشان لاتعور راسي ولا اعور راسك.
موضوعي موجه للانسان الى وده يطور من مستواه، ولـ الشخص الى أختبرته وطلبته يستخرج لي ملفات جافا سكربت مخفيه بدون ادوات وعجز عنها.
اللحين ندخل بالمقدمة لغة الجافا سكربت مبني عليها الكثيير من المواقع لانها لغة تفاعليه مع المتصفح سوا كان الموقع تفاعلي مع المستخدم أو صفحات غير تفاعليه، تقدر تبني منها موقع من الـ 0 أو تدمجها مع لغات ثانية وتبني مايسمى واجهة مستخدم"UI" أو واجهة برمجة التطبيقات "API" يتبع..
لغة الجافا سكربت عندها أستعداد ترتبط مع إي لغة برمجة تدعم أنشاء المواقع والتطبيقات وأعز أصحابها html بتلاحظ أكواد الجافا سكربت بالسورس كود لصفحات html وأنت تفحص المواقع.
أما بخصوص ليش نتعلم أساسيات الجافا سكربت أقل شئ، بعطيكم مثال شاطح شوي، قدامك مفتاح سياره ماعمرك شفت أحد يسوقها بحياتك ولها رخصه مو اي احد ياخذها، السؤال تقدر تسوق السياره لو ماتعرف كيف تشغلها وتعرف دواسه البنزين من الفرامل والبريك واذا كان لها طريق تشغيل الخ؟! لا أكيد طبعاً....
قيس على ذلك مواقع الانترنت، مستحيل يتطور مستواك باختبار الاختراق إذا ما احتكيت باللغات الى مبني عليها الموقع، وأكثرهم شيوعاً الجافا سكربت وتعلم اساسياتها أقل حاجه، اقلها تعرف تقرا السورس كود حق أول صفحة بالموقع.
ياخي لاتصير محترف أقل شئ أوصل لمرحلة أنك تشوف السورس قدامك تعرف المبرمج وش يهذري فيه.
بعد الى كتبته هذا كله وما أقتنعت تبدأ بدورة تعلمك؟ برفق لك بالمصادر ثريد لـ شخص أنا اعتبره قدوتي وأستاذي بالمجال، يتكلم عن البرمجة من واقع خبرته الى أمتدت 10 سنوات بمجال اختبار الاخترق.
كل الى كتبته فوق لـ سبب واحد، للامانه كنت أفحص موقع وهذي صوره لـ السورس كود حق الصفحة الرئيسية، من النظرة الاولى عرفنا أن قدامنا ملفين جافا سكربت فقط، بس بما إني أفهم السورس كود لو قريته بجرب أعيد ترتيب اكواد الجافا سكربت بشوف وش يطلع معي
طبعاً مو كل الاكود تهمني تركيزي على الجافا سكربت لذلك راح ننسخ الكود من <script> الى </script>
وراح أستعين بموقع : beautifier.io يرتبها لي بدل الصداع الى صاير
بعد مارتبت الكود أكتشفت إن المبرمج مسوي فنكشن بالجافا سكربت وبدايته محدد مسار ( static/js/ ) ونهايته محدد أندبوينت لملف جافا سكربت ( .chunk.js ) مثل ماحددت لكم بالصورتين وداخل الفنكشن حاط عدد من 0 لـ 55 وبعد العدد حاط تشفير بسميه xxxxxxx
تذكرون مسار الملفين الى لقيناها ؟ أكيد إي شخص يعرف يقرا السورس كود ويفهمه صار يفكر نفس تفكيري نشوف صوره الملفين الى أقصدها عشان توضح الفكرة.
ركزت على ملف ( 14.b69bee77.chunk.js ) معادلة تسميه هذا الملف عدد 14 تشفير b69bee77 وراها chunk يقفلها بـ js، ولو بنرجع لـ الفنكشن مابنلاقيه أصلا ونلاحظ المبرمج نقز من 13 لـ 15 عدد أرجعو لصوره حقت الفنكشن تاكدو :D
بعد مافهمت المعادله سويت لسته للملفات الى بالفنكشن بس سالفه إني أتاكد منها موجوده ولالا بشكل يدوي لا هذي 50 ملف وأسرع شئ أسويه أستخدمت ffuf طلبتها تستعلم من اللسته عن الملفات الى طلعناها من السورس كود، وهذي صورة لـ النتيجة وكلها موجوده طالعه 200 وحجم الملف الخ
على جنب : المحزن عطيت رابط السورس كود لواحد من أصحابي فاهم بالمجال بس صفر بالجافا سكربت وعجز يطلع الملفات لدرجة قال لي مافي الا 6، الحبيب حسب معاها حتى json مفكرها ملف جافا سكربت حتى بعد ماعلمته كيف يرتب الكود ضاع وماعرف وش السالفه ، لذلك هالموضوع أهداء له بذات وبدون ذكر أسماء 😅
عشان اكود صادق معكم خبرتي بـ الجافا سكربت ماتتجاوز 5% بس تعلمت أساسياتها واستوعب مخي الاكواد والخرابيط والحمدلله صرت أقرا بعض اكواد الفنكشن وقدرت أميز الاندبوينت والمسارات الخ، لذلك كل ماتطورت باللغة كل ماقدرت تكتشف أشياء وبلاوي ... يتبع
وحط ببالك أحلى ثغرة من الجافا سكربت تقدر تجيبها هي المعلومات الحساسه او كما تسمى حالياً بثغرة Cryptographic Failures سابقاً كان أسمها Sensitive Data Exposure ترتيبها الثالث بعام 2018 والسنه هذي صارت الثانية بسنة 2021 على مستوى ثغرات owasp Top 10
مثلا كـ api key secret لخدمة طرف ثالث مدفوعه او شئ مهم وهذا غالباً يغفل المبرمج ويسدحه لك بملف جافا سكربت، وبالمصادر بعطيكم لسته أختبار لـ أكثر 15 api key تقدر وقتها تحدد حساس ولا مو حساس 😉
ثغرات لها ارتباط بالجافا سكربت
A1-Injection
A2-Broken Authentication and Session Management
A3-Cross-Site Scripting (XSS)
A4-Insecure Direct Object Reference
A5-Security Misconfiguration
A6-Sensitive Data Exposure
A7-Missing Functional Level Access Control
A8-Cross-Site Request Forgery (CSRF)
A9-Using Components with Known Vulnerabilities
A10-Unvalidated Redirects and Forwards
ملاحظة : غالباً لو تعلمت تكتشف الانواع الى فوق بدون ماتعرف جافا سكربت يمكن تمشي فيها وتلاقي وتستغل السهل منها بس بتواجه مشاكل بكتابة الاستغلال بذات لو كانت من المستويات المتقدمة من هالثغرات من قل خبرة باللغة الخ ..يتبع
بس ثغرة المعلومات الحساسه أسهل شئ من وجهة نظري وبخبره بسيطه جدا بالجافا سكربت تقدر تكتشفها وتبدع فيها مع الممارسه وطريقه فحصك عنها.
وبالنهاية أعتذر من كل قلبي عن الاطاله، بس الشئ بالشئ يذكر، كنت بشرح لكم كيف لقيت الملفات ونقفل على الموضوع، بس قلت فرصه أنبهكم على أهمية الجافا سكربت للمهتمين بالويب أمثالي😀

جاري تحميل الاقتراحات...