@zhuma4/cli 4.0.0-alpha.1 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +10 -3
- package/rules/common/zm-go-cwe1336-template-injection.yaml +38 -0
- package/rules/common/zm-go-cwe200-grpc-metadata.yaml +40 -0
- package/rules/common/zm-go-cwe319-grpc-notls.yaml +118 -0
- package/rules/common/zm-go-cwe338-weak-prng.yaml +117 -0
- package/rules/common/zm-go-cwe347-jwt.yaml +147 -0
- package/rules/common/zm-go-cwe693-gin-middleware.yaml +48 -0
- package/rules/common/zm-go-cwe693-security-headers.yaml +120 -0
- package/rules/common/zm-java-crypto-cwe327-001.yaml +103 -0
- package/rules/common/zm-java-deserial-cwe502-001.yaml +72 -0
- package/rules/common/zm-java-expression-cwe94-001.yaml +110 -0
- package/rules/common/zm-java-file-cwe22-001.yaml +73 -0
- package/rules/common/zm-java-hql-cwe89-001.yaml +72 -0
- package/rules/common/zm-java-jndi-cwe502-001.yaml +107 -0
- package/rules/common/zm-java-oauth-cwe287-001.yaml +136 -0
- package/rules/common/zm-java-rce-cwe78-001.yaml +98 -0
- package/rules/common/zm-java-springsec-cwe284-001.yaml +109 -0
- package/rules/common/zm-java-xstream-cwe502-001.yaml +73 -0
- package/rules/common/zm-java-xxe-cwe611-003.yaml +105 -0
- package/rules/common/zm-js-cwe20-nextjs-api-routes.yaml +141 -0
- package/rules/common/zm-js-cwe287-aws-lambda-config.yaml +107 -0
- package/rules/common/zm-js-cwe345-websocket-security.yaml +90 -0
- package/rules/common/zm-js-cwe501-graphql-injection.yaml +52 -0
- package/rules/common/zm-js-cwe502-deserialization-extended.yaml +107 -0
- package/rules/common/zm-js-cwe506-npm-supply-chain.yaml +19 -0
- package/rules/common/zm-js-cwe79-electron-security.yaml +35 -0
- package/rules/common/zm-js-cwe79-react-xss-deep.yaml +34 -0
- package/rules/common/zm-js-cwe89-prisma-typeorm.yaml +139 -0
- package/rules/common/zm-py-aiohttp-cwe295-cwe770-01.yaml +60 -0
- package/rules/common/zm-py-crypto-cwe327-01.yaml +33 -0
- package/rules/common/zm-py-deser-cwe502-01.yaml +66 -0
- package/rules/common/zm-py-django-cwe200-cwe798-cwe352-01.yaml +80 -0
- package/rules/common/zm-py-fastapi-cwe265-cwe284-01.yaml +48 -0
- package/rules/common/zm-py-flask-cwe200-cwe326-01.yaml +57 -0
- package/rules/common/zm-py-sqlalchemy-cwe89-01.yaml +65 -0
- package/rules/community-merged/cwe-1004/authtkt-cookie-httponly-unsafe-default.yaml +38 -0
- package/rules/community-merged/cwe-1004/authtkt-cookie-httponly-unsafe-value.yaml +41 -0
- package/rules/community-merged/cwe-1004/cookie-missing-httponly.yaml +42 -0
- package/rules/community-merged/cwe-1004/session-cookie-missing-httponly.yaml +41 -0
- package/rules/community-merged/cwe-1104/express-detect-notevil-usage.yaml +56 -0
- package/rules/community-merged/cwe-113/http-response-splitting.yaml +45 -0
- package/rules/community-merged/cwe-115/reverseproxy-director.yaml +34 -0
- package/rules/community-merged/cwe-116/autoescape-disabled-false.yaml +35 -0
- package/rules/community-merged/cwe-116/detect-disable-mustache-escape.yaml +28 -0
- package/rules/community-merged/cwe-116/incomplete-sanitization.yaml +33 -0
- package/rules/community-merged/cwe-116/missing-autoescape-disabled.yaml +34 -0
- package/rules/community-merged/cwe-116/no-scriptlets.yaml +32 -0
- package/rules/community-merged/cwe-116/use-escapexml.yaml +34 -0
- package/rules/community-merged/cwe-119/detect-buffer-noassert.yaml +33 -0
- package/rules/community-merged/cwe-1204/create-de-cipher-no-iv.yaml +32 -0
- package/rules/community-merged/cwe-1236/csv-writer-injection.yaml +56 -0
- package/rules/community-merged/cwe-1236/use-defusedcsv.yaml +38 -0
- package/rules/community-merged/cwe-1275/authtkt-cookie-samesite.yaml +36 -0
- package/rules/community-merged/cwe-1275/session-cookie-samesitenone.yaml +38 -0
- package/rules/community-merged/cwe-1275/set-cookie-samesite-unsafe-default.yaml +45 -0
- package/rules/community-merged/cwe-1333/detect-non-literal-regexp.yaml +46 -0
- package/rules/community-merged/cwe-1333/detect-redos.yaml +44 -0
- package/rules/community-merged/cwe-1333/java-pattern-from-string-parameter.yaml +38 -0
- package/rules/community-merged/cwe-1333/regex-dos.yaml +35 -0
- package/rules/community-merged/cwe-134/flask-api-method-string-format.yaml +37 -0
- package/rules/community-merged/cwe-134/unsafe-formatstring.yaml +52 -0
- package/rules/community-merged/cwe-150/autoescape-disabled.yaml +30 -0
- package/rules/community-merged/cwe-155/system-wildcard-detected.yaml +38 -0
- package/rules/community-merged/cwe-183/permissive-cors.yaml +78 -0
- package/rules/community-merged/cwe-20/django-using-request-post-after-is-valid.yaml +28 -0
- package/rules/community-merged/cwe-20/host-header-injection-python.yaml +46 -0
- package/rules/community-merged/cwe-200/bind.yaml +40 -0
- package/rules/community-merged/cwe-200/bind_all.yaml +32 -0
- package/rules/community-merged/cwe-200/spring-actuator-fully-enabled.yaml +33 -0
- package/rules/community-merged/cwe-200/url-rewriting.yaml +83 -0
- package/rules/community-merged/cwe-23/tainted-file-path.yaml +78 -0
- package/rules/community-merged/cwe-242/unsafe.yaml +25 -0
- package/rules/community-merged/cwe-250/docker-arbitrary-container-run.yaml +39 -0
- package/rules/community-merged/cwe-269/do-privileged-use.yaml +36 -0
- package/rules/community-merged/cwe-276/file_permission.yaml +32 -0
- package/rules/community-merged/cwe-276/insecure-file-permissions.yaml +64 -0
- package/rules/community-merged/cwe-276/overly-permissive-file-permission.yaml +50 -0
- package/rules/community-merged/cwe-287/unverified-jwt-decode.yaml +51 -0
- package/rules/community-merged/cwe-289/handler-assignment-from-multiple-sources.yaml +49 -0
- package/rules/community-merged/cwe-295/disabled-cert-validation.yaml +36 -0
- package/rules/community-merged/cwe-295/unverified-ssl-context.yaml +35 -0
- package/rules/community-merged/cwe-297/insecure-smtp-connection.yaml +35 -0
- package/rules/community-merged/cwe-300/grpc-client-insecure-connection.yaml +35 -0
- package/rules/community-merged/cwe-300/grpc-server-insecure-connection.yaml +45 -0
- package/rules/community-merged/cwe-310/aead-no-final.yaml +39 -0
- package/rules/community-merged/cwe-310/gcm-no-tag-length.yaml +35 -0
- package/rules/community-merged/cwe-319/cookie-issecure-false.yaml +38 -0
- package/rules/community-merged/cwe-319/detect-insecure-websocket.yaml +33 -0
- package/rules/community-merged/cwe-319/http-not-https-connection.yaml +29 -0
- package/rules/community-merged/cwe-319/security.yaml +36 -0
- package/rules/community-merged/cwe-319/sequelize-enforce-tls.yaml +61 -0
- package/rules/community-merged/cwe-319/unencrypted-socket.yaml +38 -0
- package/rules/community-merged/cwe-322/insecure_ssh.yaml +31 -0
- package/rules/community-merged/cwe-322/paramiko-implicit-trust-host-key.yaml +35 -0
- package/rules/community-merged/cwe-323/gcm-detection.yaml +39 -0
- package/rules/community-merged/cwe-323/gcm-nonce-reuse.yaml +30 -0
- package/rules/community-merged/cwe-326/insufficient-dsa-key-size.yaml +41 -0
- package/rules/community-merged/cwe-326/insufficient-ec-key-size.yaml +41 -0
- package/rules/community-merged/cwe-328/sha224-hash.yaml +46 -0
- package/rules/community-merged/cwe-328/use_of_weak_crypto.yaml +133 -0
- package/rules/community-merged/cwe-330/insecure-uuid-version.yaml +35 -0
- package/rules/community-merged/cwe-330/weak-random.yaml +32 -0
- package/rules/community-merged/cwe-338/detect-pseudoRandomBytes.yaml +33 -0
- package/rules/community-merged/cwe-345/jwt-decode-without-verify.yaml +39 -0
- package/rules/community-merged/cwe-345/jwt-parse-unverified.yaml +34 -0
- package/rules/community-merged/cwe-352/websocket-missing-origin-check.yaml +41 -0
- package/rules/community-merged/cwe-377/bad_tmp.yaml +30 -0
- package/rules/community-merged/cwe-400/ajv-allerrors-true.yaml +34 -0
- package/rules/community-merged/cwe-400/decompression_bomb.yaml +63 -0
- package/rules/community-merged/cwe-436/shared-url-struct-mutation.yaml +53 -0
- package/rules/community-merged/cwe-451/x-frame-options-misconfiguration.yaml +74 -0
- package/rules/community-merged/cwe-454/tainted-env-from-http-request.yaml +47 -0
- package/rules/community-merged/cwe-470/unsafe-reflect-by-name.yaml +44 -0
- package/rules/community-merged/cwe-470/unsafe-reflection.yaml +40 -0
- package/rules/community-merged/cwe-477/mongodb.yaml +27 -0
- package/rules/community-merged/cwe-489/debug-enabled.yaml +29 -0
- package/rules/community-merged/cwe-489/debug-template-tag.yaml +31 -0
- package/rules/community-merged/cwe-489/pprof.yaml +41 -0
- package/rules/community-merged/cwe-521/password-empty-string.yaml +40 -0
- package/rules/community-merged/cwe-521/use-none-for-password-default.yaml +43 -0
- package/rules/community-merged/cwe-522/express-cookie-settings.yaml +364 -0
- package/rules/community-merged/cwe-522/jwt-exposed-credentials.yaml +35 -0
- package/rules/community-merged/cwe-522/jwt-hardcode.yaml +31 -0
- package/rules/community-merged/cwe-522/remote-property-injection.yaml +76 -0
- package/rules/community-merged/cwe-523/no-auth-over-http.yaml +39 -0
- package/rules/community-merged/cwe-532/logger-credential-leak.yaml +38 -0
- package/rules/community-merged/cwe-548/express-check-directory-listing.yaml +55 -0
- package/rules/community-merged/cwe-548/fs-directory-listing.yaml +50 -0
- package/rules/community-merged/cwe-553/python-reverse-shell.yaml +33 -0
- package/rules/community-merged/cwe-601/express-open-redirect.yaml +115 -0
- package/rules/community-merged/cwe-601/open-redirect.yaml +96 -0
- package/rules/community-merged/cwe-614/cookie-missing-secure-flag.yaml +39 -0
- package/rules/community-merged/cwe-614/cookie-missing-secure.yaml +41 -0
- package/rules/community-merged/cwe-614/secure-cookies.yaml +60 -0
- package/rules/community-merged/cwe-614/secure-set-cookie.yaml +44 -0
- package/rules/community-merged/cwe-614/session-cookie-missing-secure.yaml +40 -0
- package/rules/community-merged/cwe-643/tainted-xpath-from-http-request.yaml +39 -0
- package/rules/community-merged/cwe-668/app-run-param-config.yaml +25 -0
- package/rules/community-merged/cwe-668/app-run-security-config.yaml +31 -0
- package/rules/community-merged/cwe-673/flask-url-for-external-true.yaml +35 -0
- package/rules/community-merged/cwe-704/bad-hexa-conversion.yaml +33 -0
- package/rules/community-merged/cwe-704/nan-injection.yaml +46 -0
- package/rules/community-merged/cwe-706/non-literal-import.yaml +31 -0
- package/rules/community-merged/cwe-706/require-request.yaml +67 -0
- package/rules/community-merged/cwe-706/res-render-injection.yaml +70 -0
- package/rules/community-merged/cwe-73/express-res-sendfile.yaml +77 -0
- package/rules/community-merged/cwe-73/secure-static-file-serve.yaml +30 -0
- package/rules/community-merged/cwe-74/xss-html-email-body.yaml +204 -0
- package/rules/community-merged/cwe-74/xss-send-mail-html-message.yaml +242 -0
- package/rules/community-merged/cwe-770/missing-throttle-config.yaml +38 -0
- package/rules/community-merged/cwe-776/use-defused-xmlrpc.yaml +32 -0
- package/rules/community-merged/cwe-798/express-jwt-hardcoded-secret.yaml +57 -0
- package/rules/community-merged/cwe-798/express-session-hardcoded-secret.yaml +58 -0
- package/rules/community-merged/cwe-798/jwt-hardcode.yaml +55 -0
- package/rules/community-merged/cwe-80/unsafe-serialize-javascript.yaml +33 -0
- package/rules/community-merged/cwe-863/security-constraint-http-method.yaml +32 -0
- package/rules/community-merged/cwe-90/ldap-entry-poisoning.yaml +42 -0
- package/rules/community-merged/cwe-90/ldap-injection.yaml +83 -0
- package/rules/community-merged/cwe-91/twiml-injection.yaml +51 -0
- package/rules/community-merged/cwe-913/dynamic-httptrace-clienttrace.yaml +40 -0
- package/rules/community-merged/cwe-913/reflect-makefunc.yaml +28 -0
- package/rules/community-merged/cwe-915/mass-assignment.yaml +33 -0
- package/rules/community-merged/cwe-915/tainted-sql-string.yaml +48 -0
- package/rules/community-merged/cwe-916/unsafe-argon2-config.yaml +48 -0
- package/rules/community-merged/cwe-926/exported_activity.yaml +39 -0
- package/rules/community-merged/cwe-93/crlf-injection-logs.yaml +87 -0
- package/rules/community-merged/cwe-93/request-data-write.yaml +200 -0
- package/rules/community-merged/cwe-939/dynamic-urllib-use-detected.yaml +58 -0
- package/rules/community-merged/cwe-94/dangerous-exec-cmd.yaml +87 -0
- package/rules/community-merged/cwe-94/dangerous-exec-command.yaml +63 -0
- package/rules/community-merged/cwe-942/wildcard-cors.yaml +39 -0
- package/rules/community-merged/cwe-95/seam-log-injection.yaml +41 -0
- package/rules/community-merged/cwe-95/spring-jsp-eval.yaml +30 -0
- package/rules/community-merged/cwe-95/user-eval.yaml +67 -0
- package/rules/community-merged/cwe-95/user-exec.yaml +67 -0
- package/rules/community-merged/cwe-96/globals-as-template-context.yaml +41 -0
- package/rules/community-merged/cwe-96/locals-as-template-context.yaml +41 -0
- package/rules/iac/ansible/zm-ansible-cwe269-privilege-escalation.yaml +12 -0
- package/rules/iac/ansible/zm-ansible-cwe532-no-log.yaml +42 -0
- package/rules/iac/ansible/zm-ansible-cwe78-unsafe-module.yaml +75 -0
- package/rules/iac/ansible/zm-ansible-cwe798-mysql-lineinfile.yaml +86 -0
- package/rules/iac/terraform/zm-tf-cwe284-gcp-firewall-eks.yaml +78 -0
- package/rules/iac/terraform/zm-tf-cwe284-sg-world-ingress.yaml +70 -0
- package/rules/iac/terraform/zm-tf-cwe285-iam-wildcard.yaml +46 -0
- package/rules/iac/terraform/zm-tf-cwe312-state-secrets.yaml +46 -0
- package/rules/iac/terraform/zm-tf-cwe319-azure-storage-mysql.yaml +69 -0
- package/rules/iac/terraform/zm-tf-cwe798-ecs-lambda-secrets.yaml +85 -0
- package/rules/iac/zm-docker-cwe1104-add-instead-of-copy.yaml +37 -0
- package/rules/iac/zm-docker-cwe1104-base-image.yaml +61 -0
- package/rules/iac/zm-docker-cwe1104-cleanup-dockerignore.yaml +67 -0
- package/rules/iac/zm-docker-cwe1104-multistage.yaml +33 -0
- package/rules/iac/zm-docker-cwe1104-package-cache.yaml +72 -0
- package/rules/iac/zm-docker-cwe250-docker-sock.yaml +31 -0
- package/rules/iac/zm-docker-cwe250-suid.yaml +33 -0
- package/rules/iac/zm-docker-cwe311-secrets-in-build-arg.yaml +64 -0
- package/rules/iac/zm-docker-cwe400-resource-limit.yaml +18 -6
- package/rules/iac/zm-docker-cwe668-workdir.yaml +36 -0
- package/rules/iac/zm-docker-cwe754-healthcheck.yaml +38 -0
- package/rules/iac/zm-docker-cwe78-curl-pipe.yaml +42 -0
- package/rules/iac/zm-docker-cwe798-arg-defaults.yaml +43 -0
- package/rules/iac/zm-docker-cwe798-env-secrets.yaml +48 -0
- package/rules/iac/zm-k8s-cwe200-configmap-creds.yaml +31 -0
- package/rules/iac/zm-k8s-cwe200-networkpolicy.yaml +62 -0
- package/rules/iac/zm-k8s-cwe200-sa-automount.yaml +38 -0
- package/rules/iac/zm-k8s-cwe200-service-exposure.yaml +50 -0
- package/rules/iac/zm-k8s-cwe200-verbosity-high.yaml +80 -0
- package/rules/iac/zm-k8s-cwe250-capabilities.yaml +84 -0
- package/rules/iac/zm-k8s-cwe250-hostpath.yaml +66 -0
- package/rules/iac/zm-k8s-cwe285-rbac.yaml +130 -0
- package/rules/iac/zm-k8s-cwe312-secret.yaml +60 -0
- package/rules/iac/zm-k8s-cwe319-ingress-tls.yaml +75 -0
- package/rules/iac/zm-k8s-cwe400-replicas.yaml +38 -0
- package/rules/iac/zm-k8s-psp-missing.yaml +59 -0
- package/rules/iac/zm-k8s-securitycontext-hardening.yaml +116 -0
- package/rules/iac/zm-tf-cwe200-ecr-public.yaml +18 -0
- package/rules/iac/zm-tf-cwe284-sg-egress-any.yaml +32 -0
- package/rules/iac/zm-tf-cwe319-rds-public-snapshot.yaml +46 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-go-207.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-java-194.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-java-195.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-java-196.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-java-197.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-java-198.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-javascript-199.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-javascript-200.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-javascript-201.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-javascript-202.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-javascript-203.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-php-208.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-php-209.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-python-204.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-python-205.yaml +43 -0
- package/rules/nvd-generated/cwe_1336/cl-1336-python-206.yaml +43 -0
- package/rules/nvd-generated/cwe_20/cl-20-all-233.yaml +43 -0
- package/rules/nvd-generated/cwe_20/cl-20-java-227.yaml +43 -0
- package/rules/nvd-generated/cwe_20/cl-20-java-228.yaml +43 -0
- package/rules/nvd-generated/cwe_20/cl-20-javascript-229.yaml +43 -0
- package/rules/nvd-generated/cwe_20/cl-20-python-231.yaml +44 -0
- package/rules/nvd-generated/cwe_20/cl-20-python-232.yaml +43 -0
- package/rules/nvd-generated/cwe_200/cl-200-all-189.yaml +46 -0
- package/rules/nvd-generated/cwe_200/cl-200-all-190.yaml +45 -0
- package/rules/nvd-generated/cwe_200/cl-200-all-191.yaml +43 -0
- package/rules/nvd-generated/cwe_200/cl-200-all-192.yaml +43 -0
- package/rules/nvd-generated/cwe_200/cl-200-all-193.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-go-074.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-go-075.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-go-076.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-java-060.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-java-061.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-java-062.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-java-063.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-javascript-067.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-javascript-068.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-javascript-069.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-php-064.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-php-065.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-php-066.yaml +44 -0
- package/rules/nvd-generated/cwe_22/cl-22-python-071.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-python-072.yaml +43 -0
- package/rules/nvd-generated/cwe_22/cl-22-python-073.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-go-187.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-go-188.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-java-180.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-java-181.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-java-182.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-javascript-183.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-javascript-184.yaml +43 -0
- package/rules/nvd-generated/cwe_287/cl-287-python-185.yaml +44 -0
- package/rules/nvd-generated/cwe_287/cl-287-python-186.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-go-169.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-go-170.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-java-161.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-java-162.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-java-163.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-java-164.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-javascript-165.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-javascript-166.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-php-171.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-php-172.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-python-167.yaml +43 -0
- package/rules/nvd-generated/cwe_327/cl-327-python-168.yaml +43 -0
- package/rules/nvd-generated/cwe_346/cl-346-all-213.yaml +43 -0
- package/rules/nvd-generated/cwe_346/cl-346-all-214.yaml +43 -0
- package/rules/nvd-generated/cwe_346/cl-346-all-215.yaml +43 -0
- package/rules/nvd-generated/cwe_352/cl-352-java-153.yaml +43 -0
- package/rules/nvd-generated/cwe_352/cl-352-java-154.yaml +43 -0
- package/rules/nvd-generated/cwe_352/cl-352-javascript-156.yaml +44 -0
- package/rules/nvd-generated/cwe_352/cl-352-php-155.yaml +44 -0
- package/rules/nvd-generated/cwe_352/cl-352-python-157.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-go-140.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-java-130.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-java-131.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-java-132.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-javascript-138.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-javascript-139.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-php-133.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-php-134.yaml +44 -0
- package/rules/nvd-generated/cwe_434/cl-434-php-135.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-python-136.yaml +43 -0
- package/rules/nvd-generated/cwe_434/cl-434-python-137.yaml +43 -0
- package/rules/nvd-generated/cwe_501/cl-501-all-239.yaml +43 -0
- package/rules/nvd-generated/cwe_501/cl-501-all-240.yaml +43 -0
- package/rules/nvd-generated/cwe_501/cl-501-all-241.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-go-109.yaml +44 -0
- package/rules/nvd-generated/cwe_502/cl-502-go-110.yaml +44 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-092.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-093.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-094.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-095.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-096.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-097.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-098.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-java-099.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-javascript-106.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-javascript-107.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-javascript-108.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-php-100.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-php-101.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-php-102.yaml +44 -0
- package/rules/nvd-generated/cwe_502/cl-502-python-103.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-python-104.yaml +43 -0
- package/rules/nvd-generated/cwe_502/cl-502-python-105.yaml +43 -0
- package/rules/nvd-generated/cwe_532/cl-532-all-158.yaml +46 -0
- package/rules/nvd-generated/cwe_532/cl-532-all-159.yaml +45 -0
- package/rules/nvd-generated/cwe_532/cl-532-all-160.yaml +45 -0
- package/rules/nvd-generated/cwe_601/cl-601-go-178.yaml +43 -0
- package/rules/nvd-generated/cwe_601/cl-601-java-173.yaml +43 -0
- package/rules/nvd-generated/cwe_601/cl-601-javascript-174.yaml +43 -0
- package/rules/nvd-generated/cwe_601/cl-601-javascript-175.yaml +43 -0
- package/rules/nvd-generated/cwe_601/cl-601-php-179.yaml +43 -0
- package/rules/nvd-generated/cwe_601/cl-601-python-176.yaml +43 -0
- package/rules/nvd-generated/cwe_601/cl-601-python-177.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-go-123.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-java-111.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-java-112.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-java-113.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-java-114.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-java-115.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-javascript-121.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-javascript-122.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-php-116.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-php-117.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-python-118.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-python-119.yaml +43 -0
- package/rules/nvd-generated/cwe_611/cl-611-python-120.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-go-040.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-go-041.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-java-026.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-java-027.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-java-028.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-java-029.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-javascript-037.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-javascript-038.yaml +44 -0
- package/rules/nvd-generated/cwe_78/cl-78-javascript-039.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-php-030.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-php-031.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-php-032.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-php-033.yaml +44 -0
- package/rules/nvd-generated/cwe_78/cl-78-python-034.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-python-035.yaml +43 -0
- package/rules/nvd-generated/cwe_78/cl-78-python-036.yaml +46 -0
- package/rules/nvd-generated/cwe_79/cl-79-go-058.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-go-059.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-java-042.yaml +43 -0
- package/rules/nvd-generated/cwe_79/cl-79-java-043.yaml +43 -0
- package/rules/nvd-generated/cwe_79/cl-79-java-044.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-java-045.yaml +43 -0
- package/rules/nvd-generated/cwe_79/cl-79-javascript-049.yaml +45 -0
- package/rules/nvd-generated/cwe_79/cl-79-javascript-050.yaml +45 -0
- package/rules/nvd-generated/cwe_79/cl-79-javascript-051.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-javascript-052.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-javascript-053.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-javascript-054.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-javascript-055.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-php-046.yaml +43 -0
- package/rules/nvd-generated/cwe_79/cl-79-php-047.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-php-048.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-python-056.yaml +44 -0
- package/rules/nvd-generated/cwe_79/cl-79-python-057.yaml +44 -0
- package/rules/nvd-generated/cwe_798/cl-798-all-124.yaml +45 -0
- package/rules/nvd-generated/cwe_798/cl-798-all-125.yaml +43 -0
- package/rules/nvd-generated/cwe_798/cl-798-all-126.yaml +43 -0
- package/rules/nvd-generated/cwe_798/cl-798-all-127.yaml +43 -0
- package/rules/nvd-generated/cwe_798/cl-798-all-128.yaml +43 -0
- package/rules/nvd-generated/cwe_798/cl-798-all-129.yaml +43 -0
- package/rules/nvd-generated/cwe_862/cl-862-go-150.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-go-151.yaml +43 -0
- package/rules/nvd-generated/cwe_862/cl-862-java-141.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-java-142.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-java-143.yaml +43 -0
- package/rules/nvd-generated/cwe_862/cl-862-javascript-144.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-javascript-145.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-javascript-146.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-php-152.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-python-148.yaml +44 -0
- package/rules/nvd-generated/cwe_862/cl-862-python-149.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-go-023.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-go-024.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-go-025.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-001.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-002.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-003.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-004.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-005.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-006.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-007.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-java-008.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-javascript-018.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-javascript-019.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-javascript-020.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-javascript-021.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-javascript-022.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-php-009.yaml +44 -0
- package/rules/nvd-generated/cwe_89/cl-89-php-010.yaml +44 -0
- package/rules/nvd-generated/cwe_89/cl-89-php-011.yaml +44 -0
- package/rules/nvd-generated/cwe_89/cl-89-php-012.yaml +44 -0
- package/rules/nvd-generated/cwe_89/cl-89-php-013.yaml +44 -0
- package/rules/nvd-generated/cwe_89/cl-89-python-014.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-python-015.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-python-016.yaml +43 -0
- package/rules/nvd-generated/cwe_89/cl-89-python-017.yaml +43 -0
- package/rules/nvd-generated/cwe_915/cl-915-javascript-216.yaml +43 -0
- package/rules/nvd-generated/cwe_915/cl-915-javascript-217.yaml +43 -0
- package/rules/nvd-generated/cwe_915/cl-915-javascript-218.yaml +43 -0
- package/rules/nvd-generated/cwe_915/cl-915-javascript-219.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-go-088.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-go-089.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-java-077.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-java-078.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-java-079.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-java-080.yaml +44 -0
- package/rules/nvd-generated/cwe_918/cl-918-javascript-081.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-javascript-082.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-javascript-083.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-php-090.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-php-091.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-python-084.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-python-085.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-python-086.yaml +43 -0
- package/rules/nvd-generated/cwe_918/cl-918-python-087.yaml +43 -0
- package/rules/nvd-generated/cwe_943/cl-943-java-238.yaml +36 -0
- package/rules/nvd-generated/cwe_943/cl-943-javascript-234.yaml +36 -0
- package/rules/nvd-generated/cwe_943/cl-943-javascript-235.yaml +36 -0
- package/rules/nvd-generated/cwe_943/cl-943-javascript-236.yaml +36 -0
- package/rules/nvd-generated/cwe_943/cl-943-python-237.yaml +36 -0
- package/rules/quarantined/cwe-20/cl-20-all-233.yaml +43 -0
- package/rules/quarantined/cwe-20/cl-20-java-227.yaml +43 -0
- package/rules/quarantined/cwe-20/cl-20-java-228.yaml +43 -0
- package/rules/quarantined/cwe-20/cl-20-javascript-229.yaml +43 -0
- package/rules/quarantined/cwe-20/cl-20-python-231.yaml +44 -0
- package/rules/quarantined/cwe-20/cl-20-python-232.yaml +43 -0
- package/rules/quarantined/cwe-20/zm-js-cwe20-nextjs-api-routes.yaml +142 -0
- package/rules/quarantined/cwe-200/cl-200-all-189.yaml +46 -0
- package/rules/quarantined/cwe-200/cl-200-all-190.yaml +45 -0
- package/rules/quarantined/cwe-200/cl-200-all-191.yaml +43 -0
- package/rules/quarantined/cwe-200/cl-200-all-192.yaml +43 -0
- package/rules/quarantined/cwe-200/cl-200-all-193.yaml +43 -0
- package/rules/quarantined/cwe-200/cwe-200-sensitive-data-exposure.yaml +62 -0
- package/rules/quarantined/cwe-200/zm-go-cwe200-grpc-metadata.yaml +41 -0
- package/rules/quarantined/cwe-200/zm-java-cwe200-actuator-exposure.yaml +9 -0
- package/rules/quarantined/cwe-200/zm-java-cwe200-info-disclosure.yaml +92 -0
- package/rules/quarantined/cwe-200/zm-js-cwe200-info-disclosure.yaml +96 -0
- package/rules/quarantined/cwe-200/zm-k8s-cwe200-service-account.yaml +84 -0
- package/rules/quarantined/cwe-200/zm-k8s-cwe200-verbosity-high.yaml +81 -0
- package/rules/quarantined/cwe-200/zm-py-django-cwe200-cwe798-cwe352-01.yaml +81 -0
- package/rules/quarantined/cwe-200/zm-py-flask-cwe200-cwe326-01.yaml +58 -0
- package/rules/quarantined/cwe-200/zm-tf-cwe200-ecr-public.yaml +19 -0
- package/rules/quarantined/cwe-200/zm-tf-cwe200-s3-bucket-public.yaml +101 -0
- package/rules/quarantined/cwe-532/cl-532-all-158.yaml +46 -0
- package/rules/quarantined/cwe-532/cl-532-all-159.yaml +45 -0
- package/rules/quarantined/cwe-532/cl-532-all-160.yaml +45 -0
- package/rules/quarantined/cwe-862/cl-862-go-150.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-go-151.yaml +43 -0
- package/rules/quarantined/cwe-862/cl-862-java-141.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-java-142.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-java-143.yaml +43 -0
- package/rules/quarantined/cwe-862/cl-862-javascript-144.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-javascript-145.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-javascript-146.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-php-152.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-python-148.yaml +44 -0
- package/rules/quarantined/cwe-862/cl-862-python-149.yaml +43 -0
- package/rules/quarantined/cwe-862/cwe-862-missing-authorization.yaml +41 -0
- package/rules/quarantined/cwe-862/zm-java-cwe862-authz-depth.yaml +128 -0
- package/rules/quarantined/high-fp/cwe-22/zm-js-cwe22-path-traversal-fs.yaml +114 -0
- package/rules/quarantined/high-fp/cwe-22/zm-js-cwe22-pathtraversal.yaml +112 -0
- package/rules/quarantined/high-fp/cwe-287/zm-js-cwe287-aws-lambda-config.yaml +105 -0
- package/rules/quarantined/high-fp/cwe-501/zm-js-cwe501-graphql-injection.yaml +53 -0
- package/rules/quarantined/high-fp/cwe-502/zm-js-cwe502-deserialization-extended.yaml +98 -0
- package/rules/quarantined/high-fp/cwe-798/zm-ansible-cwe798-hardcoded-creds.yaml +94 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-go-207.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-194.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-195.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-196.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-197.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-198.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-199.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-200.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-201.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-202.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-203.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-php-208.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-php-209.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-python-204.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-python-205.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-python-206.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-go-074.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-go-075.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-go-076.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-060.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-061.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-062.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-063.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-javascript-067.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-javascript-068.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-javascript-069.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-php-064.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-php-065.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-php-066.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-python-071.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-python-072.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-22/cl-22-python-073.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-go-187.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-go-188.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-java-180.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-java-181.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-java-182.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-javascript-183.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-javascript-184.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-python-185.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-287/cl-287-python-186.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-go-169.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-go-170.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-161.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-162.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-163.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-164.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-javascript-165.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-javascript-166.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-php-171.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-php-172.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-python-167.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-327/cl-327-python-168.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-346/cl-346-all-213.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-346/cl-346-all-214.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-346/cl-346-all-215.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-352/cl-352-java-153.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-352/cl-352-java-154.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-352/cl-352-javascript-156.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-352/cl-352-php-155.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-352/cl-352-python-157.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-go-140.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-java-130.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-java-131.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-java-132.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-javascript-138.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-javascript-139.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-php-133.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-php-134.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-php-135.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-python-136.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-434/cl-434-python-137.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-501/cl-501-all-239.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-501/cl-501-all-240.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-501/cl-501-all-241.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-go-109.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-go-110.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-092.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-093.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-094.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-095.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-096.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-097.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-098.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-099.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-javascript-106.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-javascript-107.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-javascript-108.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-php-100.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-php-101.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-php-102.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-python-103.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-python-104.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-502/cl-502-python-105.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-601/cl-601-go-178.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-601/cl-601-java-173.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-601/cl-601-javascript-174.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-601/cl-601-javascript-175.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-601/cl-601-php-179.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-601/cl-601-python-176.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-601/cl-601-python-177.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-go-123.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-111.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-112.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-113.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-114.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-115.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-javascript-121.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-javascript-122.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-php-116.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-php-117.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-python-118.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-python-119.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-611/cl-611-python-120.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-go-040.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-go-041.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-026.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-027.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-028.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-029.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-javascript-037.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-javascript-038.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-javascript-039.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-030.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-031.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-032.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-033.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-python-034.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-python-035.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-78/cl-78-python-036.yaml +53 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-go-058.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-go-059.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-042.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-043.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-044.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-045.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-049.yaml +52 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-050.yaml +52 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-051.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-052.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-053.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-054.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-055.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-php-046.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-php-047.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-php-048.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-python-056.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-79/cl-79-python-057.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-124.yaml +52 -0
- package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-125.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-126.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-127.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-128.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-129.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-go-023.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-go-024.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-go-025.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-001.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-002.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-003.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-004.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-005.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-006.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-007.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-008.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-018.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-019.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-020.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-021.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-022.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-009.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-010.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-011.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-012.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-013.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-014.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-015.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-016.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-017.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-216.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-217.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-218.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-219.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-go-088.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-go-089.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-077.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-078.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-079.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-080.yaml +51 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-javascript-081.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-javascript-082.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-javascript-083.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-php-090.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-php-091.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-084.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-085.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-086.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-087.yaml +50 -0
- package/rules/quarantined/nvd-generated/cwe-943/cl-943-java-238.yaml +43 -0
- package/rules/quarantined/nvd-generated/cwe-943/cl-943-javascript-234.yaml +43 -0
- package/rules/quarantined/nvd-generated/cwe-943/cl-943-javascript-235.yaml +43 -0
- package/rules/quarantined/nvd-generated/cwe-943/cl-943-javascript-236.yaml +43 -0
- package/rules/quarantined/nvd-generated/cwe-943/cl-943-python-237.yaml +43 -0
- package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-java-196.yaml +35 -0
- package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-java-197.yaml +35 -0
- package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-javascript-201.yaml +34 -0
- package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-javascript-202.yaml +34 -0
- package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-javascript-203.yaml +34 -0
- package/rules/taint-upgraded/cwe-22/zm-taint-22-22-go-076.yaml +36 -0
- package/rules/taint-upgraded/cwe-22/zm-taint-22-22-java-061.yaml +40 -0
- package/rules/taint-upgraded/cwe-22/zm-taint-22-22-javascript-068.yaml +38 -0
- package/rules/taint-upgraded/cwe-22/zm-taint-22-22-javascript-069.yaml +38 -0
- package/rules/taint-upgraded/cwe-22/zm-taint-22-22-python-073.yaml +38 -0
- package/rules/taint-upgraded/cwe-287/zm-taint-287-287-go-188.yaml +30 -0
- package/rules/taint-upgraded/cwe-287/zm-taint-287-287-javascript-184.yaml +31 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-go-169.yaml +30 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-go-170.yaml +31 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-161.yaml +45 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-162.yaml +45 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-163.yaml +39 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-164.yaml +31 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-javascript-165.yaml +34 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-javascript-166.yaml +32 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-php-171.yaml +31 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-php-172.yaml +31 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-python-167.yaml +32 -0
- package/rules/taint-upgraded/cwe-327/zm-taint-327-327-python-168.yaml +34 -0
- package/rules/taint-upgraded/cwe-434/zm-taint-434-434-java-130.yaml +37 -0
- package/rules/taint-upgraded/cwe-434/zm-taint-434-434-java-131.yaml +37 -0
- package/rules/taint-upgraded/cwe-434/zm-taint-434-434-javascript-139.yaml +38 -0
- package/rules/taint-upgraded/cwe-434/zm-taint-434-434-python-136.yaml +35 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-go-109.yaml +32 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-go-110.yaml +32 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-092.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-093.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-094.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-095.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-097.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-098.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-099.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-javascript-107.yaml +33 -0
- package/rules/taint-upgraded/cwe-502/zm-taint-502-502-python-105.yaml +40 -0
- package/rules/taint-upgraded/cwe-601/zm-taint-601-601-go-178.yaml +34 -0
- package/rules/taint-upgraded/cwe-601/zm-taint-601-601-python-177.yaml +35 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-go-123.yaml +31 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-111.yaml +38 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-112.yaml +38 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-113.yaml +38 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-114.yaml +38 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-115.yaml +38 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-javascript-121.yaml +32 -0
- package/rules/taint-upgraded/cwe-611/zm-taint-611-611-javascript-122.yaml +32 -0
- package/rules/taint-upgraded/cwe-78/zm-taint-78-78-go-040.yaml +31 -0
- package/rules/taint-upgraded/cwe-78/zm-taint-78-78-go-041.yaml +31 -0
- package/rules/taint-upgraded/cwe-78/zm-taint-78-78-java-027.yaml +37 -0
- package/rules/taint-upgraded/cwe-78/zm-taint-78-78-java-028.yaml +37 -0
- package/rules/taint-upgraded/cwe-78/zm-taint-78-78-java-029.yaml +37 -0
- package/rules/taint-upgraded/cwe-78/zm-taint-78-78-python-034.yaml +40 -0
- package/rules/taint-upgraded/cwe-79/zm-taint-79-79-javascript-050.yaml +38 -0
- package/rules/taint-upgraded/cwe-79/zm-taint-79-79-javascript-054.yaml +38 -0
- package/rules/taint-upgraded/cwe-79/zm-taint-79-79-python-056.yaml +37 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-go-023.yaml +33 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-go-024.yaml +33 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-go-025.yaml +33 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-java-001.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-java-006.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-java-008.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-javascript-018.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-javascript-019.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-javascript-022.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-python-014.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-python-015.yaml +41 -0
- package/rules/taint-upgraded/cwe-89/zm-taint-89-89-python-017.yaml +41 -0
- package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-216.yaml +32 -0
- package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-217.yaml +33 -0
- package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-218.yaml +32 -0
- package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-219.yaml +35 -0
- package/rules/taint-upgraded/cwe-918/zm-taint-918-918-java-078.yaml +38 -0
- package/rules/taint-upgraded/cwe-918/zm-taint-918-918-java-079.yaml +38 -0
- package/rules/taint-upgraded/cwe-918/zm-taint-918-918-python-085.yaml +39 -0
- package/rules/taint-upgraded/cwe-943/zm-taint-943-943-java-238.yaml +31 -0
- package/rules/taint-upgraded/cwe-943/zm-taint-943-943-javascript-234.yaml +34 -0
- package/rules/taint-upgraded/cwe-943/zm-taint-943-943-javascript-235.yaml +34 -0
- package/rules/taint-upgraded/cwe-943/zm-taint-943-943-javascript-236.yaml +33 -0
- package/rules/taint-upgraded/cwe-943/zm-taint-943-943-python-237.yaml +32 -0
- package/rules/unified/cwe-117/zm-go-cwe117-log-injection.yaml +76 -0
- package/rules/unified/cwe-117/zm-java-cwe117-log-injection.yaml +84 -0
- package/rules/unified/cwe-117/zm-java-cwe117-logforging.yaml +154 -0
- package/rules/unified/cwe-117/zm-java-cwe117-smtp-header-injection.yaml +59 -0
- package/rules/unified/cwe-121/zm-cpp-cwe121-buffer-overflow.yaml +137 -0
- package/rules/unified/cwe-1321/zm-js-cwe1321-prototype-pollution.yaml +62 -0
- package/rules/unified/cwe-1336/zm-go-cwe1336-template-injection.yaml +39 -0
- package/rules/unified/cwe-1336/zm-taint-1336-1336-java-196.yaml +42 -0
- package/rules/unified/cwe-1336/zm-taint-1336-1336-java-197.yaml +42 -0
- package/rules/unified/cwe-1336/zm-taint-1336-1336-javascript-201.yaml +41 -0
- package/rules/unified/cwe-1336/zm-taint-1336-1336-javascript-202.yaml +41 -0
- package/rules/unified/cwe-1336/zm-taint-1336-1336-javascript-203.yaml +41 -0
- package/rules/unified/cwe-134/zm-cpp-cwe134-format-string.yaml +106 -0
- package/rules/unified/cwe-190/zm-cpp-cwe190-integer-overflow.yaml +93 -0
- package/rules/unified/cwe-20/zm-cpp-cwe20-input-validation.yaml +92 -0
- package/rules/unified/cwe-20/zm-js-cwe20-websocket-validation.yaml +25 -0
- package/rules/unified/cwe-20/zm-rust-cwe20-input-validation.yaml +124 -0
- package/rules/unified/cwe-200/zm-js-cwe200-nestjs-env.yaml +22 -0
- package/rules/unified/cwe-200/zm-py-cwe200-info-leak-redirect.yaml +77 -0
- package/rules/unified/cwe-22/cwe-22-path-traversal.yaml +48 -0
- package/rules/unified/cwe-22/zm-cs-cwe22-path-traversal.yaml +92 -0
- package/rules/unified/cwe-22/zm-go-cwe22-path-traversal-framework.yaml +48 -0
- package/rules/unified/cwe-22/zm-go-cwe22-path-traversal-fs.yaml +118 -0
- package/rules/unified/cwe-22/zm-go-cwe22-path-traversal.yaml +104 -0
- package/rules/unified/cwe-22/zm-java-cwe22-file-depth.yaml +136 -0
- package/rules/unified/cwe-22/zm-java-cwe22-file-unnormalized.yaml +58 -0
- package/rules/unified/cwe-22/zm-java-cwe22-path-traversal-spring.yaml +82 -0
- package/rules/unified/cwe-22/zm-java-file-cwe22-001.yaml +74 -0
- package/rules/unified/cwe-22/zm-js-cwe22-express-path-traversal.yaml +26 -0
- package/rules/unified/cwe-22/zm-js-cwe22-fs-path-traversal.yaml +28 -0
- package/rules/unified/cwe-22/zm-py-cwe22-flask-sendfile.yaml +45 -0
- package/rules/unified/cwe-22/zm-py-cwe22-path-traversal.yaml +87 -0
- package/rules/unified/cwe-22/zm-rust-cwe22-path-traversal.yaml +134 -0
- package/rules/unified/cwe-22/zm-taint-22-22-go-076.yaml +43 -0
- package/rules/unified/cwe-22/zm-taint-22-22-java-061.yaml +47 -0
- package/rules/unified/cwe-22/zm-taint-22-22-javascript-068.yaml +45 -0
- package/rules/unified/cwe-22/zm-taint-22-22-javascript-069.yaml +45 -0
- package/rules/unified/cwe-22/zm-taint-22-22-python-073.yaml +45 -0
- package/rules/unified/cwe-250/zm-docker-cwe250-root-user.yaml +51 -0
- package/rules/unified/cwe-250/zm-java-cwe250-preauth-missing.yaml +69 -0
- package/rules/unified/cwe-250/zm-k8s-cwe250-privileged.yaml +57 -0
- package/rules/unified/cwe-265/zm-py-fastapi-cwe265-cwe284-01.yaml +49 -0
- package/rules/unified/cwe-269/zm-ansible-cwe269-privilege-escalation.yaml +76 -0
- package/rules/unified/cwe-269/zm-java-cwe269-requestdumper-valve.yaml +55 -0
- package/rules/unified/cwe-284/zm-java-cwe284-missing-auth-spring.yaml +132 -0
- package/rules/unified/cwe-284/zm-java-cwe284-permitall-overauth.yaml +57 -0
- package/rules/unified/cwe-284/zm-java-cwe284-tomcat-ajp.yaml +57 -0
- package/rules/unified/cwe-284/zm-java-springsec-cwe284-001.yaml +110 -0
- package/rules/unified/cwe-284/zm-tf-cwe284-sg-egress-any.yaml +33 -0
- package/rules/unified/cwe-284/zm-tf-cwe284-sg-wide-open.yaml +89 -0
- package/rules/unified/cwe-287/zm-java-oauth-cwe287-001.yaml +137 -0
- package/rules/unified/cwe-287/zm-js-cwe287-jwt-no-algorithms.yaml +26 -0
- package/rules/unified/cwe-287/zm-taint-287-287-go-188.yaml +37 -0
- package/rules/unified/cwe-287/zm-taint-287-287-javascript-184.yaml +38 -0
- package/rules/unified/cwe-295/cwe-295-ssl-bypass.yaml +218 -0
- package/rules/unified/cwe-295/cwe-295-ssl-verification-disabled.yaml +65 -0
- package/rules/unified/cwe-295/zm-cs-cwe295-cert-validation.yaml +67 -0
- package/rules/unified/cwe-295/zm-py-aiohttp-cwe295-cwe770-01.yaml +61 -0
- package/rules/unified/cwe-306/cwe-306-missing-authentication.yaml +45 -0
- package/rules/unified/cwe-306/zm-java-cwe306-actuator-exposure.yaml +53 -0
- package/rules/unified/cwe-306/zm-java-cwe306-cloud-config-server.yaml +56 -0
- package/rules/unified/cwe-306/zm-java-cwe306-rabbitmq-no-auth.yaml +58 -0
- package/rules/unified/cwe-306/zm-py-cwe306-flask-login.yaml +38 -0
- package/rules/unified/cwe-307/zm-go-cwe307-brute-force.yaml +130 -0
- package/rules/unified/cwe-307/zm-js-cwe307-brute-force.yaml +137 -0
- package/rules/unified/cwe-311/zm-docker-cwe311-secrets-in-build-arg.yaml +65 -0
- package/rules/unified/cwe-311/zm-java-cwe311-cookie-flags.yaml +94 -0
- package/rules/unified/cwe-311/zm-tf-cwe311-iam-wildcard.yaml +84 -0
- package/rules/unified/cwe-312/zm-js-cwe312-localstorage-jwt.yaml +32 -0
- package/rules/unified/cwe-319/zm-go-cwe319-grpc-notls.yaml +119 -0
- package/rules/unified/cwe-319/zm-tf-cwe319-rds-public-snapshot.yaml +47 -0
- package/rules/unified/cwe-319/zm-tf-cwe319-rds-public.yaml +73 -0
- package/rules/unified/cwe-326/cwe-326-weak-key-size.yaml +108 -0
- package/rules/unified/cwe-326/zm-go-cwe326-hmac-iv-nonce.yaml +73 -0
- package/rules/unified/cwe-326/zm-go-cwe326-weak-crypto.yaml +125 -0
- package/rules/unified/cwe-327/cwe-327-weak-crypto.yaml +178 -0
- package/rules/unified/cwe-327/zm-cpp-cwe327-weak-crypto.yaml +106 -0
- package/rules/unified/cwe-327/zm-cs-cwe327-weak-crypto.yaml +89 -0
- package/rules/unified/cwe-327/zm-go-cwe327-weak-cipher.yaml +153 -0
- package/rules/unified/cwe-327/zm-java-crypto-cwe327-001.yaml +104 -0
- package/rules/unified/cwe-327/zm-java-cwe327-ecb-weak-key-iv.yaml +87 -0
- package/rules/unified/cwe-327/zm-java-cwe327-weakcrypto.yaml +198 -0
- package/rules/unified/cwe-327/zm-js-cwe327-weak-cipher-des.yaml +30 -0
- package/rules/unified/cwe-327/zm-js-cwe327-weak-hash-md5.yaml +23 -0
- package/rules/unified/cwe-327/zm-php-cwe327-weak-hash.yaml +89 -0
- package/rules/unified/cwe-327/zm-py-crypto-cwe327-01.yaml +34 -0
- package/rules/unified/cwe-327/zm-py-cwe327-weak-crypto.yaml +104 -0
- package/rules/unified/cwe-327/zm-rust-cwe327-weak-crypto.yaml +124 -0
- package/rules/unified/cwe-327/zm-taint-327-327-go-169.yaml +37 -0
- package/rules/unified/cwe-327/zm-taint-327-327-go-170.yaml +38 -0
- package/rules/unified/cwe-327/zm-taint-327-327-java-161.yaml +52 -0
- package/rules/unified/cwe-327/zm-taint-327-327-java-162.yaml +52 -0
- package/rules/unified/cwe-327/zm-taint-327-327-java-163.yaml +46 -0
- package/rules/unified/cwe-327/zm-taint-327-327-java-164.yaml +38 -0
- package/rules/unified/cwe-327/zm-taint-327-327-javascript-165.yaml +41 -0
- package/rules/unified/cwe-327/zm-taint-327-327-javascript-166.yaml +39 -0
- package/rules/unified/cwe-327/zm-taint-327-327-php-171.yaml +38 -0
- package/rules/unified/cwe-327/zm-taint-327-327-php-172.yaml +38 -0
- package/rules/unified/cwe-327/zm-taint-327-327-python-167.yaml +39 -0
- package/rules/unified/cwe-327/zm-taint-327-327-python-168.yaml +41 -0
- package/rules/unified/cwe-328/cwe-328-weak-hash.yaml +97 -0
- package/rules/unified/cwe-329/cwe-329-cbc-mode.yaml +27 -0
- package/rules/unified/cwe-338/zm-go-cwe338-weak-prng.yaml +118 -0
- package/rules/unified/cwe-338/zm-java-cwe338-weakrandom.yaml +60 -0
- package/rules/unified/cwe-345/zm-js-cwe345-postmessage.yaml +76 -0
- package/rules/unified/cwe-345/zm-js-cwe345-websocket-security.yaml +91 -0
- package/rules/unified/cwe-347/zm-go-cwe347-jwt.yaml +148 -0
- package/rules/unified/cwe-347/zm-java-cwe347-jwt-deep.yaml +83 -0
- package/rules/unified/cwe-347/zm-java-cwe347-jwt.yaml +31 -0
- package/rules/unified/cwe-347/zm-js-cwe347-jwt-weak.yaml +101 -0
- package/rules/unified/cwe-352/cwe-352-csrf.yaml +27 -0
- package/rules/unified/cwe-352/zm-cs-cwe352-csrf.yaml +86 -0
- package/rules/unified/cwe-352/zm-java-cwe352-csrf-deep.yaml +52 -0
- package/rules/unified/cwe-352/zm-java-cwe352-csrf-depth.yaml +122 -0
- package/rules/unified/cwe-352/zm-java-cwe352-csrf-disabled.yaml +24 -0
- package/rules/unified/cwe-352/zm-js-cwe352-csrf.yaml +56 -0
- package/rules/unified/cwe-352/zm-py-cwe352-django-csrf.yaml +74 -0
- package/rules/unified/cwe-362/zm-java-cwe362-simpledateformat.yaml +57 -0
- package/rules/unified/cwe-377/zm-py-cwe377-race-condition.yaml +58 -0
- package/rules/unified/cwe-384/zm-go-cwe384-session-fixation.yaml +129 -0
- package/rules/unified/cwe-384/zm-java-cwe384-session-fixation.yaml +88 -0
- package/rules/unified/cwe-384/zm-js-cwe384-session-fixation.yaml +133 -0
- package/rules/unified/cwe-400/zm-docker-cwe400-resource-limit.yaml +105 -0
- package/rules/unified/cwe-400/zm-py-cwe400-multipart-dos.yaml +65 -0
- package/rules/unified/cwe-415/zm-cpp-cwe415-double-free.yaml +92 -0
- package/rules/unified/cwe-416/zm-cpp-cwe416-use-after-free.yaml +81 -0
- package/rules/unified/cwe-416/zm-rust-cwe416-unsafe.yaml +150 -0
- package/rules/unified/cwe-434/cwe-434-unrestricted-file-upload.yaml +42 -0
- package/rules/unified/cwe-434/zm-php-cwe434-file-upload.yaml +99 -0
- package/rules/unified/cwe-434/zm-py-cwe434-django-fileupload.yaml +100 -0
- package/rules/unified/cwe-434/zm-taint-434-434-java-130.yaml +44 -0
- package/rules/unified/cwe-434/zm-taint-434-434-java-131.yaml +44 -0
- package/rules/unified/cwe-434/zm-taint-434-434-javascript-139.yaml +45 -0
- package/rules/unified/cwe-434/zm-taint-434-434-python-136.yaml +42 -0
- package/rules/unified/cwe-470/zm-java-cwe470-reflection.yaml +79 -0
- package/rules/unified/cwe-476/zm-cpp-cwe476-null-dereference.yaml +89 -0
- package/rules/unified/cwe-501/zm-java-cwe501-trust-boundary.yaml +125 -0
- package/rules/unified/cwe-502/cwe-502-insecure-deserialization.yaml +45 -0
- package/rules/unified/cwe-502/zm-cs-cwe502-deserialization.yaml +92 -0
- package/rules/unified/cwe-502/zm-go-cwe502-deserialization.yaml +121 -0
- package/rules/unified/cwe-502/zm-java-cwe502-deserial-depth.yaml +129 -0
- package/rules/unified/cwe-502/zm-java-cwe502-dubbo-deserial.yaml +59 -0
- package/rules/unified/cwe-502/zm-java-cwe502-fastjson.yaml +138 -0
- package/rules/unified/cwe-502/zm-java-cwe502-gadget.yaml +159 -0
- package/rules/unified/cwe-502/zm-java-cwe502-hessian-deep.yaml +68 -0
- package/rules/unified/cwe-502/zm-java-cwe502-jackson-defaulttyping.yaml +60 -0
- package/rules/unified/cwe-502/zm-java-cwe502-jndi-injection.yaml +92 -0
- package/rules/unified/cwe-502/zm-java-cwe502-kryo-deep.yaml +65 -0
- package/rules/unified/cwe-502/zm-java-cwe502-log4j-jndi.yaml +67 -0
- package/rules/unified/cwe-502/zm-java-cwe502-shiro.yaml +109 -0
- package/rules/unified/cwe-502/zm-java-cwe502-snakeyaml-load.yaml +56 -0
- package/rules/unified/cwe-502/zm-java-cwe502-xstream-nosecurity.yaml +65 -0
- package/rules/unified/cwe-502/zm-java-deserial-cwe502-001.yaml +73 -0
- package/rules/unified/cwe-502/zm-java-jndi-cwe502-001.yaml +108 -0
- package/rules/unified/cwe-502/zm-java-xstream-cwe502-001.yaml +74 -0
- package/rules/unified/cwe-502/zm-js-cwe502-deserialization.yaml +120 -0
- package/rules/unified/cwe-502/zm-php-cwe502-unserialize.yaml +94 -0
- package/rules/unified/cwe-502/zm-py-cwe502-deser-advanced.yaml +130 -0
- package/rules/unified/cwe-502/zm-py-cwe502-pickle.yaml +93 -0
- package/rules/unified/cwe-502/zm-py-deser-cwe502-01.yaml +67 -0
- package/rules/unified/cwe-502/zm-taint-502-502-go-109.yaml +39 -0
- package/rules/unified/cwe-502/zm-taint-502-502-go-110.yaml +39 -0
- package/rules/unified/cwe-502/zm-taint-502-502-java-092.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-java-093.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-java-094.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-java-095.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-java-097.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-java-098.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-java-099.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-javascript-107.yaml +40 -0
- package/rules/unified/cwe-502/zm-taint-502-502-python-105.yaml +47 -0
- package/rules/unified/cwe-506/zm-js-cwe506-npm-supply-chain.yaml +20 -0
- package/rules/unified/cwe-532/zm-java-cwe532-printstack-info-leak.yaml +56 -0
- package/rules/unified/cwe-601/cwe-601-url-redirect.yaml +111 -0
- package/rules/unified/cwe-601/zm-cs-cwe601-url-redirect.yaml +61 -0
- package/rules/unified/cwe-601/zm-go-cwe601-open-redirect.yaml +40 -0
- package/rules/unified/cwe-601/zm-java-cwe601-modelandview-redirect.yaml +70 -0
- package/rules/unified/cwe-601/zm-js-cwe601-express-redirect.yaml +28 -0
- package/rules/unified/cwe-601/zm-js-cwe601-fastify-redirect.yaml +25 -0
- package/rules/unified/cwe-601/zm-php-cwe601-open-redirect.yaml +107 -0
- package/rules/unified/cwe-601/zm-taint-601-601-go-178.yaml +41 -0
- package/rules/unified/cwe-601/zm-taint-601-601-python-177.yaml +42 -0
- package/rules/unified/cwe-611/cwe-611-xxe.yaml +71 -0
- package/rules/unified/cwe-611/zm-cs-cwe611-xxe.yaml +87 -0
- package/rules/unified/cwe-611/zm-java-cwe611-xxe-enhanced.yaml +81 -0
- package/rules/unified/cwe-611/zm-java-cwe611-xxe-transformer.yaml +86 -0
- package/rules/unified/cwe-611/zm-java-xxe-cwe611-003.yaml +106 -0
- package/rules/unified/cwe-611/zm-js-cwe611-xxe.yaml +109 -0
- package/rules/unified/cwe-611/zm-py-cwe611-xxe-advanced.yaml +70 -0
- package/rules/unified/cwe-611/zm-py-cwe611-xxe.yaml +101 -0
- package/rules/unified/cwe-611/zm-taint-611-611-go-123.yaml +38 -0
- package/rules/unified/cwe-611/zm-taint-611-611-java-111.yaml +45 -0
- package/rules/unified/cwe-611/zm-taint-611-611-java-112.yaml +45 -0
- package/rules/unified/cwe-611/zm-taint-611-611-java-113.yaml +45 -0
- package/rules/unified/cwe-611/zm-taint-611-611-java-114.yaml +45 -0
- package/rules/unified/cwe-611/zm-taint-611-611-java-115.yaml +45 -0
- package/rules/unified/cwe-611/zm-taint-611-611-javascript-121.yaml +39 -0
- package/rules/unified/cwe-611/zm-taint-611-611-javascript-122.yaml +39 -0
- package/rules/unified/cwe-639/zm-java-cwe639-idor.yaml +124 -0
- package/rules/unified/cwe-639/zm-js-cwe639-idor.yaml +123 -0
- package/rules/unified/cwe-643/zm-java-cwe643-xpath-injection.yaml +56 -0
- package/rules/unified/cwe-676/zm-cpp-cwe676-dangerous-function.yaml +86 -0
- package/rules/unified/cwe-693/zm-go-cwe693-gin-middleware.yaml +49 -0
- package/rules/unified/cwe-693/zm-go-cwe693-security-headers.yaml +133 -0
- package/rules/unified/cwe-693/zm-js-cwe693-helmet-missing.yaml +57 -0
- package/rules/unified/cwe-732/cwe-732-incorrect-permission.yaml +50 -0
- package/rules/unified/cwe-74/zm-java-cwe74-host-header-injection.yaml +64 -0
- package/rules/unified/cwe-770/cwe-770-resource-exhaustion.yaml +45 -0
- package/rules/unified/cwe-770/zm-go-cwe770-redos.yaml +79 -0
- package/rules/unified/cwe-770/zm-js-cwe770-nestjs-validator.yaml +27 -0
- package/rules/unified/cwe-78/cwe-78-os-command-injection.yaml +44 -0
- package/rules/unified/cwe-78/zm-ansible-cwe78-command-injection.yaml +68 -0
- package/rules/unified/cwe-78/zm-cpp-cwe78-command-injection.yaml +86 -0
- package/rules/unified/cwe-78/zm-cs-cwe78-command-injection.yaml +94 -0
- package/rules/unified/cwe-78/zm-go-cwe78-command-injection.yaml +96 -0
- package/rules/unified/cwe-78/zm-go-cwe78-osci-advanced.yaml +39 -0
- package/rules/unified/cwe-78/zm-java-rce-cwe78-001.yaml +99 -0
- package/rules/unified/cwe-78/zm-js-cwe78-exec.yaml +38 -0
- package/rules/unified/cwe-78/zm-js-cwe78-execsync-injection.yaml +26 -0
- package/rules/unified/cwe-78/zm-js-cwe78-spawn.yaml +38 -0
- package/rules/unified/cwe-78/zm-php-cwe78-cmdinj.yaml +222 -0
- package/rules/unified/cwe-78/zm-py-cwe78-command-injection.yaml +122 -0
- package/rules/unified/cwe-78/zm-py-cwe78-osci-advanced.yaml +77 -0
- package/rules/unified/cwe-78/zm-rust-cwe78-cmdinj.yaml +103 -0
- package/rules/unified/cwe-78/zm-taint-78-78-go-040.yaml +38 -0
- package/rules/unified/cwe-78/zm-taint-78-78-go-041.yaml +38 -0
- package/rules/unified/cwe-78/zm-taint-78-78-java-027.yaml +44 -0
- package/rules/unified/cwe-78/zm-taint-78-78-java-028.yaml +44 -0
- package/rules/unified/cwe-78/zm-taint-78-78-java-029.yaml +44 -0
- package/rules/unified/cwe-78/zm-taint-78-78-python-034.yaml +47 -0
- package/rules/unified/cwe-787/cwe-787-out-of-bounds-write.yaml +38 -0
- package/rules/unified/cwe-79/cwe-79-xss.yaml +52 -0
- package/rules/unified/cwe-79/zm-cs-cwe79-xss.yaml +84 -0
- package/rules/unified/cwe-79/zm-go-cwe79-framework-xss.yaml +134 -0
- package/rules/unified/cwe-79/zm-go-cwe79-mail-injection.yaml +68 -0
- package/rules/unified/cwe-79/zm-go-cwe79-xss.yaml +105 -0
- package/rules/unified/cwe-79/zm-java-cwe79-xss-depth.yaml +99 -0
- package/rules/unified/cwe-79/zm-js-cwe79-angular-bypass.yaml +24 -0
- package/rules/unified/cwe-79/zm-js-cwe79-domxss.yaml +85 -0
- package/rules/unified/cwe-79/zm-js-cwe79-electron-security.yaml +36 -0
- package/rules/unified/cwe-79/zm-js-cwe79-react-dangerously.yaml +23 -0
- package/rules/unified/cwe-79/zm-js-cwe79-react-xss-deep.yaml +35 -0
- package/rules/unified/cwe-79/zm-js-cwe79-react-xss.yaml +19 -0
- package/rules/unified/cwe-79/zm-js-cwe79-vue-vhtml.yaml +25 -0
- package/rules/unified/cwe-79/zm-js-cwe79-xss-ejs.yaml +71 -0
- package/rules/unified/cwe-79/zm-php-cwe79-xss.yaml +222 -0
- package/rules/unified/cwe-79/zm-py-cwe79-django-flask-xss.yaml +97 -0
- package/rules/unified/cwe-79/zm-py-cwe79-host-header-injection.yaml +43 -0
- package/rules/unified/cwe-79/zm-py-cwe79-xss.yaml +124 -0
- package/rules/unified/cwe-79/zm-taint-79-79-javascript-050.yaml +45 -0
- package/rules/unified/cwe-79/zm-taint-79-79-javascript-054.yaml +45 -0
- package/rules/unified/cwe-79/zm-taint-79-79-python-056.yaml +44 -0
- package/rules/unified/cwe-798/zm-cs-cwe798-hardcoded-creds.yaml +107 -0
- package/rules/unified/cwe-798/zm-go-cwe798-hardcoded-creds.yaml +154 -0
- package/rules/unified/cwe-798/zm-py-cwe798-framework-creds.yaml +160 -0
- package/rules/unified/cwe-798/zm-py-cwe798-hardcoded-creds.yaml +87 -0
- package/rules/unified/cwe-798/zm-rust-cwe798-hardcoded-creds.yaml +128 -0
- package/rules/unified/cwe-798/zm-tf-cwe798-hardcoded-creds.yaml +103 -0
- package/rules/unified/cwe-862/zm-js-cwe862-nestjs-skip-auth.yaml +24 -0
- package/rules/unified/cwe-89/cwe-89-sqli.yaml +90 -0
- package/rules/unified/cwe-89/zm-cs-cwe89-sql-injection.yaml +95 -0
- package/rules/unified/cwe-89/zm-go-cwe89-framework-sqli.yaml +154 -0
- package/rules/unified/cwe-89/zm-go-cwe89-gorm-sqli.yaml +105 -0
- package/rules/unified/cwe-89/zm-go-cwe89-sqli.yaml +90 -0
- package/rules/unified/cwe-89/zm-java-cwe89-jpa-query-concat.yaml +56 -0
- package/rules/unified/cwe-89/zm-java-hql-cwe89-001.yaml +73 -0
- package/rules/unified/cwe-89/zm-js-cwe89-koa-sqli.yaml +29 -0
- package/rules/unified/cwe-89/zm-js-cwe89-nestjs-typeorm.yaml +34 -0
- package/rules/unified/cwe-89/zm-js-cwe89-prisma-typeorm.yaml +140 -0
- package/rules/unified/cwe-89/zm-js-cwe89-prisma-unsafe.yaml +24 -0
- package/rules/unified/cwe-89/zm-js-cwe89-sequelize-literal.yaml +26 -0
- package/rules/unified/cwe-89/zm-js-cwe89-sqli.yaml +154 -0
- package/rules/unified/cwe-89/zm-php-cwe89-sqli.yaml +185 -0
- package/rules/unified/cwe-89/zm-py-cwe89-django-sqli.yaml +75 -0
- package/rules/unified/cwe-89/zm-py-cwe89-injection-misc.yaml +94 -0
- package/rules/unified/cwe-89/zm-py-cwe89-sqli.yaml +60 -0
- package/rules/unified/cwe-89/zm-py-sqlalchemy-cwe89-01.yaml +66 -0
- package/rules/unified/cwe-89/zm-rust-cwe89-sqli.yaml +149 -0
- package/rules/unified/cwe-89/zm-taint-89-89-go-023.yaml +40 -0
- package/rules/unified/cwe-89/zm-taint-89-89-go-024.yaml +40 -0
- package/rules/unified/cwe-89/zm-taint-89-89-go-025.yaml +40 -0
- package/rules/unified/cwe-89/zm-taint-89-89-java-001.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-java-006.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-java-008.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-javascript-018.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-javascript-019.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-javascript-022.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-python-014.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-python-015.yaml +48 -0
- package/rules/unified/cwe-89/zm-taint-89-89-python-017.yaml +48 -0
- package/rules/unified/cwe-90/zm-java-cwe90-ldap-injection.yaml +54 -0
- package/rules/unified/cwe-915/zm-go-cwe915-reflect-injection.yaml +70 -0
- package/rules/unified/cwe-915/zm-java-cwe915-mass-assignment.yaml +17 -0
- package/rules/unified/cwe-915/zm-js-cwe915-mass-assignment.yaml +112 -0
- package/rules/unified/cwe-915/zm-js-cwe915-prototype-pollution.yaml +31 -0
- package/rules/unified/cwe-915/zm-php-cwe915-mass-assignment.yaml +127 -0
- package/rules/unified/cwe-915/zm-taint-915-915-javascript-216.yaml +39 -0
- package/rules/unified/cwe-915/zm-taint-915-915-javascript-217.yaml +40 -0
- package/rules/unified/cwe-915/zm-taint-915-915-javascript-218.yaml +39 -0
- package/rules/unified/cwe-915/zm-taint-915-915-javascript-219.yaml +42 -0
- package/rules/unified/cwe-917/zm-java-cwe917-expression-injection.yaml +121 -0
- package/rules/unified/cwe-918/cwe-918-ssrf.yaml +46 -0
- package/rules/unified/cwe-918/zm-cs-cwe918-ssrf.yaml +96 -0
- package/rules/unified/cwe-918/zm-go-cwe918-ssrf.yaml +118 -0
- package/rules/unified/cwe-918/zm-java-cwe918-jsoup-ssrf.yaml +56 -0
- package/rules/unified/cwe-918/zm-java-cwe918-okhttp-full.yaml +63 -0
- package/rules/unified/cwe-918/zm-java-cwe918-resttemplate.yaml +68 -0
- package/rules/unified/cwe-918/zm-java-cwe918-rt-getforentity.yaml +49 -0
- package/rules/unified/cwe-918/zm-java-cwe918-ssrf-depth.yaml +104 -0
- package/rules/unified/cwe-918/zm-java-cwe918-ssrf-resttemplate.yaml +78 -0
- package/rules/unified/cwe-918/zm-java-cwe918-url-openconnection.yaml +58 -0
- package/rules/unified/cwe-918/zm-java-cwe918-webclient-ssrf.yaml +60 -0
- package/rules/unified/cwe-918/zm-java-cwe918-webclient.yaml +45 -0
- package/rules/unified/cwe-918/zm-js-cwe918-http-ssrf-concat.yaml +28 -0
- package/rules/unified/cwe-918/zm-js-cwe918-nextjs-ssrf.yaml +46 -0
- package/rules/unified/cwe-918/zm-js-cwe918-ssrf-fetch.yaml +135 -0
- package/rules/unified/cwe-918/zm-js-cwe918-ssrf.yaml +133 -0
- package/rules/unified/cwe-918/zm-php-cwe918-ssrf.yaml +144 -0
- package/rules/unified/cwe-918/zm-py-cwe918-flask-ssrf.yaml +40 -0
- package/rules/unified/cwe-918/zm-py-cwe918-ssrf-advanced.yaml +105 -0
- package/rules/unified/cwe-918/zm-py-cwe918-ssrf.yaml +124 -0
- package/rules/unified/cwe-918/zm-taint-918-918-java-078.yaml +45 -0
- package/rules/unified/cwe-918/zm-taint-918-918-java-079.yaml +45 -0
- package/rules/unified/cwe-918/zm-taint-918-918-python-085.yaml +46 -0
- package/rules/unified/cwe-94/cwe-94-code-injection.yaml +60 -0
- package/rules/unified/cwe-94/zm-java-cwe94-ognl.yaml +67 -0
- package/rules/unified/cwe-94/zm-java-cwe94-spel-injection.yaml +86 -0
- package/rules/unified/cwe-94/zm-java-cwe94-spel.yaml +113 -0
- package/rules/unified/cwe-94/zm-java-cwe94-ssti.yaml +23 -0
- package/rules/unified/cwe-94/zm-java-cwe94-value-spel.yaml +56 -0
- package/rules/unified/cwe-94/zm-java-expression-cwe94-001.yaml +111 -0
- package/rules/unified/cwe-94/zm-js-cwe94-template-injection.yaml +131 -0
- package/rules/unified/cwe-94/zm-php-cwe94-code-injection.yaml +129 -0
- package/rules/unified/cwe-94/zm-py-cwe94-ssti.yaml +88 -0
- package/rules/unified/cwe-942/zm-java-cwe942-cors-wildcard.yaml +63 -0
- package/rules/unified/cwe-942/zm-java-cwe942-cors.yaml +16 -0
- package/rules/unified/cwe-942/zm-js-cwe942-cors.yaml +50 -0
- package/rules/unified/cwe-942/zm-js-cwe942-express-cors.yaml +25 -0
- package/rules/unified/cwe-943/zm-go-cwe943-nosql-injection.yaml +89 -0
- package/rules/unified/cwe-943/zm-js-cwe943-mongoose-nosqli.yaml +29 -0
- package/rules/unified/cwe-943/zm-js-cwe943-nosql-injection.yaml +53 -0
- package/rules/unified/cwe-943/zm-py-cwe943-nosql-injection.yaml +124 -0
- package/rules/unified/cwe-943/zm-taint-943-943-java-238.yaml +38 -0
- package/rules/unified/cwe-943/zm-taint-943-943-javascript-234.yaml +41 -0
- package/rules/unified/cwe-943/zm-taint-943-943-javascript-235.yaml +41 -0
- package/rules/unified/cwe-943/zm-taint-943-943-javascript-236.yaml +40 -0
- package/rules/unified/cwe-943/zm-taint-943-943-python-237.yaml +39 -0
- package/rules/unified/cwe-95/zm-js-cwe95-eval.yaml +60 -0
- package/rules/unified/cwe-95/zm-js-cwe95-function-ctor.yaml +32 -0
- package/rules/unified/cwe-98/zm-php-cwe98-file-include.yaml +142 -0
- package/rules/unified/cwe-unknown/zm-docker-security.yaml +105 -0
- package/rules/unified/cwe-unknown/zm-go-cwe-unknown-misc.yaml +152 -0
- package/rules/unified/cwe-unknown/zm-k8s-security.yaml +80 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-134: C/C++ 格式化字符串漏洞检测规则
|
|
3
|
+
# 逐码 ZhuMa V4.3 — C/C++ 规则库
|
|
4
|
+
#
|
|
5
|
+
# 检测 printf 系列函数中用户输入直接作为格式字符串参数传递,
|
|
6
|
+
# 攻击者可通过 %n 写入任意地址或 %s/%x 泄露内存。
|
|
7
|
+
|
|
8
|
+
rules:
|
|
9
|
+
|
|
10
|
+
# ZM-CPP-CWE134-001: printf 用户可控格式字符串
|
|
11
|
+
- id: zm-cpp-cwe134-format-string-001
|
|
12
|
+
severity: ERROR
|
|
13
|
+
message: |
|
|
14
|
+
检测到 printf 系列函数将变量/用户输入直接作为格式字符串参数,
|
|
15
|
+
而不是作为格式化参数传递。攻击者可通过 %n(写入任意地址)、
|
|
16
|
+
%s(读取栈)或 %x(泄露内存)进行攻击。
|
|
17
|
+
|
|
18
|
+
例如危险用法: printf(user_input) 而非 printf("%s", user_input)
|
|
19
|
+
|
|
20
|
+
修复方案:
|
|
21
|
+
- 始终使用字面量字符串作为格式参数: printf("%s", user_input)
|
|
22
|
+
- 永远不要将用户可控的数据作为 format 参数
|
|
23
|
+
- 编译器可启用 -Wformat-security 告警辅助检测
|
|
24
|
+
languages:
|
|
25
|
+
- c
|
|
26
|
+
- cpp
|
|
27
|
+
pattern-either:
|
|
28
|
+
- pattern: printf($FMT)
|
|
29
|
+
- pattern: fprintf($FP, $FMT)
|
|
30
|
+
- pattern: sprintf($BUF, $FMT)
|
|
31
|
+
- pattern: snprintf($BUF, $N, $FMT)
|
|
32
|
+
- pattern: dprintf($FD, $FMT)
|
|
33
|
+
- pattern: syslog($LEVEL, $FMT)
|
|
34
|
+
metadata:
|
|
35
|
+
cwe: "CWE-134: Uncontrolled Format String"
|
|
36
|
+
owasp: "A03:2021 - Injection"
|
|
37
|
+
category: security
|
|
38
|
+
precision: low
|
|
39
|
+
references:
|
|
40
|
+
- "https://cwe.mitre.org/data/definitions/134.html"
|
|
41
|
+
- "https://owasp.org/www-community/attacks/Format_string_attack"
|
|
42
|
+
|
|
43
|
+
# ZM-CPP-CWE134-002: 用户输入直接作为格式参数
|
|
44
|
+
- id: zm-cpp-cwe134-format-string-002
|
|
45
|
+
severity: ERROR
|
|
46
|
+
message: |
|
|
47
|
+
检测到用户输入变量直接作为 printf 系列函数的格式字符串参数。
|
|
48
|
+
即使经过了部分处理,只要用户输入仍可控制格式说明符(%s/%n/%x),
|
|
49
|
+
就存在格式化字符串漏洞。
|
|
50
|
+
|
|
51
|
+
修复方案:
|
|
52
|
+
- 硬编码格式字符串: printf("%s", user_input)
|
|
53
|
+
- 使用 puts() 或 fputs() 输出纯文本(不需要格式化)
|
|
54
|
+
- 验证和清理用户输入中的 % 字符
|
|
55
|
+
languages:
|
|
56
|
+
- c
|
|
57
|
+
- cpp
|
|
58
|
+
pattern-either:
|
|
59
|
+
- pattern: |
|
|
60
|
+
char $BUF[...];
|
|
61
|
+
...
|
|
62
|
+
printf($BUF);
|
|
63
|
+
- pattern: |
|
|
64
|
+
char $BUF[...];
|
|
65
|
+
...
|
|
66
|
+
fprintf($FP, $BUF);
|
|
67
|
+
- pattern: |
|
|
68
|
+
char $BUF[...];
|
|
69
|
+
...
|
|
70
|
+
sprintf($DST, $BUF);
|
|
71
|
+
metadata:
|
|
72
|
+
cwe: "CWE-134: Uncontrolled Format String"
|
|
73
|
+
owasp: "A03:2021 - Injection"
|
|
74
|
+
category: security
|
|
75
|
+
precision: medium
|
|
76
|
+
references:
|
|
77
|
+
- "https://cwe.mitre.org/data/definitions/134.html"
|
|
78
|
+
|
|
79
|
+
# ZM-CPP-CWE134-003: vprintf 系列格式字符串
|
|
80
|
+
- id: zm-cpp-cwe134-format-string-003
|
|
81
|
+
severity: ERROR
|
|
82
|
+
message: |
|
|
83
|
+
检测到 vprintf/vfprintf/vsprintf 系列函数使用变量作为格式字符串。
|
|
84
|
+
这些可变参数版本的函数同样存在格式字符串注入风险。
|
|
85
|
+
如果格式字符串来源于用户输入或网络数据,攻击者可以读取栈内存、
|
|
86
|
+
写入任意地址甚至执行任意代码。
|
|
87
|
+
|
|
88
|
+
修复方案:
|
|
89
|
+
- 确保 format 参数始终是编译期确定的字面量字符串
|
|
90
|
+
- 如必须动态选择格式,使用白名单预定义的格式字符串集合
|
|
91
|
+
- 启用 -Wformat=2 编译器告警
|
|
92
|
+
languages:
|
|
93
|
+
- c
|
|
94
|
+
- cpp
|
|
95
|
+
pattern-either:
|
|
96
|
+
- pattern: vprintf($FMT, $AP)
|
|
97
|
+
- pattern: vfprintf($FP, $FMT, $AP)
|
|
98
|
+
- pattern: vsprintf($BUF, $FMT, $AP)
|
|
99
|
+
- pattern: vsnprintf($BUF, $N, $FMT, $AP)
|
|
100
|
+
metadata:
|
|
101
|
+
cwe: "CWE-134: Uncontrolled Format String"
|
|
102
|
+
owasp: "A03:2021 - Injection"
|
|
103
|
+
category: security
|
|
104
|
+
precision: low
|
|
105
|
+
references:
|
|
106
|
+
- "https://cwe.mitre.org/data/definitions/134.html"
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-190: C/C++ 整数溢出检测规则
|
|
3
|
+
# 逐码 ZhuMa V4.3 — C/C++ 规则库
|
|
4
|
+
#
|
|
5
|
+
# 检测可能导致整数溢出的算术运算、类型转换和内存分配计算。
|
|
6
|
+
|
|
7
|
+
rules:
|
|
8
|
+
|
|
9
|
+
# ZM-CPP-CWE190-001: malloc 整数溢出导致不足分配
|
|
10
|
+
- id: zm-cpp-cwe190-integer-overflow-001
|
|
11
|
+
severity: WARNING
|
|
12
|
+
message: |
|
|
13
|
+
检测到 malloc/calloc 的参数涉及算术运算(乘/加),可能发生整数溢出。
|
|
14
|
+
如果 n * sizeof(T) 的结果溢出为小值,
|
|
15
|
+
malloc 将分配不足的内存,后续写入将导致堆缓冲区溢出。
|
|
16
|
+
|
|
17
|
+
修复方案:
|
|
18
|
+
- 使用 calloc(nmemb, size) 代替 malloc(n * sizeof(T)),calloc 内部检查溢出
|
|
19
|
+
- 在乘法前检查溢出: if (n > SIZE_MAX / sizeof(T)) { /* 错误 */ }
|
|
20
|
+
- 使用 __builtin_mul_overflow() (GCC/Clang) 检测溢出
|
|
21
|
+
- C++: 使用 std::vector<T>(n) 自动管理
|
|
22
|
+
languages:
|
|
23
|
+
- c
|
|
24
|
+
- cpp
|
|
25
|
+
pattern-either:
|
|
26
|
+
- pattern: malloc($A * $B)
|
|
27
|
+
- pattern: malloc($A + $B)
|
|
28
|
+
- pattern: calloc($A, $B)
|
|
29
|
+
metadata:
|
|
30
|
+
cwe: "CWE-190: Integer Overflow or Wraparound"
|
|
31
|
+
owasp: "A06:2021 - Vulnerable and Outdated Components"
|
|
32
|
+
category: security
|
|
33
|
+
precision: low
|
|
34
|
+
references:
|
|
35
|
+
- "https://cwe.mitre.org/data/definitions/190.html"
|
|
36
|
+
- "https://wiki.sei.cmu.edu/confluence/display/c/INT30-C.+Ensure+that+unsigned+integer+operations+do+not+wrap"
|
|
37
|
+
|
|
38
|
+
# ZM-CPP-CWE190-002: 有符号整数溢出 (C++)
|
|
39
|
+
- id: zm-cpp-cwe190-integer-overflow-002
|
|
40
|
+
severity: WARNING
|
|
41
|
+
message: |
|
|
42
|
+
检测到有符号整数进行加/减/乘运算,可能发生未定义行为的溢出。
|
|
43
|
+
C/C++ 标准规定有符号整数溢出是未定义行为 (UB),
|
|
44
|
+
编译器可能基于"不会溢出"的假设进行优化,导致意外行为和安全漏洞。
|
|
45
|
+
|
|
46
|
+
修复方案:
|
|
47
|
+
- 使用无符号类型进行模运算(行为定义明确)
|
|
48
|
+
- 运算前检查范围: if (a > INT_MAX - b) { /* 溢出 */ }
|
|
49
|
+
- C23/C++23: 使用 ckd_add/ckd_mul 等内置溢出检查函数
|
|
50
|
+
- 使用编译器内置 __builtin_add_overflow() 系列
|
|
51
|
+
languages:
|
|
52
|
+
- c
|
|
53
|
+
- cpp
|
|
54
|
+
patterns:
|
|
55
|
+
- pattern: $A + $B
|
|
56
|
+
- pattern: $A * $B
|
|
57
|
+
- pattern: $A - $B
|
|
58
|
+
metadata:
|
|
59
|
+
cwe: "CWE-190: Integer Overflow or Wraparound"
|
|
60
|
+
owasp: "A06:2021 - Vulnerable and Outdated Components"
|
|
61
|
+
category: security
|
|
62
|
+
precision: very-low
|
|
63
|
+
references:
|
|
64
|
+
- "https://cwe.mitre.org/data/definitions/190.html"
|
|
65
|
+
|
|
66
|
+
# ZM-CPP-CWE190-003: 宽类型到窄类型隐式截断
|
|
67
|
+
- id: zm-cpp-cwe190-integer-overflow-003
|
|
68
|
+
severity: WARNING
|
|
69
|
+
message: |
|
|
70
|
+
检测到较大整数类型隐式截断为较小类型(如 size_t → int、uint32_t → uint16_t)。
|
|
71
|
+
截断可能丢失高位数据,导致逻辑错误或缓冲区大小计算错误。
|
|
72
|
+
在安全敏感的代码中(如分配大小计算、循环边界),截断可引发缓冲区溢出。
|
|
73
|
+
|
|
74
|
+
修复方案:
|
|
75
|
+
- 显式类型转换并检查范围
|
|
76
|
+
- 使用 static_cast 并在转换前做范围检查
|
|
77
|
+
- 使用相同或更大的类型避免截断
|
|
78
|
+
- 启用编译器告警: -Wconversion -Wsign-conversion
|
|
79
|
+
languages:
|
|
80
|
+
- c
|
|
81
|
+
- cpp
|
|
82
|
+
pattern-either:
|
|
83
|
+
- pattern: (int)$LONG_VAR
|
|
84
|
+
- pattern: (unsigned short)$LONG_VAR
|
|
85
|
+
- pattern: (char)$INT_VAR
|
|
86
|
+
metadata:
|
|
87
|
+
cwe: "CWE-190: Integer Overflow or Wraparound"
|
|
88
|
+
owasp: "A06:2021 - Vulnerable and Outdated Components"
|
|
89
|
+
category: security
|
|
90
|
+
precision: very-low
|
|
91
|
+
references:
|
|
92
|
+
- "https://cwe.mitre.org/data/definitions/190.html"
|
|
93
|
+
- "https://cwe.mitre.org/data/definitions/192.html"
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-20: C/C++ 输入验证缺失检测规则
|
|
3
|
+
# 逐码 ZhuMa V4.3 — C/C++ 规则库
|
|
4
|
+
#
|
|
5
|
+
# 检测用户输入未经验证直接使用的模式,
|
|
6
|
+
# 包括网络数据、环境变量、命令行参数等未检查边界。
|
|
7
|
+
|
|
8
|
+
rules:
|
|
9
|
+
|
|
10
|
+
# ZM-CPP-CWE20-001: recv/read返回值未检查
|
|
11
|
+
- id: zm-cpp-cwe20-input-validation-001
|
|
12
|
+
severity: WARNING
|
|
13
|
+
message: |
|
|
14
|
+
检测到 recv()/read() 的返回值未用于验证实际读取的字节数。
|
|
15
|
+
未验证接收长度可能导致缓冲区溢出(数据超预期)
|
|
16
|
+
或不完整数据处理(数据量不足)。
|
|
17
|
+
|
|
18
|
+
修复方案:
|
|
19
|
+
- 检查返回值: ssize_t n = recv(sock, buf, sizeof(buf), 0); if (n < 0 || n > sizeof(buf)) { /* 错误 */ }
|
|
20
|
+
- 对于流式协议,循环读取直到收到完整消息
|
|
21
|
+
- 验证返回值不大于目标缓冲区大小
|
|
22
|
+
- 使用 recv() 返回的 n 作为后续处理的数据长度
|
|
23
|
+
languages:
|
|
24
|
+
- c
|
|
25
|
+
- cpp
|
|
26
|
+
pattern-either:
|
|
27
|
+
- pattern: recv($SOCK, $BUF, $LEN, $FLAGS)
|
|
28
|
+
- pattern: recvfrom($SOCK, $BUF, $LEN, $FLAGS, $FROM, $FROMLEN)
|
|
29
|
+
- pattern: read($FD, $BUF, $N)
|
|
30
|
+
metadata:
|
|
31
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
32
|
+
owasp: "A03:2021 - Injection"
|
|
33
|
+
category: security
|
|
34
|
+
precision: very-low
|
|
35
|
+
references:
|
|
36
|
+
- "https://cwe.mitre.org/data/definitions/20.html"
|
|
37
|
+
- "https://wiki.sei.cmu.edu/confluence/display/c/STR31-C.+Guarantee+that+storage+for+strings+has+sufficient+space+for+character+data+and+the+null+terminator"
|
|
38
|
+
|
|
39
|
+
# ZM-CPP-CWE20-002: atoi/atol/atof无错误检测
|
|
40
|
+
- id: zm-cpp-cwe20-input-validation-002
|
|
41
|
+
severity: WARNING
|
|
42
|
+
message: |
|
|
43
|
+
检测到使用 atoi()/atol()/atof() 转换用户输入。这些函数在输入无法解析时
|
|
44
|
+
返回 0 或产生未定义行为,无法区分 "0" 和错误输入。可能导致安全逻辑绕过。
|
|
45
|
+
|
|
46
|
+
修复方案:
|
|
47
|
+
- 使用 strtol()/strtoul()/strtod() 并检查 endptr 和 errno
|
|
48
|
+
- 使用 sscanf() 并检查返回值是否为 1(成功解析 1 个值)
|
|
49
|
+
- C++: 使用 std::stoi()/std::stol() 捕获异常
|
|
50
|
+
- C++17: 使用 std::from_chars() 获得明确错误信息
|
|
51
|
+
languages:
|
|
52
|
+
- c
|
|
53
|
+
- cpp
|
|
54
|
+
pattern-either:
|
|
55
|
+
- pattern: atoi($STR)
|
|
56
|
+
- pattern: atol($STR)
|
|
57
|
+
- pattern: atof($STR)
|
|
58
|
+
- pattern: atoll($STR)
|
|
59
|
+
metadata:
|
|
60
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
61
|
+
owasp: "A03:2021 - Injection"
|
|
62
|
+
category: security
|
|
63
|
+
precision: high
|
|
64
|
+
references:
|
|
65
|
+
- "https://cwe.mitre.org/data/definitions/20.html"
|
|
66
|
+
- "https://wiki.sei.cmu.edu/confluence/display/c/ERR34-C.+Detect+errors+when+converting+a+string+to+a+number"
|
|
67
|
+
|
|
68
|
+
# ZM-CPP-CWE20-003: memcpy长度来源于不可信源
|
|
69
|
+
- id: zm-cpp-cwe20-input-validation-003
|
|
70
|
+
severity: WARNING
|
|
71
|
+
message: |
|
|
72
|
+
检测到 memcpy() 调用使用了变量作为长度参数。如果该长度值来源于
|
|
73
|
+
不可信输入(网络数据、用户输入、文件内容等)且未验证,
|
|
74
|
+
可能导致缓冲区溢出。
|
|
75
|
+
|
|
76
|
+
修复方案:
|
|
77
|
+
- 验证长度参数不超过目标缓冲区大小: if (n > sizeof(dst)) { /* 错误 */ }
|
|
78
|
+
- 使用 memcpy_s() (C11 Annex K) 自动检查
|
|
79
|
+
- 验证长度参数不超过源缓冲区大小
|
|
80
|
+
- 使用 memmove() 如果源和目标可能重叠
|
|
81
|
+
languages:
|
|
82
|
+
- c
|
|
83
|
+
- cpp
|
|
84
|
+
patterns:
|
|
85
|
+
- pattern: memcpy($DST, $SRC, $N)
|
|
86
|
+
metadata:
|
|
87
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
88
|
+
owasp: "A03:2021 - Injection"
|
|
89
|
+
category: security
|
|
90
|
+
precision: very-low
|
|
91
|
+
references:
|
|
92
|
+
- "https://cwe.mitre.org/data/definitions/20.html"
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-20: WebSocket ws.on('message') 无输入验证
|
|
3
|
+
# 逐码 ZhuMa V4.3 — JS/TS 通用规则库
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
- id: zm-js-websocket-001
|
|
8
|
+
severity: WARNING
|
|
9
|
+
message: >
|
|
10
|
+
WebSocket ws.on('message') 事件处理器中直接使用消息数据而未做输入验证,
|
|
11
|
+
攻击者可发送恶意格式数据导致注入、拒绝服务或未预期行为。
|
|
12
|
+
修复: 对 WebSocket 消息做 JSON Schema 验证、类型检查或长度限制。
|
|
13
|
+
languages:
|
|
14
|
+
- javascript
|
|
15
|
+
- typescript
|
|
16
|
+
pattern: |
|
|
17
|
+
$WS.on('message', ($DATA) => {
|
|
18
|
+
...
|
|
19
|
+
})
|
|
20
|
+
metadata:
|
|
21
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
22
|
+
owasp: "A03:2021 - Injection"
|
|
23
|
+
category: security
|
|
24
|
+
precision: low
|
|
25
|
+
confidence: low
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-20: Rust 输入验证缺失检测
|
|
3
|
+
# 逐码 ZhuMa V4.3 — Rust 通用规则库
|
|
4
|
+
# 检测: 用户输入未经验证直接使用、unwrap/expect 在用户输入上
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-RUST-INPUT-001: unwrap() 用于用户输入处理
|
|
9
|
+
- id: zm-rust-cwe20-input-validation-001
|
|
10
|
+
severity: ERROR
|
|
11
|
+
message: |
|
|
12
|
+
检测到对用户可控输入(如 env::args、stdin、HTTP 请求参数)
|
|
13
|
+
直接调用 .unwrap()。用户输入可能为 None/Err,unwrap() 会导致 panic,
|
|
14
|
+
造成拒绝服务(DoS),且未处理错误暴露内部信息。
|
|
15
|
+
|
|
16
|
+
修复方案:
|
|
17
|
+
1. 使用 ? 操作符传播错误:
|
|
18
|
+
let value = parse_input()?;
|
|
19
|
+
2. 使用 match 或 unwrap_or_else 优雅处理:
|
|
20
|
+
let value = parse_input().unwrap_or_else(|e| {
|
|
21
|
+
eprintln!("Invalid input: {}", e);
|
|
22
|
+
std::process::exit(1);
|
|
23
|
+
});
|
|
24
|
+
3. 对用户输入进行格式和范围校验后再处理
|
|
25
|
+
4. 不要在生产代码中对用户输入使用 unwrap()/expect()
|
|
26
|
+
languages:
|
|
27
|
+
- rust
|
|
28
|
+
pattern-either:
|
|
29
|
+
- pattern: std::env::args().nth(...).unwrap()
|
|
30
|
+
- pattern: env::args().nth(...).unwrap()
|
|
31
|
+
- pattern: $INPUT.unwrap()
|
|
32
|
+
metadata:
|
|
33
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
34
|
+
severity: ERROR
|
|
35
|
+
precision: low
|
|
36
|
+
category: input-validation
|
|
37
|
+
likelihood: HIGH
|
|
38
|
+
impact: MEDIUM
|
|
39
|
+
owasp: "A03:2021 - Injection"
|
|
40
|
+
|
|
41
|
+
# ZM-RUST-INPUT-002: expect() 用于用户输入处理
|
|
42
|
+
- id: zm-rust-cwe20-input-validation-002
|
|
43
|
+
severity: WARNING
|
|
44
|
+
message: |
|
|
45
|
+
检测到对用户输入调用 .expect()。expect() 失败时 panic 并输出自定义消息,
|
|
46
|
+
可能暴露内部逻辑细节(如数据库名、路径结构)。
|
|
47
|
+
|
|
48
|
+
修复方案:
|
|
49
|
+
1. 使用 ? 操作符传播错误
|
|
50
|
+
2. 使用 match/if let 处理,提供安全的错误消息
|
|
51
|
+
3. 避免错误消息中包含内部实现细节
|
|
52
|
+
languages:
|
|
53
|
+
- rust
|
|
54
|
+
pattern: $INPUT.expect(...)
|
|
55
|
+
metadata:
|
|
56
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
57
|
+
severity: WARNING
|
|
58
|
+
precision: low
|
|
59
|
+
category: input-validation
|
|
60
|
+
likelihood: HIGH
|
|
61
|
+
impact: LOW
|
|
62
|
+
owasp: "A03:2021 - Injection"
|
|
63
|
+
|
|
64
|
+
# ZM-RUST-INPUT-003: parse() 结果未校验直接使用
|
|
65
|
+
- id: zm-rust-cwe20-input-validation-003
|
|
66
|
+
severity: ERROR
|
|
67
|
+
message: |
|
|
68
|
+
检测到从用户输入解析后调用 .unwrap() 直接使用结果。
|
|
69
|
+
如 parse::<i32>().unwrap() 在遇到非数字字符串时会 panic,
|
|
70
|
+
攻击者可构造恶意输入触发 crash 实现 DoS。
|
|
71
|
+
|
|
72
|
+
修复方案:
|
|
73
|
+
1. 使用 match 处理 parse 结果:
|
|
74
|
+
let value = match input.parse::<i32>() {
|
|
75
|
+
Ok(v) if v > 0 => v,
|
|
76
|
+
_ => return Err("Invalid number"),
|
|
77
|
+
};
|
|
78
|
+
2. 使用 .ok() 或 .unwrap_or() 提供默认值
|
|
79
|
+
3. 对输入做范围校验
|
|
80
|
+
languages:
|
|
81
|
+
- rust
|
|
82
|
+
pattern-either:
|
|
83
|
+
- pattern: $INPUT.parse::<$TYPE>().unwrap()
|
|
84
|
+
- pattern: $INPUT.parse().unwrap()
|
|
85
|
+
metadata:
|
|
86
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
87
|
+
severity: ERROR
|
|
88
|
+
precision: medium
|
|
89
|
+
category: input-validation
|
|
90
|
+
likelihood: HIGH
|
|
91
|
+
impact: MEDIUM
|
|
92
|
+
owasp: "A03:2021 - Injection"
|
|
93
|
+
|
|
94
|
+
# ZM-RUST-INPUT-004: read_line() 结果未校验
|
|
95
|
+
- id: zm-rust-cwe20-input-validation-004
|
|
96
|
+
severity: WARNING
|
|
97
|
+
message: |
|
|
98
|
+
检测到 stdin().read_line() 后直接使用结果,未校验读取是否成功
|
|
99
|
+
或内容是否合法。read_line 可能返回 I/O 错误。
|
|
100
|
+
|
|
101
|
+
修复方案:
|
|
102
|
+
1. 检查 read_line 的结果:
|
|
103
|
+
io::stdin().read_line(&mut input)?;
|
|
104
|
+
2. 使用 trim() 去除换行符
|
|
105
|
+
3. 对读取内容进行长度和内容校验
|
|
106
|
+
languages:
|
|
107
|
+
- rust
|
|
108
|
+
pattern-either:
|
|
109
|
+
- pattern: |
|
|
110
|
+
$IO.stdin().read_line(&mut $BUF)
|
|
111
|
+
...
|
|
112
|
+
$BUF
|
|
113
|
+
- pattern: |
|
|
114
|
+
io::stdin().read_line(&mut $BUF)
|
|
115
|
+
- pattern: |
|
|
116
|
+
std::io::stdin().read_line(&mut $BUF)
|
|
117
|
+
metadata:
|
|
118
|
+
cwe: "CWE-20: Improper Input Validation"
|
|
119
|
+
severity: WARNING
|
|
120
|
+
precision: low
|
|
121
|
+
category: input-validation
|
|
122
|
+
likelihood: MEDIUM
|
|
123
|
+
impact: MEDIUM
|
|
124
|
+
owasp: "A03:2021 - Injection"
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-200: NestJS ConfigModule.forRoot 导入 .env 文件
|
|
3
|
+
# 逐码 ZhuMa V4.3 — JS/TS NestJS 规则库
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
- id: zm-js-nestjs-env-001
|
|
8
|
+
severity: WARNING
|
|
9
|
+
message: >
|
|
10
|
+
NestJS ConfigModule.forRoot() 导入 .env 文件,可能将敏感环境变量暴露或误提交。
|
|
11
|
+
修复: 确保 .env 文件在 .gitignore 中,使用 ConfigService 按需注入而非全局暴露。
|
|
12
|
+
languages:
|
|
13
|
+
- javascript
|
|
14
|
+
- typescript
|
|
15
|
+
pattern: |
|
|
16
|
+
ConfigModule.forRoot({..., envFilePath: ..., ...})
|
|
17
|
+
metadata:
|
|
18
|
+
cwe: "CWE-200: Exposure of Sensitive Information to an Unauthorized Actor"
|
|
19
|
+
owasp: "A04:2021 - Insecure Design"
|
|
20
|
+
category: security
|
|
21
|
+
precision: medium
|
|
22
|
+
confidence: medium
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-200: Flask jsonify 含敏感数据 / HttpResponseRedirect 含用户输入
|
|
3
|
+
# 逐码 ZhuMa V4.3 — Python 信息泄露/开放重定向规则库
|
|
4
|
+
# 检测: jsonify泄露敏感对象、redirect用户可控参数
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-PY-FLASK-INFOLK-001: jsonify含敏感数据
|
|
9
|
+
- id: zm-py-flask-info-leak-001
|
|
10
|
+
severity: WARNING
|
|
11
|
+
message: |
|
|
12
|
+
检测到 Flask jsonify() 返回了整个对象或异常信息,可能泄露敏感数据。
|
|
13
|
+
直接返回ORM对象可能包含密码哈希、内部ID、关联用户数据等。
|
|
14
|
+
|
|
15
|
+
修复方案:
|
|
16
|
+
1. 使用 marshmallow / pydantic 序列化,显式声明暴露的字段
|
|
17
|
+
2. 对ORM对象使用 to_dict() 方法手动选择字段
|
|
18
|
+
3. 生产环境关闭 DEBUG 和 TRAP_HTTP_EXCEPTIONS
|
|
19
|
+
4. 自定义错误处理器返回通用错误信息,不暴露堆栈
|
|
20
|
+
languages:
|
|
21
|
+
- python
|
|
22
|
+
pattern-either:
|
|
23
|
+
- pattern: flask.jsonify($OBJ.__dict__)
|
|
24
|
+
- pattern: jsonify($OBJ.__dict__)
|
|
25
|
+
- pattern: flask.jsonify(vars($OBJ))
|
|
26
|
+
- pattern: jsonify(vars($OBJ))
|
|
27
|
+
- pattern: flask.jsonify(str(e))
|
|
28
|
+
- pattern: jsonify(str(e))
|
|
29
|
+
metadata:
|
|
30
|
+
cwe: "CWE-200: Exposure of Sensitive Information to an Unauthorized Actor"
|
|
31
|
+
severity: WARNING
|
|
32
|
+
precision: high
|
|
33
|
+
category: information-leak
|
|
34
|
+
framework: flask
|
|
35
|
+
likelihood: MEDIUM
|
|
36
|
+
impact: MEDIUM
|
|
37
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
38
|
+
references:
|
|
39
|
+
- "https://flask.palletsprojects.com/en/stable/api/#flask.json.jsonify"
|
|
40
|
+
|
|
41
|
+
# ZM-PY-REDIRECT-001: HttpResponseRedirect含用户输入(开放重定向)
|
|
42
|
+
- id: zm-py-redirect-open-001
|
|
43
|
+
severity: WARNING
|
|
44
|
+
message: |
|
|
45
|
+
检测到 HttpResponseRedirect / redirect() 的URL参数来自HTTP请求。
|
|
46
|
+
攻击者可构造恶意URL实现钓鱼攻击: /login?next=http://evil.com/login。
|
|
47
|
+
|
|
48
|
+
修复方案:
|
|
49
|
+
1. 使用白名单域名校验: url_has_allowed_host_and_scheme()
|
|
50
|
+
2. Django: from django.utils.http import url_has_allowed_host_and_scheme
|
|
51
|
+
3. Flask: 使用url_for()生成URL而非用户输入
|
|
52
|
+
4. 若必须支持redirect,做域名白名单校验
|
|
53
|
+
languages:
|
|
54
|
+
- python
|
|
55
|
+
pattern-either:
|
|
56
|
+
- pattern: HttpResponseRedirect(request.args.get(...))
|
|
57
|
+
- pattern: HttpResponseRedirect(request.GET.get(...))
|
|
58
|
+
- pattern: HttpResponseRedirect(request.POST.get(...))
|
|
59
|
+
- pattern: HttpResponseRedirect(request.build_absolute_uri())
|
|
60
|
+
- pattern: django.http.HttpResponseRedirect(request.args.get(...))
|
|
61
|
+
- pattern: django.http.HttpResponseRedirect(request.GET.get(...))
|
|
62
|
+
- pattern: redirect(request.args.get(...))
|
|
63
|
+
- pattern: redirect(request.form.get(...))
|
|
64
|
+
- pattern: redirect(request.values.get(...))
|
|
65
|
+
- pattern: flask.redirect(request.args.get(...))
|
|
66
|
+
- pattern: flask.redirect(request.form.get(...))
|
|
67
|
+
- pattern: flask.redirect(request.values.get(...))
|
|
68
|
+
metadata:
|
|
69
|
+
cwe: "CWE-601: URL Redirection to Untrusted Site (Open Redirect)"
|
|
70
|
+
severity: WARNING
|
|
71
|
+
precision: high
|
|
72
|
+
category: open-redirect
|
|
73
|
+
likelihood: MEDIUM
|
|
74
|
+
impact: MEDIUM
|
|
75
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
76
|
+
references:
|
|
77
|
+
- "https://docs.djangoproject.com/en/stable/ref/utils/#django.utils.http.url_has_allowed_host_and_scheme"
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: 路径遍历检测规则
|
|
3
|
+
# 逐码 ZhuMa V4.0 Alpha — 通用规则库
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
# ZM-JAVA-PT-001: File 构造含用户输入 + 无 validateFilename
|
|
8
|
+
- id: zm-java-pt-001
|
|
9
|
+
severity: HIGH
|
|
10
|
+
message: |
|
|
11
|
+
检测到使用用户输入构造文件路径,但未校验路径 (未调用 getCanonicalPath 或 contains("..") 检查)。
|
|
12
|
+
攻击者可注入 ../ 进行路径遍历访问任意文件。
|
|
13
|
+
应使用 Path.normalize() + 检查路径前缀是否在允许目录内。
|
|
14
|
+
languages:
|
|
15
|
+
- java
|
|
16
|
+
pattern-either:
|
|
17
|
+
- pattern: |
|
|
18
|
+
new FileInputStream($BASE + $PARAM);
|
|
19
|
+
- pattern: |
|
|
20
|
+
new FileReader($BASE + $PARAM);
|
|
21
|
+
- pattern: |
|
|
22
|
+
new File($BASE + $PARAM);
|
|
23
|
+
- pattern: |
|
|
24
|
+
Files.readAllBytes(Paths.get($BASE + $PARAM));
|
|
25
|
+
- pattern: |
|
|
26
|
+
Files.newInputStream(Paths.get($BASE + $PARAM));
|
|
27
|
+
metadata:
|
|
28
|
+
cwe: "CWE-22: Path Traversal"
|
|
29
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
30
|
+
precision: medium
|
|
31
|
+
|
|
32
|
+
# ZM-JAVA-PT-002: 直接使用用户输入作为文件路径
|
|
33
|
+
- id: zm-java-pt-002
|
|
34
|
+
severity: MEDIUM
|
|
35
|
+
message: |
|
|
36
|
+
直接使用用户输入作为文件路径参数,存在路径遍历风险。
|
|
37
|
+
应对输入进行白名单校验或规范化路径后验证前缀。
|
|
38
|
+
languages:
|
|
39
|
+
- java
|
|
40
|
+
pattern-either:
|
|
41
|
+
- pattern: |
|
|
42
|
+
new FileInputStream($REQ.getParameter(...));
|
|
43
|
+
- pattern: |
|
|
44
|
+
new FileReader($REQ.getParameter(...));
|
|
45
|
+
metadata:
|
|
46
|
+
cwe: "CWE-22: Path Traversal"
|
|
47
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
48
|
+
precision: high
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: C# 路径穿越检测规则
|
|
3
|
+
# 逐码 ZhuMa V4.3 — C# 规则库
|
|
4
|
+
#
|
|
5
|
+
# 检测 .NET 中用户输入用于文件路径构造导致的路径穿越漏洞。
|
|
6
|
+
|
|
7
|
+
rules:
|
|
8
|
+
|
|
9
|
+
# ZM-CS-CWE22-001: Path.Combine 与用户输入 (路径穿越)
|
|
10
|
+
- id: zm-cs-cwe22-path-traversal-001
|
|
11
|
+
severity: ERROR
|
|
12
|
+
message: |
|
|
13
|
+
检测到 Path.Combine() 接受用户可控参数构造文件路径。
|
|
14
|
+
攻击者可传入 "../" 序列穿越目录边界,读取/写入任意文件。
|
|
15
|
+
|
|
16
|
+
例如: Path.Combine(basePath, "../../etc/passwd")
|
|
17
|
+
可能解析为 /etc/passwd,完全绕过目录限制。
|
|
18
|
+
|
|
19
|
+
修复方案:
|
|
20
|
+
- 使用 Path.GetFullPath() 解析规范化路径后验证是否在允许的基目录内
|
|
21
|
+
- 验证解析后的路径以基目录开始: resolvedPath.StartsWith(basePath)
|
|
22
|
+
- 对文件名进行白名单字符校验(禁止 "../"、"\\"等)
|
|
23
|
+
- 使用 PhysicalFileProvider 的 GetFileInfo() 限制访问范围
|
|
24
|
+
languages:
|
|
25
|
+
- csharp
|
|
26
|
+
pattern-either:
|
|
27
|
+
- pattern: Path.Combine($BASE, $USERPARAM)
|
|
28
|
+
- pattern: Path.Combine($BASE, $REQ[...])
|
|
29
|
+
- pattern: $PATH = Path.Combine($BASE, $USERPARAM)
|
|
30
|
+
- pattern: Path.Combine($BASE, ... + $USERPARAM)
|
|
31
|
+
metadata:
|
|
32
|
+
cwe: "CWE-22: Path Traversal"
|
|
33
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
34
|
+
category: security
|
|
35
|
+
precision: medium
|
|
36
|
+
references:
|
|
37
|
+
- "https://cwe.mitre.org/data/definitions/22.html"
|
|
38
|
+
- "https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats"
|
|
39
|
+
|
|
40
|
+
# ZM-CS-CWE22-002: File.ReadAllText 路径来自输入
|
|
41
|
+
- id: zm-cs-cwe22-path-traversal-002
|
|
42
|
+
severity: ERROR
|
|
43
|
+
message: |
|
|
44
|
+
检测到文件操作函数使用变量或参数作为文件路径参数。
|
|
45
|
+
如果该变量来源于用户输入(HTTP 请求、URL 参数等)且未验证,
|
|
46
|
+
攻击者可通过路径穿越读取任意文件(如 web.config、appsettings.json)。
|
|
47
|
+
|
|
48
|
+
修复方案:
|
|
49
|
+
- 对用户输入的文件名进行白名单验证
|
|
50
|
+
- 使用 Path.GetFileName() 仅提取文件名部分
|
|
51
|
+
- 验证 Path.GetFullPath(path).StartsWith(allowedBasePath)
|
|
52
|
+
- 使用 IFileProvider 限制文件访问范围
|
|
53
|
+
languages:
|
|
54
|
+
- csharp
|
|
55
|
+
pattern-either:
|
|
56
|
+
- pattern: File.ReadAllText($PATH)
|
|
57
|
+
- pattern: File.ReadAllBytes($PATH)
|
|
58
|
+
- pattern: File.OpenRead($PATH)
|
|
59
|
+
- pattern: File.Open($PATH, ...)
|
|
60
|
+
- pattern: System.IO.File.ReadAllText($PATH)
|
|
61
|
+
metadata:
|
|
62
|
+
cwe: "CWE-22: Path Traversal"
|
|
63
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
64
|
+
category: security
|
|
65
|
+
precision: very-low
|
|
66
|
+
references:
|
|
67
|
+
- "https://cwe.mitre.org/data/definitions/22.html"
|
|
68
|
+
|
|
69
|
+
# ZM-CS-CWE22-003: Server.MapPath 路径穿越
|
|
70
|
+
- id: zm-cs-cwe22-path-traversal-003
|
|
71
|
+
severity: ERROR
|
|
72
|
+
message: |
|
|
73
|
+
检测到 Server.MapPath() 接受用户输入。Server.MapPath 将虚拟路径
|
|
74
|
+
映射为物理路径,如果接收用户可控的相对路径,攻击者可能映射到
|
|
75
|
+
应用程序目录外的敏感文件。
|
|
76
|
+
|
|
77
|
+
修复方案:
|
|
78
|
+
- 验证输入不包含 ".." 或 URL 编码的 ".." (如 %2e%2e)
|
|
79
|
+
- 对路径进行规范化后验证: Path.GetFullPath(Server.MapPath(input))
|
|
80
|
+
- 使用 AllowVideo/AllowImage 等 IIS 请求过滤规则
|
|
81
|
+
languages:
|
|
82
|
+
- csharp
|
|
83
|
+
pattern-either:
|
|
84
|
+
- pattern: Server.MapPath($INPUT)
|
|
85
|
+
- pattern: HttpContext.Current.Server.MapPath($INPUT)
|
|
86
|
+
metadata:
|
|
87
|
+
cwe: "CWE-22: Path Traversal"
|
|
88
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
89
|
+
category: security
|
|
90
|
+
precision: medium
|
|
91
|
+
references:
|
|
92
|
+
- "https://cwe.mitre.org/data/definitions/22.html"
|