💥 Introducing "Dirty Frag"
A universal Linux LPE chaining two vulns in xfrm-ESP and RxRPC. A successor class to Dirty Pipe & Copy Fail.
No race, no panic on failure, fully deterministic. ~9 years latent.
Ubuntu / RHEL / Fedora / openSUSE / CentOS / AlmaLinux, and more.
Even if you've applied the "Copy Fail" mitigation, your Linux is still vulnerable to "Dirty Frag". Apply the Dirty Frag mitigation.
Details:
dirtyfrag.io
There's still a load of potential for further research and discoveries in HTTP request smuggling. This massive-impact finding from @deadvolvo exploiting Akamai/F5 is a great example:
blog.malicious.group/from-akamai-to…
11 submissions sent on @Bugcrowd after 2 weeks of grinding hard.
Now sitting back and hoping for some nice rewards.
Good luck to me ✌️
#bugbounty#bugcrowd
Are you ready for the evolution of JS analysis?
Toolkit releasing for my GitHub Sponsors soon.
Meanwhile, here's the parser I am using: github.com/s0md3v/esprima2
🔴كيف قدرت اتحكم بسيرفر لأحد الجهات الحساسة بشكل كامل واكتشف اكثر من 15 ثغرة حرجة.
a Single LFI to +15 Critical Bugs A Web-Boundary Pivoting Story
مسيتم بالخير, رجعا لكم بمقالة جديد بعد انقطاع, لكن على ماقال من طول الغيبات جاب الغنايم
اليوم باذن الله بتكلم عن طريقة اكتشافي لثغرة من خلاله اكتشفت +15 ثغرة حرجة اخرى في احد الجهات الحساسة.
# البداية
أثناء الفحص لاحظت إن الموقع مبني بـ Angular، وهذا يعني إن ملفات الـ JS راح تكون كنز لفهم طبيعة الموقع.
أول يوم فحص ما حصلت نتيجة مباشرة، لكن طلعت بأهم شيء والي هو صرت فاهم التارقت أكثر.
بالتكملة, بما إن فيه عدة Roles بالموقع، وكمستخدم عادي ما كان عندي إلا كم Functions ظاهر لي كمستخدم عادي، قررت أركز تحليلي بالكامل على ملفات الـ JS.
وهنا جاء وقت اتكلم عن ال runtime.js، والي هو عبارة عن ملف JavaScript موجود بالمواقع اللي تستخدم Frameworks مثل Angular.
وفكرته بكل اختصار إنه يعرف ملفات JS الأخرى ويستعملها وقت الحاجة، ويطلق على هذي الملفات بال chunks
وهذي كلها عباره عن JS files
بنيت سكربت يسوي Load للـ JS files المعرفة بالـ runtime، بشكل مباشر وقدرت أجمع أكثر من 35 ملف وبدأت أحللهم واحد واحد.
ومالكم بالطويلة, في أحد الملفات لقيت Function معرفة preview-attachment، وظيفتها عرض المرفقات أو الصور
من خلال تحليلي الى الـ JS لاحظت إنها تستعمل معرفين في Functions مختلفة لعرض الصور:
- filePath
- fileName
في بعض الـ Functions الأخرى بالموقع كان يتم استخدام fileName فقط، لكنه مقيّد بمسار معين ومعه Validation على ال Input ويعرض الصور من مسار ثابت مباشرة من الـ server-side.
وش تبي وصله ياعمر؟ يعني فكرة انه اوصل الى ملفات اخرى غير الصور فكرة غير ممكنة بأستعمال ال fileName parameter
لكن ماذا عن ال filePath؟ إذا أضفته في نفس الـ Request، راح يسوي overwrite على قيمة ال fileName، لأن الـ server-side يفضل filePath على fileName.
ونقطة مهمة ما أقدر أحذف fileName لأنه Mandatory Parameter لازم يكون موجود بالـ Request.
وفي ال filePath Parameter كنت قادر اني احدد المسار الي يسوي له preview او عرض للصورة.
لكن السؤال هل المسار مقتصر على عرض الصور فقط ؟
الجواب لا (; مثل مانلاحظ بالطريقة هذي قدرت اسوي read /etc%0a/%0apasswd
مافيه impact ؟ بس هنا وصلنا لل ssh private key
الأغلب ممكن يوقف هنا ويرفع تقريره
لكن دامك بق هنتر بتحاول تصنع ثغره من اي شيء واحيانا مايضر انك تستكشف شوي (;
# Accessing Private SSH Keys to RCE
بعد ماجبت ال SSH keys سويت connect على نفس IP السيرفر الي شغال عليه الموقع وقدرت اني اوصل الى السيرفر بشكل كامل
الأغلب هنا بيرفع التقرير ويوقف, بس عمرك سمعت عن ال مصطلح ال pivoting؟ لا ماقصد ال pivoting بنطاق ال network
بل pivoting بنطاق ال web applications, بعد وصولي للسيرفر
اول خطوة سويته اني اشوف ال source code واكتشفت بعض الثغرات من خلال تحليلي الى ال source code
ومن ضمنه Account take over على اي حساب مسجل بالجهة بشكل كامل , والي كانت من خلال ال reset password function
# From Source Code Review to 0-Click ATO & 15+ Critical Bugs Uncovered
لاحظت انه يتم انشاء token في حال انك تبي تسوي reset password لكن التوكن كان يتم انشائه بالطريقة هذي
الي قاعد يصير بكل اختصار ياخذ الهوية والوقت الحالي (timestamp) ويسوي له hashing باستعمال SHA1
وبما ان ال SHA-1 مافيها اي secret key, salting ابدا
معناته انه من الممكن نجيب اي reset token
فسويت سكربت بكل سهولة يستغل العملية هذي, وقدرت اني اتحكم بأي حساب مسجل بالجهة من خلال رقم الهوية فقط.
حلو وموضوع ال pivoting عمر ؟ هنا ارجع لكم بال pivoting بس على نطاق ال web application, الجهة نفسة كان عنده عدة مواقع اخرى
فجربت اني شوف نفس المفهوم للمواقع الثانية التابعة للجهة, وفعلاً نفس المنطق مستخدم، فاستغليتهم بنفس الطريقة.
ومن خلال الـ source code review قدرت اكتشف ثغرات عديدة اخرى كذلك
من خلال ال pivoting كنت قادر اكتشف فوق ال 15+ ثغره حرجة ومرتفعة الخطورة, وممكن تكون بجزء ثاني
بالختام، أتمنى كان شرحي واضح واستفدتوا، وشكرًا على وقتكم وقراءتكم.
I found `redacted.axd?id=` endpoint returning a Base64 GZIP-encoded string. I decompressed it, and discovered JSON leaking internal assets ( not sensitive ). Looking to escalate this into a full exploit ( LFI ).
Anyone want to collaborate ? 50/50 split on bounty. DM me.
hi mọi người, mình vừa biết tới DeFi.vn — một trang tài liệu mã nguồn mở về tài chính phi tập trung bằng tiếng Việt.
rất nên xem nếu bạn đang tìm hiểu về DeFi