مرکز دانلود خلاصه کتاب و جزوات دانشگاهی

مرکز دانلود تحقیق رايگان دانش آموزان و فروش آنلاين انواع مقالات، پروژه های دانشجويی،جزوات دانشگاهی، خلاصه کتاب، كارورزی و کارآموزی، طرح لایه باز کارت ویزیت، تراکت مشاغل و...(توجه: اگر شما نویسنده یا پدیدآورنده اثر هستید در صورت عدم رضایت از نمایش اثر خود به منظور حذف اثر از سایت به پشتیبانی پیام دهید)

نمونه سوالات کارشناسی ارشد دانشگاه پیام نور (سوالات تخصصی)

نمونه سوالات کارشناسی دانشگاه پیام نور (سوالات تخصصی)

نمونه سوالات دانشگاه پيام نور (سوالات عمومی)

کارآموزی و کارورزی

مقالات رشته حسابداری و اقتصاد

مقالات علوم اجتماعی و جامعه شناسی

مقالات روانشناسی و علوم تربیتی

مقالات فقهی و حقوق

مقالات تاریخ- جغرافی

مقالات دینی و مذهبی

مقالات علوم سیاسی

مقالات مدیریت و سازمان

مقالات پزشکی - مامایی- میکروبیولوژی

مقالات صنعت- معماری- کشاورزی-برق

مقالات ریاضی- فیزیک- شیمی

مقالات کامپیوتر و شبکه

مقالات ادبیات- هنر - گرافیک

اقدام پژوهی و گزارش تخصصی معلمان

پاورپوئینت و بروشورر آماده

طرح توجیهی کارآفرینی

آمار سایت

آمار بازدید

  • بازدید امروز : 887
  • بازدید دیروز : 2772
  • بازدید کل : 13119019

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


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

 

