توضیحاتی در مورد کتاب Fuzzing: Brute Force Vulnerability Discovery
نام کتاب : Fuzzing: Brute Force Vulnerability Discovery
عنوان ترجمه شده به فارسی : Fuzzing: Brute Force Vulnerability Discovery
سری : Safari Books Online
نویسندگان : Sutton. Michael, Greene. Adam, Amini. Pedram
ناشر : Addison-Wesley Professional
سال نشر : 2007
تعداد صفحات : 574
ISBN (شابک) : 0321446119 , 9780321446114
زبان کتاب : English
فرمت کتاب : pdf
حجم کتاب : 7 مگابایت
بعد از تکمیل فرایند پرداخت لینک دانلود کتاب ارائه خواهد شد. درصورت ثبت نام و ورود به حساب کاربری خود قادر خواهید بود لیست کتاب های خریداری شده را مشاهده فرمایید.
فهرست مطالب :
Cover......Page 1
Contents......Page 8
Foreword......Page 20
Preface......Page 22
Acknowledgments......Page 26
About the Author......Page 28
PART I: BACKGROUND......Page 30
Chapter 1 Vulnerability Discovery Methodologies......Page 32
White Box Testing......Page 33
Black Box Testing......Page 38
Gray Box Testing......Page 43
Summary......Page 48
Definition of Fuzzing......Page 50
History of Fuzzing......Page 51
Fuzzing Phases......Page 56
Fuzzing Limitations and Expectations......Page 58
Summary......Page 61
Fuzzing Methods......Page 62
Fuzzer Types......Page 65
Summary......Page 73
What Are Protocols?......Page 74
Protocol Fields......Page 75
Plain Text Protocols......Page 77
Binary Protocols......Page 78
Network Protocols......Page 82
File Formats......Page 83
Common Protocol Elements......Page 86
Summary......Page 88
Chapter 5 Requirements for Effective Fuzzing......Page 90
Reusability......Page 91
Process State and Process Depth......Page 93
Tracking, Code Coverage, and Metrics......Page 95
Error Detection......Page 96
Summary......Page 98
PART II: TARGETS AND AUTOMATION......Page 100
Value of Automation......Page 102
Helpful Tools and Libraries......Page 103
Programming Language Choice......Page 106
Data Generation and Fuzz Heuristics......Page 107
Summary......Page 116
Introduction to Local Fuzzing......Page 118
Local Fuzzing Principles......Page 121
Finding Targets......Page 122
Local Fuzzing Methods......Page 124
Enumerating Environment Variables......Page 125
Automating Environment Variable Fuzzing......Page 127
Detecting Problems......Page 128
Summary......Page 130
Features of iFUZZ Local Fuzzer......Page 132
Development......Page 134
Language......Page 138
Case Study......Page 139
Benefits and Room for Improvement......Page 140
Summary......Page 141
What Is Web Application Fuzzing?......Page 142
Targets......Page 146
Methods......Page 147
Vulnerabilities......Page 161
Detection......Page 164
Summary......Page 165
Chapter 10 Web Application and Server Fuzzing: Automation......Page 166
Web Application Fuzzers......Page 167
Features......Page 169
Necessary Background Information......Page 173
Development......Page 177
Case Studies......Page 185
Benefits and Room for Improvement......Page 195
Summary......Page 196
Chapter 11 File Format Fuzzing......Page 198
Targets......Page 199
Methods......Page 200
Vulnerabilities......Page 203
Detection......Page 207
Summary......Page 208
Chapter 12 File Format Fuzzing: Automation on UNIX......Page 210
notSPIKEfile and SPIKEfile......Page 211
Development Approach......Page 212
Meaningful Code Snippets......Page 214
Zombie Processes......Page 218
Usage Notes......Page 220
Case Study: RealPlayer RealPix Format String Vulnerability......Page 222
Summary......Page 224
Windows File Format Vulnerabilities......Page 226
Features......Page 230
Necessary Background Information......Page 234
Development......Page 238
Case Study......Page 246
Benefits and Room for Improvement......Page 250
Summary......Page 251
Chapter 14 Network Protocol Fuzzing......Page 252
What Is Network Protocol Fuzzing?......Page 253
Targets......Page 255
Methods......Page 259
Fault Detection......Page 261
Summary......Page 263
Chapter 15 Network Protocol Fuzzing: Automation on UNIX......Page 264
Fuzzing with SPIKE......Page 265
SPIKE 101......Page 269
Block-Based Protocol Modeling......Page 271
Additional SPIKE Features......Page 272
Writing the SPIKE NMAP Fuzzer Script......Page 273
Summary......Page 277
Chapter 16 Network Protocol Fuzzing: Automation on Windows......Page 278
Features......Page 279
Necessary Background Information......Page 283
Development......Page 284
Case Study......Page 291
Benefits and Room for Improvement......Page 293
Summary......Page 294
Chapter 17 Web Browser Fuzzing......Page 296
What Is Web Browser Fuzzing?......Page 297
Methods......Page 298
Vulnerabilities......Page 309
Summary......Page 311
Component Object Model Background......Page 312
Fuzzer Development......Page 316
Summary......Page 328
Chapter 19 In-Memory Fuzzing......Page 330
Necessary Background Information......Page 331
No Really, What Is In-Memory Fuzzing?......Page 335
Targets......Page 336
Method: Mutation Loop Insertion......Page 337
Method: Snapshot Restoration Mutation......Page 338
Testing Speed and Process Depth......Page 339
Fault Detection......Page 340
Summary......Page 341
Chapter 20 In-Memory Fuzzing: Automation......Page 344
Required Feature Set......Page 345
Language Choice......Page 346
Windows Debugging API......Page 349
Putting It All Together......Page 352
PyDbg, Your New Best Friend......Page 361
A Contrived Example......Page 363
Summary......Page 377
PART III: ADVANCED FUZZING TECHNOLOGIES......Page 378
Chapter 21 Fuzzing Frameworks......Page 380
What Is a Fuzzing Framework?......Page 381
Existing Frameworks......Page 383
Custom Fuzzer Case Study: Shockwave Flash......Page 400
Sulley: Fuzzing Framework......Page 415
Summary......Page 446
What’s the Problem with Fuzzing?......Page 448
Heuristic Techniques......Page 450
Bioinformatics......Page 456
Genetic Algorithms......Page 460
Summary......Page 464
What Exactly Are We Tracking?......Page 466
Binary Visualization and Basic Blocks......Page 468
Architecting a Fuzzer Tracker......Page 471
Dissecting a Code Coverage Tool......Page 478
Case Study......Page 486
Benefits and Future Improvements......Page 495
Summary......Page 498
Chapter 24 Intelligent Fault Detection......Page 500
Primitive Fault Detection......Page 501
What Are We Looking For?......Page 503
A Note on Choosing Fuzz Values......Page 509
Automated Debugger Monitoring......Page 510
First-Chance Versus Last-Chance Exceptions......Page 518
Dynamic Binary Instrumentation......Page 520
Summary......Page 522
PART IV: LOOKING FORWARD......Page 524
Software Development Lifecycle......Page 526
Developers......Page 532
Security Researchers......Page 533
Summary......Page 534
Commercial Tools......Page 536
Hybrid Approaches to Vulnerability Discovery......Page 544
Summary......Page 545
A......Page 548
B......Page 549
C......Page 550
D......Page 551
E......Page 553
F......Page 554
H......Page 556
I......Page 557
L......Page 558
M......Page 559
N......Page 560
P......Page 561
R......Page 564
S......Page 565
T......Page 567
U......Page 569
V......Page 570
W......Page 571
Y – Z......Page 572