Legacy - بالعربي
حل legacy box
السلام عليكم و رحمة الله و بركاته 1- تبدأ الاول بعمل Scan على الماشين ب nmap عشان نشوف ال Open Ports الموجودة و ال services/الخدمات و شو منهم فيه ثغرة/vulnerable فتستغله و طبعا بدون عمل استطلاع/recon او enumeration ما ممكن تبدأ اي عملية Pentesting او Hacking
2- نبدأ بالبحث اذا كان اي خدمة / service مصابة و اول شيء لدينا هو ال 139 & 445 بعد شوية بحث عن الثغرات الي ممكن يكون ال smb مصاب فيها و خاصة الي بتستهدف win xp لقيت ms08-067 و ممكن تتسغلها بال metasploit بسهولة جدا
بعد ما تزبط ال options و تعمل run المفروض يظهرلك كلاتي :
ما في اي داعي لل privesc هون لان انت بالاصل بسبب الاستغلال هاد بتدخل ك root
هلئ نحصل ال root flag
و الان ال user flag
بهيك انتهت الماشين بس كيف حصل الاستغلال / exploit ؟!!!
الامر كله بسبب خطأ بمعالجة / handling طلب / request بال RPC service !
بحصل عن طريق اي طلب خاص بال UUID
4B324FC8-1670-01D3-1278-5A47BF6EE188
ال RPC فيه function اسمها NetprPathCanonicalize و الي بدورها بتستخدم ال library NETAPI32.DLL الكود :
long NetprPathCanonicalize(
[in] [string] [unique] wchar_t *ServerName,
[in] [string] [ref] wchar_t *PathName,
[in] long OutBufLen;
[in] [string] [ref] wchar_t *Prefix,
[in] [out] [ref] long *PathType;
[in] long PathFlags;
);
المشكلة بان المتغير variable الي اسمه PathName ما بتم معالجته بشكل صح فبسبب
buffer overflow
هو بياخد ال path بالشكل الاتي :
/pathpart1/../../pathpart2
فبياخد منه على قدر ال calculated buffer فالمفروض ان رح ياخد منه حد معين و الباقي يكون كلاتي
/../pathpart2
بمعنى اخر هو اخد هي المقدمة
/pathpart1/..
طيب هون لما رح يرجع ياخد التاني بما ان مافي شي قبل ال path او ال input ف رح يبحث عن اول / بهي الحال و حسب فهمي رح يكون ال / بمكان بالذاكرة / memory عند شغلة اسمها ال designated buffer
فلو اجا ال / بال stack على مكان vulnerable فرح يحصل نسخ لل source string للمكان الي هو واقف عليه.
طيب لحد الان هي تعتبر الثغرة بدون الاستغلال , فكيف بستغلها المهاجم ؟
بيقدر المهاجم يتلاعب بال stack عن طريق ان يرسل الطلب / request مرتين او يعمل call على ال RPC مرتين
بالمرة التانية رح يحصل overwrite لل stack buffer .
كنت بتمنى اقدر اعمل الامر عملي بشكل يدوي اكتر و احللللكم (يا اخي اخت الكلمة ما بقى اعرف اكتبا ولا الفظها 😂) الي بحصل مع توضيح اكتر و اكتب python script يستغل الموضوع , بس للاسف رح ياخد وقت, فبتمنى للوقت الحالي يكون هيك الشرح قرب فكرة ال exploit و شو بصير ورا ال Enter الي بتضغطها.
السلام عليكم.
Resources:
https://labs.f-secure.com/assets/BlogFiles/hello-ms08-067-my-old-friend.pdf https://blog.rapid7.com/2014/02/03/new-ms08-067/ https://www.mysonicwall.com/sonicalert/searchresults.aspx?ev=article&id=74 https://docs.microsoft.com/en-us/security-updates/securitybulletins/2008/ms08-067
Last updated