تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
ما هو ASLR ؟ وكيف الاستفادة منه لبرامج المضغوطة
#1
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته 


كيفكم شباب ان شاء الله تكونوا بالف صحة وعافيه 

شباب هذه شرح كتابي ماهو ASLR ؟ 

طبعا توجد برامج تكون مضعوطة مثلا Vmprotect  نرى ان كل مرة نحمله الى منقح تتغير العناوين و تغير هذه العناوين يتم من خلال ASLR 

هذا شرح بسيط ماهو ASLR 

ما هو ASLR
 إن ASLR هو اختصار لـ Address space layout randomization وهي نوع من الحماية الاحترازية للحاسوب ، حيث تقوم على إعادة ترتيب مناطق البيانات المهمة بشكل عشوائي ، و عادة يتم خلط أساس الملف التنفيذي و أماكن المكتبات البرمجية و المكدس و الذاكرة العشوائية في فضاء عناوين العملية.
وتكمن فاعلية هذه العملية أنها تجعل عملية الاستفادة من الثغرات المكتشفة أمر صعب ، حيث تصعب على المهاجم معرفة أماكن العناوين المستهدفة ، فعلى سبيل المثال في هجوم return-to-libc attacks الذي يبدأ بطفح المكدس buffer overflow ثم يتم استبدال عنوان الرجوع لدالة return في المكدس بعنوان لأمر جديد ، فهذه العملية نجد أن على المهاجم أن يجد المكدس أول ليستغل هذه الثغرة ، و مع وجود ASLR فإن عملية إيجاد المكدس تصبح عملية ليست بالسهلة و تحتاج إلى تخمين ، و في حال فشل التخمين فإن التطبيق سينهار ، فكما تلاحظ أن مهمة ASLR هي جعل الاستفادة من الثغرات أمر صعب لدرجة ما.
تاريخيا أول من اخترع و صك مصطلح ASLR هو مشروع PaX  في يوليو 2001م ، و ظل مشروع أكمل تطبيق لهذا المفهوم حتى الآن ، و هو يقدم عشوائية المكدس لنواة اللينكس من أكتوبر 2002 م لحد الآن ، و تقوم توزيعة Adamantix و  Hardened Gentoo و  Hardened Linux From Scratch بتضمين مشروع PaX بشكل افتراضي.
أما نواة اللينكس الافتراضية فهي تتضمن شكل ضعيف من ASLR وهي مفعلة بشكل افتراضي من إصدارة 2.6.12 ، و يوجد مجموعتي رقع PaX و ExecShield لمن أراد حلول كاملة من ASLR.
كذلك تدعم ويندوز فيستا و ويندوز سيرفر 2008 ALSR بشكل افتراضي مع بعض التحفظات المتعلقة بالتوافقية مع التطبيقات القديمة.
كلذك يدعم OpenBSD تقنية ASLR ، بينما يقف نظام الماك متخلفا عن الركب مع بعض التحسن في الآونة الأخيرة.
المصدر




طبعا لاطفاء ASLR بالويندوز 

نفتح Registry بالويندوز 

خطوات الاطفاء


1- نفتح regedit
2-Hkey_local_Machine 
SYSTEM -3
CurrentControlSet- 4
Control -5
Session Manager -6
Memory Management -7
8- بعدها نضيف نضيف مفتاح من نوع Dword 32bit value  ونسميه MoveImages
لتعطيل ASLR نضيف قيمة صفر (0)



بهذا يمكننا الاستفادة منه بعض المرات لعمل هووك او لودر للحمايات مثلا Vmprotect ... الخ الان بعده اطفاء ASLR العناوين تبقى نفسها ولا تتغير 
أعضاء أعجبوا بهذه المشاركة : Small Axe , farfes , mohamad , M!X0R , xdvb_dz , PowerUser , samoray , Sanad-Rizeq , smix0024 , Vinnu_TSRh , rce3033 , BKRTN , vosiyons , IM-HERE , adhem , sitifis
#2
شكرا لك أخي 
تمت التجربة على أحد الشركات فكانت جيدة
أعضاء أعجبوا بهذه المشاركة : the9am3
#3
وضعتها على شكل باتش لتسهيل استخدامها من قبل المبيتدئين


الملفات المرفقة
.rar   anti-aslr.rar (الحجم : 58.21 KB / التحميلات : 80)
أعضاء أعجبوا بهذه المشاركة : mohamad , the9am3 , rce3033 , KaMaN99 , vosiyons
#4
(19-05-2020, 01:58 PM)Sanad-Rizeq كتب : وضعتها على شكل باتش لتسهيل استخدامها من قبل المبيتدئين

الباتش لا يعمل
يكتب قيمة خاطئة NewImages مكان MoveImages

و للتعديل بطريقة سهلة و آمنة (دون الحاجة لملفات تنفيذية) يمكننا حفظ هذه الأسطر داخل ملف FixASRL.reg ثم تشغيله :
Windows Registry Editor Version 5.00


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"MoveImages"=dword:00000000
مهم:
يجب اعادة تشغيل الجهاز لكي يتم تفعيل الخيار.
أعضاء أعجبوا بهذه المشاركة : the9am3 , PowerUser , rce3033 , BKRTN
#5
كإضافة 

