The 17th chapter of the "White hat Talk web security" Study note security development process (SDL)

Source: Internet
Author: User
Tags least privilege

17th Chapter Security Development Process (SDL) 17.1 SDLIntroduction

Security development is an effective way to address security vulnerabilities from the root cause, and in the software lifecycle, this development model costs less.

SDL Process:

q Training

All developers must receive appropriate security training to understand the relevant safety knowledge.

q Safety Requirements

Define the safety requirements of the project.

q Quality door /bug Bar

quality gates and bug bars are the minimum acceptable levels for determining the quality of security and privacy.

q Security and privacy risk assessment

Assess the security status and threat model in your project

q Design Requirements

Consider safety issues at the beginning of product design

q reduce attack surface

Reducing the attack surface reduces the risk by reducing the opportunity for an attacker to exploit a potential vulnerability or vulnerability. Reducing the attack surface includes shutting down and restricting access to system services, applying the principle of least privilege, and layering defenses as much as possible.

q Threat Modeling

Establish a threat model to analyze the attacks that a project or product might encounter, and to give a solution

q using the specified tool

q Deprecated unsafe functions

q Static Analysis

q Dynamic Program Analysis

q Blur Test

Fuzzy testing is a specialized form of dynamic analysis that intentionally introduces an application to an undesirable format or triggers a program failure.

q analysis of threat model and attack surface

When requirements change, the security model also needs to be changed accordingly

q Incident Response Plan

The release of the product needs to leave the developer's contact information, as well as the corresponding documentation, to facilitate future problem solving.

q Final Security Assessment

q Publish / archive

17.2AgileSdl

The idea of Agile SDL is to implement safe work in a changing perspective. Requirements and functionality may be changing, and the code may be changing, requiring SDL to update the threat model and privacy policy at every stage, iterate on the necessary steps for fuzzy testing, code security analysis, and so on.

17.3 SDLPractical Experience

Criteria:

q fully communicate with the project manager to discharge sufficient time

q standardize the company's project process to ensure that all projects can be notified to the security team to avoid omissions

q establish the authority of the security Department and the project must be audited by the security department before it can be released

q placement of technology in the development, testing work manual

q Training security solutions for development engineers

q record all security bugsand motivate programmers to write secure code

17.4Requirements Analysis and design phase

A code base for secure programming should be established, along with some of the more common security coding issues.

17.5Development Phase

Sun 's security coding guidelines :

q Use carefully Privileged Code

q handle it carefully . static fields

q Minimize Scope (scope)

q Choose carefully Public (public) methods and Fields

q Appropriate for Packages (Package ) Protection

q use as much as possible not variable (immutable) Object

q never return a reference to an internal array that contains sensitive data

q never directly store user-supplied (user-supplied) the array

q careful use of serialization (serialization)

q use local methods with caution (Native methods)

q Clear Sensitive information

Java Safe anti-pattern

q ignoring those full-pattern code inadvertently creates a loophole.

typical of Java Secure encoding anti-pattern (antipatterns):

Ignore language features ( such as Integer overflow (Overflow))

do not pay attention to using serialization , do not pay attention to the use of privileged code

Define fields and methods to an inappropriate visibility scope

in non-final state (non-final) covert Channels in a static field (Covert Channels)

17.6testing Phase

Reference:http://blog.csdn.net/Test_sunny/article/details/4653783

Http://51CTO remind you, do not spam ads!/ceshi/ceshijishu/aqcs/2013/0715/206456.html

Http://51CTO remind you, do not spam ads!/ceshi/ceshijishu/aqcs/2012/0329/204547.html


This article is from the "dream to think XI" blog, please be sure to keep this source http://qiangmzsx.blog.51cto.com/2052549/1859569

The 17th chapter of the "White hat Talk web security" Study note security development process (SDL)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.