Cyberattacks are becoming more commonplace and the Open Web Application
Security Project (OWASP), estimates 94% of sites have flaws in their
access control alone. Attacks evolve to work around new defenses, and
defenses must evolve to remain effective. Developers need to understand
the fundamentals of attacks and defenses in order to comprehend new
techniques as they become available. This book teaches you how to write
secure web applications.
The focus is highlighting how hackers attack applications along with a
broad arsenal of defenses. This will enable you to pick appropriate
techniques to close vulnerabilities while still providing users with
their needed functionality.
Topics covered include:
A framework for deciding what needs to be protected and how strongly
Configuring services such as databases and web servers
Safe use of HTTP methods such as GET, POST, etc, cookies and use of
HTTPS
Safe REST APIs
Server-side attacks and defenses such as injection and cross-site
scripting
Client-side attacks and defenses such as cross-site request forgery
Security techniques such as CORS, CSP
Password management, authentication and authorization, including OAuth2
Best practices for dangerous operations such as password change and
reset
Use of third-party components and supply chain security (Git, CI/CD etc)
What You'll Learn
- Review the defenses that can used to prevent attacks
- Model risks to better understand what to defend and how
- Choose appropriate techniques to defend against attacks
- Implement defenses in Python/Django applications
Who This Book Is For
- Developers who already know how to build web applications but need to
know more about security
- Non-professional software engineers, such as scientists, who must
develop web tools and want to make their algorithms available to a
wider audience.
- Engineers and managers who are responsible for their product/company
technical security policy