Resource List
SDL Resources |
|||
---|---|---|---|
|
Managing Secrets Securely in the Cloud (article) |
|
Automating Secure Development Lifecycle Checks in TypeScript with TSLint (article) |
|
Managing Security Risks Inherent in the Use of Third-Party Components (SAFECode white paper) |
Tools |
|||
---|---|---|---|
|
Code Security plugins for Visual Studio and more |
|
Credential Scanner (CredScan)—tool developed and maintained by Microsoft to identify credential leaks such as those in source code and configuration files. |
|
Microsoft Threat Modeling Tool—tool to create and analyze threat models by communicating about the security design of their systems, analyzing those designs for potential security issues using a proven methodology, and suggesting and managing mitigations for security issues. |
|
BinSkim—verification tool that analyzes binaries to ensure that they have been built in compliance with the SDL requirements and recommendations. |
|
Roslyn Analyzers—analyzers to analyze code at build time, like static code analysis if it's enabled, but also live as you type. Roslyn analyzers can also provide design-time analysis of code files that aren't open in the editor if you enable full solution analysis. |
|
Code Analysis for C/C++—static analyzer that is provided with the installation of Visual Studio Team System Development Edition or Azure DevOps and helps to detect and correct code defects. |
|
Microsoft DevSkim—framework of IDE extensions and language analyzers that provide inline security analysis in the dev environment as the developer writes code. |
|
Secure DevOps Kit for Azure—collection of scripts, tools, extensions, and automations that supports the end-to-end Azure subscription and resource security needs for dev ops teams. |
|
CodeQL—GitHub's industry-leading semantic code analysis engine. CodeQL lets you query code as though it were data, and write queries to find all variants of a vulnerability, eradicating it forever. |
|
TSLint + tslint-microsoft-contrib—additional Microsoft authored security rules for the popular free TSLint TypeScript linter. |
|
Attack Surface Analyzer—tool that highlights the changes in the system state, runtime parameters, and securable objects on the Windows, Linux or MacOS operating systems. |
|
Application Inspector—cross-platform tool that identifies interesting features and characteristics by analyzing source code, enabling you to better understand the capabilities of a program. |
Third-party tools |
|||
---|---|---|---|
|
List of tools for static code analysis (Wikipedia) |
Legacy archive |
|||
---|---|---|---|
|
Simplified Implementation of the Microsoft SDL—the core concepts and activities of the Microsoft SDL recommended for any development organization. |
|
SDL Quick Security References (QSRs)—a basic reference series designed to address common vulnerabilities from the perspective of multiple business roles: business decision maker, architect, developer, and tester/QA. |
|
Microsoft SDL Process Guidance Version 5.2—SDL requirements and recommendations used at Microsoft. |
|
The SDL Progress Report—paper detailing progress reducing software vulnerabilities and developing threat mitigations at Microsoft (2004—2010). |
|
Essential Software Security Training for the Microsoft SDL—paper outlining why software security training is a key tenet of the Microsoft Security Development Lifecycle (SDL). |
|
Microsoft SDL Process Guidance—documentation providing an in-depth description of the Microsoft SDL methodology and requirements used at Microsoft. |
|
SDL Banned Function Calls—compiled library of known potentially dangerous functions that should be removed to reduce vulnerabilities as part of your SDL practices. |
|
Microsoft Application Verifier—runtime verification tool (works with clients up to Windows 7) for native code that assists in finding subtle programming errors that can be difficult to identify with normal application testing. |
|
Securing Applications with the .NET Framework—guidance on securing applications for the common language runtime and the .NET Framework. |
|
Attack Surface Analyzer (Classic)—original version of a tool that highlights the changes in the system state, runtime parameters, and securable objects on the Windows operating system. |