راهنما

اگر در ابتدا و انتهای عبارت جستجو علامت (") ( یا quotation) بگذارید، مطالبی که در متن آنها عین کلمات وجود دارد داخل عبارت را جستجو و نمایش می دهد ولی اگر در دو سر عبارت جستجو علامت (") قرار ندهید مطالبی که در متن آنها یکی از کلمات داخل عبارت وجود داشته باشد یافت می شود.

مطالب مرتبط
  • توليد انواع قفل های دیجیتالی
    توليد انواع قفل های دیجیتالی
    . امروزه یکی از دغدغه های مهم در عرصه اطلاعات، جلوگیری از نفوذ به سیستم هاست. به همین دلیل تخصص تولید قفل و روش های شکستن آن به عنوان یکی از شاخه های مهم امنیتی، اهمیت دو چندانی یافته است.
  • روش‌های قفل‌گذاری نرم‌افزاری
    روش‌های قفل‌گذاری نرم‌افزاری
    یکی از دغدغه های امروز در حوزه فناوری اطلاعات و فضای سایبر، برقراری امنیت است. روش متنوعی برای برقراری امنیت وجود دارد. یکی از این روش ها استفاده از انواع قفل ها بر روی نرم افزار، ست افزار، لوح فشرده و غیره است.
  • تعداد بازديد :
  • 3409
  • سه شنبه 25/12/1388
  • تاريخ :

تکنیک شکستن قفل‌های نرم‌افزاری

 

در دو مقاله قبلی با عنوان‌های "تولید قفل و روش های شکستن آن" و "روش‌های قفل‌گذاری نرم‌افزاری"، از چهار نوع قفلی که مطرح کردیم به دو نوع قفل های سخت افزاری و نرم افزاری پرداختیم. در این مقاله می پردازیم به قفل های CD، DVD  و قفل های اینترنتی و در انتها تکنیک های شکستن قفل را مطرح می کنیم.

 

ج- قفل های روی CD

با متداول شدن CD و یا لوح فشرده به عنوان بهترین، ارزان ترین و آسان ترین روش مبادله و تکثیر اطلاعات، نیاز به حفاظت از آن در برابر تکثیر غیرمجاز هر چه بیشتر احساس شد.

 

روش های قفل گذاری روی CD

1- یک روش قفل گذاری اجرای برنامه از روی CD است. در این حالت برنامه هنگام اجرا، به CD رجوع کرده و نقاط خاصی از آن را چک می کند. این نقاط بخش هایی هستند که به صورت فیزیکی علامت گذاری شده اند و در واقع به نوعی صدمه دیده اند و معمولاً این خرابی با تابش اشعه لیزر انجام می شود. به این ترتیب نقاط معینی از CD به اصطلاح لیزر سوز می شود.این نقطه یا نقاط، به عنوان قفل CD عمل می کند و از عمل تکثیر یا کپی برداری و همچنین استفاده غیر مجاز از آن جلوگیری به عمل می آورد.

تکنیک شکستن قفل‌های نرم‌افزاری

2- قفل های حجمی: در این روش فایل های CD را به حدود چند گیگا بایت افزایش می دهند که امکان کپی شدن روی هارد را نداشته باشند. یکی از ساده ترین و عمومی ترین روش هایی که تاکنون برای حفاظت از CD دیده شده، افزایش مجازی طول چند فایل درون CD است به نحوی که آنها تا چند صد مگا بایت به نظرمی رسند. برای انجام چنین کاری تنظیمات مربوط به طول آن فایل را در Image بر روی هم قرار می دهند ولی برنامه حجم واقعی هر فایل رامی داند و عمل خواندن را تا آن لحظه انجام می دهد. بنابراین برنامه به خوبی کار می کند.

 

