|
Chapter 9 Platform-Level Defenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377Bog'liq SQL Injection Attacks and Defense.pdf ( PDFDrive )
Chapter 9 Platform-Level Defenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Using Runtime Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Web Application Firewalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Using ModSecurity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Configurable Rule Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Request Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
xvi
Contents
Request Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Response Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Intrusion Detection Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Intercepting Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Web Server Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Application Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Implementing the Filter Pattern in Scripted Languages . . . . . . . . . . . . . 390
Filtering Web Service Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
Non-Editable versus Editable Input Protection . . . . . . . . . . . . . . . . . . . . . . 391
URL/Page-Level Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
Page Overriding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
URL Rewriting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Resource Proxying/Wrapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Aspect-Oriented Programming (AOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Application Intrusion Detection Systems (IDSs) . . . . . . . . . . . . . . . . . . . . . 394
Database Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Securing the Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Locking Down the Application Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Use the Least-Privileged Database Login . . . . . . . . . . . . . . . . . . . . . . . . 395
Revoke PUBLIC Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Use Stored Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Use Strong Cryptography to Protect Stored Sensitive Data . . . . . . . . . . 397
Maintaining an Audit Trail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Oracle Error Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Locking Down the Database Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Additional Lockdown of System Objects . . . . . . . . . . . . . . . . . . . . . . . . 400
Restrict Ad Hoc Querying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Strengthen Controls Surrounding Authentication . . . . . . . . . . . . . . . . . 401
Run in the Context of the Least-Privileged
Operating System Account . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Ensure That the Database Server Software Is Patched . . . . . . . . . . . . . . . 402
Additional Deployment Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Minimize Unnecessary Information Leakage . . . . . . . . . . . . . . . . . . . . . . . 403
Suppress Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Use an Empty Default Web Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Use Dummy Host Names for Reverse DNS Lookups . . . . . . . . . . . . . . 406
Use Wildcard SSL Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Limit Discovery via Search Engine Hacking . . . . . . . . . . . . . . . . . . . . . 407
Disable Web Services Description Language
(WSDL) Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Do'stlaringiz bilan baham: |
|
|