کتاب Crack و تکنیک های نفوذ به نرم افزار
تالیف: مهندس امید غلامی و مهندس سید بهزاد لاجوردی
فهرست مطالب کتاب رو در ادامه مطلب می تونید به صورت فصلی مطالعه کنید
تعداد صفحه : ۷۵۲
حجم کتاب ۱۸ MB
حجم CD ضمیمه ۱۵۷ MB
پسورد: dlbook.net
دانلود مستقیم
دانلود CD ضمیمه
فهرست مطالب
مقدمه ۲۳
فصل اول ۲۹
مهندسی معکوس چیست؟ ۲۹
مکانیک ۲۹
زیست شناسی و نانوتکنولوژی ۳۰
الکترونیک و سختافزار ۳۱
شرایط استفاده و امکانات لازم ۳۲
نمونههایی از کاربردها در رشته نرمافزار ۳۲
کشف کدگذاریها و رمزها ۳۲
استفاده در مراجع قانونی ۳۳
مبارزه با ویروسها و کشف نرمافزارهای مخرب ۳۳
تعییر در روند اجرایی و یا ظاهر یک نرمافزار ۳۳
طراحی مجدد یک نرمافزار ۳۴
مستندسازی یک نرمافزار موجود ۳۵
فصل دوم ۳۹
جمعآوری اطلاعات اولیه ۳۹
بررسی فایلهای اجرایی به صورت ایستا ۳۹
شناسایی نوع کامپایلر ۳۹
خصوصیات فایل های اجرایی در کامپایلرهای مختلف ۴۰
Visual C++ ۴۱
C++ Builder و Delphi 41
Visual Basic 41
.NET (…, VB .Net, C#) ۴۳
نرم افزار PEiD 44
نرم افزار Language 2000 44
بررسی توابع ورودی ۴۵
نرم افزار Dependency Walker 46
بررسی منابع ۴۸
نرم افزار Resource Tuner 49
نرم افزار Resource Hacker 50
بررسی ساختار فایلهای اجرایی ۵۲
نرم افزار PEView 52
بررسی فعالیتهای فایلهای اجرایی در مرحلة اجرا ۵۳
بررسی جزئیات Process 54
نرم افزار Process Explorer 55
نرم افزار Process Viewer 56
بررسی dllها ۵۷
بررسی Threadها (صف های دستورات) ۵۸
بررسی فضای حافظة برنامه ۶۰
بررسی شمارههای دسترسی ۶۱
بررسی فعالیتها در زمینة فایل ۶۳
نرم افزار File Monitor 63
بررسی فعالیتها در Registry 66
نرم افزار Registry Monitor 66
بررسی فعالیتها در زمینة ارتباطات شبکه ۶۸
بررسی Connectionهای مورد استفاده ۶۸
نرم افزار Netstat 69
بررسی تبادل دادهها در شبکه ۷۰
درایورهای مجازی ۷۱
حالت بیقید (Promiscuous) در کارتهای شبکه ۷۱
Snifferها ۷۳
ابزارهای Libpcap وWinpcap 73
نرم افزار Ethereal 74
ضبط کردن و مدیریت بستههای مبادله شده ۷۶
بررسی فعالیتها در زمینة پورتهای سختافزاری ۸۱
ناظرهای سختافزاری ۸۲
ناظرهای نرمافزاری ۸۳
پورت های سریال ۸۳
نرم افزار Serial Monitor 83
Protocol Analyzer 85
Log File playback 85
پورت های USB 88
نرم افزار USB Monitor 88
بررسی فراخوانیهای توابع API 90
فایل های کتابخانه ای استاندارد ویندوز ۹۰
عملیات بارگذاری و فراخوانی توابع API 92
نظارت بر فراخوانی های توابع API 93
نرم افزار API Monitor 93
تعیین فیلتر برای Process ها ۹۳
تعیین فیلترهایی برای توابع API 95
نرم افزار Smart Check 98
نرم افزار SoftSnoop 103
نظارت بر فراخوانی های API 104
ایجاد تغییرات در فراخوانیهای API 105
فصل سوم ۱۱۱
بررسی کد ۱۱۱
Disassembler ها ۱۱۲
نرم افزار W32Dasm 113
نرم افزار PE Explorer 120
جستجو در کد ۱۲۱
بررسی ارجاع ها ۱۲۲
بررسی اشیاء VCL 123
استفاده از نماها ۱۲۵
نرم افزار (IDA Pro) Interactive Disassembler 127
مدیریت پروژه ۱۲۸
جستجو در کد ۱۲۹
بررسی ارجاعها ۱۳۴
گراف ها و نمودارها ۱۳۵
۱- فلوچارت ها ۱۳۵
۲- نمودار کلی فراخوانی ها ۱۳۷
۳- نمودار فراخوانی ها از توابع ۱۳۸
۴- نمودار فراخوانی های انجام شده به وسیله توابع ۱۳۹
فصل چهارم ۱۴۳
Decompiler ها ۱۴۳
C/C++ Decompliers 143
نرم افزار REC (Reverse Engineering Compiler) 144
JAVA Decompilers 152
نرم افزار DJ JAVA Decompiler (JAD) 152
Visual Basic Decompilers 153
نرم افزار VB Reformer 154
C++ Builder / Delphi Decopilers 157
نرم افزار DeDe (Delphi Decompiler) 157
.Net Decompilers 168
فصل پنجم ۱۷۱
Debugger ها ۱۷۱
مقدمه ۱۷۱
نرم افزارOllyDbg 172
شروع عملیات دیباگ ۱۷۳
اجرای فایل اجرایی در حالت دیباگ ۱۷۳
اتصال به فایل های اجرایی در حین اجرا ۱۷۵
اجرای توابع داخلی فایل های dll در حالت دیباگ ۱۷۶
پنجره اصلی (CPU window) Olly Dbg 179
نقاط توقف (Breakpoints) 187
نقاط توقف معمولی ۱۸۷
نقاط توقف شرطی ۱۸۸
نقاط توقف شرطی همراه با گزارش ۱۹۱
نقاط توقف برای پروسیجرهای پنجره ۱۹۴
نقاط توقف برای دسترسی ها به حافظه ۲۰۰
نقاط توقف یکبار مصرف برای بلوکهای حافظه ۲۰۲
نقاط توقف سختافزاری ۲۰۳
نقاط توقف برای رویدادهای دیباگ ۲۰۴
بررسی کد ۲۰۶
گزینههای حرکت در Disassembler 206
بررسی سلسه مراتبی فراخوانیهای انجام شده ۲۰۸
گزینههای جستجو ۲۱۲
جستجوی رشتهها ۲۱۳
جستجو براساس یک دستورالعمل ۲۱۳
جستجو براساس دنبالهای از دستورالعملها ۲۱۵
جستجوی فراخوانیهای خارجی انجام شده توسط فایل اجرایی ۲۱۷
جستجوی ارجاعهای انجام شده ۲۱۸
بررسی Threadها ۲۲۱
بررسی نواحی حافظة برنامه ۲۲۳
بررسی شمارههای دسترسی ۲۲۶
بررسی فایلهای dll مورد استفادة برنامه ۲۲۷
بررسی توابع ورودی و خروجی ۲۳۳
بررسی فراخوانیهای تودرتوی انجام شده ۲۳۹
کنترل، بررسی و ردیابی روند اجرایی ۲۴۵
اجرای مرحله به مرحله ۲۴۵
بررسی و کنترل دستورالعملهای اجرا شده ۲۴۹
ردیابی مراحل اجرای برنامه (Run Trace) 251
فصل ششم ۲۵۹
ایجاد تغییرات در فایل های اجرایی ۲۵۹
ایجاد تغییرات در منابع ۲۶۰
تغییر در منابع رشته ای ۲۶۰
تغییر در منوها ۲۶۱
تغییر در پنجرهها و دیالوگ ها ۲۶۴
Visual C++ (دیالوگ های استاندارد) ۲۶۵
Delphi / C++ Builder 267
Visual Basic 268
اضافه کردن منابع جدید به فایل های اجرایی ۲۷۱
ایجاد تغییرات در مشخصات و ساختار فایل های اجرایی ۲۷۳
تغییر در اطلاعات سرآیندها ۲۷۳
اضافه کردن dll ها و توابع در لیست توابع ورودی ۲۷۵
اضافه کرد ن توابع داخلی فایل های اجرایی به لیست توابع صادرشده (Export Table) 277
اضافه کردن و یا تغییر section ها در فایل های اجرایی ۲۸۰
ایجاد تغییرات در کدهای فایل های اجرایی ۲۸۴
ایجاد تغییرات به صورت ایستا ۲۸۴
ایجاد تغییرات در مراحل اجرا ۲۸۸
اضافه کردن کدهای جدید به فایل های اجرایی ۲۹۱
فصل هفتم ۲۹۹
درک کدهای اسمبلی ۲۹۹
سیستم های عددی ۳۰۰
ثبات ها ۳۰۲
ثبات های عمومی ۳۰۲
ثبات های سگمنت ۳۰۳
ثبات های اشاره گر ۳۰۴
ثبات های شاخص ۳۰۴
Stack 305
آدرس دهی ها در پردازنده های ۸۰×۸۶ ۳۰۶
شناسایی ساختارهای کلیدی مورد استفاده در زبانهای سطح بالا ۳۰۸
شناسایی عملگرهای ریاضی ۳۰۸
شناسایی عملگر جمع ۳۰۸
شناسایی عملگر تفریق ۳۱۰
شناسایی عملگر تقسیم ۳۱۲
شناسایی عملگر ضرب ۳۱۴
عملگرهای ++ و – - ۳۱۶
شناسایی رشتهها ۳۱۷
رشتههای C 318
رشتههای پاسکال ۳۱۹
رشتههای دلفی ۳۱۹
رشتههای گستردة پاسکال ۳۲۰
انواع ترکیبی ۳۲۰
شناسایی متغیرهای محلی ۳۲۱
آدرسدهی متغیرهای محلی ۳۲۲
جزئیات پیادهسازی ۳۲۴
شناسایی مکانیزم اختصاص حافظه ۳۲۵
مقداردهی اولیه متغیرهای محلی ۳۲۵
اختصاص حافظه به رکوردها و آرایهها ۳۲۵
ایجاد متغیرهای موقت برای ذخیره مقداربازگشتی توابع ونتیجه عبارات محاسباتی ۳۲۶
حوزة متغیرهای موقتی ۳۲۷
شناسایی متغیرهای سراسری ۳۲۸
آدرسدهی غیرمستقیم متغیرهای سراسری ۳۲۸
متغیرهای ایستا ۳۳۱
شناسایی حلقه های تکرار ۳۳۲
حلقهها با شرط در ابتدا ۳۳۳
حلقهها با شرط در انتها ۳۳۴
حلقهها با شمارشگر ۳۳۵
شناسایی ساختارهای کنترلی ۳۳۸
دستورات IF-THEN-ELSE 338
انواع شرطها ۳۴۱
دستورات جابه جایی شرطی ۳۴۵
مقایسههای بولین ۳۴۶
ساختار ((Condition)? Do-it: Continue) 346
دستورات Switch-case-break 349
شناسایی آرایهها و اشیاء ۳۵۵
شناسایی توابع ۳۷۱
شناسایی فراخوانیها ۳۷۲
شناسایی خودکار توابع با استفاده از IDA Pro 376
شناسایی آرگومانهای تابع ۳۸۰
قراردادهای فرستادن آرگومانها ۳۸۰
شناخت تعداد آرگومانها و روش ارسال آنها ۳۸۲
آدرس دهی آرگومانها در پشته ۳۸۷
آرگومانهای پیش فرض Default Arguments: 390
مقادیر بازگشتی توابع ۳۹۲
بازگرداندن مقادیر با استفاده از عملگر return 392
مقادیر بازگشتی از طریق آرگومانهای فرستاده شده با ارجاع ۴۰۲
بازگردانی مقدار از طریق متغیرهای سراسری ۴۱۰
فصل هشتم ۴۱۷
مقدمه ۴۱۷
برنامه های ۳۲ بیتی ۴۱۸
مزایای استفاده از Macro Assembler 419
اصول برنامه نویسی تحت Windows با ماکرو اسمبلر ۴۲۳
ایجاد یک برنامه ساده ۴۲۶
ایجاد یک پنجره ساده ۴۳۱
نمایش متن ۴۴۴
ورودی Keyboard 451
ورودی Mouse 456
منو ۴۶۱
کنترل های فرزند ۴۷۰
استفاده از DialogBox به عنوان پنجره اصلی برنامه ۴۷۷
استفاده از DialogBox به عنوان ابزار ورودی / خروجی ۴۹۰
مدیریت حافظه و فایل ۴۹۹
فایل های نگاشت شده به حافظه ۵۱۲
Process 523
Multithreading 532
شئ Event 540
نحوه ساخت و استفاده از dll ها ۵۴۶
کنترل های عمومی ۵۵۲
Subclassing 561
Superclassing 568
Bitmap 576
Win32 Debug API (بخش ۱) ۵۸۴
Win32 Debug API(بخش۲ ) ۵۹۵
Win32 Debug API (بخش ۳) ۶۰۴
ساختار فایل های اجرایی (بخش۱) ۶۰۹
ساختار فایل های اجرایی (بخش ۲) ۶۱۲
ساختار فایل های اجرایی (بخش ۳) File Header 620
ساختار فایل های اجرایی (بخش ۴) Optional Header 623
ساختار فایل های اجرایی (بخش ۵) Section Table 625
ساختار فایل های اجرایی (بخش ۶) Import Table 636
ساختار فایل های اجرایی (بخش۷)Export Table 654
فصل نهم ۶۵۹
برنامه نویسی و ایجاد درایورها در ویندوزهای خانواده NT 659
مروری بر معماری ویندوز ۶۵۹
اجزای اصلی سیستم ۶۵۹
Device Driver ها در ویندوزهای خانواده NT 662
سطوح درخواست وقفه Interrupt Request Level (IRQL) 663
سرویس ها(Services) 663
(SCM) Service Control Manager 664
برقراری ارتباط با SCM 668
نصب درایور جدید ۶۶۹
شروع یک درایور ۶۷۳
حذف یک درایور ۶۷۳
ساخت چند درایور ساده ۶۷۵
نحوه کامپایل و ساخت درایورهای Ring 0 675
یک درایور ساده ۶۷۶
درایوری برای استفاده از بلندگوی داخلی ۶۷۹
شروع خودکار درایور ۶۸۶
دسترسی به CMOS 687
درایوری برای تغییر اجازههای دسترسی به پورتهای سخت افزاری ۶۸۸
زیر سیستم I/O 700
برنامه کنترلی برای درایور (Virtophys) 701
شی ابزار ۷۰۷
شی درایور ۷۰۸
شیء فایل ۷۱۰
برقراری ارتباط با Device ها ۷۱۴
کدهای کنترلی I/O 715
تبادل دادهها ۷۱۷
ضمیمه ۷۲۱
مجموعه دستورات ۸۰×۸۶ ۷۲۱
علاقه مندی ها (بوک مارک ها)