3- یکی از روش های نادر برای حفاظت از CDها کنترل بر روی درایو CD است. از این روش بیشتر در حفاظ بازی های استفاده می شود نحوه ایجاد آن به دانش بالایی نیاز دارد. روش آن چنین است که اطلاعاتی نادرست (عمدی) در قسمت ECC (تصحیح خطا) یک سکتور داده نوشته می شود. CD نویس های استاندارد به صورت خودکار این خطاها را هنگام نوشتن تصحیح می کنند. هنگام خواندن برنامه سکتور داده را به صورت RAW و بدون تصحیح خطا در حافظه برای تطبیق با داده های اصلی بار می کند و در صورت تناقض با داده های اصلی، برنامه اجرا نمی شود.

 

4- متداول ترین روشی که برای محافظت از CD دیده می شود، ایجاد فاصله هایی (gaps) غیراستاندارد ما بین تراک های صوتی و قرار دادن اندیس ها در مکان هایی دور از انتظار است. CD که با این روش قفل گذاری می شود در بسیاری موارد توسط نرم افزارهای کپی برداری معمولی و CDنویس هایی که از Discatonce پشتیبانی نمی کنند غیرقابل کپی برداری است ولی با پیشرفت تکنولوژی، این روش نیز به سرعت در حال کناره گیری است.

 

5- امروزه قرار دادن فاصله خالی یا سوراخ گذاری بر روی CD متداول شده است. به این ترتیب بسیاری از برنامه ها که قصد خواندن یک تراک از ابتدا تا انتها را دارند با مشکل مواجه می شوند.

 

6- با استفاده از دستکاری TOC سی دی. یک قفل ساز سعی دارد با دستکاری TOC اطلاعاتی دروغین را به CD پیوند بزند. TOC در واقع اولین تراک از CD است که اطلاعات CD مثل اندازه فایل ها بر روی CD، چگونگی قرار گرفتن آنها و غیره را در خود نگهداری می کند.

 

د- قفل های اینترنتی

در این روش، نرم افزار به یک سایت در شبکه اینترنت وصل می شود و در صورت تایید کاربر توسط آن سایت، اجازه کار با نرم افزار به کاربر داده می شود. این قفل ها در صورتی که به درستی استفاده شوند دارای امنیت بالا و قیمت ارزان هستند . شکستن اینگونه قفل ها بسیار مشکل است. البته به شرط آنکه از آن ها به درستی استفاده شود. یکی دیگر از قابلیت های اینگونه قفل ها توانایی شناسایی کاربر می باشد. تولید کننده نرم افزار می تواند علاوه بر نام کاربر، اطلاعات شناسایی دیگری مانند نام کاربر، سن، پست الکترونیکی و غیره را دریافت کند، همچنین فروش آنلاین نرم افزار به هر جای دنیا به راحتی امکان پذیر است.

 

تکنیک های شکستن قفل نرم افزار

1- تغییر JMP: بعضی از نرم افزارها طوری نوشته می شوند تا فقط در صورت واردشدن شماره سریال صحیح، برنامه به مرحله بعد برود و در غیر این صورت در همان مرحله بماند و یا از برنامه خارج شود. وقتی این نوع برنامه به کد اسمبلی تبدیل می شود، در کد اسمبلی دو دستور JMP داریم که یکی از آنها در صورت مساوی بودن عدد وارد شده با شماره سریال صحیح رخ می دهد و دیگری در صورت وارد شماره سریال اشتباه. حال اگر جای این دو JMP عوض شود، نرم افزار با هر عدد به جز شماره سریال اصلی از آن مرحله خواهد گذشت. بنابراین در این روش قفل شکن بدون پی بردن به شماره سریال صحیح تشخیص داده شود.

تکنیک شکستن قفل‌های نرم‌افزاری

2- یافتن شماره سریال از داخل کد برنامه: در این روش وقتی یک شماره سریال توسط کاربر وارد شد، نرم افزار باید آن را به شماره سریال صحیح مقایسه کند تا به صحت یا اشتباه بودن آن پی ببرد. بنابراین در لحظه مقایسه، شماره سریال صحیح می بایست در جایی به طور موقیت ذخیره شود تا امکان مقایسه ایجاد شود. این مکان موقتی می تواند محل خاصی از RAM یا جایی در هارد دیسک و یا در رجیسترهای داخلی پردازشگر باشد. قفل شکنان حرفه ای قادرند بااستفاده از نرم افزارهایی که هر نوع تغییر در RAM و هارد دیسک و غیره را ثبت می کنند، شماره سریال واقعی را بیابند.

 