تکنیک شکستن قفل های نرم افزاری(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: قفل شکنان برای از کار انداختن محدودیت زمانی از دو روش استفاده می کنند: یا روتین های چک کردن زمان را در برنامه پیدا کرده، آن را غیر فعال می کنند و یا زمان را طوری تغییر می دهند تا نرم افزار به تمام شدن دوره زمانی از پیش تعیین شده، پی نبرد. برای این کار معمولا برنامه ای می نویسند تا قبل از اجرای نرم افزار اصلی، زمان کامپیوتر را تغییر دهد.

 

روش هاي قفل گذاري نرم افزاري

در ادامه چند نمونه از روش هاي قفل گذاري نرم و نحوه طراحي آن آورده شده است.

1- قفل گذاري با استفاده از شماره سريال اصلي ديسکت

سيستم عامل براي هر ديسکت يک شماره سريال واحد (UNIQUE) اختصاص مي دهد، به طوري که شماره سريال هر دو ديسکت با هم يکي نيستند. بنابراين همين روش، خود يک راه تشخيص ديسکت کليد (قفل) است.

 

2- قفل گذاري با استفاده از مشخصات سيستم

در اين نوع قفل نرم افزاري، برنامه قبل از اجرا ابتدا مشخصات سيستم را خوانده (که اين کار از طريق مراجعه به بخش هاي خاصي از حافظه و يا مراجعه به اطلاعات BIOS انجام مي شود.) سپس آن را با فايلي که قبلا توسط نويسنده نرم افزار بر روي کامپيوتر کپي شده، مقايسه مي کند و در صورت عدم برابري. اجراي برنامه پايان مي پذيرد. درصد اطمينان اين نوع قفل 65 تا 75 درصد است.

 

3- قفل با استفاده از موقعيت فايل روي هارد ديسک

اين نوع قفل فقط بر روي هارد ديسک قابل استفاده بوده و به اين صورت است که فايل اجرايي به موقعيت خود بر روي هارد حساس است چرا که قبل از اجرا ابتدا موقعيت خود را از روي سکتورهاي ROOT خوانده و سپس شماره کلاستر اشاره گر به خودش را به دست مي آورد، سپس آن را با شماره کلاستري که قبلا توسط برنامه نويس بر روي يکي از فايل هاي برنامه(ممکن است به صورت کد شده باشد) قرار داده شده، مقايسه کرده و در صورت برابر بودن اجرا مي شود. ضريب اطمينان اين نوع قفل نيز 70 تا 80 درصد است.

4- قفل با استفاده از فرمت غير استاندارد

اين شيوه يکي از رايج ترين قفل هاي نرم افزاري است که هنوز هم به صورت جدي مورد استفاده قرار مي گيرد. سيستم عامل براي دسترسي به اطلاعات يک ديسکت از فرمت خاصي (18 سکتور در هر تراک) استفاده مي کند اما اگر يک تراک به صورت غير استاندارد فرمت شود (مثلاً 19 سکتور در تراک) سيستم عامل ديگر توانايي استفاده از سکتورهاي غيرمجاز را نخواهد داشت و بنابراين تمام نرم افزارهاي تحت سيستم عامل مزبور نيز از سکتورهاي مخفي استفاده نکرده، در نتيجه امکان کپي برداري از آنها بسيار ضعيف است. از همين روش براي طراحي قفل مورد نظر استفاده مي شود. قفل نرم افزاري Copy Control که معروف ترين در نوع خود است، از همين روش استفاده مي کند. اين قفل فقط براي فلاپي ديسک قابل استفاده است و درصد اطمينان در اين روش حدود 85 تا 95 درصد مي باشد.

 

5- قفل با استفاده از شماره سريال ساختگي

اين روش قفل گذاري که قوي ترين قفل است، مخلوطي از روش هاي 1 و 4 است، يعني ابتدا تراک خاصي را به صورت غيراستاندارد فرمت کرده و سپس اطلاعات خاصي را درون آن قرار مي دهند (شماره سريال فرضي). اين قفل فقط براي فلاپي ديسک قابل استفاده بوده و ضريب اطمينان آن حدود 90 تا 98 درصد است.

 

6- قفل هاي اکتيو ايکس

در واقع يک اکتيو ايکس که مانع اجراي برنامه در شرايط خاصي شود را قفل اکتيو ايکس مي نامند. اين نوع قفل مانند ساير کامپوننت هاي برنامه نويسي است. برنامه نويس به سادگي آن را بر روي فرم برنامه خود قرار مي دهد و با تنظيم پارامترها و خصوصيات آن، سبب فعاليت آن مي شود. اين اکتيو ايکس قبل از قرار گرفتن فرم اصلي در حافظه، شروع به کار مي کند و اگر براي اولين بار اجرا مي شود برحسب اندازه حافظه، شماره سريال و سرعت پردازنده کد ويژه اي توليد مي کند اين کد توليد شده وابسته به خصوصيات کامپيوتر است بنابراين کد برگشتي اين اکتيوايکس بر روي هر سيستمي متفاوت خواهد بود.

پس از ارايه کد، کد معادل آن را از کاربر درخواست مي کند. کاربر با ارايه کد توليد شده به شرکت تولدي کننده نرم افزار، کد معادل آن را دريافت مي کن. اين کد را کاربر از طريق تلفن يا پست الکترونيکي و يا اينترنت دريافت مي کند. در صورتي که کد معادل دريافت شده پس از کد شدن معادل کد ارايه شده باشد يا به عبارتي کد ارايه شده از طرف کامپيوتر مکمل کد دريافت شده از شرکت باشد، اکتيو ايکس اجازه مي دهد برنامه بدون اشکال شروع به کار کند. کاربر نيز مي تواند بارها از اين کد بر روي کامپيوتر خود (کامپيوتري که کد دريافت کرده) استفاده کند. پس از ورود کد، اين کد در مکاني از سيستم مثلا رجيستري با يک فايل به صورت کد شده قرا م يگيدر و هر بار کامپيوتر برنامه را اجرا کند به جاي درخواست کد از کاربر، کد را از رجيستري يا فايل پس از کديابي مورد استفاده قرار مي دهد.

 

نقاط ضعف:

*قفل هاي اکتيوايکس به دريافت کد از شرکت نياز دارند يعني کاربر بايد به نحوي با شرکت توليد کننده تماس بگيريد و نمي تواند برنامه را پس از خريد بلافاصله استفاده کند.

*قفل هاي اکتيوايکس تنها بر روي يک سيستم اجرا مي شوند و بايد براي دريافت کد براي هر کامپيوتر اقدام شود (دشواري در نصب هاي تعداد بالا)

*در قفل هاي اکتيوايکس ممکن است با فرمت کردن، پارتيشن بندي تغيير يابد که شرکت نمي تواند دقيقاً حدس بزند اين قفل براي اين سيستم بوده يا واقعاً تغيير کرده است. در اکثر قفل هاي ساخته شده تغييرات اين کد بسيار مشاهده شده است.

*با صدمه ديدن قطعه اي از کامپيوتر و يا تعويض يک قطعه، برنامه تصور مي کند که سيستم تغيير يافته است مثلا با تغيير حافظه سيستم.

 

نقاط قوت:

*امنيت بالا براي برنامه نويس از نظر کپي برداري با تعداد بالا.

*داراي بيشترين امنيت نسبت به ساير قفل هاي نرم افزراي يا CD.

*سازگاري بسيار بالا نسبت به ساير قفل هاي نرم افزاري.

*قابليت آمارگيري فروش برنامه توسط شرکت ارايه کننده کد معادل قفل هاي CD را مي دهد.

 

جمع بندی

با توجه به اهداف crackerها که شناسایی قفل و سپس شکستن این سد و نفوذ است، انواع آن به شرح ذیل تقسیم می‌شود:

▪ قفل‌هایی که شکستن آنها به منظور دستیابی به محصول صورت می‌گیرد.

▪ قفل‌هایی که شکستن آنها به منظور رسیدن به هدف‌های مجازی و رفتن در عمق اطلاعاتی دشمن صورت می‌پذیرد.

 

  انتشار : ۲۲ آبان ۱۳۹۵               تعداد بازدید : 1718

دفتر فنی دانشجو

توجه: چنانچه هرگونه مشكلي در دانلود فايل هاي خريداري شده و يا هر سوال و راهنمایی نیاز داشتيد لطفا جهت ارتباط سریعتر ازطريق شماره تلفن و ايميل اعلام شده ارتباط برقرار نماييد.

فید خبر خوان    نقشه سایت    تماس با ما