Security-Driven Software Development: Learn to Analyze and Mitigate Risks in Your Software Projects

Aspen Olmsted

Language: English

Publisher: Packt Publishing

Published: Mar 14, 2024

Description:

Trace security requirements through each development phase, mitigating multiple-layer attacks with practical examples, and emerge equipped with the skills to build resilient applications

Key Features

  • Explore the practical application of secure software development methodologies
  • Model security vulnerabilities throughout the software development lifecycle (SDLC)
  • Develop the skills to trace requirements, from requirements gathering through to implementation
  • Purchase of the print or Kindle book includes a free PDF eBook

Book Description

Extend your software development skills to integrate security into every aspect of your projects. Perfect for any programmer or developer working on mission-critical applications, this hands-on guide helps you adopt secure software development practices. Explore core concepts like security specifi cation, modeling, and threat mitigation with the iterative approach of this book that allows you to trace security requirements through each phase of software development. You won't stop at the basics; you'll delve into multiple-layer att acks and develop the mindset to prevent them. Through an example application project involving an entertainment ticketing software system, you'll look at high-profi le security incidents that have aff ected popular music stars and performers. Drawing from the author's decades of experience building secure applications in this domain, this book off ers comprehensive techniques where problem-solving meets practicality for secure development.

By the end of this book, you'll have gained the expertise to systematically secure software projects, from crafting robust security specifi cations to adeptly mitigating multifaceted threats, ensuring your applications stand resilient in the face of evolving cybersecurity challenges.

What you will learn

  • Find out non-functional requirements crucial for software security, performance, and reliability
  • Develop the skills to identify and model vulnerabilities in software design and analysis
  • Analyze and model various threat vectors that pose risks to software applications
  • Acquire strategies to mitigate security threats specific to web applications
  • Address threats to the database layer of an application
  • Trace non-functional requirements through secure software design

Who this book is for

Many software development jobs require developing, maintaining, enhancing, administering, and defending software applications, websites, and scripts. This book is designed for software developers and web developers seeking to excel in these roles, offering concise explanations and applied example use-cases.

Table of Contents

  1. Security Principles
  2. Designing a Secure Functional Model
  3. Designing a Secure Object Model
  4. Designing a Secure Dynamic Model
  5. Designing a Secure System Model
  6. Threat Modeling
  7. Authentication and Authorization
  8. Input Validation and Sanitization
  9. Standard Web Application Vulnerabilities
  10. Database Security
  11. Unit Testing
  12. Regression Testing
  13. Integration, System, and Acceptance Testing
  14. Software Penetration Testing