3- Brute force attack: در این روش قفل شکنان برنامه ای را می نویسند که بتوانند تمامی حالت های ممکن یک شماره سریال را وارد نرم افزار کرده و بالاخره شماره سریال واقعی را بیابد. البته استفاده از این روش ممکن است چند روز و یا بیشتر طول بکشد.

 

4- کد رجیستر کردن (Registration Code) قفل شکنان برای کد رجیستر کردن توسط نرم افزاری debugger مکان محاسبه کد از روی نام استفاده کننده را پیدا می کنند و به رابطه ریاضی بین این دو پی می برند.

 

5- محدودیت زمانی Time trial: قفل شکنان برای از کار انداختن محدودیت زمانی از دو روش استفاده می کنند: یا روتین های چک کردن زمان را در برنامه پیدا کرده، آن را غیر فعال می کنند و یا زمان را طوری تغییر می دهند تا نرم افزار به تمام شدن دوره زمانی از پیش تعیین شده، پی نبرد. برای این کار معمولا برنامه ای می نویسند تا قبل از اجرای نرم افزار اصلی، زمان کامپیوتر را تغییر دهد.

 

 

نویسنده: هانیه کارخانه/کارشناس مرکز پدافند غیرعامل

تنظیم برای تبیان: فاطمه مجدآبادی

ارسال به
آخرین نظرات کاربران
ناشناس
یکی از روش های نادر برای حفاظت از CDها کنترل بر روی درایو CD است. از این روش بیشتر در حفاظ بازی های استفاده می شود نحوه ایجاد آن به دانش بالایی نیاز دارد. روش آن چنین است که اطلاعاتی نادرست (عمدی) در قسمت ECC (تصحیح خطا) یک سکتور داده نوشته می شود. CD نویس های استاندارد به صورت خودکار این خطاها را هنگام نوشتن تصحیح می کنند. هنگام خواندن برنامه سکتور داده را به صورت RAW و بدون تصحیح خطا در حافظه برای تطبیق با داده های اصلی بار می کند و در صورت تناقض با داده های اصلی، برنامه اجرا نمی شود.

من با این روش بالا برخوردم و با مشکل روبرو شدم .با چه برنامه یا ... مشه این روش را دور زد.
پاسخ تبیان :
0
موافقم
0
مخالفم
چهارشنبه 23/6/1390 - 16:50
ببر مازندرانی
با درود و خسته نباشید.
بسیار خوب میشد که این روشها را با مثالها و به صورت انیمیشن در یک فایلی می توانستیم دانلود کنیم.
با سپاس فراوان
پاسخ تبیان :
0
موافقم
0
مخالفم
شنبه 7/12/1389 - 21:47
ناشناس
Tankyou Very much
پاسخ تبیان :
0
موافقم
0
مخالفم
شنبه 23/5/1389 - 5:41
ناشناس
تکنیکی که نتوان ازش استفاده کرد به چه دردی می خوره
پاسخ تبیان :
0
موافقم
0
مخالفم
چهارشنبه 26/12/1388 - 20:25
saeed_sharafi123
خوب بود تو سوال نوشتید اسبلی
باید اسمبلی باشه
پاسخ تبیان :
0
موافقم
0
مخالفم
چهارشنبه 26/12/1388 - 15:6
alireza_86
مثلا آموزش بود؟؟؟!!!!
پاسخ تبیان :
0
موافقم
0
مخالفم
سه شنبه 25/12/1388 - 14:28
ناشناس
از خانم مجدابادی خیلی ممنونیم
پاسخ تبیان :
0
موافقم
0
مخالفم
سه شنبه 25/12/1388 - 12:22
jamal vakilian
دستتون درد نکنه خیلی خوب بود
پاسخ تبیان :
0
موافقم
0
مخالفم
سه شنبه 25/12/1388 - 9:59