بنسبة للبرامج تستطيع عمل off ل aslr بستخدام editbin لي يجي مع Visual studio 

او CFF Explorer ...

او يدويا ب ستخدام hex editor 

 
editbin /DYNAMICBASE:NO binary.exe

حاجة التانية لي بدي اشير لها انا معضم unpackers tools تشتغل على win xp الدي لا يحتوي على aslr 
بحيت عند عمل unpacking ب upx متلا وتضغل على unpacked file تجد انه لا يشتغل وهادا في معضم احيان يكون ب سبب aslr لهادا لما ما يشتغل معاك اعمل off ل aslr وشغله تاني رح تلاقيه يشتغل 


سبب وراء هاد شي هوا انه معضم binary كانت تعمل في ايام xp 
hard coding based on image base 


ابسط متال هوا upx ادا كنت قد استعملت upx -d رح تجد بعض الملفات القديمة لا تشتغل
أعضاء أعجبوا بهذه المشاركة : mohamad , the9am3 , rce3033 , BKRTN
#6
بالصدفة كنت اعدل على وندوز انتي فايروس  فوجدت انه يمكن الغاء  ASLR منه 
 اعقد انه يجب ايقافه 

[صورة مرفقة: HJW.png]
أعضاء أعجبوا بهذه المشاركة : Cyperior , the9am3 , adam zion , farfes , rce3033 , BKRTN , vosiyons
#7
برنامج يقوم بكشف البرامج التي تستخدم ASLR

ASLR Process Scanner
https://securityxploded.com/aslr-process-scanner.php
"إخي العزيز، لا تنسى بمراجعة صفحة قوانين المنتدى قبل وضع اي مشاركة !"
أعضاء أعجبوا بهذه المشاركة : vosiyons , the9am3
#8
كنت قد ارشفت موضوع الـ ASLR سابقاً لكن للاسف فقدت الملفات...
والان بعد التجميع من جديد ارفعه لكم...

الملف يحتوي على عدة مقالات لطرق التعامل مع الـ ASLR و الـ DEP

بنسبة لازالة الـ ASLR او الـ DEP عن الملف التنفيدي هناك عدة ادوات مرفقة تقوم بالأمر.
ملاحظة: هذه البرامج تقوم ايضاً بفصح تواجد الـ ASLR او الـ DEP في البرنامج التنفيدي.
PESecInfo
PE Player
setdllcharacteristics

الطريقة اليدوية لتعطيل الـ ASLR او DEP تكون عبر استخدام hex editor
تقوم بمقارنة الملف الاصلي مع الملف النتاج من PESecInfo بعد تعطيل الحماية عندها ستعرف الفرق.

محتويات الارشيف:
ASLR DEP ReverseEng by rce3033|   Exploit Mitigation Techniques - Address Space Layout Randomization (ASLR) - Exploit Development - 0x00sec - The Home of the Hacker.html|   M11-06-RockandROPeando.pdf
|   NX-bit.pdf
|   Project Zero_ MMS Exploit Part 5_ Defeating Android ASLR, Getting RCE.html
|   return-to-csu_ A New Method to Bypass 64-bit Linux ASLR - Black Hat Asia 2018 _ Briefings Schedule.html
|   
+---PE Player
|       Disable ASLR - Programming - rohitab.com - Forums.html
|       PE File Infection. - Programming - rohitab.com - Forums.html
|       PE Player 1.0.1 beta.zip
|       
+---PESecInfo
|       PE Sec Info - A Simple Tool to Manipulate ASLR and DEP Flags _ ??Blog of Osanda.html
|       PESecInfo-master.zip
|       PESecInfo.7z
|       PESecInfo_at4re.zip
|       
+---PESecurity
|       PESecurity-master.zip
|       Verifying ASLR, DEP, and SafeSEH with PowerShell.html
|       
\---setdllcharacteristics
        setdllcharacteristics _ Didier Stevens.html
        setdllcharacteristics_v0_0_0_1.zip        [Windows] Use setdllcharacteristics to force the PE file to open the DEP_ASLR flag _ EPH's program diary.html


رابط التحميل:
https://mega.nz/file/0FAiHJ5b#v-ix4IFMnbyc5dnFIErbrRgKONRvcjsM41mVTuGg2_g


كلمة سر فك الضغط:
ASLR-DEP-Reverse


دمتم في امانة الله.
"إخي العزيز، لا تنسى بمراجعة صفحة قوانين المنتدى قبل وضع اي مشاركة !"
أعضاء أعجبوا بهذه المشاركة : the9am3 , KaMaN99 , vosiyons
#9
(20-10-2021, 12:05 PM)rce3033 كتب : كنت قد ارشفت موضوع الـ ASLR سابقاً لكن للاسف فقدت الملفات...
والان بعد التجميع من جديد ارفعه لكم...

بارك الله فيك اخي العزيز الله يعطيك الصحة والعافيه مواضيع مفيدة جدا شكرا لمشاركته معنا  Heart
أعضاء أعجبوا بهذه المشاركة : rce3033


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 2 ) ضيف كريم