Skip to:Content
|
Bottom
Cover image for Web application defender's cookbook : battling hackers and protecting users
Title:
Web application defender's cookbook : battling hackers and protecting users
Personal Author:
Edition:
1st ed.
Publication Information:
Indianapolis, I.N. : Wiley Pub., Inc., 2013
Physical Description:
xxix, 522 p. : ill. ; 24 cm.
ISBN:
9781118362181
General Note:
Includes index

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010320926 QA76.9.A25 B377 2013 Open Access Book Book
Searching...

On Order

Summary

Summary

Defending your web applications against hackers and attackers

The top-selling book Web Application Hacker's Handbook showed how attackers and hackers identify and attack vulnerable live web applications. This new Web Application Defender's Cookbook is the perfect counterpoint to that book: it shows you how to defend . Authored by a highly credentialed defensive security expert, this new book details defensive security methods and can be used as courseware for training network security personnel, web server administrators, and security consultants.

Each "recipe" shows you a way to detect and defend against malicious behavior and provides working code examples for the ModSecurity web application firewall module. Topics include identifying vulnerabilities, setting hacker traps, defending different access points, enforcing application flows, and much more.

Provides practical tactics for detecting web attacks and malicious behavior and defending against them Written by a preeminent authority on web application firewall technology and web application defense tactics Offers a series of "recipes" that include working code examples for the open-source ModSecurity web application firewall module

Find the tools, techniques, and expert information you need to detect and respond to web application attacks with Web Application Defender's Cookbook: Battling Hackers and Protecting Users .


Author Notes

Ryan Barnett is a Lead Security Researcher in Trustwave's SpiderLabs Team, an advanced security team focused on penetration testing, incident response, and application security. He is the ModSecurity web application firewall project lead, a SANS Institute certified instructor, and a frequent speaker at industry conferences.


Table of Contents

