UNPKG

mcp-server-semgrep

Version:

MCP Server for Semgrep Integration - static code analysis with AI

75 lines (72 loc) 1.93 kB
rules: - id: flask-wtf-csrf-disabled message: >- Setting 'WTF_CSRF_ENABLED' to 'False' explicitly disables CSRF protection. options: symbolic_propagation: true metadata: cwe: - 'CWE-352: Cross-Site Request Forgery (CSRF)' owasp: - A01:2021 - Broken Access Control references: - https://flask-wtf.readthedocs.io/en/1.2.x/csrf/ category: security technology: - flask cwe2022-top25: true cwe2021-top25: true subcategory: - audit likelihood: LOW impact: MEDIUM confidence: LOW functional-categories: - web::search::csrf-config::flask - web::search::csrf-config::flask-wtf severity: WARNING languages: - python patterns: - pattern-either: - patterns: - pattern-either: - pattern: $APP.config["WTF_CSRF_ENABLED"] = $FALSE - pattern: $APP.config.WTF_CSRF_ENABLED = $FALSE - patterns: - pattern: | $APP.config.$UPDATE( ..., WTF_CSRF_ENABLED = $FALSE, ... ) - pattern-not-inside: | $APP.config.$UPDATE( ..., TESTING=True, ... ) - pattern-not-inside: | $APP.config.$UPDATE( ..., DEBUG=True, ... ) - metavariable-regex: metavariable: $UPDATE regex: ^(update|from_mapping)$ - pattern: | $OBJ = $CLASS() ... $OBJ.WTF_CSRF_ENABLED = $FALSE ... $APP.config.from_object($OBJ, ...) - pattern: | WTF_CSRF_ENABLED = $FALSE ... $APP.config.from_object(__name__) - metavariable-regex: metavariable: $FALSE regex: ^(False)$ - focus-metavariable: $FALSE fix: 'True'