PDA

View Full Version : امنیت WinRar



iman_pc_love
یک شنبه 28 آبان 1385, 22:30 عصر
من هرچی گشتم نتونستم نرم افزاری رو پیدا کنم که بتونه فایل های Winrar رو که پسورد دارن کرک کنه، البته یه نمونه هایی هست که اون دیکشنری دارن و کلمات رو میخواهند دونه دونه چک کنن که چند رووز طول میکشه و فایده نداره و فکر کنم هیچ نرم افزاری هم برای کرک مستقیم این فایل ها نباشه
آیا میشود سیستم امنیتی این فایل ها رو بر روی نرم افزار ها پیاده کنیم؟
اصلا کسی میدونه سیستم امنیتی این فایلها چطوریه؟

shobair
دوشنبه 29 آبان 1385, 11:29 صبح
من هرچی گشتم نتونستم نرم افزاری رو پیدا کنم که بتونه فایل های Winrar رو که پسورد دارن کرک کنه، البته یه نمونه هایی هست که اون دیکشنری دارن و کلمات رو میخواهند دونه دونه چک کنن که چند رووز طول میکشه و فایده نداره و فکر کنم هیچ نرم افزاری هم برای کرک مستقیم این فایل ها نباشه
آیا میشود سیستم امنیتی این فایل ها رو بر روی نرم افزار ها پیاده کنیم؟
اصلا کسی میدونه سیستم امنیتی این فایلها چطوریه؟

سلام
الگوریتم فشرده سازی و کلاً encryption برنامه Rar کاملا اختصاصی هستش. ولی الگوریتم استخراج اطلاعاتش در دسترس بعضی شرکت ها هستش. وقتی پسورد انتخاب میشه برنامه الگوریتم فشرده سازی رو به اون وابسته میکنه و ضمناً برای اطمینان از درست بودن پسورد، CRC هم براش تولید میکنه.

شبیر

iman_pc_love
دوشنبه 29 آبان 1385, 13:32 عصر
و چون برنامه های اجرایی نهایتا باید به شکل ثابتی به حافظه رم بیان نمیشه یه همچین وابستگی رو براشون ایجاد کرد؟ درست میگم؟