Forewordp. xix
Introductionp. xxiii
I Preparing the Battle Spacep. 1
1 Application Fortificationp. 7
Recipe 1-1 Real-time Application Profilingp. 7
Recipe 1-2 Preventing Data Manipulation with Cryptographic Hash Tokensp. 15
Recipe 1-3 Installing the OWASP ModSecurity Core Rule Set (CRS)p. 19
Recipe 1-4 Integrating Intrusion Detection System Signaturesp. 33
Recipe 1-5 Using Bayesian Attack Payload Detectionp. 38
Recipe 1-6 Enable Full HTTP Audit Loggingp. 48
Recipe 1-7 Logging Only Relevant Transactionsp. 52
Recipe 1-8 Ignoring Requests for Static Contentp. 53
Recipe 1-9 Obscuring Sensitive Data in Logsp. 54
Recipe 1-10 Sending Alerts to a Central Log Host Using Syslogp. 58
Recipe 1-11 Using the ModSecurity AuditConsolep. 60
2 Vulnerability Identification and Remediationp. 67
Recipe 2-1 Passive Vulnerability Identificationp. 70
Recipe 2-2 Active Vulnerability Identificationp. 79
Recipe 2-3 Manual Scan Result Conversionp. 88
Recipe 2-4 Automated Scan Result Conversionp. 92
Recipe 2-5 Real-time Resource Assessments and Virtual Patchingp. 99
3 Poisoned Pawns (Hacker Traps)p. 115
Recipe 3-1 Adding Honeypot Portsp. 116
Recipe 3-2 Adding Fake robots.txt Disallow Entriesp. 118
Recipe 3-3 Adding Fake HTML Commentsp. 123
Recipe 3-4 Adding Fake Hidden Form Fieldsp. 128
Recipe 3-5 Adding Fake Cookiesp. 131
II Asymmetric Warfarep. 137
4 Reputation and Third-Party Correlationp. 139
Recipe 4-1 Analyzing the Client's Geographic Location Datap. 141
Recipe 4-2 Identifying Suspicious Open Proxy Usagep. 147
Recipe 4-3 Utilizing Real-time Blacklist Lookups (RBL)p. 150
Recipe 4-4 Running Your Own RBLp. 157
Recipe 4-5 Detecting Malicious Linksp. 160
5 Request Data Analysisp. 171
Recipe 5-1 Request Body Accessp. 172
Recipe 5-2 Identifying Malformed Request Bodiesp. 178
Recipe 5-3 Normalizing Unicodep. 182
Recipe 5-4 Identifying Use of Multiple Encodingsp. 186
Recipe 5-5 Identifying Encoding Anomaliesp. 189
Recipe 5-6 Detecting Request Method Anomaliesp. 193
Recipe 5-7 Detecting Invalid URI Datap. 197
Recipe 5-8 Detecting Request Header Anomaliesp. 200
Recipe 5-9 Detecting Additional Parametersp. 209
Recipe 5-10 Detecting Missing Parametersp. 212
Recipe 5-11 Detecting Duplicate Parameter Namesp. 214
Recipe 5-12 Detecting Parameter Payload Size Anomaliesp. 216
Recipe 5-13 Detecting Parameter Character Class Anomaliesp. 219
6 Response Data Analysisp. 223
Recipe 6-1 Detecting Response Header Anomaliesp. 224
Recipe 6-2 Detecting Response Header Information Leakagesp. 234
Recipe 6-3 Response Body Accessp. 238
Recipe 6-4 Detecting Page Title Changesp. 240
Recipe 6-5 Detecting Page Size Deviationsp. 243
Recipe 6-6 Detecting Dynamic Content Changesp. 246
Recipe 6-7 Detecting Source Code Leakagesp. 249
Recipe 6-8 Detecting Technical Data Leakagesp. 253
Recipe 6-9 Detecting Abnormal Response Time Intervalsp. 256
Recipe 6-10 Detecting Sensitive User Data Leakagesp. 259
Recipe 6-11 Detecting Trojan, Backdoor, and Webshell Access Attemptsp. 262
7 Defending Authenticationp. 265
Recipe 7-1 Detecting the Submission of Common/Default Usernamesp. 266
Recipe 7-2 Detecting the Submission of Multiple Usernamesp. 269
Recipe 7-3 Detecting Failed Authentication Attemptsp. 272
Recipe 7-4 Detecting a High Rate of Authentication Attemptsp. 274
Recipe 7-5 Normalizing Authentication Failure Detailsp. 280
Recipe 7-6 Enforcing Password Complexityp. 283
Recipe 7-7 Correlating Usernames with SessionIDsp. 286
8 Defending Session Statep. 291
Recipe 8-1 Detecting Invalid Cookiesp. 291
Recipe 8-2 Detecting Cookie Tamperingp. 297
Recipe 8-3 Enforcing Session Timeoutsp. 302
Recipe 8-4 Detecting Client Source Location Changes During Session Lifetimep. 307
Recipe 8-5 Detecting Browser Fingerprint Changes During Sessionsp. 314
9 Preventing Application Attacksp. 323
Recipe 9-1 Blocking Non-ASCII Charactersp. 323
Recipe 9-2 Preventing Path-Traversal Attacksp. 327
Recipe 9-3 Preventing Forceful Browsing Attacksp. 330
Recipe 9-4 Preventing SQL Injection Attacksp. 332
Recipe 9-5 Preventing Remote File Inclusion (RFI) Attacksp. 336
Recipe 9-6 Preventing OS Commanding Attacksp. 340
Recipe 9-7 Preventing HTTP Request Smuggling Attacksp. 342
Recipe 9-8 Preventing HTTP Response Splitting Attacksp. 345
Recipe 9-9 Preventing XML Attacksp. 347
10 Preventing Client Attacksp. 353
Recipe 10-1 Implementing Content Security Policy (CSP)p. 353
Recipe 10-2 Preventing Cross-Site Scripting (XSS) Attacksp. 362
Recipe 10-3 Preventing Cross-Site Request Forgery (CSRF) Attacksp. 371
Recipe 10-4 Preventing UI Redressing (Clickjacking) Attacksp. 377
Recipe 10-5 Detecting Banking Trojan (Man-in-the-Browser) Attacksp. 381
11 Defending File Uploadsp. 387
Recipe 11-1 Detecting Large File Sizesp. 387
Recipe 11-2 Detecting a Large Number of Filesp. 389
Recipe 11-3 Inspecting File Attachments for Malwarep. 390
12 Enforcing Access Rate and Application Flowsp. 395
Recipe 12-1 Detecting High Application Access Ratesp. 395
Recipe 12-2 Detecting Request/Response Delay Attacksp. 405
Recipe 12-3 Identifying Inter-Request Time Delay Anomaliesp. 411
Recipe 12-4 Identifying Request Flow Anomaliesp. 413
Recipe 12-5 Identifying a Significant Increase in Resource Usagep. 414
III Tactical Responsep. 419
13 Passive Response Actionsp. 421
Recipe 13-1 Tracking Anomaly Scoresp. 421
Recipe 13-2 Trap and Trace Audit Loggingp. 427
Recipe 13-3 Issuing E-mail Alertsp. 428
Recipe 13-4 Data Sharing with Request Header Taggingp. 436
14 Active Response Actionsp. 441
Recipe 14-1 Using Redirection to Error Pagesp. 442
Recipe 14-2 Dropping Connectionsp. 445
Recipe 14-3 Blocking the Client Source Addressp. 447
Recipe 14-4 Restricting Geolocation Access Through Defense Condition (DefCon) Level Changesp. 452
Recipe 14-5 Forcing Transaction Delaysp. 455
Recipe 14-6 Spoofing Successful Attacksp. 462
Recipe 14-7 Proxying Traffic to Honeypotsp. 468
Recipe 14-8 Forcing an Application Logoutp. 471
Recipe 14-9 Temporarily Locking Account Accessp. 476
15 Intrusive Response Actionsp. 479
Recipe 15-1 JavaScript Cookie Testingp. 479
Recipe 15-2 Validating Users with CAPTCHA Testingp. 481
Recipe 15-3 Hooking Malicious Clients with BeEFp. 485
Indexp. 495
Go to:Top of Page