@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,178 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-327: 使用破解或危险的加密算法
|
|
3
|
+
# 逐码 ZhuMa V4.0 Alpha — 通用规则库
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
# ZM-JAVA-WEAKCRYPTO-001: DES/3DES 加密
|
|
8
|
+
- id: zm-java-weakcrypto-001
|
|
9
|
+
severity: CRITICAL
|
|
10
|
+
message: |
|
|
11
|
+
使用了 DES/3DES 加密算法,该算法已被破解且密钥长度不足。
|
|
12
|
+
DES 使用 56 位有效密钥,可在数小时内暴力破解;3DES 仅提供 112 位等效安全性。
|
|
13
|
+
应迁移至 AES-256-GCM 或 ChaCha20-Poly1305。
|
|
14
|
+
参考: NIST SP 800-131A Rev.2 已废止 DES/3DES。
|
|
15
|
+
languages:
|
|
16
|
+
- java
|
|
17
|
+
pattern-either:
|
|
18
|
+
- pattern: Cipher.getInstance("DES")
|
|
19
|
+
- pattern: Cipher.getInstance("DESede")
|
|
20
|
+
- pattern: Cipher.getInstance("3DES")
|
|
21
|
+
- pattern: KeyGenerator.getInstance("DES")
|
|
22
|
+
- pattern: Cipher.getInstance("DES/CBC/PKCS5Padding")
|
|
23
|
+
- pattern: Cipher.getInstance("DES/CBC/NoPadding")
|
|
24
|
+
- pattern: Cipher.getInstance("DES/ECB/PKCS5Padding")
|
|
25
|
+
- pattern: Cipher.getInstance("DES/ECB/NoPadding")
|
|
26
|
+
- pattern: Cipher.getInstance("DESede/CBC/PKCS5Padding")
|
|
27
|
+
- pattern: Cipher.getInstance("DESede/ECB/PKCS5Padding")
|
|
28
|
+
metadata:
|
|
29
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
30
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
31
|
+
precision: very-high
|
|
32
|
+
industries:
|
|
33
|
+
- common
|
|
34
|
+
references:
|
|
35
|
+
- "https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar2.pdf"
|
|
36
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
37
|
+
|
|
38
|
+
# ZM-JAVA-WEAKCRYPTO-002: RC2/RC4/Blowfish 弱算法
|
|
39
|
+
- id: zm-java-weakcrypto-002
|
|
40
|
+
severity: CRITICAL
|
|
41
|
+
message: |
|
|
42
|
+
使用了 RC2/RC4/Blowfish 弱加密算法。
|
|
43
|
+
RC4 存在严重密码学缺陷(偏向性密钥流),RC2 为 64 位分组密码已被淘汰,
|
|
44
|
+
Blowfish 使用 64 位分组大小易受 Sweet32 生日攻击。
|
|
45
|
+
应迁移至 AES-256-GCM 或 ChaCha20-Poly1305。
|
|
46
|
+
languages:
|
|
47
|
+
- java
|
|
48
|
+
pattern-either:
|
|
49
|
+
- pattern: Cipher.getInstance("RC2")
|
|
50
|
+
- pattern: Cipher.getInstance("RC4")
|
|
51
|
+
- pattern: Cipher.getInstance("Blowfish")
|
|
52
|
+
- pattern: Cipher.getInstance("RC2/CBC/PKCS5Padding")
|
|
53
|
+
- pattern: Cipher.getInstance("Blowfish/CBC/PKCS5Padding")
|
|
54
|
+
- pattern: KeyGenerator.getInstance("RC2")
|
|
55
|
+
- pattern: KeyGenerator.getInstance("Blowfish")
|
|
56
|
+
metadata:
|
|
57
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
58
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
59
|
+
precision: very-high
|
|
60
|
+
industries:
|
|
61
|
+
- common
|
|
62
|
+
references:
|
|
63
|
+
- "https://sweet32.info/"
|
|
64
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
65
|
+
|
|
66
|
+
# ZM-JAVA-WEAKCRYPTO-003: 无认证加密模式 ECB
|
|
67
|
+
- id: zm-java-weakcrypto-003
|
|
68
|
+
severity: HIGH
|
|
69
|
+
message: |
|
|
70
|
+
使用了 ECB 模式进行对称加密,该模式不提供数据认证且无法隐藏数据模式。
|
|
71
|
+
相同的明文块会产生相同的密文块,可遭受块重放攻击和模式分析攻击。
|
|
72
|
+
应使用 GCM(Galois/Counter Mode)或 CTR+CBC 配合 HMAC 提供认证加密。
|
|
73
|
+
languages:
|
|
74
|
+
- java
|
|
75
|
+
pattern-either:
|
|
76
|
+
- pattern: Cipher.getInstance("AES/ECB/NoPadding")
|
|
77
|
+
- pattern: Cipher.getInstance("AES/ECB/PKCS5Padding")
|
|
78
|
+
- pattern: Cipher.getInstance("AES/ECB/ISO10126Padding")
|
|
79
|
+
- pattern: Cipher.getInstance("DES/ECB/NoPadding")
|
|
80
|
+
- pattern: Cipher.getInstance("DES/ECB/PKCS5Padding")
|
|
81
|
+
- pattern: Cipher.getInstance("DESede/ECB/NoPadding")
|
|
82
|
+
- pattern: Cipher.getInstance("DESede/ECB/PKCS5Padding")
|
|
83
|
+
- pattern: Cipher.getInstance("Blowfish/ECB/NoPadding")
|
|
84
|
+
- pattern: Cipher.getInstance("Blowfish/ECB/PKCS5Padding")
|
|
85
|
+
- pattern: Cipher.getInstance("RC2/ECB/PKCS5Padding")
|
|
86
|
+
- pattern: Cipher.getInstance("RSA/ECB/NoPadding")
|
|
87
|
+
- pattern: Cipher.getInstance("RSA/ECB/PKCS1Padding")
|
|
88
|
+
metadata:
|
|
89
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
90
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
91
|
+
precision: high
|
|
92
|
+
industries:
|
|
93
|
+
- common
|
|
94
|
+
references:
|
|
95
|
+
- "https://csrc.nist.gov/pubs/sp/800/38/d/final"
|
|
96
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
97
|
+
|
|
98
|
+
# ZM-JAVA-WEAKCRYPTO-004: RSA 不安全配置
|
|
99
|
+
- id: zm-java-weakcrypto-004
|
|
100
|
+
severity: HIGH
|
|
101
|
+
message: |
|
|
102
|
+
使用了不安全的 RSA 配置:密钥长度不足 2048 位或使用 PKCS1Padding 填充模式。
|
|
103
|
+
RSA-1024 在 2024 年已被认为可破解,PKCS1Padding 易受 Bleichenbacher 选择密文攻击。
|
|
104
|
+
应使用 RSA-2048(最低要求)或 RSA-4096,搭配 OAEPWithSHA-256AndMGF1Padding。
|
|
105
|
+
NIST SP 800-131A Rev.2 要求 RSA 密钥 ≥ 2048 位。
|
|
106
|
+
languages:
|
|
107
|
+
- java
|
|
108
|
+
pattern-either:
|
|
109
|
+
- pattern: Cipher.getInstance("RSA")
|
|
110
|
+
- pattern: Cipher.getInstance("RSA/ECB/PKCS1Padding")
|
|
111
|
+
- pattern: Cipher.getInstance("RSA/ECB/NoPadding")
|
|
112
|
+
- pattern: Cipher.getInstance("RSA/NONE/PKCS1Padding")
|
|
113
|
+
- pattern: Cipher.getInstance("RSA/NONE/NoPadding")
|
|
114
|
+
metadata:
|
|
115
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
116
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
117
|
+
precision: high
|
|
118
|
+
industries:
|
|
119
|
+
- common
|
|
120
|
+
references:
|
|
121
|
+
- "https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar2.pdf"
|
|
122
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
123
|
+
|
|
124
|
+
# ZM-JAVA-WEAKCRYPTO-005: JWT Algorithm=none
|
|
125
|
+
- id: zm-java-weakcrypto-005
|
|
126
|
+
severity: CRITICAL
|
|
127
|
+
message: |
|
|
128
|
+
JWT 使用 algorithm="none" 或在未校验算法前设置签名密钥,可能导致 JWT 算法混淆攻击。
|
|
129
|
+
攻击者可将 algorithm 修改为 "none" 绕过签名验证,或使用公钥算法混淆为 HMAC 实现伪造签名。
|
|
130
|
+
必须在解析 JWT 前显式限制 algorithm,使用 .requireAlgorithm() 或 .verifyWith() 明确指定算法。
|
|
131
|
+
参考: CVE-2015-9235, CVE-2016-5431(alg=none 攻击)。
|
|
132
|
+
languages:
|
|
133
|
+
- java
|
|
134
|
+
pattern-either:
|
|
135
|
+
- pattern: |
|
|
136
|
+
Jwts.parser().setSigningKey(...)
|
|
137
|
+
- pattern: |
|
|
138
|
+
Jwts.parserBuilder().setSigningKey(...)
|
|
139
|
+
- pattern: Jwts.parser().parseClaimsJwt(...)
|
|
140
|
+
metadata:
|
|
141
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
142
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
143
|
+
precision: high
|
|
144
|
+
industries:
|
|
145
|
+
- common
|
|
146
|
+
references:
|
|
147
|
+
- "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-9235"
|
|
148
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
149
|
+
- "https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/"
|
|
150
|
+
|
|
151
|
+
# ZM-JAVA-WEAKCRYPTO-006: 固定 IV / 硬编码 IV
|
|
152
|
+
- id: zm-java-weakcrypto-006
|
|
153
|
+
severity: HIGH
|
|
154
|
+
message: |
|
|
155
|
+
使用了硬编码或静态初始化向量(IV),严重削弱 CBC/GCM 等模式的安全性。
|
|
156
|
+
对于 CBC 模式,固定 IV 使加密确定性化,可遭受块重放攻击和选择明文攻击(如 BEAST)。
|
|
157
|
+
对于 GCM 模式,IV 重用会完全破坏认证加密的安全性,泄露明文 XOR 结果。
|
|
158
|
+
必须为每次加密使用 CSPRNG 生成随机 IV(如 SecureRandom),并将 IV 随密文一起存储。
|
|
159
|
+
languages:
|
|
160
|
+
- java
|
|
161
|
+
patterns:
|
|
162
|
+
- pattern: |
|
|
163
|
+
new IvParameterSpec($BYTES)
|
|
164
|
+
- pattern: |
|
|
165
|
+
new GCMParameterSpec(..., $BYTES)
|
|
166
|
+
- pattern: |
|
|
167
|
+
new IvParameterSpec("...".getBytes())
|
|
168
|
+
- pattern: |
|
|
169
|
+
new IvParameterSpec(new byte[]{...})
|
|
170
|
+
metadata:
|
|
171
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
172
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
173
|
+
precision: high
|
|
174
|
+
industries:
|
|
175
|
+
- common
|
|
176
|
+
references:
|
|
177
|
+
- "https://csrc.nist.gov/glossary/term/initialization_vector"
|
|
178
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-327: C/C++ 弱加密算法检测规则
|
|
3
|
+
# 逐码 ZhuMa V4.3 — C/C++ 规则库
|
|
4
|
+
#
|
|
5
|
+
# 检测 C/C++ 代码中使用已破解或危险的加密算法。
|
|
6
|
+
|
|
7
|
+
rules:
|
|
8
|
+
|
|
9
|
+
# ZM-CPP-CWE327-001: DES 加密使用
|
|
10
|
+
- id: zm-cpp-cwe327-weak-crypto-001
|
|
11
|
+
severity: ERROR
|
|
12
|
+
message: |
|
|
13
|
+
检测到 DES 加密算法使用。DES 使用 56 位有效密钥,
|
|
14
|
+
可在数小时内被暴力破解,已不再提供有效的安全保护。
|
|
15
|
+
NIST SP 800-131A Rev.2 已废止 DES。
|
|
16
|
+
|
|
17
|
+
修复方案:
|
|
18
|
+
- 迁移至 AES-256-GCM 或 AES-256-CBC + HMAC-SHA256
|
|
19
|
+
- 迁移至 ChaCha20-Poly1305
|
|
20
|
+
- OpenSSL: 使用 EVP_aes_256_gcm() / EVP_EncryptInit_ex()
|
|
21
|
+
- 评估所有使用 DES 的遗留代码并制定迁移计划
|
|
22
|
+
languages:
|
|
23
|
+
- c
|
|
24
|
+
- cpp
|
|
25
|
+
pattern-either:
|
|
26
|
+
- pattern: DES_new_random_key(...)
|
|
27
|
+
- pattern: DES_set_key(...)
|
|
28
|
+
- pattern: DES_ecb_encrypt(...)
|
|
29
|
+
- pattern: DES_cbc_encrypt(...)
|
|
30
|
+
- pattern: DES_ncbc_encrypt(...)
|
|
31
|
+
- pattern: DES_ede3_cbc_encrypt(...)
|
|
32
|
+
- pattern: EVP_des_cbc(...)
|
|
33
|
+
- pattern: EVP_des_ecb(...)
|
|
34
|
+
- pattern: EVP_des_ede3_cbc(...)
|
|
35
|
+
metadata:
|
|
36
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
37
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
38
|
+
category: security
|
|
39
|
+
precision: high
|
|
40
|
+
references:
|
|
41
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
42
|
+
- "https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar2.pdf"
|
|
43
|
+
|
|
44
|
+
# ZM-CPP-CWE327-002: RC4 加密使用
|
|
45
|
+
- id: zm-cpp-cwe327-weak-crypto-002
|
|
46
|
+
severity: ERROR
|
|
47
|
+
message: |
|
|
48
|
+
检测到 RC4 加密算法使用。RC4 存在严重的密码学缺陷,
|
|
49
|
+
包括偏向性密钥流(密钥相关输出偏差),可被被动流量分析破解。
|
|
50
|
+
RFC 7465 已正式禁止在 TLS 中使用 RC4。
|
|
51
|
+
|
|
52
|
+
修复方案:
|
|
53
|
+
- 迁移至 AES-256-GCM 或 ChaCha20-Poly1305
|
|
54
|
+
- OpenSSL: 使用 EVP_aes_256_gcm()
|
|
55
|
+
- 审计所有 RC4 使用点,因为在 SSL/TLS/VPN 中非常普遍
|
|
56
|
+
languages:
|
|
57
|
+
- c
|
|
58
|
+
- cpp
|
|
59
|
+
pattern-either:
|
|
60
|
+
- pattern: RC4_set_key(...)
|
|
61
|
+
- pattern: RC4(...)
|
|
62
|
+
- pattern: EVP_rc4(...)
|
|
63
|
+
- pattern: EVP_rc4_40(...)
|
|
64
|
+
- pattern: EVP_rc4_hmac_md5(...)
|
|
65
|
+
metadata:
|
|
66
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
67
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
68
|
+
category: security
|
|
69
|
+
precision: high
|
|
70
|
+
references:
|
|
71
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
72
|
+
- "https://tools.ietf.org/html/rfc7465"
|
|
73
|
+
|
|
74
|
+
# ZM-CPP-CWE327-003: MD5/MD4 哈希用于安全
|
|
75
|
+
- id: zm-cpp-cwe327-weak-crypto-003
|
|
76
|
+
severity: ERROR
|
|
77
|
+
message: |
|
|
78
|
+
检测到 MD5/MD4 哈希算法用于安全目的(如密码哈希、数字签名、数据完整性验证)。
|
|
79
|
+
MD5 存在已知的碰撞攻击,攻击者可生成两个不同输入产生相同哈希值。
|
|
80
|
+
MD4 更是不安全,在秒级内可构造碰撞。
|
|
81
|
+
|
|
82
|
+
修复方案:
|
|
83
|
+
- 密码哈希: 使用 bcrypt / scrypt / Argon2
|
|
84
|
+
- 数据完整性: 使用 SHA-256 / SHA-3 / BLAKE2
|
|
85
|
+
- 数字签名: 使用 SHA-256/384/512
|
|
86
|
+
- OpenSSL: 使用 EVP_sha256() / EVP_sha384()
|
|
87
|
+
languages:
|
|
88
|
+
- c
|
|
89
|
+
- cpp
|
|
90
|
+
pattern-either:
|
|
91
|
+
- pattern: MD5(...)
|
|
92
|
+
- pattern: MD5_Init(...)
|
|
93
|
+
- pattern: MD5_Update(...)
|
|
94
|
+
- pattern: MD5_Final(...)
|
|
95
|
+
- pattern: EVP_md5(...)
|
|
96
|
+
- pattern: EVP_md4(...)
|
|
97
|
+
- pattern: MD4(...)
|
|
98
|
+
- pattern: MD4_Init(...)
|
|
99
|
+
metadata:
|
|
100
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
101
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
102
|
+
category: security
|
|
103
|
+
precision: high
|
|
104
|
+
references:
|
|
105
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
106
|
+
- "https://cwe.mitre.org/data/definitions/328.html"
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-327: C# 弱加密算法检测规则
|
|
3
|
+
# 逐码 ZhuMa V4.3 — C# 规则库
|
|
4
|
+
#
|
|
5
|
+
# 检测 .NET 中使用已破解或危险的加密算法 (DES, RC2, RC4, MD5/SHA1用于安全)。
|
|
6
|
+
|
|
7
|
+
rules:
|
|
8
|
+
|
|
9
|
+
# ZM-CS-CWE327-001: DES 加密
|
|
10
|
+
- id: zm-cs-cwe327-weak-crypto-001
|
|
11
|
+
severity: ERROR
|
|
12
|
+
message: |
|
|
13
|
+
检测到 DES 加密算法使用。DES 仅使用 56 位有效密钥,
|
|
14
|
+
可在数小时内被暴力破解,不再提供有效安全保护。
|
|
15
|
+
|
|
16
|
+
修复方案:
|
|
17
|
+
- 迁移至 AES-256 (Aes.Create() 或 AesGcm)
|
|
18
|
+
- 使用 System.Security.Cryptography.Aes.Create()
|
|
19
|
+
- 使用 Authenticated Encryption: AesGcm 或 AesCcm
|
|
20
|
+
languages:
|
|
21
|
+
- csharp
|
|
22
|
+
pattern-either:
|
|
23
|
+
- pattern: SymmetricAlgorithm.Create("DES")
|
|
24
|
+
- pattern: DES.Create()
|
|
25
|
+
- pattern: new DESCryptoServiceProvider()
|
|
26
|
+
- pattern: TripleDES.Create()
|
|
27
|
+
- pattern: new TripleDESCryptoServiceProvider()
|
|
28
|
+
metadata:
|
|
29
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
30
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
31
|
+
category: security
|
|
32
|
+
precision: high
|
|
33
|
+
references:
|
|
34
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
35
|
+
- "https://learn.microsoft.com/en-us/dotnet/standard/security/cryptography-model"
|
|
36
|
+
|
|
37
|
+
# ZM-CS-CWE327-002: RC2 加密
|
|
38
|
+
- id: zm-cs-cwe327-weak-crypto-002
|
|
39
|
+
severity: ERROR
|
|
40
|
+
message: |
|
|
41
|
+
检测到 RC2 加密算法使用。RC2 是 64 位分组密码,
|
|
42
|
+
密钥长度不足且存在已知的密码学弱点。RC2 已被所有现代标准淘汰。
|
|
43
|
+
|
|
44
|
+
修复方案:
|
|
45
|
+
- 迁移至 AES-256-GCM
|
|
46
|
+
- 使用 System.Security.Cryptography.AesGcm
|
|
47
|
+
languages:
|
|
48
|
+
- csharp
|
|
49
|
+
pattern-either:
|
|
50
|
+
- pattern: RC2.Create()
|
|
51
|
+
- pattern: new RC2CryptoServiceProvider()
|
|
52
|
+
- pattern: SymmetricAlgorithm.Create("RC2")
|
|
53
|
+
metadata:
|
|
54
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
55
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
56
|
+
category: security
|
|
57
|
+
precision: high
|
|
58
|
+
references:
|
|
59
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
60
|
+
|
|
61
|
+
# ZM-CS-CWE327-003: MD5/SHA1 用于安全
|
|
62
|
+
- id: zm-cs-cwe327-weak-crypto-003
|
|
63
|
+
severity: ERROR
|
|
64
|
+
message: |
|
|
65
|
+
检测到 MD5 或 SHA1 哈希算法用于安全目的(如密码哈希、签名)。
|
|
66
|
+
MD5 可轻易构造碰撞攻击(两个不同输入产生相同哈希)。
|
|
67
|
+
SHA1 也已找到实际碰撞攻击(SHA-1 is a Shambles, 2020)。
|
|
68
|
+
|
|
69
|
+
修复方案:
|
|
70
|
+
- 密码哈希: 使用 BCrypt.Net / PBKDF2 / Argon2
|
|
71
|
+
- 数据完整性: 使用 SHA-256 / SHA-384 / SHA-512
|
|
72
|
+
- 数字签名: 使用 SHA-256 或更高
|
|
73
|
+
languages:
|
|
74
|
+
- csharp
|
|
75
|
+
pattern-either:
|
|
76
|
+
- pattern: MD5.Create()
|
|
77
|
+
- pattern: new MD5CryptoServiceProvider()
|
|
78
|
+
- pattern: SHA1.Create()
|
|
79
|
+
- pattern: new SHA1CryptoServiceProvider()
|
|
80
|
+
- pattern: HashAlgorithm.Create("MD5")
|
|
81
|
+
- pattern: HashAlgorithm.Create("SHA1")
|
|
82
|
+
metadata:
|
|
83
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
84
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
85
|
+
category: security
|
|
86
|
+
precision: high
|
|
87
|
+
references:
|
|
88
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
89
|
+
- "https://cwe.mitre.org/data/definitions/328.html"
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-327: Go 弱密码模式检测
|
|
3
|
+
# 逐码 ZhuMa V4.1 — Go 通用规则库
|
|
4
|
+
# 检测: AES-CBC无认证、ECB模式、CTR无认证、Cipher裸用
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-GO-WEAKCIPHER-001: AES-CBC 无认证加密
|
|
9
|
+
- id: zm-go-weakcipher-001
|
|
10
|
+
severity: WARNING
|
|
11
|
+
message: |
|
|
12
|
+
检测到使用 cipher.NewCBCEncrypter / NewCBCDecrypter 进行CBC模式加密。
|
|
13
|
+
CBC模式仅提供机密性,不提供完整性/认证保护。攻击者可修改密文
|
|
14
|
+
并通过padding oracle攻击恢复明文(如Lucky13、POODLE攻击)。
|
|
15
|
+
CBC模式不满足现代AEAD(认证加密)安全要求。
|
|
16
|
+
|
|
17
|
+
修复方案:
|
|
18
|
+
1. 使用 AES-GCM: cipher.NewGCM() — 内置认证+加密
|
|
19
|
+
gcm, _ := cipher.NewGCM(block)
|
|
20
|
+
ciphertext := gcm.Seal(nil, nonce, plaintext, aad)
|
|
21
|
+
2. 或使用 golang.org/x/crypto/nacl/secretbox (XSalsa20-Poly1305)
|
|
22
|
+
3. 若必须使用CBC,必须配合HMAC-SHA256做 Encrypt-then-MAC:
|
|
23
|
+
ciphertext = iv + enc(plaintext)
|
|
24
|
+
mac = HMAC-SHA256(ciphertext)
|
|
25
|
+
最终输出: ciphertext + mac
|
|
26
|
+
languages:
|
|
27
|
+
- go
|
|
28
|
+
pattern-either:
|
|
29
|
+
- pattern: cipher.NewCBCEncrypter($BLOCK, $IV)
|
|
30
|
+
- pattern: cipher.NewCBCDecrypter($BLOCK, $IV)
|
|
31
|
+
metadata:
|
|
32
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
33
|
+
severity: WARNING
|
|
34
|
+
precision: very-high
|
|
35
|
+
category: crypto
|
|
36
|
+
likelihood: HIGH
|
|
37
|
+
impact: HIGH
|
|
38
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
39
|
+
references:
|
|
40
|
+
- "https://pkg.go.dev/crypto/cipher#NewGCM"
|
|
41
|
+
- "https://en.wikipedia.org/wiki/Padding_oracle_attack"
|
|
42
|
+
|
|
43
|
+
# ZM-GO-WEAKCIPHER-002: ECB模式加密
|
|
44
|
+
- id: zm-go-weakcipher-002
|
|
45
|
+
severity: WARNING
|
|
46
|
+
message: |
|
|
47
|
+
检测到使用 ECB(电子密码本)模式加密。Go标准库不提供ECB实现,
|
|
48
|
+
此检测匹配第三方库或自定义ECB实现。
|
|
49
|
+
ECB模式会产生确定性密文——相同明文块产生相同密文块,
|
|
50
|
+
无法隐藏数据模式,攻击者可从密文中直接识别重复数据。
|
|
51
|
+
|
|
52
|
+
修复方案:
|
|
53
|
+
1. 使用 AES-GCM (cipher.NewGCM) 替代任何ECB实现
|
|
54
|
+
2. AES-GCM 提供: 机密性 + 完整性 + 认证 + 随机IV
|
|
55
|
+
3. 绝对禁止在任何安全敏感场景使用ECB
|
|
56
|
+
4. 参考 NIST SP 800-38A 了解分组密码模式安全特性
|
|
57
|
+
languages:
|
|
58
|
+
- go
|
|
59
|
+
pattern-either:
|
|
60
|
+
- pattern: NewECBEncrypter($BLOCK)
|
|
61
|
+
- pattern: NewECBDecrypter($BLOCK)
|
|
62
|
+
- pattern: ecb.NewEncrypter($BLOCK)
|
|
63
|
+
- pattern: ecb.NewDecrypter($BLOCK)
|
|
64
|
+
metadata:
|
|
65
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
66
|
+
severity: WARNING
|
|
67
|
+
precision: very-high
|
|
68
|
+
category: crypto
|
|
69
|
+
likelihood: MEDIUM
|
|
70
|
+
impact: HIGH
|
|
71
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
72
|
+
references:
|
|
73
|
+
- "https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#ECB"
|
|
74
|
+
|
|
75
|
+
# ZM-GO-WEAKCIPHER-003: AES-CTR 无认证加密
|
|
76
|
+
- id: zm-go-weakcipher-003
|
|
77
|
+
severity: WARNING
|
|
78
|
+
message: |
|
|
79
|
+
检测到使用 cipher.NewCTR() 进行CTR模式加密。
|
|
80
|
+
CTR模式本身仅提供机密性,不提供完整性保护。
|
|
81
|
+
攻击者可对密文进行比特翻转修改明文,且无MAC无法检测篡改。
|
|
82
|
+
|
|
83
|
+
修复方案:
|
|
84
|
+
1. 使用 AES-GCM 替代 CTR 模式
|
|
85
|
+
2. 或使用 Golang 支持的 AEAD 接口: cipher.NewGCM / chacha20poly1305
|
|
86
|
+
3. 若必须用CTR,配合 HMAC-SHA256 实现 Encrypt-then-MAC 认证
|
|
87
|
+
languages:
|
|
88
|
+
- go
|
|
89
|
+
pattern-either:
|
|
90
|
+
- pattern: cipher.NewCTR($BLOCK, $IV)
|
|
91
|
+
metadata:
|
|
92
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
93
|
+
severity: WARNING
|
|
94
|
+
precision: very-high
|
|
95
|
+
category: crypto
|
|
96
|
+
likelihood: HIGH
|
|
97
|
+
impact: HIGH
|
|
98
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
99
|
+
|
|
100
|
+
# ZM-GO-WEAKCIPHER-004: Cipher 裸用(无模式加密)
|
|
101
|
+
- id: zm-go-weakcipher-004
|
|
102
|
+
severity: WARNING
|
|
103
|
+
message: |
|
|
104
|
+
检测到 cipher.Block 接口的 Encrypt/Decrypt 方法直接调用,
|
|
105
|
+
未通过任何分组密码模式包装。裸 Block 仅加密单个16字节块,
|
|
106
|
+
无法处理任意长度数据,且无认证和IV。
|
|
107
|
+
|
|
108
|
+
修复方案:
|
|
109
|
+
1. 始终通过 cipher.NewGCM(block) 等模式包装后使用
|
|
110
|
+
2. 绝对禁止直接调用 block.Encrypt / block.Decrypt 处理业务数据
|
|
111
|
+
3. 正确模式: gcm, _ := cipher.NewGCM(block); gcm.Seal(...)
|
|
112
|
+
languages:
|
|
113
|
+
- go
|
|
114
|
+
pattern-either:
|
|
115
|
+
- pattern: $BLOCK.Encrypt($DST, $SRC)
|
|
116
|
+
- pattern: $BLOCK.Decrypt($DST, $SRC)
|
|
117
|
+
metadata:
|
|
118
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
119
|
+
severity: WARNING
|
|
120
|
+
precision: very-high
|
|
121
|
+
category: crypto
|
|
122
|
+
likelihood: HIGH
|
|
123
|
+
impact: HIGH
|
|
124
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
125
|
+
references:
|
|
126
|
+
- "https://pkg.go.dev/crypto/cipher#Block"
|
|
127
|
+
|
|
128
|
+
# ZM-GO-WEAKCIPHER-005: CFB/OFB 无认证
|
|
129
|
+
- id: zm-go-weakcipher-005
|
|
130
|
+
severity: WARNING
|
|
131
|
+
message: |
|
|
132
|
+
检测到使用 cipher.NewCFBEncrypter / NewOFB 流模式。
|
|
133
|
+
CFB/OFB仅提供机密性,不提供认证保护。不应在现代系统中单独使用。
|
|
134
|
+
OFB模式虽比特翻转影响有限,但仍缺少完整性校验。
|
|
135
|
+
|
|
136
|
+
修复方案:
|
|
137
|
+
1. 使用 cipher.NewGCM() — AEAD 是唯一推荐的新增代码加密模式
|
|
138
|
+
2. 若需流加密,使用 ChaCha20-Poly1305
|
|
139
|
+
3. 旧系统迁移计划加入HMAC认证
|
|
140
|
+
languages:
|
|
141
|
+
- go
|
|
142
|
+
pattern-either:
|
|
143
|
+
- pattern: cipher.NewCFBEncrypter($BLOCK, $IV)
|
|
144
|
+
- pattern: cipher.NewCFBDecrypter($BLOCK, $IV)
|
|
145
|
+
- pattern: cipher.NewOFB($BLOCK, $IV)
|
|
146
|
+
metadata:
|
|
147
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
148
|
+
severity: WARNING
|
|
149
|
+
precision: very-high
|
|
150
|
+
category: crypto
|
|
151
|
+
likelihood: MEDIUM
|
|
152
|
+
impact: HIGH
|
|
153
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-327/329/338: 加密弱点 — ECB模式 / 静态IV / 弱PRNG / 密钥派生缺陷
|
|
3
|
+
# ZhuMa V4.1 — Cryptography Misuse深度检测
|
|
4
|
+
# 覆盖: ECB模式检测 / 静态IV / PredictableRandom / PBKDF2弱迭代
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-JAVA-CRYPTO-ECB-001: AES ECB模式使用
|
|
9
|
+
- id: zm-java-crypto-ecb-001
|
|
10
|
+
severity: ERROR
|
|
11
|
+
message: |
|
|
12
|
+
Cipher.getInstance("AES") 未指定模式,或显式使用 "AES/ECB" — ECB模式可被块重放攻击。
|
|
13
|
+
ECB将相同明文加密为相同密文,攻击者可识别模式并重放密文块,绕过加密保护。
|
|
14
|
+
CVE-2017-10366: Oracle WebLogic ECB模式信息泄露; CVE-2022-22963: Spring Cloud ECB重放。
|
|
15
|
+
修复: 使用 Cipher.getInstance("AES/GCM/NoPadding") 认证加密模式。
|
|
16
|
+
注意: 不指定模式和填充时Java默认使用AES/ECB/PKCS5Padding,极度不安全。
|
|
17
|
+
languages:
|
|
18
|
+
- java
|
|
19
|
+
pattern-either:
|
|
20
|
+
- pattern: Cipher.getInstance("AES")
|
|
21
|
+
- pattern: Cipher.getInstance("AES/ECB")
|
|
22
|
+
- pattern: Cipher.getInstance("AES/ECB/PKCS5Padding")
|
|
23
|
+
- pattern: Cipher.getInstance("DES/ECB")
|
|
24
|
+
- pattern: Cipher.getInstance("DESede/ECB")
|
|
25
|
+
metadata:
|
|
26
|
+
cwe: "CWE-327: Use of a Broken or Risky Cryptographic Algorithm"
|
|
27
|
+
severity: ERROR
|
|
28
|
+
precision: very-high
|
|
29
|
+
category: crypto
|
|
30
|
+
likelihood: HIGH
|
|
31
|
+
impact: HIGH
|
|
32
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
33
|
+
references:
|
|
34
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2017-10366"
|
|
35
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2022-22963"
|
|
36
|
+
- "https://cwe.mitre.org/data/definitions/327.html"
|
|
37
|
+
|
|
38
|
+
# ZM-JAVA-CRYPTO-IVSTATIC-001: 静态/固定IV向量
|
|
39
|
+
- id: zm-java-crypto-ivstatic-001
|
|
40
|
+
severity: ERROR
|
|
41
|
+
message: |
|
|
42
|
+
检测到 IvParameterSpec 使用固定字节数组或字符串 — 静态初始化向量(IV)。
|
|
43
|
+
静态IV导致相同明文产生相同密文,攻击者可实施密码分析攻击(如CBC模式下的BEAST攻击)。
|
|
44
|
+
CVE-2016-2183: SSL/TLS CBC IV处理缺陷(Birthday attacks on 64-bit block ciphers)。
|
|
45
|
+
修复: 1) 每次加密使用 SecureRandom 生成随机IV 2) GCM模式使用12字节随机nonce
|
|
46
|
+
3) 将IV随密文一起传输(IV不需要保密,只需不可预测)
|
|
47
|
+
languages:
|
|
48
|
+
- java
|
|
49
|
+
pattern-either:
|
|
50
|
+
- pattern: |
|
|
51
|
+
new IvParameterSpec("...".getBytes())
|
|
52
|
+
- pattern: |
|
|
53
|
+
new IvParameterSpec(new byte[]{...})
|
|
54
|
+
- pattern: |
|
|
55
|
+
new IvParameterSpec($FIXED_BYTES)
|
|
56
|
+
- pattern: |
|
|
57
|
+
new GCMParameterSpec(..., $FIXED_IV)
|
|
58
|
+
metadata:
|
|
59
|
+
cwe: "CWE-329: Generation of Predictable IV with CBC Mode"
|
|
60
|
+
severity: ERROR
|
|
61
|
+
precision: high
|
|
62
|
+
category: crypto
|
|
63
|
+
likelihood: HIGH
|
|
64
|
+
impact: HIGH
|
|
65
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
66
|
+
references:
|
|
67
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2016-2183"
|
|
68
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2022-22963"
|
|
69
|
+
- "https://cwe.mitre.org/data/definitions/329.html"
|
|
70
|
+
- "https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38a.pdf"
|
|
71
|
+
|
|
72
|
+
# ZM-JAVA-CRYPTO-PRNG-001: 弱伪随机数生成器(java.util.Random用于安全)
|
|
73
|
+
- id: zm-java-crypto-prng-001
|
|
74
|
+
severity: ERROR
|
|
75
|
+
message: |
|
|
76
|
+
检测到 java.util.Random / Math.random() 用于安全场景(加密/Token/密码生成)。
|
|
77
|
+
java.util.Random使用线性同余算法(48-bit seed),可被完全预测。攻击者可在观察少量输出后
|
|
78
|
+
预测后续随机数,破解Token/密码重置链接/会话ID。CVE-2020-28052: 利用弱PRNG绕过密码重置。
|
|
79
|
+
修复: 使用 SecureRandom.getInstanceStrong() 或 new SecureRandom() 替代。
|
|
80
|
+
注意: 区分标识符用途: session-id / token / nonce / secret 等关键词上下文中的Random使用。
|
|
81
|
+
languages:
|
|
82
|
+
- java
|
|
83
|
+
patterns:
|
|
84
|
+
- pattern-either:
|
|
85
|
+
- pattern: |
|
|
86
|
+
new Random().nextInt()
|
|
87
|
+
- pattern: |
|
|
88
|
+
Math.random()
|
|
89
|
+
- pattern-inside: |
|
|
90
|
+
$TOKEN = ...;
|
|
91
|
+
...
|
|
92
|
+
metadata:
|
|
93
|
+
cwe: "CWE-338: Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)"
|
|
94
|
+
severity: ERROR
|
|
95
|
+
precision: medium
|
|
96
|
+
category: crypto
|
|
97
|
+
likelihood: MEDIUM
|
|
98
|
+
impact: HIGH
|
|
99
|
+
owasp: "A02:2021 - Cryptographic Failures"
|
|
100
|
+
references:
|
|
101
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2020-28052"
|
|
102
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2023-25690"
|
|
103
|
+
- "https://cwe.mitre.org/data/definitions/338.html"
|
|
104
|
+
- "https://wiki.sei.cmu.edu/confluence/display/java/MSC02-J.+Generate+strong+random+numbers"
|