تزریق SQL، حمله و دفاع
محسن کجباف
شابک: 9-89-6529-600-978
1394
400
252,000 تومان
280,000 تومان
-
+
Hack , امنيت , SQL , شبکه و امنیت , هک و تست نفوذ
نوبت چاپ | one |
---|---|
ویرایش | one |
وزن | 500 گرم |
جلد | 1 از 1 |
موجود است؟ | بلی |
---|---|
چاپ شده است؟ | بلی |
در حال پیش فروش است؟ | خیر |
کتاب الکترونیکی است؟ | خیر |
فهرست پیش از ویرایش کتاب:
فصل نخست؛ تزریق SQL چیست؟ 1
1-1- مقدمه 1
1-2- درک چگونگی کار نرمافزارهای وب 2
1-3- ساختار یک برنامه ساده 3
1-4- معماری پیچیده تر 4
1-5- درک تزریق SQL 6
1-6- مثالهای مهم در زمینه امنیت وب 9
1-7- درک چگونگی روی دادن آن 12
1-8- ایجاد رشته پویا 13
1-9- استفاده نادرست کاراکترهای escape
1-10- انواع استفادههای نادرست 15
1-10-1- استفاده نادرست از کوئری 16
1-10-2- استفاده نادرست از پیغامهای خطا 17
1-10-3- استفاده نادرست از پیشنهادهای چندگانه 19
1-11- پیکربندی نا امن پایگاه داده 21
1-12- پاسخهای سریع 24
1-12-1- درک چگونگی کار برنامههای کاربردی وب 24
1-12-2- درک مفهوم SQL
1-12-3- درک چگونگی روی دادن آن 25
پرسشهای متداول 25
فصل دوم؛ آزمونهای تزریق SQL 27
2-1- مقدمه 27
2-2- یافتن تزریق SQL 27
2-3- آزمون از طریق استنتاج 28
2-3-1 شناسایی داده های ورودی 28
2-3-1-1 درخواستهای GET
2-3-1-2 درخواستهای POST
2-4- جریان کاری اطلاعات 32
2-5- خطاهای پایگاه داده 34
2-7- نمایش خطاهای متداول SQL 35
2-7-1 خطاهای SQL Server 35
2-7-2 پاسخ برنامه کاربردی 40
2-7-3 خطاهای عمومی 41
2-8- خطاهای کد HTTP
2-9- اندازه های پاسخ مختلف 45
2-10- تشخیص تزریق کور 46
2-11- تأیید تزریق SQL
2-12- تفکیک اعداد و رشته ها 50
2-13- تزریق درون خطی SQL 51
2-13-1 تزریق درون خطی رشتهها 51
2-13-2 تزریق درون خطی مقادیر عددی 55
2-14- خاتمه تزریق SQL 58
2-14-1 نحو کامنت پایگاه داده 59
2-14-2 استفاده از کامنت ها 60
2-14-3 اجرای گزاره های چندتایی 64
2-15- تأخیرهای زمانی 69
2-16- خودکارسازی کشف تزریق SQL
2-17- ابزار یافتن خودکار تزریق SQL
2-17-1- HP WebInspect
2-17-2- AppScan منطقی IBM 73
2-17-3- HP Scrawlr 75
2-17-4- SQLiX 77
2-17-5- پروکسی Paros 79
2-18- مـرور سریع
2-18-1- یافتن تزریق SQL
2-18-2- تأیید تزریق SQL
2-18-3- خودکارسازی کشف تزریق SQL
پرسشهای متداول 83
فصل سوم؛ بررسی کد برای شناسایی تزریق SQL 85
3-1- معرفی 85
3-2- بررسی کد منبع برای تزریق SQL 85
3-3- رفتارهای کدنویسی خطرناک 88
3-4- توابع خطـرنـاک 96
3-5- تعقیب داده ها 99
3-6- تعقیب داده ها در جاوا 100
3-7- تعقیب دادهها در C#
3-8- بررسی کد PL/SQL و T-SQL
3-9- بررسی خودکار کد منبع 111
3-10- یاسکا (YASCA)
3-11- Pixy 114
3-12- اسکن کد نرمافزار (AppCodeScan) 114
3-13- LAPSE 115
3-14- ابزار قطب نمای امنیتی آنالیز برنامههای وب (SWAAT) 116
3-15- تحلیلگر کد منبع مایکروسافت برای تزریق SQL
3-16- ابزار تحلیل کد مایکروسافت .NET (CAT.NET)
3-17- ابزارهای تجاری بررسی منبع کد
3-18- اونس (OUNCE)
3-19- تقویت تحلیلگر کد منبع 119
3-20- ایمن کد (CodeSecure)
3-21- خلاصهی بحث 120
3-22- مرور سریع 121
3-22-1- بررسی کد منبع برای تزریق SQL 121
3-22-2- بررسی کد منبع خودکار 121
3-23- پرسشهای متداول 122
فصل چهارم؛ بهره برداری از تزریق SQL
4-1- معرفی 125
4-2- درک تکنیکهای عمومی بهره برداری 126
4-3- استفاده از جستوجوهای انباشته (stacked)
4-4- شناسایی پایگاه داده (بانک اطلاعات) 128
4-5- اثر انگشت غیرکور 129
4-6- روش Banner Grabbing 131
4-7- اثر انگشت کور 133
4-8- استخراج اطلاعات از طریق دستورات UNION
4-9- تطبیق ستونها 135
4-10- تطبیق انواع داده ها 137
4-11- استفاده از گزاره های شرطی 143
4-12- روش 1: مبتنی بر زمان 144
4-13- روش 2: مبتنی بر خطا 146
4-14- روش 3: مبتنی بر محتوا 148
4-15- کـار با رشتـهها 148
4-16- بسط و توسعهی حمله 150
4-20- افزایش اختیارات بر روی سرورهای اصلاح نشده (unpatched)
4-22- ارتباط خارج از گروه (OOB)
4-23- ایمیل 166
4-24- SQL Server
4-25- HTTP/DNS
4-26- سیستم فایل (File System) 170
4-28- خودکارسازی بهره برداری تزریق SQL 173
4-28-1- Sqlmap 173
4-28-2- مثالهایی از Sqlmap 175
4-28-3- بابکت (Bobcat)
4-28-4- BSQL
4-28-5- سایـر ابزارهـا 180
4-29- خلاصه ی بحث 180
4-30- مـرور سریـع 181
4-30-1- درک تکنیکهای معمول بهره برداری 181
4-30-2- شناسایی پایگاه داده 181
4-30-3- استخراج داده از طریق گزارهی UNION 182
4-30-4- استفاده از گزارههای شرطی 182
4-30-6- افزایش اختیارات 182
4-30-7- سرقت هَشهای گذرواژه 183
4-30-8- ارتباطات خارج از گروه (OOB)
4-30-9- خودکارسازی بهره برداری تزریق SQL
4-31- پرسشهای متداول 183
فصل پنجم؛ بهره برداری از تزریق SQL کور 185
5-1- مقدمه 185
5-2- یافتن و تأیید کردن تزریق SQL کور 186
5-3- اجبار خطاهای عمومی 186
5-4- تزریق جستوجوها با عوارض جانبی 187
5-5- تقسیم کردن و متعادل کردن 187
5-6- حالتهای رایج تزریق SQL کور 190
5-7- تکنیکهای تزریق SQL کور 191
5-8- تکنیکهای استنباطی 191
5-9- افزایش پیچیدگیهای تکنیکهای استنباط 195
5-10- تکنیکهای کانالهای جایگزین 199
5-11- استفاده از تکنیکهای مبتنی بر زمان 200
5-12- تأخیرات SQL Server
5-13- بهره برداری استنباط جستوجوی بیناری SQL Server عمومی 202
5-14- بهره برداری استنباط جستوجوی بیت به بیت SQL Server عمومی 202
5-15- ملاحظات استنباط مبتنی بر زمان 202
5-16- استفاده از تکنیکهای مبتنی بر پاسخ 203
5-17- تکنیکهای پاسخ SQL Server
5-18- بازگرداندن بیش از یک بیت از اطلاعات 206
5-19- استفاده از کانالهای جایگزین 208
5-20- اتصالهای پایگاه داده 208
5-21- فیلتر خروج DNS
5-22- فیلتر خروج ایمیل 213
5-23- فیلتر خروج HTTP 214
5-24- خودکارسازی بهره برداری از تزریق SQL کور 216
5-24-1- Absinthe 217
5-24-2- هکر BSQL
5-24-3- SQLBrute
5-24-4- SQLninja
5-24-5- Squeeza
5-25- خلاصه ی بحث 224
5-26- مرور سریع 225
5-26-1- یافتن و تأیید کردن تزریق SQL کور 225
5-26-2- استفاده از تکنیکهای مبتنی بر زمان 225
5-26-3- استفاده از تکنیکهای مبتنی بر پاسخ 225
5-26-4- استفاده از کانالهای جایگزین 225
5-26-5- خودکارسازی بهره برداری از تزریق SQL کور 226
5-27- سؤالات متداول 226
فصل ششم؛ بهره برداری (استخراج) از سیستم عامل 229
6-1- مقدمه 229
6-2- دسترسی به سیستم فایل 230
6-3- خواندن فایلها 230
6-4- SQL Server
6-5- Oracle
6-6- نوشتن فایلها 241
6-7- SQL Server
6-8- اجرای دستورات سیستم عامل 249
6-9- اجرای مستقیم 249
6-10- احتمالات دیگر 249
6-10-1- تغییر (اصلاح) رویدادهای مجموعه سیستم 250
6-10-2- PL/SQL محلی i9
6-10-3- سرریز بافر 250
6-10-4- کد سفارشی برنامه 250
6-11- SQL Server 251
6-12- افزایش دسترسی 255
6-13- خلاصهی بحث 257
6-14- مـرور سـریع 258
6-14-1- دسترسی به سیستم فایل 258
6-14-2- اجرای دستورات سیستم عامل 258
6-14-3- افزایش دسترسی 259
6-15- پرسشهای متداول 259
فصل هفتم؛ مباحث پیشرفته 261
7-1- مقدمه 261
7-2- دور زدن فیلترهای ورودی 261
7-3- استفاده از تنوع حرف 262
7-4- استفاده از کامنتهای SQL
7-5- استفاده از رمزگذاریURL
7-6- استفاده از اجرای جستوجوی داینامیک 267
7-7- استفاده از بایتهای نول (Null) 268
7-8- قراردادن عبارات رشتهای 269
7-9- سوءاستفاده از کوتاهسازی 269
7-10- دور زدن فیلترهای سفارشی 271
7-11- استفاده از نقاط ورودی غیر استاندارد 272
7-12- سواستفاده از تزریق SQL مرتبه دوم 274
7-13- یافتن آسیبپذیریهای مرتبه دوم 276
7-14- استفاده از حملات ترکیبی 279
7-15- اعمال فشار با استفاده از دادههای گرفته شده 279
7-16- ایجاد پردازهنویسی کراس-سایت 279
7-17- اجرای دستورات سیستم عامل بر روی Oracle
7-18- سوءاستفاده از آسیبپذیریهای تأییدشده 281
7-19- خلاصه ی بحث 282
7-20- مرور سریع 283
7-20-1- دور زدن فیلترهای ورودی 283
7-20-2- سواستفاده از تزریق SQL مرتبه دوم 283
7-20-3- استفاده از حملات ترکیبی 283
7-21- پرسشهای متداول 284
فصل هشتم؛ دفاع سطح-کد 287
8-1- مقدمه 287
8-2- استفاده از گزاره های پارامتری شده (parameterized)
8-3- گزارههای پارامتری شده در جاوا 289
8-4- گزارههای پارامتری شده در (C#).NET 291
8-5- اعتبارسنجی ورودی 293
8-6- تهیه لیست سفید 294
8-7- تهیه لیست سیاه 296
8-8- تأییداعتبار ورودی در جاوا 297
8-9- تأییداعتبار ورودی در .NET
8-10- رمزگذاری خروجی 299
8-11- رمزگذاری برای پایگاه داده 300
8-12- رمزگذاری برای SQL Server 300
8-13- استانداردسازی 302
8-14- روشهای استانداردسازی 303
8-15- کار با یونیکدها 304
8-16- تدابیری برای جلوگیری از خطرات ناشی از تزریق SQL
8-17- استفاده از رویه های ذخیره شده 306
8-18- استفاده از لایه های انتزاع 307
8-19- چگونگی رفتار با دادههای حساس 308
8-20- منع استفاده از اسامی هدف آشکار 309
8-21- ایجاد هانیپاتهای پایگاه داده 310
8-22- منابع دیگر توسعهی ایمن 311
8-23- خلاصه ی بحث 312
8-24- مـرور سـریع 312
8-24-1- استفاده از گزاره های پارامتری شده 312
8-24-2- تأییداعتبار داده های ورودی 313
8-24-3- کدگذاری خروجی 313
8-24-4- استانداردسازی 313
8-24-5- تدابیری برای جلوگیری از خطرات ناشی از تزریق SQL
8-25- پرسشهای متداول 314
فصل نهم؛ شیوههای دفاع در سطح پلتفرم 317
9-1- مقدمه 317
9-2- استفاده از حفاظت زمان اجرا 317
9-3- فایروالهای برنامه های وب 319
9-4- استفاده از ModSecurity
9-5- مجموعه دستورات قابل تنظیم 320
9-6- پوشش درخواست 322
9-7- نرمال سازی درخواست 323
9-8- آنالیز پاسخ 324
9-9- قابلیتهای تشخیص نفوذ 325
9-10- فیلترهای جلوگیری 326
9-11- فیلترهای سرور وب 326
9-12- فیلترهای نرمافزار (برنامه) 329
9-13- اجرای الگوی فیلتر در زبانهای اسکریپت نویسی شده 330
9-14- فیلترکردن پیامهای خدمات وب 331
9-15- حفاظت ورودی قابل ویرایش در مقابل حفاظت ورودی غیر قابل ویرایش 331
9-16- استراتژیها در سطح صفحه/ URL
9-16-1- جایگزین کردن صفحه (page overriding)
9-16-2- بازنویسی URL
9-16-3- Proxying/Wrapping منابع 333
9-16-4- برنامه نویسی جنبهگرا (AOP) 334
9-17- سیستمهای تشخیص نفوذ به نرمافزار (IDSها) 334
9-18- دیوار آتش (فایروال) پایگاه داده 335
9-19- ایمنسازی پایگاه داده 335
9-20- قفل کردن دادههای برنامه 335
9-20-1- استفاده از ورود به سیستم (login) با کمترین اختیارات پایگاه داده 336
9-20-2- لغو مجوزهای PUBLIC 336
9-20-3- استفاده از رویه های ذخیره شده 337
9-20-4- استفاده از رمزنگاری قوی برای حافظت از اطلاعات حساس ذخیره شده 337
9-20-5- حفظ یک دنبالهی ممیزی 338
9-21- قفل کردن (ایمنکردن) پایگاههای اطلاعاتی سرور 338
9-21-1- قفلکردن (ایمنکردن) دیگر اهداف سیستم 339
9-21-2- محدودکردن جستوجوهای موردی 339
9-21-3- تقویت ابزارهای کنترلی محیط تأیید 340
9-21-4- اجرا در شرایط حساب کاربری سیستم عامل دارای حداقل اختیارات 340
9-21-5- اطمینان یابید که نرمافزار سرور پایگاه داده، پچ (اصلاح) شده است 341
9-21-6- استفاده از پیش فرض خالی وبسایت 341
9-21-7- استفاده از نامهای ساختگی میزبان برای جستوجوهای DNS معکوس 342
9-21-8- استفاده از گواهی های فرانویسه ی SSL
9-21-9- محدودکردن کشف از طریق هک کردن موتور جستوجو 343
9-21-10- غیرفعال کردن اطلاعات زبان توصیف خدمات وب (WSDL)
9-21-11- افزایش اضافه نویسی لاگهای سرور وب 344
9-21-12- استقرار وب و سرورهای پایگاه داده بر روی میزبانهای جداگانه 345
9-21-13- تنظیم کنترل دسترسی به شبکه 345
9-22- خلاصهی بحث 345
9-23- مرور سریع 346
9-23-1- استفاده از حفاظت زمان اجرا 346
9-23-2- تأمین امنیت پایگاه داده 346
9-23-3- دیگر ملاحظات اجرایی 346
9-24- پرسشهای متداول 347
فصل نخست؛ تزریق SQL چیست؟ 1
1-1- مقدمه 1
1-2- درک چگونگی کار نرمافزارهای وب 2
1-3- ساختار یک برنامه ساده 3
1-4- معماری پیچیده تر 4
1-5- درک تزریق SQL 6
1-6- مثالهای مهم در زمینه امنیت وب 9
1-7- درک چگونگی روی دادن آن 12
1-8- ایجاد رشته پویا 13
1-9- استفاده نادرست کاراکترهای escape
1-10- انواع استفادههای نادرست 15
1-10-1- استفاده نادرست از کوئری 16
1-10-2- استفاده نادرست از پیغامهای خطا 17
1-10-3- استفاده نادرست از پیشنهادهای چندگانه 19
1-11- پیکربندی نا امن پایگاه داده 21
1-12- پاسخهای سریع 24
1-12-1- درک چگونگی کار برنامههای کاربردی وب 24
1-12-2- درک مفهوم SQL
1-12-3- درک چگونگی روی دادن آن 25
پرسشهای متداول 25
فصل دوم؛ آزمونهای تزریق SQL 27
2-1- مقدمه 27
2-2- یافتن تزریق SQL 27
2-3- آزمون از طریق استنتاج 28
2-3-1 شناسایی داده های ورودی 28
2-3-1-1 درخواستهای GET
2-3-1-2 درخواستهای POST
2-4- جریان کاری اطلاعات 32
2-5- خطاهای پایگاه داده 34
2-7- نمایش خطاهای متداول SQL 35
2-7-1 خطاهای SQL Server 35
2-7-2 پاسخ برنامه کاربردی 40
2-7-3 خطاهای عمومی 41
2-8- خطاهای کد HTTP
2-9- اندازه های پاسخ مختلف 45
2-10- تشخیص تزریق کور 46
2-11- تأیید تزریق SQL
2-12- تفکیک اعداد و رشته ها 50
2-13- تزریق درون خطی SQL 51
2-13-1 تزریق درون خطی رشتهها 51
2-13-2 تزریق درون خطی مقادیر عددی 55
2-14- خاتمه تزریق SQL 58
2-14-1 نحو کامنت پایگاه داده 59
2-14-2 استفاده از کامنت ها 60
2-14-3 اجرای گزاره های چندتایی 64
2-15- تأخیرهای زمانی 69
2-16- خودکارسازی کشف تزریق SQL
2-17- ابزار یافتن خودکار تزریق SQL
2-17-1- HP WebInspect
2-17-2- AppScan منطقی IBM 73
2-17-3- HP Scrawlr 75
2-17-4- SQLiX 77
2-17-5- پروکسی Paros 79
2-18- مـرور سریع
2-18-1- یافتن تزریق SQL
2-18-2- تأیید تزریق SQL
2-18-3- خودکارسازی کشف تزریق SQL
پرسشهای متداول 83
فصل سوم؛ بررسی کد برای شناسایی تزریق SQL 85
3-1- معرفی 85
3-2- بررسی کد منبع برای تزریق SQL 85
3-3- رفتارهای کدنویسی خطرناک 88
3-4- توابع خطـرنـاک 96
3-5- تعقیب داده ها 99
3-6- تعقیب داده ها در جاوا 100
3-7- تعقیب دادهها در C#
3-8- بررسی کد PL/SQL و T-SQL
3-9- بررسی خودکار کد منبع 111
3-10- یاسکا (YASCA)
3-11- Pixy 114
3-12- اسکن کد نرمافزار (AppCodeScan) 114
3-13- LAPSE 115
3-14- ابزار قطب نمای امنیتی آنالیز برنامههای وب (SWAAT) 116
3-15- تحلیلگر کد منبع مایکروسافت برای تزریق SQL
3-16- ابزار تحلیل کد مایکروسافت .NET (CAT.NET)
3-17- ابزارهای تجاری بررسی منبع کد
3-18- اونس (OUNCE)
3-19- تقویت تحلیلگر کد منبع 119
3-20- ایمن کد (CodeSecure)
3-21- خلاصهی بحث 120
3-22- مرور سریع 121
3-22-1- بررسی کد منبع برای تزریق SQL 121
3-22-2- بررسی کد منبع خودکار 121
3-23- پرسشهای متداول 122
فصل چهارم؛ بهره برداری از تزریق SQL
4-1- معرفی 125
4-2- درک تکنیکهای عمومی بهره برداری 126
4-3- استفاده از جستوجوهای انباشته (stacked)
4-4- شناسایی پایگاه داده (بانک اطلاعات) 128
4-5- اثر انگشت غیرکور 129
4-6- روش Banner Grabbing 131
4-7- اثر انگشت کور 133
4-8- استخراج اطلاعات از طریق دستورات UNION
4-9- تطبیق ستونها 135
4-10- تطبیق انواع داده ها 137
4-11- استفاده از گزاره های شرطی 143
4-12- روش 1: مبتنی بر زمان 144
4-13- روش 2: مبتنی بر خطا 146
4-14- روش 3: مبتنی بر محتوا 148
4-15- کـار با رشتـهها 148
4-16- بسط و توسعهی حمله 150
4-20- افزایش اختیارات بر روی سرورهای اصلاح نشده (unpatched)
4-22- ارتباط خارج از گروه (OOB)
4-23- ایمیل 166
4-24- SQL Server
4-25- HTTP/DNS
4-26- سیستم فایل (File System) 170
4-28- خودکارسازی بهره برداری تزریق SQL 173
4-28-1- Sqlmap 173
4-28-2- مثالهایی از Sqlmap 175
4-28-3- بابکت (Bobcat)
4-28-4- BSQL
4-28-5- سایـر ابزارهـا 180
4-29- خلاصه ی بحث 180
4-30- مـرور سریـع 181
4-30-1- درک تکنیکهای معمول بهره برداری 181
4-30-2- شناسایی پایگاه داده 181
4-30-3- استخراج داده از طریق گزارهی UNION 182
4-30-4- استفاده از گزارههای شرطی 182
4-30-6- افزایش اختیارات 182
4-30-7- سرقت هَشهای گذرواژه 183
4-30-8- ارتباطات خارج از گروه (OOB)
4-30-9- خودکارسازی بهره برداری تزریق SQL
4-31- پرسشهای متداول 183
فصل پنجم؛ بهره برداری از تزریق SQL کور 185
5-1- مقدمه 185
5-2- یافتن و تأیید کردن تزریق SQL کور 186
5-3- اجبار خطاهای عمومی 186
5-4- تزریق جستوجوها با عوارض جانبی 187
5-5- تقسیم کردن و متعادل کردن 187
5-6- حالتهای رایج تزریق SQL کور 190
5-7- تکنیکهای تزریق SQL کور 191
5-8- تکنیکهای استنباطی 191
5-9- افزایش پیچیدگیهای تکنیکهای استنباط 195
5-10- تکنیکهای کانالهای جایگزین 199
5-11- استفاده از تکنیکهای مبتنی بر زمان 200
5-12- تأخیرات SQL Server
5-13- بهره برداری استنباط جستوجوی بیناری SQL Server عمومی 202
5-14- بهره برداری استنباط جستوجوی بیت به بیت SQL Server عمومی 202
5-15- ملاحظات استنباط مبتنی بر زمان 202
5-16- استفاده از تکنیکهای مبتنی بر پاسخ 203
5-17- تکنیکهای پاسخ SQL Server
5-18- بازگرداندن بیش از یک بیت از اطلاعات 206
5-19- استفاده از کانالهای جایگزین 208
5-20- اتصالهای پایگاه داده 208
5-21- فیلتر خروج DNS
5-22- فیلتر خروج ایمیل 213
5-23- فیلتر خروج HTTP 214
5-24- خودکارسازی بهره برداری از تزریق SQL کور 216
5-24-1- Absinthe 217
5-24-2- هکر BSQL
5-24-3- SQLBrute
5-24-4- SQLninja
5-24-5- Squeeza
5-25- خلاصه ی بحث 224
5-26- مرور سریع 225
5-26-1- یافتن و تأیید کردن تزریق SQL کور 225
5-26-2- استفاده از تکنیکهای مبتنی بر زمان 225
5-26-3- استفاده از تکنیکهای مبتنی بر پاسخ 225
5-26-4- استفاده از کانالهای جایگزین 225
5-26-5- خودکارسازی بهره برداری از تزریق SQL کور 226
5-27- سؤالات متداول 226
فصل ششم؛ بهره برداری (استخراج) از سیستم عامل 229
6-1- مقدمه 229
6-2- دسترسی به سیستم فایل 230
6-3- خواندن فایلها 230
6-4- SQL Server
6-5- Oracle
6-6- نوشتن فایلها 241
6-7- SQL Server
6-8- اجرای دستورات سیستم عامل 249
6-9- اجرای مستقیم 249
6-10- احتمالات دیگر 249
6-10-1- تغییر (اصلاح) رویدادهای مجموعه سیستم 250
6-10-2- PL/SQL محلی i9
6-10-3- سرریز بافر 250
6-10-4- کد سفارشی برنامه 250
6-11- SQL Server 251
6-12- افزایش دسترسی 255
6-13- خلاصهی بحث 257
6-14- مـرور سـریع 258
6-14-1- دسترسی به سیستم فایل 258
6-14-2- اجرای دستورات سیستم عامل 258
6-14-3- افزایش دسترسی 259
6-15- پرسشهای متداول 259
فصل هفتم؛ مباحث پیشرفته 261
7-1- مقدمه 261
7-2- دور زدن فیلترهای ورودی 261
7-3- استفاده از تنوع حرف 262
7-4- استفاده از کامنتهای SQL
7-5- استفاده از رمزگذاریURL
7-6- استفاده از اجرای جستوجوی داینامیک 267
7-7- استفاده از بایتهای نول (Null) 268
7-8- قراردادن عبارات رشتهای 269
7-9- سوءاستفاده از کوتاهسازی 269
7-10- دور زدن فیلترهای سفارشی 271
7-11- استفاده از نقاط ورودی غیر استاندارد 272
7-12- سواستفاده از تزریق SQL مرتبه دوم 274
7-13- یافتن آسیبپذیریهای مرتبه دوم 276
7-14- استفاده از حملات ترکیبی 279
7-15- اعمال فشار با استفاده از دادههای گرفته شده 279
7-16- ایجاد پردازهنویسی کراس-سایت 279
7-17- اجرای دستورات سیستم عامل بر روی Oracle
7-18- سوءاستفاده از آسیبپذیریهای تأییدشده 281
7-19- خلاصه ی بحث 282
7-20- مرور سریع 283
7-20-1- دور زدن فیلترهای ورودی 283
7-20-2- سواستفاده از تزریق SQL مرتبه دوم 283
7-20-3- استفاده از حملات ترکیبی 283
7-21- پرسشهای متداول 284
فصل هشتم؛ دفاع سطح-کد 287
8-1- مقدمه 287
8-2- استفاده از گزاره های پارامتری شده (parameterized)
8-3- گزارههای پارامتری شده در جاوا 289
8-4- گزارههای پارامتری شده در (C#).NET 291
8-5- اعتبارسنجی ورودی 293
8-6- تهیه لیست سفید 294
8-7- تهیه لیست سیاه 296
8-8- تأییداعتبار ورودی در جاوا 297
8-9- تأییداعتبار ورودی در .NET
8-10- رمزگذاری خروجی 299
8-11- رمزگذاری برای پایگاه داده 300
8-12- رمزگذاری برای SQL Server 300
8-13- استانداردسازی 302
8-14- روشهای استانداردسازی 303
8-15- کار با یونیکدها 304
8-16- تدابیری برای جلوگیری از خطرات ناشی از تزریق SQL
8-17- استفاده از رویه های ذخیره شده 306
8-18- استفاده از لایه های انتزاع 307
8-19- چگونگی رفتار با دادههای حساس 308
8-20- منع استفاده از اسامی هدف آشکار 309
8-21- ایجاد هانیپاتهای پایگاه داده 310
8-22- منابع دیگر توسعهی ایمن 311
8-23- خلاصه ی بحث 312
8-24- مـرور سـریع 312
8-24-1- استفاده از گزاره های پارامتری شده 312
8-24-2- تأییداعتبار داده های ورودی 313
8-24-3- کدگذاری خروجی 313
8-24-4- استانداردسازی 313
8-24-5- تدابیری برای جلوگیری از خطرات ناشی از تزریق SQL
8-25- پرسشهای متداول 314
فصل نهم؛ شیوههای دفاع در سطح پلتفرم 317
9-1- مقدمه 317
9-2- استفاده از حفاظت زمان اجرا 317
9-3- فایروالهای برنامه های وب 319
9-4- استفاده از ModSecurity
9-5- مجموعه دستورات قابل تنظیم 320
9-6- پوشش درخواست 322
9-7- نرمال سازی درخواست 323
9-8- آنالیز پاسخ 324
9-9- قابلیتهای تشخیص نفوذ 325
9-10- فیلترهای جلوگیری 326
9-11- فیلترهای سرور وب 326
9-12- فیلترهای نرمافزار (برنامه) 329
9-13- اجرای الگوی فیلتر در زبانهای اسکریپت نویسی شده 330
9-14- فیلترکردن پیامهای خدمات وب 331
9-15- حفاظت ورودی قابل ویرایش در مقابل حفاظت ورودی غیر قابل ویرایش 331
9-16- استراتژیها در سطح صفحه/ URL
9-16-1- جایگزین کردن صفحه (page overriding)
9-16-2- بازنویسی URL
9-16-3- Proxying/Wrapping منابع 333
9-16-4- برنامه نویسی جنبهگرا (AOP) 334
9-17- سیستمهای تشخیص نفوذ به نرمافزار (IDSها) 334
9-18- دیوار آتش (فایروال) پایگاه داده 335
9-19- ایمنسازی پایگاه داده 335
9-20- قفل کردن دادههای برنامه 335
9-20-1- استفاده از ورود به سیستم (login) با کمترین اختیارات پایگاه داده 336
9-20-2- لغو مجوزهای PUBLIC 336
9-20-3- استفاده از رویه های ذخیره شده 337
9-20-4- استفاده از رمزنگاری قوی برای حافظت از اطلاعات حساس ذخیره شده 337
9-20-5- حفظ یک دنبالهی ممیزی 338
9-21- قفل کردن (ایمنکردن) پایگاههای اطلاعاتی سرور 338
9-21-1- قفلکردن (ایمنکردن) دیگر اهداف سیستم 339
9-21-2- محدودکردن جستوجوهای موردی 339
9-21-3- تقویت ابزارهای کنترلی محیط تأیید 340
9-21-4- اجرا در شرایط حساب کاربری سیستم عامل دارای حداقل اختیارات 340
9-21-5- اطمینان یابید که نرمافزار سرور پایگاه داده، پچ (اصلاح) شده است 341
9-21-6- استفاده از پیش فرض خالی وبسایت 341
9-21-7- استفاده از نامهای ساختگی میزبان برای جستوجوهای DNS معکوس 342
9-21-8- استفاده از گواهی های فرانویسه ی SSL
9-21-9- محدودکردن کشف از طریق هک کردن موتور جستوجو 343
9-21-10- غیرفعال کردن اطلاعات زبان توصیف خدمات وب (WSDL)
9-21-11- افزایش اضافه نویسی لاگهای سرور وب 344
9-21-12- استقرار وب و سرورهای پایگاه داده بر روی میزبانهای جداگانه 345
9-21-13- تنظیم کنترل دسترسی به شبکه 345
9-22- خلاصهی بحث 345
9-23- مرور سریع 346
9-23-1- استفاده از حفاظت زمان اجرا 346
9-23-2- تأمین امنیت پایگاه داده 346
9-23-3- دیگر ملاحظات اجرایی 346
9-24- پرسشهای متداول 347
# | موضوع | عنوان | توضیح | دانلود |
---|---|---|---|---|
1 | نمونه pdf | صفحات آغازين كتاب | دانلود |
امتیاز
ثبت نظر/پرسش/پیشنهاد
کتابهای مرتبط
احتمالا دوست داشته باشید