Medium severityJavaScript / TypeScriptInjectionMEDIUM confidence
Eval Dynamic Argument
Dynamic use of eval() with a non-literal argument is dangerous and hard to audit.
Standards mapping
- OWASP Top 10
- A03:2021 - Injection
- OWASP ASVS
- V5.3.6 (L1)
Vulnerable vs. safe
Flagged by this check
eval(formula);Passes - the safe pattern
eval("1 + 1");Why it matters & how to fix it
Dynamic use of eval() with a non-literal argument is dangerous and hard to audit. Replace eval with explicit parsing (e.g. JSON.parse) or a safe dispatch table.
References
Rule ID integsec-js-eval-dynamic-argument - engine: Opengrep - license: MIT - Copyright (c) IntegSec Inc.
TurboPentest runs this check automatically
Connect a GitHub repo and this check runs on every white-box pentest - AI-validated and reported with proof, from $99 per target.
Start a pentestRelated checks
- JavaScript / TypeScript - InjectionCode Injection Tainted Input
- JavaScript / TypeScript - InjectionNoSQL Query From Request
- JavaScript / TypeScript - InjectionNoSQL Where Operator
- JavaScript / TypeScript - InjectionOS Command Injection Tainted Input
- JavaScript / TypeScript - InjectionSQL Injection String Concatenation
- JavaScript / TypeScript - InjectionSQL Injection Tainted Input