َ
1.4K posts

َ đã retweet
َ đã retweet

كيف قدرت اكتشف ثغرة
🔴From JavaScript Analysis To UUID Pattern Exploration Revealed a Critical IDOR!
مسائكم الله بالخير, عدنا بعد انقطاع لفترة طويلة بس مثل مايقولون من طول الغيبات جاب الغنايم
اليوم عندنا بعض الطرق الممتعة الي استغليته مع بعض الى تحقيق ثغره ممتعة وخطيرة
بس قبل نبدا خل ناخذة فكرة بسيطة عن الموقع عبارة عن جهة حكومية تقدم خدمات للمستخدمين وتعتبر خدمات حساسة
طبعا حرصا على هوية الجهه عدلت على السناريو بعض الشيء
نسمي بالله ونبدا
من هنا نبدا بنفس هذا الموقع من خلال تحليلي لملفات الجافا سكربت قدرت اني اكتشف على بعض الثغرات بما ان الموقع مبني على "React" ف اغلب ال endpoints راح تكون موجودة لنا في ال Clinet Side
بعد ماكتشتف احد الثغرات بال JS Files حاولت اني اجمع ملفات جافا سكرت اخرى قدر الأمكان بعدة طرق بأستعمال الطرق الشائعة لكن للأسف ماكان فية أي نتيجة
معلومة بسيطة في حال انك فتحت اي موقع وشيكت على ال Dev tools وشفت ملفات الجافا سكربت الي قاعد يصير له load او تحميل بالمتفصح حقك
راح تشوف بعض النتائج ولكن هذي مو كل ملفات الجافا سكربت لأن قاعد يصير تحميل لملفات الجافا سكربت الي انت تحتاجه لذلك فية احتمالية كبيرة تكون فيه ملفات مو واضحة لك مثلا لل admin function او ملفات اخرى لكن ماقعد يصير له load بالمتصفح حقك
ولأني كنت متأكد انه فية ملفات اخرى مو واضحة لي
بدييت احاول استخرج ملفات الجافا سكربت قدر الأمكان
بعد ماحاولت اجيبهم بالطرق الشائعة ولا وحده منهم ضبطت
فكرت شوي ولاحظت ان اغلب ملفات الجافا سكربت تتبع نمط معين بتسمية الملفات والملفات تعبر عن طبيعة الخدمات بالموقع مثل
users.js
customer.js
static.js
الاغلب يعرف فكرة تخميين المسارات او بما يسمى ال Fuzzing
لكن عمرك فكرتك انك تسوي Fuzzing او تخمين على ملفات الجافا سكربت؟
فهذا الي سويته اول ماشفت نمط تسمية الملفات قلت بسس بديت اجمع اغلب او ال words او الكلمات المحتملة الي ممكن تكون ك js file حسب طبيعة الموقع جمعت كلمااات كثيرة والحين جاء الوقت اني اسوي wordlist من خلالهم
بالأستعانة مع اعز الأخوياء Chat GPT واداة تسمى RSMangler قدرت اني اسوي wordlist فيها انماط محتملة ان تكون بالموقع
بدييت بعملية التخميين ومثل مانلاحظ اني حصلت على ملف جافا سكربت جديد اسمه Report.js
فتحت الملف وبدييت احلله ومن خلال تحليلي له قدرت اني اكتشف endpoint متواجدة بال Client side ولكن كانت تسمح لي اعدل على احد الوثائق الحكومية الخاصة لي انا عبر احد ال API Request
الحيين انتهينا من اول جزء وهو javascript analyzing خل نروح للخطوة الي
# Breaking UUID To achieve IDOR!
ومن هنا تبدا المتعة (;
اول ماحدثت البيانات من خلال المسار الي جبته من ال jsfile والتقطت الطلب لاحظت كم شيء
نلاحظ انه قاعد يرسل request to the API وفية اكثر من براميترز لكن فيه براميترين الي شدو انتباهي RequestId الي بال path و ال "id" بال json body
طبعا هنا عرفت انه قاعد يعرف طلب المستخدم من خلال احد هذي البرايمترز مع انه عبارة عن UUID الا اني كنت ابي اتاكد اذا جبت UUID اخر هل اقدر اعدل وثائقة بمعنى هل فية Access cotnrol او لا ؟
فسويت حساب ثاني وجبت قيمة ال UUID له وجربت احدثه من خلال حسابي الأول وبالفعل قدرت اني احدثه وهنا تعبتر IDOR
لكن بما انه نحتاج ال UUID ماراح تنقبل بما ان (اغلب) ال UUIDS تكون غير قابلة للتخمين
بس ماوقفت هنا حاولت اني اعرف بنية ال UUID بما ان احيانا يكون فيه بعض ال Misconfiguration او الأخطاء بال UUIDs
سويت اكثر من وثيقة او طلب واستخرجت كل قيم ال UUIDs للطلبات المختلفة وهنا فرحت لأني شفت كل ال UUIDs تتبع pattren او نمط معين مثل:
f6b168b5-A805-ef11-A832-005056066af7
13a6d3c4-Ab05-ef11-A832-005056066af7
972a6aad-Ab05-ee11-A832-005056066af7
b542816d-Ab05-ef11-A832-005056066af7
مثل مانلاحظ ان كل ال UUIDs تتبع نفس النمط بأستثناء اول جزء وهو الي يكون متغير هنا ماصدقت قلت ممكن ان ال UUID يتبع نمط معين لانه من حسابي فالي سويته رحت لحسابي الثانية وسويت اكثر من طلب وبالفعل طلع ان ال UUID يتبع نمط معين لكل الحسابات!
والحين قادر اني احدث جميع الوثائق الحكومية لأي شخص بمجرد اني اجيب اول جزء من قيمة ال UUID!
وطبعا ماكان فية Rate limit لل API لذلك راح تكون العملية سهلة
والى هنا وصلنا للنهاية اتمنى ان شرحي كان واضح
واذا استمتعت لاتحرمنا من التكبيسات Like & Repost



العربية
َ đã retweet
َ đã retweet

@andres_vidoza How is the battery performance going with you? Any issues lately?
English
َ đã retweet


َ đã retweet

✍️ (Digital signature) التوقيع الرقمي
التوقيع الرقمي يستخدم cryptographic algorithm لانشاء Hash للملف او الرسالة💯
وبعد كذا يتم تشفير الـ Hash باستخدام Sender’s Praivate Key 🗝️
وبكذا صار توقيعك الرقمي جاهز ✅
ومن ثم يتم ارسال الملف او الرسالة مع توقيعك ✉️
وعند وصول الرسالة للمستقبل راح يستخدم Sender’s Public Key ويفك تشفير الـHash🔑
وبعد كذا يسوي Hash باستخدام نفس Cryptographic Algorithm ويقارنه بالـHash اللي وصله🔬
وفي حال ان الهاشين متشابهين فالملف اللي وصلك سليم ومن الشخص اللي تنتظر منه الرسالة 💯
وفحال عدم التشابه فاعرف انو الملف ملعوب فيه🔴
#امن_سيبراني #cybersecurity #hash #digitalsignature #network #hacking

العربية
َ đã retweet

Popular Network Protocol
Credit @bytebytego
#infosec #cybersecurity #pentesting #redteam #informationsecurity #CyberSec #networking #networksecurity #infosecurity #cyberattacks #security #linux #cybersecurityawareness #bugbounty #bugbountytips
GIF
English
َ đã retweet





























