@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,48 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: Go ioutil.ReadFile/os.ReadFile 路径穿越 (补充变体)
|
|
3
|
+
# 逐码 ZhuMa V4.3 — Go 通用规则库
|
|
4
|
+
# 检测: ioutil.ReadFile含用户输入
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-GO-PT-004: ioutil.ReadFile / os.ReadFile 动态路径来自HTTP请求
|
|
9
|
+
- id: zm-go-pt-004
|
|
10
|
+
severity: HIGH
|
|
11
|
+
message: |
|
|
12
|
+
检测到 ioutil.ReadFile / os.ReadFile 的文件路径来自HTTP请求参数。
|
|
13
|
+
攻击者可通过 ../../../etc/passwd 路径穿越读取任意文件。
|
|
14
|
+
|
|
15
|
+
修复方案:
|
|
16
|
+
1. 使用 filepath.Clean + filepath.Abs 规范化后校验前缀
|
|
17
|
+
2. 使用 filepath.Base 仅提取文件名
|
|
18
|
+
3. 对用户输入做字符白名单
|
|
19
|
+
4. 使用 net/http.FileServer + http.Dir 提供安全静态文件服务
|
|
20
|
+
languages:
|
|
21
|
+
- go
|
|
22
|
+
pattern-either:
|
|
23
|
+
- pattern: ioutil.ReadFile(r.URL.Query().Get($KEY))
|
|
24
|
+
- pattern: ioutil.ReadFile(r.FormValue($KEY))
|
|
25
|
+
- pattern: ioutil.ReadFile(r.PostFormValue($KEY))
|
|
26
|
+
- pattern: os.ReadFile(r.URL.Query().Get($KEY))
|
|
27
|
+
- pattern: os.ReadFile(r.FormValue($KEY))
|
|
28
|
+
- pattern: os.ReadFile(r.PostFormValue($KEY))
|
|
29
|
+
- pattern: ioutil.ReadFile(c.Query($KEY))
|
|
30
|
+
- pattern: ioutil.ReadFile(c.Param($KEY))
|
|
31
|
+
- pattern: os.ReadFile(c.Query($KEY))
|
|
32
|
+
- pattern: os.ReadFile(c.Param($KEY))
|
|
33
|
+
- pattern: ioutil.ReadFile(ctx.QueryParam($KEY))
|
|
34
|
+
- pattern: ioutil.ReadFile(ctx.Param($KEY))
|
|
35
|
+
- pattern: os.ReadFile(ctx.QueryParam($KEY))
|
|
36
|
+
- pattern: os.ReadFile(ctx.Param($KEY))
|
|
37
|
+
- pattern: ioutil.ReadFile(mux.Vars($R)[$KEY])
|
|
38
|
+
- pattern: os.ReadFile(mux.Vars($R)[$KEY])
|
|
39
|
+
metadata:
|
|
40
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)"
|
|
41
|
+
severity: HIGH
|
|
42
|
+
precision: high
|
|
43
|
+
category: path-traversal
|
|
44
|
+
likelihood: HIGH
|
|
45
|
+
impact: HIGH
|
|
46
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
47
|
+
references:
|
|
48
|
+
- "https://pkg.go.dev/os#ReadFile"
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: Go 路径穿越深度检测
|
|
3
|
+
# 逐码 ZhuMa V4.1 Sprint — Go 规则库
|
|
4
|
+
# 覆盖: os.MkdirAll + userInput、filepath.Clean无效化、archive/zip ZipSlip
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-GO-PT-DEPTH-001: os.MkdirAll 用户输入目录创建
|
|
9
|
+
- id: zm-go-pt-depth-001
|
|
10
|
+
severity: HIGH
|
|
11
|
+
message: |
|
|
12
|
+
检测到 os.MkdirAll / os.Mkdir 使用用户可控的目录路径参数。
|
|
13
|
+
攻击者可通过 ../../ 穿越创建任意目录,可能用于植入webshell或覆盖系统文件。
|
|
14
|
+
|
|
15
|
+
修复方案:
|
|
16
|
+
1. 使用 filepath.Clean() 规范化路径后验证基础目录前缀:
|
|
17
|
+
cleaned := filepath.Clean(filepath.Join(baseDir, userInput))
|
|
18
|
+
if !strings.HasPrefix(cleaned, filepath.Clean(baseDir)) { return error }
|
|
19
|
+
2. 使用 filepath.Base() 仅提取目录名部分
|
|
20
|
+
3. 限制目录名白名单(字母数字+特定符号)
|
|
21
|
+
4. 禁止用户输入直接作为目录路径
|
|
22
|
+
languages:
|
|
23
|
+
- go
|
|
24
|
+
pattern-either:
|
|
25
|
+
- pattern: os.MkdirAll($INPUT, $PERM)
|
|
26
|
+
- pattern: os.Mkdir($INPUT, $PERM)
|
|
27
|
+
- pattern: os.MkdirTemp($DIR, $INPUT)
|
|
28
|
+
- pattern: os.MkdirTemp($INPUT, $PATTERN)
|
|
29
|
+
metadata:
|
|
30
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)"
|
|
31
|
+
severity: HIGH
|
|
32
|
+
precision: medium
|
|
33
|
+
category: path-traversal
|
|
34
|
+
likelihood: HIGH
|
|
35
|
+
impact: HIGH
|
|
36
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
37
|
+
references:
|
|
38
|
+
- "https://pkg.go.dev/os#MkdirAll"
|
|
39
|
+
|
|
40
|
+
# ZM-GO-PT-DEPTH-002: archive/zip ZipSlip 检测
|
|
41
|
+
- id: zm-go-pt-depth-002
|
|
42
|
+
severity: HIGH
|
|
43
|
+
message: |
|
|
44
|
+
检测到 ZIP 解压操作中未对压缩包内文件名做路径穿越校验(ZipSlip漏洞)。
|
|
45
|
+
攻击者可构造包含 ../ 路径的恶意ZIP文件,解压时写入任意目录。
|
|
46
|
+
|
|
47
|
+
典型漏洞模式:
|
|
48
|
+
for _, f := range reader.File {
|
|
49
|
+
dst := filepath.Join(targetDir, f.Name)
|
|
50
|
+
os.MkdirAll(filepath.Dir(dst), 0755)
|
|
51
|
+
// 未校验 dst 是否在 targetDir 内!
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
修复方案:
|
|
55
|
+
1. 使用 filepath.Clean 规范化后校验前缀:
|
|
56
|
+
dst := filepath.Clean(filepath.Join(targetDir, f.Name))
|
|
57
|
+
if !strings.HasPrefix(dst, filepath.Clean(targetDir)+string(os.PathSeparator)) {
|
|
58
|
+
return errors.New("invalid file path")
|
|
59
|
+
}
|
|
60
|
+
2. 使用 f.FileInfo().Name() 或 filepath.Base(f.Name) 去除路径部分
|
|
61
|
+
3. 使用专门的ZipSlip防护库
|
|
62
|
+
languages:
|
|
63
|
+
- go
|
|
64
|
+
pattern-either:
|
|
65
|
+
- pattern: filepath.Join($DIR, $ZIPFILE.Name)
|
|
66
|
+
- pattern: filepath.Join($DIR, $F.Name)
|
|
67
|
+
- pattern: filepath.Join($DEST, $HEADER.Name)
|
|
68
|
+
- pattern: path.Join($DIR, $ZIPFILE.Name)
|
|
69
|
+
metadata:
|
|
70
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)"
|
|
71
|
+
severity: HIGH
|
|
72
|
+
precision: high
|
|
73
|
+
category: path-traversal
|
|
74
|
+
likelihood: HIGH
|
|
75
|
+
impact: HIGH
|
|
76
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
77
|
+
references:
|
|
78
|
+
- "https://snyk.io/research/zip-slip-vulnerability"
|
|
79
|
+
- "https://pkg.go.dev/archive/zip"
|
|
80
|
+
|
|
81
|
+
# ZM-GO-PT-DEPTH-003: filepath.Clean 后未做前缀校验(无效化)
|
|
82
|
+
- id: zm-go-pt-depth-003
|
|
83
|
+
severity: WARNING
|
|
84
|
+
message: |
|
|
85
|
+
检测到使用 filepath.Clean 规范化路径但未验证结果路径的基础目录前缀。
|
|
86
|
+
仅使用 filepath.Clean 不足以防止路径穿越——需要配合 HasPrefix 校验。
|
|
87
|
+
|
|
88
|
+
错误示例:
|
|
89
|
+
cleanPath := filepath.Clean(filepath.Join(baseDir, userInput))
|
|
90
|
+
os.Open(cleanPath) // ← 未校验 cleanPath 是否在 baseDir 内
|
|
91
|
+
|
|
92
|
+
正确示例:
|
|
93
|
+
cleanPath := filepath.Clean(filepath.Join(baseDir, userInput))
|
|
94
|
+
cleanBase := filepath.Clean(baseDir)
|
|
95
|
+
if !strings.HasPrefix(cleanPath, cleanBase) {
|
|
96
|
+
return nil, errors.New("invalid path")
|
|
97
|
+
}
|
|
98
|
+
os.Open(cleanPath)
|
|
99
|
+
|
|
100
|
+
修复方案:
|
|
101
|
+
1. filepath.Clean 后添加 HasPrefix 校验
|
|
102
|
+
2. 使用 filepath.Rel 计算相对路径并检查是否以 .. 开头
|
|
103
|
+
3. 对用户输入做字符白名单过滤
|
|
104
|
+
languages:
|
|
105
|
+
- go
|
|
106
|
+
pattern-either:
|
|
107
|
+
- pattern: filepath.Clean($INPUT)
|
|
108
|
+
- pattern: path.Clean($INPUT)
|
|
109
|
+
metadata:
|
|
110
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)"
|
|
111
|
+
severity: WARNING
|
|
112
|
+
precision: low
|
|
113
|
+
category: path-traversal
|
|
114
|
+
likelihood: MEDIUM
|
|
115
|
+
impact: HIGH
|
|
116
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
117
|
+
references:
|
|
118
|
+
- "https://pkg.go.dev/path/filepath#Clean"
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: Go 路径穿越检测
|
|
3
|
+
# 逐码 ZhuMa V4.1 — Go 通用规则库
|
|
4
|
+
# 检测: os.Open / ioutil.ReadFile 用户输入路径、path.Join 未验证
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-GO-PT-001: os.Open / os.ReadFile / ioutil.ReadFile 动态文件路径
|
|
9
|
+
- id: zm-go-pt-001
|
|
10
|
+
severity: HIGH
|
|
11
|
+
message: |
|
|
12
|
+
检测到文件读取操作(os.Open / os.ReadFile / ioutil.ReadFile)
|
|
13
|
+
使用变量作为文件路径。若该变量来自用户输入(HTTP请求参数、
|
|
14
|
+
API输入等),攻击者可通过 ../ 穿越目录读取任意文件(如 /etc/passwd)。
|
|
15
|
+
|
|
16
|
+
修复方案:
|
|
17
|
+
1. 使用 filepath.Clean() 规范化路径后,验证是否在允许的基础目录内:
|
|
18
|
+
cleaned := filepath.Clean(userPath)
|
|
19
|
+
if !strings.HasPrefix(cleaned, baseDir) { return error }
|
|
20
|
+
2. 使用 filepath.Base() 仅提取文件名,丢弃路径部分
|
|
21
|
+
3. 对用户输入的文件名做白名单校验
|
|
22
|
+
4. 将文件存储在非Web可访问目录中
|
|
23
|
+
languages:
|
|
24
|
+
- go
|
|
25
|
+
pattern-either:
|
|
26
|
+
- pattern: os.Open($PATH)
|
|
27
|
+
- pattern: os.OpenFile($PATH, $FLAG, $PERM)
|
|
28
|
+
- pattern: os.ReadFile($PATH)
|
|
29
|
+
- pattern: ioutil.ReadFile($PATH)
|
|
30
|
+
- pattern: ioutil.ReadDir($PATH)
|
|
31
|
+
- pattern: os.ReadDir($PATH)
|
|
32
|
+
metadata:
|
|
33
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)"
|
|
34
|
+
severity: HIGH
|
|
35
|
+
precision: medium
|
|
36
|
+
category: path-traversal
|
|
37
|
+
likelihood: HIGH
|
|
38
|
+
impact: HIGH
|
|
39
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
40
|
+
references:
|
|
41
|
+
- "https://pkg.go.dev/path/filepath#Clean"
|
|
42
|
+
- "https://owasp.org/www-community/attacks/Path_Traversal"
|
|
43
|
+
|
|
44
|
+
# ZM-GO-PT-002: path.Join 未做路径前缀验证
|
|
45
|
+
- id: zm-go-pt-002
|
|
46
|
+
severity: HIGH
|
|
47
|
+
message: |
|
|
48
|
+
检测到使用 path.Join 或 filepath.Join 拼接用户可控的路径组件。
|
|
49
|
+
Join 仅规范化路径分隔符,不会阻止 ../ 穿越。
|
|
50
|
+
攻击者可通过输入 ../../etc/passwd 绕过 Join 保护。
|
|
51
|
+
|
|
52
|
+
修复方案:
|
|
53
|
+
1. 在 Join 之后使用 filepath.Clean() + HasPrefix 验证:
|
|
54
|
+
fullPath := filepath.Clean(filepath.Join(baseDir, userInput))
|
|
55
|
+
if !strings.HasPrefix(fullPath, filepath.Clean(baseDir)) { return error }
|
|
56
|
+
2. 使用 filepath.Rel() 计算相对路径并检查是否以 .. 开头
|
|
57
|
+
3. 对用户输入做字符白名单(仅允许字母数字和特定符号)
|
|
58
|
+
languages:
|
|
59
|
+
- go
|
|
60
|
+
pattern-either:
|
|
61
|
+
- pattern: filepath.Join($BASE, $INPUT)
|
|
62
|
+
- pattern: path.Join($BASE, $INPUT)
|
|
63
|
+
- pattern: filepath.Join($INPUT, $SUFFIX)
|
|
64
|
+
- pattern: path.Join($INPUT, $SUFFIX)
|
|
65
|
+
metadata:
|
|
66
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)"
|
|
67
|
+
severity: HIGH
|
|
68
|
+
precision: medium
|
|
69
|
+
category: path-traversal
|
|
70
|
+
likelihood: HIGH
|
|
71
|
+
impact: HIGH
|
|
72
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
73
|
+
references:
|
|
74
|
+
- "https://pkg.go.dev/path/filepath#Join"
|
|
75
|
+
|
|
76
|
+
# ZM-GO-PT-003: http.ServeFile / http.FileServer 动态目录
|
|
77
|
+
- id: zm-go-pt-003
|
|
78
|
+
severity: HIGH
|
|
79
|
+
message: |
|
|
80
|
+
检测到 http.ServeFile 或 http.FileServer 使用动态路径提供静态文件。
|
|
81
|
+
若目录路径可由用户控制,攻击者可通过路径穿越访问Web根目录之外的
|
|
82
|
+
任意文件(配置文件、源码、数据库等)。
|
|
83
|
+
|
|
84
|
+
修复方案:
|
|
85
|
+
1. 使用 http.Dir() 包装目录: http.FileServer(http.Dir("/safe/path"))
|
|
86
|
+
2. 确保 root 目录为绝对路径且不可由用户控制
|
|
87
|
+
3. 配合 http.StripPrefix 限制访问范围
|
|
88
|
+
4. 对敏感目录设置 dotfiles 访问控制
|
|
89
|
+
languages:
|
|
90
|
+
- go
|
|
91
|
+
pattern-either:
|
|
92
|
+
- pattern: http.ServeFile($W, $R, $PATH)
|
|
93
|
+
- pattern: http.FileServer(http.Dir($DIR))
|
|
94
|
+
- pattern: http.FileServer(http.Dir($VAR))
|
|
95
|
+
metadata:
|
|
96
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (Path Traversal)"
|
|
97
|
+
severity: HIGH
|
|
98
|
+
precision: medium
|
|
99
|
+
category: path-traversal
|
|
100
|
+
likelihood: MEDIUM
|
|
101
|
+
impact: HIGH
|
|
102
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
103
|
+
references:
|
|
104
|
+
- "https://pkg.go.dev/net/http#FileServer"
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22/434/73 文件操作深度覆盖: 路径遍历全量sink + 文件上传危险模式
|
|
3
|
+
|
|
4
|
+
rules:
|
|
5
|
+
|
|
6
|
+
# ZM-JAVA-FILE-READ-001: Files.read/readAllBytes/readString 路径由用户可控
|
|
7
|
+
- id: zm-java-file-read-001
|
|
8
|
+
severity: HIGH
|
|
9
|
+
message: |
|
|
10
|
+
Files.readXXX / FileInputStream 使用用户可控路径——路径遍历/任意文件读取。
|
|
11
|
+
校验路径不以 ../ 开头,规范化后验证在允许的根目录内。
|
|
12
|
+
languages:
|
|
13
|
+
- java
|
|
14
|
+
pattern-either:
|
|
15
|
+
- pattern: Files.readAllBytes($PATH)
|
|
16
|
+
- pattern: Files.readString($PATH)
|
|
17
|
+
- pattern: Files.readAllLines($PATH)
|
|
18
|
+
- pattern: Files.newInputStream($PATH)
|
|
19
|
+
- pattern: new FileInputStream($PATH)
|
|
20
|
+
metadata:
|
|
21
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory"
|
|
22
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
23
|
+
precision: medium
|
|
24
|
+
tags: [path-traversal, file-read, nio]
|
|
25
|
+
|
|
26
|
+
# ZM-JAVA-FILE-WRITE-001: Files.write 路径可控
|
|
27
|
+
- id: zm-java-file-write-001
|
|
28
|
+
severity: CRITICAL
|
|
29
|
+
message: |
|
|
30
|
+
Files.write/FileOutputStream 使用用户可控路径——任意文件写入,可getshell。
|
|
31
|
+
同路径遍历规则校验路径在允许范围内,且不要接受完整文件名。
|
|
32
|
+
languages:
|
|
33
|
+
- java
|
|
34
|
+
pattern-either:
|
|
35
|
+
- pattern: Files.write($PATH, $CONTENT)
|
|
36
|
+
- pattern: Files.newOutputStream($PATH)
|
|
37
|
+
- pattern: new FileOutputStream($PATH)
|
|
38
|
+
- pattern: $FILE.createNewFile()
|
|
39
|
+
metadata:
|
|
40
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory"
|
|
41
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
42
|
+
precision: medium
|
|
43
|
+
tags: [path-traversal, file-write, rce]
|
|
44
|
+
|
|
45
|
+
# ZM-JAVA-FILE-DELETE-001: Files.delete/deleteIfExists 路径可控
|
|
46
|
+
- id: zm-java-file-delete-001
|
|
47
|
+
severity: MEDIUM
|
|
48
|
+
message: |
|
|
49
|
+
Files.delete/deleteIfExists 使用用户可控路径——可删除任意文件。
|
|
50
|
+
校验路径在白名单内,使用 UUID 文件名避免路径注入。
|
|
51
|
+
languages:
|
|
52
|
+
- java
|
|
53
|
+
pattern-either:
|
|
54
|
+
- pattern: Files.delete($PATH)
|
|
55
|
+
- pattern: Files.deleteIfExists($PATH)
|
|
56
|
+
- pattern: $FILE.delete()
|
|
57
|
+
metadata:
|
|
58
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory"
|
|
59
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
60
|
+
precision: medium
|
|
61
|
+
tags: [path-traversal, file-delete]
|
|
62
|
+
|
|
63
|
+
# ZM-JAVA-UPLOAD-PATH-001: MultipartFile transferTo 使用用户可控路径
|
|
64
|
+
- id: zm-java-upload-path-001
|
|
65
|
+
severity: CRITICAL
|
|
66
|
+
message: |
|
|
67
|
+
MultipartFile.transferTo() 目标路径使用原始文件名 + 用户可控目录——可覆盖任意文件。
|
|
68
|
+
使用 UUID 重命名上传文件,并确保上传目录在配置的 uploads/ 根内。
|
|
69
|
+
languages:
|
|
70
|
+
- java
|
|
71
|
+
pattern-either:
|
|
72
|
+
- pattern: $FILE.transferTo(new File($PATH));
|
|
73
|
+
- pattern: $FILE.transferTo($DEST);
|
|
74
|
+
metadata:
|
|
75
|
+
cwe: "CWE-434: Unrestricted Upload of File with Dangerous Type"
|
|
76
|
+
owasp: "A03:2021 - Injection"
|
|
77
|
+
precision: high
|
|
78
|
+
tags: [file-upload, path-traversal]
|
|
79
|
+
references:
|
|
80
|
+
- https://cheatsheetseries.owasp.org/cheatsheets/File_Upload_Cheat_Sheet.html
|
|
81
|
+
|
|
82
|
+
# ZM-JAVA-UPLOAD-EXT-001: 文件上传缺少扩展名校验
|
|
83
|
+
- id: zm-java-upload-ext-001
|
|
84
|
+
severity: HIGH
|
|
85
|
+
message: |
|
|
86
|
+
MultipartFile.getOriginalFilename() 直接用于存储——未校验扩展名/Content-Type。
|
|
87
|
+
限制允许的文件类型(白名单),校验 Magic Bytes,禁止 .jsp/.exe/.sh 等可执行后缀。
|
|
88
|
+
languages:
|
|
89
|
+
- java
|
|
90
|
+
pattern-either:
|
|
91
|
+
- pattern: $FILE.getOriginalFilename()
|
|
92
|
+
- pattern: $PART.getOriginalFilename()
|
|
93
|
+
metadata:
|
|
94
|
+
cwe: "CWE-434: Unrestricted Upload of File with Dangerous Type"
|
|
95
|
+
owasp: "A03:2021 - Injection"
|
|
96
|
+
precision: low
|
|
97
|
+
tags: [file-upload, extension-bypass]
|
|
98
|
+
references:
|
|
99
|
+
- https://cheatsheetseries.owasp.org/cheatsheets/File_Upload_Cheat_Sheet.html
|
|
100
|
+
|
|
101
|
+
# ZM-JAVA-ZIP-SLIP-001: ZipEntry 解压前未校验路径
|
|
102
|
+
- id: zm-java-zip-slip-001
|
|
103
|
+
severity: CRITICAL
|
|
104
|
+
message: |
|
|
105
|
+
ZipEntry.getName() 直接用于 new File(outputDir, entryName) —— 可触发 Zip Slip 路径穿越。
|
|
106
|
+
规范化后再校验:new File(outputDir, entryName).getCanonicalPath().startsWith(outputDir)
|
|
107
|
+
languages:
|
|
108
|
+
- java
|
|
109
|
+
pattern-either:
|
|
110
|
+
- pattern: new File($OUTDIR, $ENTRY.getName())
|
|
111
|
+
- pattern: |
|
|
112
|
+
$ENTRY = $ZIP.getNextEntry();
|
|
113
|
+
...
|
|
114
|
+
new File($DIR, $ENTRY);
|
|
115
|
+
metadata:
|
|
116
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory"
|
|
117
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
118
|
+
precision: high
|
|
119
|
+
tags: [zip-slip, path-traversal, rce]
|
|
120
|
+
references:
|
|
121
|
+
- https://snyk.io/research/zip-slip-vulnerability
|
|
122
|
+
|
|
123
|
+
# ZM-JAVA-TEMP-FILE-001: 临时文件使用已弃用 API
|
|
124
|
+
- id: zm-java-temp-file-001
|
|
125
|
+
severity: LOW
|
|
126
|
+
message: |
|
|
127
|
+
File.createTempFile 前缀/后缀固定且无 SecureRandom — 临时文件名可预测。
|
|
128
|
+
迁移到 Files.createTempFile() 并指定 SecureRandom 前缀。
|
|
129
|
+
languages:
|
|
130
|
+
- java
|
|
131
|
+
pattern: File.createTempFile($PREFIX, $SUFFIX)
|
|
132
|
+
metadata:
|
|
133
|
+
cwe: "CWE-377: Insecure Temporary File"
|
|
134
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
135
|
+
precision: high
|
|
136
|
+
tags: [temp-file, race-condition]
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: 路径穿越 — File含../未规范化
|
|
3
|
+
# 逐码 ZhuMa V4.3 — 路径穿越深度覆盖
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
# ZM-JAVA-CWE22-UNNORMALIZED-001: File 构造含 ../ 或用户输入
|
|
8
|
+
- id: zm-java-cwe22-unnormalized-001
|
|
9
|
+
severity: ERROR
|
|
10
|
+
message: |
|
|
11
|
+
java.io.File 构造器使用用户输入构建路径,若未调用 getCanonicalPath() 或 normalize() 进行路径规范化,
|
|
12
|
+
攻击者可通过 ../ 路径穿越读取任意文件(如 /etc/passwd)。
|
|
13
|
+
修复: 1. file.getCanonicalPath() 规范路径后再校验前缀 2. 使用 Paths.get().normalize().toRealPath()
|
|
14
|
+
3. 确保最终路径在允许的目录范围内: path.startsWith(allowedBase)
|
|
15
|
+
languages:
|
|
16
|
+
- java
|
|
17
|
+
pattern-either:
|
|
18
|
+
- pattern: |
|
|
19
|
+
$F = new File($BASE, $REQ.getParameter(...));
|
|
20
|
+
- pattern: |
|
|
21
|
+
$F = new File($REQ.getParameter(...));
|
|
22
|
+
- pattern: |
|
|
23
|
+
$P = Paths.get($REQ.getParameter(...));
|
|
24
|
+
- pattern: |
|
|
25
|
+
$F = new File($BASE + File.separator + $REQ.getParameter(...));
|
|
26
|
+
- pattern: |
|
|
27
|
+
$F = new File($BASE + "/" + $REQ.getParameter(...));
|
|
28
|
+
metadata:
|
|
29
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')"
|
|
30
|
+
severity: ERROR
|
|
31
|
+
precision: high
|
|
32
|
+
category: path-traversal
|
|
33
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
34
|
+
likelihood: HIGH
|
|
35
|
+
impact: HIGH
|
|
36
|
+
|
|
37
|
+
# ZM-JAVA-CWE22-UNNORMALIZED-002: FileOutputStream/InputStream 用户可控路径
|
|
38
|
+
- id: zm-java-cwe22-unnormalized-002
|
|
39
|
+
severity: ERROR
|
|
40
|
+
message: |
|
|
41
|
+
FileInputStream/FileOutputStream 使用用户可控路径,
|
|
42
|
+
攻击者可读取系统敏感文件或覆盖关键配置文件。
|
|
43
|
+
修复: 使用 file.getCanonicalPath() 解析真实路径,校验路径前缀在允许的目录范围内。
|
|
44
|
+
languages:
|
|
45
|
+
- java
|
|
46
|
+
pattern-either:
|
|
47
|
+
- pattern: new FileInputStream($REQ.getParameter(...))
|
|
48
|
+
- pattern: new FileOutputStream($REQ.getParameter(...))
|
|
49
|
+
- pattern: new FileReader($REQ.getParameter(...))
|
|
50
|
+
- pattern: new FileWriter($REQ.getParameter(...))
|
|
51
|
+
metadata:
|
|
52
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')"
|
|
53
|
+
severity: ERROR
|
|
54
|
+
precision: very-high
|
|
55
|
+
category: path-traversal
|
|
56
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
57
|
+
likelihood: HIGH
|
|
58
|
+
impact: HIGH
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: Path Traversal — Spring-specific sinks
|
|
3
|
+
# ZhuMa V4.1 — complement zm-java-cwe22-file-depth.yaml
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
# ZM-JAVA-PATH-SPRING-001: ClassPathResource with user-controlled path
|
|
8
|
+
- id: zm-java-path-spring-001
|
|
9
|
+
severity: MEDIUM
|
|
10
|
+
message: |
|
|
11
|
+
Spring ClassPathResource constructed with user input — path traversal into classpath resources.
|
|
12
|
+
Attacker can read application.properties or other sensitive classpath files.
|
|
13
|
+
Fix: validate path against whitelist; use ResourcePatternResolver with allowed prefix.
|
|
14
|
+
languages:
|
|
15
|
+
- java
|
|
16
|
+
pattern-either:
|
|
17
|
+
- pattern: |
|
|
18
|
+
new ClassPathResource($REQ.getParameter(...))
|
|
19
|
+
- pattern: |
|
|
20
|
+
new ClassPathResource($STR + $REQ.getParameter(...))
|
|
21
|
+
- pattern: |
|
|
22
|
+
new ClassPathResource($REQ.getParameter(...)).getInputStream()
|
|
23
|
+
metadata:
|
|
24
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory"
|
|
25
|
+
severity: MEDIUM
|
|
26
|
+
precision: high
|
|
27
|
+
category: path-traversal
|
|
28
|
+
likelihood: MEDIUM
|
|
29
|
+
impact: MEDIUM
|
|
30
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
31
|
+
|
|
32
|
+
# ZM-JAVA-PATH-SPRING-002: FileSystemResource with user-controlled path
|
|
33
|
+
- id: zm-java-path-spring-002
|
|
34
|
+
severity: HIGH
|
|
35
|
+
message: |
|
|
36
|
+
Spring FileSystemResource constructed with user input — arbitrary file read/write on filesystem.
|
|
37
|
+
Attacker can traverse to read /etc/passwd or application config files.
|
|
38
|
+
Fix: normalize path and verify it stays within allowed directory root.
|
|
39
|
+
languages:
|
|
40
|
+
- java
|
|
41
|
+
pattern-either:
|
|
42
|
+
- pattern: |
|
|
43
|
+
new FileSystemResource($REQ.getParameter(...))
|
|
44
|
+
- pattern: |
|
|
45
|
+
new FileSystemResource($DIR + $REQ.getParameter(...))
|
|
46
|
+
- pattern: |
|
|
47
|
+
new FileSystemResource($REQ.getParameter(...)).getFile()
|
|
48
|
+
- pattern: |
|
|
49
|
+
new FileSystemResource($REQ.getParameter(...)).getInputStream()
|
|
50
|
+
metadata:
|
|
51
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory"
|
|
52
|
+
severity: HIGH
|
|
53
|
+
precision: high
|
|
54
|
+
category: path-traversal
|
|
55
|
+
likelihood: MEDIUM
|
|
56
|
+
impact: HIGH
|
|
57
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
58
|
+
|
|
59
|
+
# ZM-JAVA-PATH-SPRING-003: ServletContext.getRealPath() with user input
|
|
60
|
+
- id: zm-java-path-spring-003
|
|
61
|
+
severity: HIGH
|
|
62
|
+
message: |
|
|
63
|
+
ServletContext.getRealPath() with user-controlled virtual path — discloses server filesystem layout.
|
|
64
|
+
Attackers can map internal file structure; combined with file write leads to RCE.
|
|
65
|
+
Fix: never pass user input to getRealPath(); use fixed virtual paths or config-based resource mapping.
|
|
66
|
+
languages:
|
|
67
|
+
- java
|
|
68
|
+
pattern-either:
|
|
69
|
+
- pattern: |
|
|
70
|
+
$CTX.getRealPath($REQ.getParameter(...))
|
|
71
|
+
- pattern: |
|
|
72
|
+
$CTX.getRealPath($STR + $REQ.getParameter(...))
|
|
73
|
+
- pattern: |
|
|
74
|
+
$REQ.getServletContext().getRealPath($REQ.getParameter(...))
|
|
75
|
+
metadata:
|
|
76
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory"
|
|
77
|
+
severity: HIGH
|
|
78
|
+
precision: high
|
|
79
|
+
category: path-traversal
|
|
80
|
+
likelihood: MEDIUM
|
|
81
|
+
impact: HIGH
|
|
82
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: 文件操作 — ZipSlip深入与符号链接攻击
|
|
3
|
+
# ZhuMa V4.1 — 归档文件路径穿越 + 符号链接TOCTOU
|
|
4
|
+
# 覆盖: TAR归档Slip / 符号链接检查 / Java NIO LinkOption
|
|
5
|
+
|
|
6
|
+
rules:
|
|
7
|
+
|
|
8
|
+
# ZM-JAVA-ZIPSLIP-TAR-001: TarArchiveEntry 路径穿越
|
|
9
|
+
- id: zm-java-zipslip-tar-001
|
|
10
|
+
severity: CRITICAL
|
|
11
|
+
message: |
|
|
12
|
+
TarArchiveEntry.getName() 直接用于文件解压路径 — TarSlip路径穿越可覆盖任意系统文件。
|
|
13
|
+
攻击者构造包含 ../../../etc/crontab 路径的恶意TAR文件,写入cron job获取持久化Shell。
|
|
14
|
+
CVE-2023-32697: Apache Commons Compress TarArchiveInputStream路径穿越。
|
|
15
|
+
修复: 1) canonicalize目标路径后使用 startsWith(outputDir) 验证 2) 拒绝绝对路径
|
|
16
|
+
3) 使用 Apache Commons Compress >=1.23.0 内置验证
|
|
17
|
+
languages:
|
|
18
|
+
- java
|
|
19
|
+
pattern-either:
|
|
20
|
+
- pattern: |
|
|
21
|
+
new File($OUTDIR, $ENTRY.getName())
|
|
22
|
+
- pattern: |
|
|
23
|
+
$ENTRY = $TIS.getNextTarEntry()
|
|
24
|
+
- pattern: |
|
|
25
|
+
new FileOutputStream(new File($DEST, $ENTRY.getName()))
|
|
26
|
+
- pattern: |
|
|
27
|
+
$TAR_ENTRY.getName()
|
|
28
|
+
metadata:
|
|
29
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')"
|
|
30
|
+
severity: CRITICAL
|
|
31
|
+
precision: high
|
|
32
|
+
category: path-traversal
|
|
33
|
+
likelihood: HIGH
|
|
34
|
+
impact: CRITICAL
|
|
35
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
36
|
+
references:
|
|
37
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2023-32697"
|
|
38
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2018-1000180"
|
|
39
|
+
- "https://snyk.io/research/zip-slip-vulnerability"
|
|
40
|
+
|
|
41
|
+
# ZM-JAVA-SYMLINK-001: 文件操作未处理符号链接
|
|
42
|
+
- id: zm-java-symlink-001
|
|
43
|
+
severity: HIGH
|
|
44
|
+
message: |
|
|
45
|
+
文件操作(创建/读取/删除)未使用LinkOption.NOFOLLOW_LINKS — 符号链接TOCTOU攻击。
|
|
46
|
+
攻击者可创建符号链接指向敏感文件,绕过路径白名单验证。如: /tmp/safelink → /etc/shadow。
|
|
47
|
+
CVE-2023-20863: Spring Framework symlink TOCTOU; CVE-2024-21634: symlink race条件。
|
|
48
|
+
修复: 1) Files.exists(p, LinkOption.NOFOLLOW_LINKS) 先检查 2) Files.isSymbolicLink() 判断
|
|
49
|
+
3) 所有文件API使用 LinkOption.NOFOLLOW_LINKS 选项
|
|
50
|
+
languages:
|
|
51
|
+
- java
|
|
52
|
+
pattern-either:
|
|
53
|
+
- pattern: |
|
|
54
|
+
Files.createFile($PATH)
|
|
55
|
+
- pattern: |
|
|
56
|
+
Files.createDirectory($PATH)
|
|
57
|
+
- pattern: |
|
|
58
|
+
Files.copy($SRC, $DST, StandardCopyOption.REPLACE_EXISTING)
|
|
59
|
+
- pattern: |
|
|
60
|
+
$PATH.toFile().exists()
|
|
61
|
+
- pattern: |
|
|
62
|
+
$PATH.toFile().createNewFile()
|
|
63
|
+
metadata:
|
|
64
|
+
cwe: "CWE-61: UNIX Symbolic Link (Symlink) Following"
|
|
65
|
+
severity: HIGH
|
|
66
|
+
precision: medium
|
|
67
|
+
category: path-traversal
|
|
68
|
+
likelihood: MEDIUM
|
|
69
|
+
impact: HIGH
|
|
70
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
71
|
+
references:
|
|
72
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2023-20863"
|
|
73
|
+
- "https://nvd.nist.gov/vuln/detail/CVE-2024-21634"
|
|
74
|
+
- "https://cwe.mitre.org/data/definitions/61.html"
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: Express res.sendFile/res.download 路径穿越
|
|
3
|
+
# 逐码 ZhuMa V4.3 — JS/TS Express 规则库
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
- id: zm-js-express-path-001
|
|
8
|
+
severity: ERROR
|
|
9
|
+
message: >
|
|
10
|
+
Express res.sendFile() 或 res.download() 使用 req.query/req.params 用户输入
|
|
11
|
+
作为文件路径,存在路径穿越漏洞,攻击者可读取任意系统文件。
|
|
12
|
+
修复: 使用 path.resolve() 限制基础目录,校验路径不包含 ../。
|
|
13
|
+
languages:
|
|
14
|
+
- javascript
|
|
15
|
+
- typescript
|
|
16
|
+
pattern-either:
|
|
17
|
+
- pattern: res.sendFile($REQ.query.$FIELD)
|
|
18
|
+
- pattern: res.sendFile($REQ.params.$FIELD)
|
|
19
|
+
- pattern: res.download($REQ.query.$FIELD)
|
|
20
|
+
- pattern: res.download($REQ.params.$FIELD)
|
|
21
|
+
metadata:
|
|
22
|
+
cwe: "CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')"
|
|
23
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
24
|
+
category: security
|
|
25
|
+
precision: high
|
|
26
|
+
confidence: high
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Source: common | Cluster: N/A
|
|
2
|
+
# CWE-22: fs.writeFile/writeFileSync 路径穿越
|
|
3
|
+
# 逐码 ZhuMa V4.3 — JS/TS 通用规则库
|
|
4
|
+
|
|
5
|
+
rules:
|
|
6
|
+
|
|
7
|
+
- id: zm-js-fs-path-001
|
|
8
|
+
severity: ERROR
|
|
9
|
+
message: >
|
|
10
|
+
fs.writeFile() 或 fs.writeFileSync() 使用 req.query/req.params/req.body
|
|
11
|
+
用户输入作为文件路径,存在路径穿越漏洞,攻击者可覆盖任意系统文件。
|
|
12
|
+
修复: 使用 path.resolve() 限制基础目录,验证路径不包含 ../ 等穿越字符。
|
|
13
|
+
languages:
|
|
14
|
+
- javascript
|
|
15
|
+
- typescript
|
|
16
|
+
pattern-either:
|
|
17
|
+
- pattern: $FS.writeFile($REQ.query.$FIELD, ...)
|
|
18
|
+
- pattern: $FS.writeFile($REQ.params.$FIELD, ...)
|
|
19
|
+
- pattern: $FS.writeFile($REQ.body.$FIELD, ...)
|
|
20
|
+
- pattern: $FS.writeFileSync($REQ.query.$FIELD, ...)
|
|
21
|
+
- pattern: $FS.writeFileSync($REQ.params.$FIELD, ...)
|
|
22
|
+
- pattern: $FS.writeFileSync($REQ.body.$FIELD, ...)
|
|
23
|
+
metadata:
|
|
24
|
+
cwe: "CWE-22: Path Traversal"
|
|
25
|
+
owasp: "A01:2021 - Broken Access Control"
|
|
26
|
+
category: security
|
|
27
|
+
precision: high
|
|
28
|
+
confidence: high
|