میشه این روش رو به جای استفاده تو یه پروسه پدر فرزندی تو یه سیستم فامیلی استفاده کرد ، و نهایتا" جد بزرگوار رو توسط تکنولوژری Run time Anti Debug محافظت کرد ، این طوری کار کراکر سخت تر میشه ، نقطه ضعف آرمادیلو هم به نظر من به همین خاطره که به جای استفاده از تعدد پروسه ها اومده به پکر خودش اعتماد کرده و عملیات رو تو پروسه پدر فرزندی خلاصه کرده.
تکنیک Runtime Antidebug و همین تعدد پروسه ها یا به اصطلاح Familar Protection فکر خودم نیست ، این تکنولوژی ها اولیشون تو سال 2002 توسط کراکری به نام lightFXXK ( شرمنده ام ، اسمشو من انتخاب نکردم ) از گروه امنیتی موسوم به BingoWAY تو یه crackme استفاده کرد ، که توسط گروه به نام God of Unpacking شکسته شد ، تکنیک تعدد فامیلی رو هم تو یکی از مقالات کراکر ایتالیایی به نام Joker_Italy خوندم.
البته تمامی این شیوه ها شکسته شدن ولی خوبیشون اینه که شکستن این شیوه ها کار کراکر های معمولی نیست و میتونه هدف خوبی برای گروه های امنیتی کلاه سیاه باشه .
یه تکنیک هم وجود داره که بهش میگن SecureLM ، برای ایستگاه کاری دات نت توسط مایکروسافت طراحی شده ، ولی امروزه برای برنامه های Native هم کاربرد پیدا کرده ، این تکنیک ماورای همه این حرفاست ، بحثش خیلی طولانیه ، یکی دوتا مقاله در مورد اون دارم ، پیدا کردم ضمیمه میکنم تا برادران هم استفاده کنن.
در این مورد هم با تعدد پروسه ها و فعال بودن Runtime AntiDebug ، رد شدن از روتین های آنتی دیباگ تقریبا" کار حضرت فیل میباشدبراي باز سازي اينجور تصاوير اجرايي، بايد يج جوري از شر روتينهاي شناسايي ديباگر و ... خلاص شد و بعدش سر بزنگاه موقع فراخواني GetThreadContext و SetThreadContext يقه پروسه پدر رو گرفت و از اونجا جدول پرش رو بازسازي کرد.
شاید بگید که خوب مثل آقا بردیا فایل ها رو یکی یکی از رم میکشیم بیرون و ادامه ماجرا ، بدی Runtime AntiDebug اینه که حتی به موقع میتونه تشخیص دستکاری فایل رو بده ( حتی دامپ کردن) ، من از این شیوه نه به عنوان برنامه نویسی بلکه با استفاده از یه حقه کوچیک تو Unpackme خودم استفاده کرده بودم ، این شیوه توسط تمامی زبانهای برنامه نویسی قابل پیاده سازیه و کار ساده ای هم نیست . این تکنیک امروزه در قالب یه Plugin ، یا یه فایل DLL همگانی برای اکثر پکرها قابل استفاده هستش ولی عیب بزرگی داره و اون هم عدم سازگاری با برخی نرم افزارهای امنیتی ضد ویروس هستش که تا به امروز این معضل حل نشده ، حتی فایل Unpackme بنده توسط ضد ویروس Panda به عنوان فایل خطرناک شناخته میشه ( میتونید امتحان کنید ).
ضریب امنیت این شیوه در سال 2003 توسط انجمن بین المللی مبارزه با سرقت نرم افزاری 99.9 ٪اعلام شد ، که 3 سال بعد توسط یکی دوتا کراکر هلندی شکسته شد.
البته با شکسته شدن این شیوه از ارزش اون کاسته نشد ، و هنوز مثل CRC Check ازش استفاده میشه.






پاسخ با نقل قول
