Securing PHP Web Applications
Home > Computing and Information Technology > Computer security > Privacy and data protection > Securing PHP Web Applications
Securing PHP Web Applications

Securing PHP Web Applications

|
     0     
5
4
3
2
1




Out of Stock


Notify me when this book is in stock
About the Book

This is the eBook version of the printed book. If the print book includes a CD-ROM, this content is not included within the eBook version. Easy, Powerful Code Security Techniques for Every PHP Developer   Hackers specifically target PHP Web applications. Why? Because they know many of these apps are written by programmers with little or no experience or training in software security. Don’t be victimized. Securing PHP Web Applications will help you master the specific techniques, skills, and best practices you need to write rock-solid PHP code and harden the PHP software you’re already using.   Drawing on more than fifteen years of experience in Web development, security, and training, Tricia and William Ballad show how security flaws can find their way into PHP code, and they identify the most common security mistakes made by PHP developers. The authors present practical, specific solutions–techniques that are surprisingly easy to understand and use, no matter what level of PHP programming expertise you have.   Securing PHP Web Applications covers the most important aspects of PHP code security, from error handling and buffer overflows to input validation and filesystem access. The authors explode the myths that discourage PHP programmers from attempting to secure their code and teach you how to instinctively write more secure code without compromising your software’s performance or your own productivity.   Coverage includes Designing secure applications from the very beginning–and plugging holes in applications you can’t rewrite from scratch Defending against session hijacking, fixation, and poisoning attacks that PHP can’t resist on its own Securing the servers your PHP code runs on, including specific guidance for Apache, MySQL, IIS/SQL Server, and more Enforcing strict authentication and making the most of encryption Preventing dangerous cross-site scripting (XSS) attacks Systematically testing yourapplications for security, including detailed discussions of exploit testing and PHP test automation Addressing known vulnerabilities in the third-party applications you’re already running Tricia and William Ballad demystify PHP security by presenting realistic scenarios and code examples, practical checklists, detailed visuals, and more. Whether you write Web applications professionally or casually, or simply use someone else’s PHP scripts, you need this book–and you need it now, before the hackers find you!

Table of Contents:
Acknowledgments xiii About the Authors xv   Part I: Web Development Is a Blood Sport–Don't Wander onto the Field Without a Helmet 1   Chapter 1: Security Is a Server Issue and Other Myths 3 Reality Check 3 Security Is a Server Issue 5 Security Through Obscurity 7 Native Session Management Provides Plenty of Security 9 “My Application Isn’t Major Enough to Get Hacked” 9 The “Barbarians at the Gate” Syndrome 10 Wrapping It Up 10   Part II: Is That Hole Really Big Enough to Drive a Truck Through? 11   Chapter 2: Error Handling 13 The Guestbook Application 13 Users Do the Darnedest Things . . . 15 Building an Error-Handling Mechanism 19 Wrapping It Up 26   Chapter 3: System Calls 27 Navigating the Dangerous Waters of exec(), system(), and Backticks 27 Using escapeshellcmd() and escapeshellarg() to Secure System Calls 30 Create an API to Handle All System Calls 31 Patch the Guestbook Application 32 Wrapping It Up 34   Part III: What's In a Name? More Than You Expect 35   Chapter 4: Buffer Overflows and Variable Sanitation 37 What Is a Buffer, How Does It Overflow, and Why Should You Care? 37 Prevent Buffer Overflows by Sanitizing Variables 46 Patch the Application 49 Wrapping It Up 52   Chapter 5: Input Validation 53 New Feature: Allow Users to Sign Their Guestbook Comments 53 The Problem: Users Who Give You More Than You Asked For 54 Assumptions: You Know What Your Data Looks Like 55 The Solution: Regular Expressions to Validate Input 57 Wrapping It Up 67   Chapter 6: Filesystem Access: Accessing the Filesystem for Fun and Profit 69 Opening Files 69 Creating and Storing Files 73 Changing File Properties Safely 76 Patching the Application to Allow User-Uploaded Image Files 88 Wrapping It Up 90   Part IV: “Aw come on man, you can trust me” 93   Chapter 7: Authentication 95 What Is User Authentication? 95 Privileges 100 How to Authenticate Users 101 Storing Usernames and Passwords 115 Patching the Application to Authenticate Users 117 Wrapping It Up 120   Chapter 8: Encryption 121 What Is Encryption? 121 Choosing an Encryption Type 123 Password Security 125 Patching the Application to Encrypt Passwords 125 Wrapping It Up 128   Chapter 9: Session Security 129 What Is a Session Variable? 129 Major Types of Session Attacks 129 Patching the Application to Secure the Session 133 Wrapping It Up 136   Chapter 10: Cross-Site Scripting 137 What Is XSS? 137 Reflected XSS 137 Stored XSS 138 Patching the Application to Prevent XSS Attacks 138 Wrapping It Up 139   Part V: Locking Up for the Night 141   Chapter 11: Securing Apache and MySQL 143 Programming Languages, Web Servers, and Operating Systems Are Inherently Insecure 143 Securing a UNIX, Linux, or Mac OS X Environment 144 Securing Apache 147 Securing MySQL 159 Wrapping It Up 166   Chapter 12: Securing IIS and SQL Server 167 Securing a Windows Server Environment 167 Securing IIS 177 Securing SQL Server 187 Wrapping It Up 205   Chapter 13: Securing PHP on the Server 207 Using the Latest Version of PHP 207 Using the Security Features Built into PHP and Apache 213 Using ModSecurity 215 Hardening php.ini 216 Wrapping It Up 218   Chapter 14: Introduction to Automated Testing 219 Why Are We Talking About Testing in a Security Book? 219 Testing Framework 220 Types of Tests 222 Choosing Solid Test Data 223 Wrapping It Up 224   Chapter 15: Introduction to Exploit Testing 225 What Is Exploit Testing? 225 Fuzzing 226 Testing Toolkits 233 Proprietary Test Suites 246 Wrapping It Up 254   Part VI: “Don’t Get Hacked” Is Not a Viable Security Policy 255   Chapter 16: Plan A: Designing a Secure Application from the Beginning 257 Before You Sit Down at the Keyboard . . . 257 Identifying Points of Failure 269 Wrapping It Up 271   Chapter 17: Plan B: Plugging the Holes in Your Existing Application 273 Set Up Your Environment 273 Application Hardening Checklist 276 Wrapping It Up 278   Epilogue: Security Is a Lifestyle Choice: Becoming a Better Programmer 279 Avoid Feature Creep 279 Write Self-Documenting Code 280 Use the Right Tools for the Job 282 Have Your Code Peer-Reviewed 283 Wrapping It Up 284   Appendix: Additional Resources 285 PEAR 285 Books 286 Web Sites 287 Tools 288   Glossary 289 Index 293


Best Sellers


Product Details
  • ISBN-13: 9780321574329
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison-Wesley Educational Publishers Inc
  • Language: English
  • Weight: 1 gr
  • ISBN-10: 032157432X
  • Publisher Date: 11 Dec 2008
  • Binding: Digital download
  • No of Pages: 329


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Securing PHP Web Applications
Pearson Education (US) -
Securing PHP Web Applications
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Securing PHP Web Applications

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!