Mojgan110
دوشنبه 29 آبان 1385, 16:50 عصر
این (http://www.intelore.com/rar_password_recovery.php) ، اتفاقا خیلی هم خوب جواب میده.

iman_pc_love
دوشنبه 29 آبان 1385, 20:27 عصر
یعنی چی؟ بیشتر توضیح بدید؟ چطوری خوب جواب میده؟

Bahram0110
سه شنبه 30 آبان 1385, 08:09 صبح
فایل هایی که با Winrar نسخه های قدیمی(همچنین Winzip تمام نسخه ها) فشرده و رمز گذاری شده اند خیلی راحت می شه رمزشون رو پیدا کرد مثلا به روش Brute Force در هر ثانیه چندین میلیون کلمه روی فایل آزمایش می شوند. ولی از نسخهء 2.9 به بعد الگوریتم فشرده سازی و رمز این برنامه خیلی پیچیده شده و به روش گفته شده که شاید بهترین روش هم باشد در هر ثانیه با کامپیوتر های متوسط امروزی حداکثر 50 کلمه روی فایل آزمایش می شود.
برای پیدا کردن رمز فایل های Rar هم همونطوری که مرجان خانم گفتند می تونی از Advanced Rar Password Recovery استفاده کنی [Download.com] یا Rar Password Cracker.
البته این را هم بگویم که در صورتی می تونی رمز فایل های Winrar جدید رو پیدا کنی که تعداد کلمات رمز کم باشد. مثلا اگه 10 حرف باشه و از حروف - ارقام و . . . تشکیل شده باشه شاید عمرا نتونی رمزشو پیدا کنی!

iman_pc_love
سه شنبه 30 آبان 1385, 13:07 عصر
فایل هایی که با Winrar نسخه های قدیمی(همچنین Winzip تمام نسخه ها) فشرده و رمز گذاری شده اند خیلی راحت می شه رمزشون رو پیدا کرد مثلا به روش Brute Force در هر ثانیه چندین میلیون کلمه روی فایل آزمایش می شوند. ولی از نسخهء 2.9 به بعد الگوریتم فشرده سازی و رمز این برنامه خیلی پیچیده شده و به روش گفته شده که شاید بهترین روش هم باشد در هر ثانیه با کامپیوتر های متوسط امروزی حداکثر 50 کلمه روی فایل آزمایش می شود.
برای پیدا کردن رمز فایل های Rar هم همونطوری که مرجان خانم گفتند می تونی از Advanced Rar Password Recovery استفاده کنی [Download.com] یا Rar Password Cracker.
البته این را هم بگویم که در صورتی می تونی رمز فایل های Winrar جدید رو پیدا کنی که تعداد کلمات رمز کم باشد. مثلا اگه 10 حرف باشه و از حروف - ارقام و . . . تشکیل شده باشه شاید عمرا نتونی رمزشو پیدا کنی!
شما مثل اینکه تاپیک رو دقیق نخوندید من گفتم به صورت مستقیم نه اینکه کلمه تست بشه، در ضمن من نگفتم میخوام رمز در بیارم گفتم میشه این سیستم رو رو نرم افزار های اجرائی هم پیاده کرد؟ یعنی اجرای درست برنامه از زمان اجرا تا زمانی که بسته میشه وابسته به یه کلید رمز باشه نه اینکه اول برنامه رمز چک بشه و اگه درست بود دیگی برنامه تا آخر درست کار کنه و کاری به کلید رمز نداشته باشه، البته اجرائی کردن این کار کار سختی نیست خوب کراکر ها هم به جای اینکه یک بار برنامه رو کرک کنن چند بار کرک میکنن، من فقط خواستم یه مشورتی کرده باشم ببینم نظر بقیه چیه؟ حالا نظرتون راجع به این ایده چیه؟ شایدم قبلا کسی این کارارو کرده؟

Bahram0110
چهارشنبه 01 آذر 1385, 09:27 صبح
شما مثل اینکه تاپیک رو دقیق نخوندید من گفتم به صورت مستقیم نه اینکه کلمه تست بشه
ببین عزیزم ؛
الگوریتم رمزنگاری فایلهای Rar چیزی نیست که به صورت مستقیم قابل بازگشت باشه. یعنی شما یه رشته رو از فایل های Rar بخونید و اونو به صورت اصلی یا رمز نشده باز گردانید.
بلکه باید کلمات را یکی یکی رمز کرد و با رمز فایل مقایسه کرد.

در ضمن من نگفتم میخوام رمز در بیارم گفتم میشه این سیستم رو رو نرم افزار های اجرائی هم پیاده کرد؟ یعنی اجرای درست برنامه از زمان اجرا تا زمانی که بسته میشه وابسته به یه کلید رمز باشه نه اینکه اول برنامه رمز چک بشه و اگه درست بود دیگی برنامه تا آخر درست کار کنه و کاری به کلید رمز نداشته
این کارو می تونی روی توابع برنامه اجرا کنی نه روی اجرای برنامه.
مثلا اگه یه تابع فراخوانی بشه اول صحت رمز بررسی بشه بعد ادامهء تابع اجرا بشه.


البته اجرائی کردن این کار کار سختی نیست خوب کراکر ها هم به جای اینکه یک بار برنامه رو کرک کنن چند بار کرک میکنن
قبولت دارم


شایدم قبلا کسی این کارارو کرده؟
بله!

iman_pc_love
چهارشنبه 01 آذر 1385, 23:32 عصر
حالا نمیشه اجرای درست برنامه را وابسته به یک کلید رمز کرد؟ البته منظورم این نیست که تو هر تابع سریال رو چک کنیم، منظورم انیکه یه چیزی شبیه به Winrar رو درست کنیم که اگه کلید رمز درست نباشه اصلا الگوریتم decrypt درست عمل نمیکنه

Bahram0110
پنج شنبه 02 آذر 1385, 16:50 عصر
حالا نمیشه اجرای درست برنامه را وابسته به یک کلید رمز کرد؟ البته منظورم این نیست که تو هر تابع سریال رو چک کنیم، منظورم انیکه یه چیزی شبیه به Winrar رو درست کنیم که اگه کلید رمز درست نباشه اصلا الگوریتم decrypt درست عمل نمیکنه

اگه برنامهء شما یه چیزی مثل WinRar باشه که با Encrypt یا Decrypt کردن فایل ها سر و کار داشته باشه، این کار شدنیه! مثلا اگه شما یه فایل متنی رو با یه کلید رمز کنید و بعد یکی بخواد اونو از رمز در بیاره فقط از طریق کلیدی که شما انتخاب کردین دیکریپت می شه. حتی اگه کاربر کلید رو اشتباه وارد کنه برنامه شروع به رمزگشایی فایل می کنه. ولی چون کلید اشتباهه خروجی با فایل اصلی رمز نشده فرق داره.
در مورد Winrar هم همین وضعیتو داریم. یعنی اگه کسی موفق بشه قسمتی که به ما می گه "رمز اشتباهه" رو کرک کنه باز فایل های آرشیو باز نمی شن. چون فقط باز شدنشون به کلید یا رمز فایل وابسته است.

iman_pc_love
جمعه 03 آذر 1385, 20:59 عصر
خوب شما دارید همون قبلی ها رو توضیح میدید، من گفتم فکر کنیم که چطور این تکنیک یا یه چیزی شبیه به این تکنیک رو برای فایل های اجرائی به کار ببریم.

joker
شنبه 04 آذر 1385, 00:26 صبح
خوب شما دارید همون قبلی ها رو توضیح میدید، من گفتم فکر کنیم که چطور این تکنیک یا یه چیزی شبیه به این تکنیک رو برای فایل های اجرائی به کار ببریم.
اکثر پروتکتورهای تجاری بر همین اساس کار میکنن ، یعنی وقتی شروط درست باشه برنامه توی حافظه به صورت صحیح دیکریپت میشه و اجرا میشه ( اگه خودت میخوای بنویسی از پکر های ساده مثل UPX که اپن سورس هست برای شروع استفاده کن ( اگه دلفی کاری از پکر مورفین )

روش سخت تر هم بازسازی خود فایل هست بر اساس کد صحیح ، اینطوری فکر کن که بر اساس کد صحیح یک مقداری از فایل به صورت هگز توی حافظه بازسازی بشه ( تقریبا میشه شبیه به کرک فایلهای RAR ) یعنی با هر کدی پروسه چک قفل رد میشه ولی جوابی که داری هیج وقت جواب صحیح نیست . و این یعنی یک فایل خراب !
زیاد هم بهش فکر نکن چون الگوریتمهای یک طرفه خواصیتشون همینه :)
از اشکالات این روش برای فایلهای اجرایی اینه که یکبار که صحیح باشه میشه توی حافظه فایل تصحیح شده را دامپ کرد
( مثل فایل RAR که اگه یکبار پسورد صحیح را بزنی برای همیشه یک فایل باز شده داره :))

( البته این روش هم قابل پیچوندن هست ، فکر کن که یک پروسه ، اطلاعات قبلی خودشو از بین ببره ، اینطوری کار کمی برای کرک سخت تر میشه ، و طرف موقع بازسازی فایل باید دقت بیشتری به خرج بده )

iman_pc_love
شنبه 04 آذر 1385, 11:24 صبح
بله، خودمم به همین نتایج رسیده بودم، مثل اینکه راهی نداره، مگر اینکه یه Cpu جدید با دستورات نا مفهوم بسازیم (شوخی)

Bahram0110
سه شنبه 07 آذر 1385, 13:44 عصر
خوب شما دارید همون قبلی ها رو توضیح میدید، من گفتم فکر کنیم که چطور این تکنیک یا یه چیزی شبیه به این تکنیک رو برای فایل های اجرائی به کار ببریم.
عزیز من حالا که عنوان پستت رو درست ننوشتی لااقل تو پست اولت درست توضیح بده تا زودتر جواب بگیری!