When user input can influence dynamically generated code to influence program flow or execute arbitrary code the attack is often referred to as code injection. This course introduces ways to identify and mitigate this security weakness, referenced as CWE-94 by the 2020 CWE Top 25.
Learning Objectives
On successful completion of this course, learners should have the knowledge and skills to:
- Refactor your program to avoid dynamically generated code
- Validate all inputs by using stringent allowlists
- Use automated static analysis and dynamic tools that target this type of weakness
Framework Connections
Specialty Areas
- Risk Management
- Software Development
Feedback
If you would like to provide feedback for this course, please e-mail the NICCS SO at NICCS@hq.dhs.gov.