@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.
Files changed (1128) hide show
  1. package/package.json +10 -3
  2. package/rules/common/zm-go-cwe1336-template-injection.yaml +38 -0
  3. package/rules/common/zm-go-cwe200-grpc-metadata.yaml +40 -0
  4. package/rules/common/zm-go-cwe319-grpc-notls.yaml +118 -0
  5. package/rules/common/zm-go-cwe338-weak-prng.yaml +117 -0
  6. package/rules/common/zm-go-cwe347-jwt.yaml +147 -0
  7. package/rules/common/zm-go-cwe693-gin-middleware.yaml +48 -0
  8. package/rules/common/zm-go-cwe693-security-headers.yaml +120 -0
  9. package/rules/common/zm-java-crypto-cwe327-001.yaml +103 -0
  10. package/rules/common/zm-java-deserial-cwe502-001.yaml +72 -0
  11. package/rules/common/zm-java-expression-cwe94-001.yaml +110 -0
  12. package/rules/common/zm-java-file-cwe22-001.yaml +73 -0
  13. package/rules/common/zm-java-hql-cwe89-001.yaml +72 -0
  14. package/rules/common/zm-java-jndi-cwe502-001.yaml +107 -0
  15. package/rules/common/zm-java-oauth-cwe287-001.yaml +136 -0
  16. package/rules/common/zm-java-rce-cwe78-001.yaml +98 -0
  17. package/rules/common/zm-java-springsec-cwe284-001.yaml +109 -0
  18. package/rules/common/zm-java-xstream-cwe502-001.yaml +73 -0
  19. package/rules/common/zm-java-xxe-cwe611-003.yaml +105 -0
  20. package/rules/common/zm-js-cwe20-nextjs-api-routes.yaml +141 -0
  21. package/rules/common/zm-js-cwe287-aws-lambda-config.yaml +107 -0
  22. package/rules/common/zm-js-cwe345-websocket-security.yaml +90 -0
  23. package/rules/common/zm-js-cwe501-graphql-injection.yaml +52 -0
  24. package/rules/common/zm-js-cwe502-deserialization-extended.yaml +107 -0
  25. package/rules/common/zm-js-cwe506-npm-supply-chain.yaml +19 -0
  26. package/rules/common/zm-js-cwe79-electron-security.yaml +35 -0
  27. package/rules/common/zm-js-cwe79-react-xss-deep.yaml +34 -0
  28. package/rules/common/zm-js-cwe89-prisma-typeorm.yaml +139 -0
  29. package/rules/common/zm-py-aiohttp-cwe295-cwe770-01.yaml +60 -0
  30. package/rules/common/zm-py-crypto-cwe327-01.yaml +33 -0
  31. package/rules/common/zm-py-deser-cwe502-01.yaml +66 -0
  32. package/rules/common/zm-py-django-cwe200-cwe798-cwe352-01.yaml +80 -0
  33. package/rules/common/zm-py-fastapi-cwe265-cwe284-01.yaml +48 -0
  34. package/rules/common/zm-py-flask-cwe200-cwe326-01.yaml +57 -0
  35. package/rules/common/zm-py-sqlalchemy-cwe89-01.yaml +65 -0
  36. package/rules/community-merged/cwe-1004/authtkt-cookie-httponly-unsafe-default.yaml +38 -0
  37. package/rules/community-merged/cwe-1004/authtkt-cookie-httponly-unsafe-value.yaml +41 -0
  38. package/rules/community-merged/cwe-1004/cookie-missing-httponly.yaml +42 -0
  39. package/rules/community-merged/cwe-1004/session-cookie-missing-httponly.yaml +41 -0
  40. package/rules/community-merged/cwe-1104/express-detect-notevil-usage.yaml +56 -0
  41. package/rules/community-merged/cwe-113/http-response-splitting.yaml +45 -0
  42. package/rules/community-merged/cwe-115/reverseproxy-director.yaml +34 -0
  43. package/rules/community-merged/cwe-116/autoescape-disabled-false.yaml +35 -0
  44. package/rules/community-merged/cwe-116/detect-disable-mustache-escape.yaml +28 -0
  45. package/rules/community-merged/cwe-116/incomplete-sanitization.yaml +33 -0
  46. package/rules/community-merged/cwe-116/missing-autoescape-disabled.yaml +34 -0
  47. package/rules/community-merged/cwe-116/no-scriptlets.yaml +32 -0
  48. package/rules/community-merged/cwe-116/use-escapexml.yaml +34 -0
  49. package/rules/community-merged/cwe-119/detect-buffer-noassert.yaml +33 -0
  50. package/rules/community-merged/cwe-1204/create-de-cipher-no-iv.yaml +32 -0
  51. package/rules/community-merged/cwe-1236/csv-writer-injection.yaml +56 -0
  52. package/rules/community-merged/cwe-1236/use-defusedcsv.yaml +38 -0
  53. package/rules/community-merged/cwe-1275/authtkt-cookie-samesite.yaml +36 -0
  54. package/rules/community-merged/cwe-1275/session-cookie-samesitenone.yaml +38 -0
  55. package/rules/community-merged/cwe-1275/set-cookie-samesite-unsafe-default.yaml +45 -0
  56. package/rules/community-merged/cwe-1333/detect-non-literal-regexp.yaml +46 -0
  57. package/rules/community-merged/cwe-1333/detect-redos.yaml +44 -0
  58. package/rules/community-merged/cwe-1333/java-pattern-from-string-parameter.yaml +38 -0
  59. package/rules/community-merged/cwe-1333/regex-dos.yaml +35 -0
  60. package/rules/community-merged/cwe-134/flask-api-method-string-format.yaml +37 -0
  61. package/rules/community-merged/cwe-134/unsafe-formatstring.yaml +52 -0
  62. package/rules/community-merged/cwe-150/autoescape-disabled.yaml +30 -0
  63. package/rules/community-merged/cwe-155/system-wildcard-detected.yaml +38 -0
  64. package/rules/community-merged/cwe-183/permissive-cors.yaml +78 -0
  65. package/rules/community-merged/cwe-20/django-using-request-post-after-is-valid.yaml +28 -0
  66. package/rules/community-merged/cwe-20/host-header-injection-python.yaml +46 -0
  67. package/rules/community-merged/cwe-200/bind.yaml +40 -0
  68. package/rules/community-merged/cwe-200/bind_all.yaml +32 -0
  69. package/rules/community-merged/cwe-200/spring-actuator-fully-enabled.yaml +33 -0
  70. package/rules/community-merged/cwe-200/url-rewriting.yaml +83 -0
  71. package/rules/community-merged/cwe-23/tainted-file-path.yaml +78 -0
  72. package/rules/community-merged/cwe-242/unsafe.yaml +25 -0
  73. package/rules/community-merged/cwe-250/docker-arbitrary-container-run.yaml +39 -0
  74. package/rules/community-merged/cwe-269/do-privileged-use.yaml +36 -0
  75. package/rules/community-merged/cwe-276/file_permission.yaml +32 -0
  76. package/rules/community-merged/cwe-276/insecure-file-permissions.yaml +64 -0
  77. package/rules/community-merged/cwe-276/overly-permissive-file-permission.yaml +50 -0
  78. package/rules/community-merged/cwe-287/unverified-jwt-decode.yaml +51 -0
  79. package/rules/community-merged/cwe-289/handler-assignment-from-multiple-sources.yaml +49 -0
  80. package/rules/community-merged/cwe-295/disabled-cert-validation.yaml +36 -0
  81. package/rules/community-merged/cwe-295/unverified-ssl-context.yaml +35 -0
  82. package/rules/community-merged/cwe-297/insecure-smtp-connection.yaml +35 -0
  83. package/rules/community-merged/cwe-300/grpc-client-insecure-connection.yaml +35 -0
  84. package/rules/community-merged/cwe-300/grpc-server-insecure-connection.yaml +45 -0
  85. package/rules/community-merged/cwe-310/aead-no-final.yaml +39 -0
  86. package/rules/community-merged/cwe-310/gcm-no-tag-length.yaml +35 -0
  87. package/rules/community-merged/cwe-319/cookie-issecure-false.yaml +38 -0
  88. package/rules/community-merged/cwe-319/detect-insecure-websocket.yaml +33 -0
  89. package/rules/community-merged/cwe-319/http-not-https-connection.yaml +29 -0
  90. package/rules/community-merged/cwe-319/security.yaml +36 -0
  91. package/rules/community-merged/cwe-319/sequelize-enforce-tls.yaml +61 -0
  92. package/rules/community-merged/cwe-319/unencrypted-socket.yaml +38 -0
  93. package/rules/community-merged/cwe-322/insecure_ssh.yaml +31 -0
  94. package/rules/community-merged/cwe-322/paramiko-implicit-trust-host-key.yaml +35 -0
  95. package/rules/community-merged/cwe-323/gcm-detection.yaml +39 -0
  96. package/rules/community-merged/cwe-323/gcm-nonce-reuse.yaml +30 -0
  97. package/rules/community-merged/cwe-326/insufficient-dsa-key-size.yaml +41 -0
  98. package/rules/community-merged/cwe-326/insufficient-ec-key-size.yaml +41 -0
  99. package/rules/community-merged/cwe-328/sha224-hash.yaml +46 -0
  100. package/rules/community-merged/cwe-328/use_of_weak_crypto.yaml +133 -0
  101. package/rules/community-merged/cwe-330/insecure-uuid-version.yaml +35 -0
  102. package/rules/community-merged/cwe-330/weak-random.yaml +32 -0
  103. package/rules/community-merged/cwe-338/detect-pseudoRandomBytes.yaml +33 -0
  104. package/rules/community-merged/cwe-345/jwt-decode-without-verify.yaml +39 -0
  105. package/rules/community-merged/cwe-345/jwt-parse-unverified.yaml +34 -0
  106. package/rules/community-merged/cwe-352/websocket-missing-origin-check.yaml +41 -0
  107. package/rules/community-merged/cwe-377/bad_tmp.yaml +30 -0
  108. package/rules/community-merged/cwe-400/ajv-allerrors-true.yaml +34 -0
  109. package/rules/community-merged/cwe-400/decompression_bomb.yaml +63 -0
  110. package/rules/community-merged/cwe-436/shared-url-struct-mutation.yaml +53 -0
  111. package/rules/community-merged/cwe-451/x-frame-options-misconfiguration.yaml +74 -0
  112. package/rules/community-merged/cwe-454/tainted-env-from-http-request.yaml +47 -0
  113. package/rules/community-merged/cwe-470/unsafe-reflect-by-name.yaml +44 -0
  114. package/rules/community-merged/cwe-470/unsafe-reflection.yaml +40 -0
  115. package/rules/community-merged/cwe-477/mongodb.yaml +27 -0
  116. package/rules/community-merged/cwe-489/debug-enabled.yaml +29 -0
  117. package/rules/community-merged/cwe-489/debug-template-tag.yaml +31 -0
  118. package/rules/community-merged/cwe-489/pprof.yaml +41 -0
  119. package/rules/community-merged/cwe-521/password-empty-string.yaml +40 -0
  120. package/rules/community-merged/cwe-521/use-none-for-password-default.yaml +43 -0
  121. package/rules/community-merged/cwe-522/express-cookie-settings.yaml +364 -0
  122. package/rules/community-merged/cwe-522/jwt-exposed-credentials.yaml +35 -0
  123. package/rules/community-merged/cwe-522/jwt-hardcode.yaml +31 -0
  124. package/rules/community-merged/cwe-522/remote-property-injection.yaml +76 -0
  125. package/rules/community-merged/cwe-523/no-auth-over-http.yaml +39 -0
  126. package/rules/community-merged/cwe-532/logger-credential-leak.yaml +38 -0
  127. package/rules/community-merged/cwe-548/express-check-directory-listing.yaml +55 -0
  128. package/rules/community-merged/cwe-548/fs-directory-listing.yaml +50 -0
  129. package/rules/community-merged/cwe-553/python-reverse-shell.yaml +33 -0
  130. package/rules/community-merged/cwe-601/express-open-redirect.yaml +115 -0
  131. package/rules/community-merged/cwe-601/open-redirect.yaml +96 -0
  132. package/rules/community-merged/cwe-614/cookie-missing-secure-flag.yaml +39 -0
  133. package/rules/community-merged/cwe-614/cookie-missing-secure.yaml +41 -0
  134. package/rules/community-merged/cwe-614/secure-cookies.yaml +60 -0
  135. package/rules/community-merged/cwe-614/secure-set-cookie.yaml +44 -0
  136. package/rules/community-merged/cwe-614/session-cookie-missing-secure.yaml +40 -0
  137. package/rules/community-merged/cwe-643/tainted-xpath-from-http-request.yaml +39 -0
  138. package/rules/community-merged/cwe-668/app-run-param-config.yaml +25 -0
  139. package/rules/community-merged/cwe-668/app-run-security-config.yaml +31 -0
  140. package/rules/community-merged/cwe-673/flask-url-for-external-true.yaml +35 -0
  141. package/rules/community-merged/cwe-704/bad-hexa-conversion.yaml +33 -0
  142. package/rules/community-merged/cwe-704/nan-injection.yaml +46 -0
  143. package/rules/community-merged/cwe-706/non-literal-import.yaml +31 -0
  144. package/rules/community-merged/cwe-706/require-request.yaml +67 -0
  145. package/rules/community-merged/cwe-706/res-render-injection.yaml +70 -0
  146. package/rules/community-merged/cwe-73/express-res-sendfile.yaml +77 -0
  147. package/rules/community-merged/cwe-73/secure-static-file-serve.yaml +30 -0
  148. package/rules/community-merged/cwe-74/xss-html-email-body.yaml +204 -0
  149. package/rules/community-merged/cwe-74/xss-send-mail-html-message.yaml +242 -0
  150. package/rules/community-merged/cwe-770/missing-throttle-config.yaml +38 -0
  151. package/rules/community-merged/cwe-776/use-defused-xmlrpc.yaml +32 -0
  152. package/rules/community-merged/cwe-798/express-jwt-hardcoded-secret.yaml +57 -0
  153. package/rules/community-merged/cwe-798/express-session-hardcoded-secret.yaml +58 -0
  154. package/rules/community-merged/cwe-798/jwt-hardcode.yaml +55 -0
  155. package/rules/community-merged/cwe-80/unsafe-serialize-javascript.yaml +33 -0
  156. package/rules/community-merged/cwe-863/security-constraint-http-method.yaml +32 -0
  157. package/rules/community-merged/cwe-90/ldap-entry-poisoning.yaml +42 -0
  158. package/rules/community-merged/cwe-90/ldap-injection.yaml +83 -0
  159. package/rules/community-merged/cwe-91/twiml-injection.yaml +51 -0
  160. package/rules/community-merged/cwe-913/dynamic-httptrace-clienttrace.yaml +40 -0
  161. package/rules/community-merged/cwe-913/reflect-makefunc.yaml +28 -0
  162. package/rules/community-merged/cwe-915/mass-assignment.yaml +33 -0
  163. package/rules/community-merged/cwe-915/tainted-sql-string.yaml +48 -0
  164. package/rules/community-merged/cwe-916/unsafe-argon2-config.yaml +48 -0
  165. package/rules/community-merged/cwe-926/exported_activity.yaml +39 -0
  166. package/rules/community-merged/cwe-93/crlf-injection-logs.yaml +87 -0
  167. package/rules/community-merged/cwe-93/request-data-write.yaml +200 -0
  168. package/rules/community-merged/cwe-939/dynamic-urllib-use-detected.yaml +58 -0
  169. package/rules/community-merged/cwe-94/dangerous-exec-cmd.yaml +87 -0
  170. package/rules/community-merged/cwe-94/dangerous-exec-command.yaml +63 -0
  171. package/rules/community-merged/cwe-942/wildcard-cors.yaml +39 -0
  172. package/rules/community-merged/cwe-95/seam-log-injection.yaml +41 -0
  173. package/rules/community-merged/cwe-95/spring-jsp-eval.yaml +30 -0
  174. package/rules/community-merged/cwe-95/user-eval.yaml +67 -0
  175. package/rules/community-merged/cwe-95/user-exec.yaml +67 -0
  176. package/rules/community-merged/cwe-96/globals-as-template-context.yaml +41 -0
  177. package/rules/community-merged/cwe-96/locals-as-template-context.yaml +41 -0
  178. package/rules/iac/ansible/zm-ansible-cwe269-privilege-escalation.yaml +12 -0
  179. package/rules/iac/ansible/zm-ansible-cwe532-no-log.yaml +42 -0
  180. package/rules/iac/ansible/zm-ansible-cwe78-unsafe-module.yaml +75 -0
  181. package/rules/iac/ansible/zm-ansible-cwe798-mysql-lineinfile.yaml +86 -0
  182. package/rules/iac/terraform/zm-tf-cwe284-gcp-firewall-eks.yaml +78 -0
  183. package/rules/iac/terraform/zm-tf-cwe284-sg-world-ingress.yaml +70 -0
  184. package/rules/iac/terraform/zm-tf-cwe285-iam-wildcard.yaml +46 -0
  185. package/rules/iac/terraform/zm-tf-cwe312-state-secrets.yaml +46 -0
  186. package/rules/iac/terraform/zm-tf-cwe319-azure-storage-mysql.yaml +69 -0
  187. package/rules/iac/terraform/zm-tf-cwe798-ecs-lambda-secrets.yaml +85 -0
  188. package/rules/iac/zm-docker-cwe1104-add-instead-of-copy.yaml +37 -0
  189. package/rules/iac/zm-docker-cwe1104-base-image.yaml +61 -0
  190. package/rules/iac/zm-docker-cwe1104-cleanup-dockerignore.yaml +67 -0
  191. package/rules/iac/zm-docker-cwe1104-multistage.yaml +33 -0
  192. package/rules/iac/zm-docker-cwe1104-package-cache.yaml +72 -0
  193. package/rules/iac/zm-docker-cwe250-docker-sock.yaml +31 -0
  194. package/rules/iac/zm-docker-cwe250-suid.yaml +33 -0
  195. package/rules/iac/zm-docker-cwe311-secrets-in-build-arg.yaml +64 -0
  196. package/rules/iac/zm-docker-cwe400-resource-limit.yaml +18 -6
  197. package/rules/iac/zm-docker-cwe668-workdir.yaml +36 -0
  198. package/rules/iac/zm-docker-cwe754-healthcheck.yaml +38 -0
  199. package/rules/iac/zm-docker-cwe78-curl-pipe.yaml +42 -0
  200. package/rules/iac/zm-docker-cwe798-arg-defaults.yaml +43 -0
  201. package/rules/iac/zm-docker-cwe798-env-secrets.yaml +48 -0
  202. package/rules/iac/zm-k8s-cwe200-configmap-creds.yaml +31 -0
  203. package/rules/iac/zm-k8s-cwe200-networkpolicy.yaml +62 -0
  204. package/rules/iac/zm-k8s-cwe200-sa-automount.yaml +38 -0
  205. package/rules/iac/zm-k8s-cwe200-service-exposure.yaml +50 -0
  206. package/rules/iac/zm-k8s-cwe200-verbosity-high.yaml +80 -0
  207. package/rules/iac/zm-k8s-cwe250-capabilities.yaml +84 -0
  208. package/rules/iac/zm-k8s-cwe250-hostpath.yaml +66 -0
  209. package/rules/iac/zm-k8s-cwe285-rbac.yaml +130 -0
  210. package/rules/iac/zm-k8s-cwe312-secret.yaml +60 -0
  211. package/rules/iac/zm-k8s-cwe319-ingress-tls.yaml +75 -0
  212. package/rules/iac/zm-k8s-cwe400-replicas.yaml +38 -0
  213. package/rules/iac/zm-k8s-psp-missing.yaml +59 -0
  214. package/rules/iac/zm-k8s-securitycontext-hardening.yaml +116 -0
  215. package/rules/iac/zm-tf-cwe200-ecr-public.yaml +18 -0
  216. package/rules/iac/zm-tf-cwe284-sg-egress-any.yaml +32 -0
  217. package/rules/iac/zm-tf-cwe319-rds-public-snapshot.yaml +46 -0
  218. package/rules/nvd-generated/cwe_1336/cl-1336-go-207.yaml +43 -0
  219. package/rules/nvd-generated/cwe_1336/cl-1336-java-194.yaml +43 -0
  220. package/rules/nvd-generated/cwe_1336/cl-1336-java-195.yaml +43 -0
  221. package/rules/nvd-generated/cwe_1336/cl-1336-java-196.yaml +43 -0
  222. package/rules/nvd-generated/cwe_1336/cl-1336-java-197.yaml +43 -0
  223. package/rules/nvd-generated/cwe_1336/cl-1336-java-198.yaml +43 -0
  224. package/rules/nvd-generated/cwe_1336/cl-1336-javascript-199.yaml +43 -0
  225. package/rules/nvd-generated/cwe_1336/cl-1336-javascript-200.yaml +43 -0
  226. package/rules/nvd-generated/cwe_1336/cl-1336-javascript-201.yaml +43 -0
  227. package/rules/nvd-generated/cwe_1336/cl-1336-javascript-202.yaml +43 -0
  228. package/rules/nvd-generated/cwe_1336/cl-1336-javascript-203.yaml +43 -0
  229. package/rules/nvd-generated/cwe_1336/cl-1336-php-208.yaml +43 -0
  230. package/rules/nvd-generated/cwe_1336/cl-1336-php-209.yaml +43 -0
  231. package/rules/nvd-generated/cwe_1336/cl-1336-python-204.yaml +43 -0
  232. package/rules/nvd-generated/cwe_1336/cl-1336-python-205.yaml +43 -0
  233. package/rules/nvd-generated/cwe_1336/cl-1336-python-206.yaml +43 -0
  234. package/rules/nvd-generated/cwe_20/cl-20-all-233.yaml +43 -0
  235. package/rules/nvd-generated/cwe_20/cl-20-java-227.yaml +43 -0
  236. package/rules/nvd-generated/cwe_20/cl-20-java-228.yaml +43 -0
  237. package/rules/nvd-generated/cwe_20/cl-20-javascript-229.yaml +43 -0
  238. package/rules/nvd-generated/cwe_20/cl-20-python-231.yaml +44 -0
  239. package/rules/nvd-generated/cwe_20/cl-20-python-232.yaml +43 -0
  240. package/rules/nvd-generated/cwe_200/cl-200-all-189.yaml +46 -0
  241. package/rules/nvd-generated/cwe_200/cl-200-all-190.yaml +45 -0
  242. package/rules/nvd-generated/cwe_200/cl-200-all-191.yaml +43 -0
  243. package/rules/nvd-generated/cwe_200/cl-200-all-192.yaml +43 -0
  244. package/rules/nvd-generated/cwe_200/cl-200-all-193.yaml +43 -0
  245. package/rules/nvd-generated/cwe_22/cl-22-go-074.yaml +43 -0
  246. package/rules/nvd-generated/cwe_22/cl-22-go-075.yaml +43 -0
  247. package/rules/nvd-generated/cwe_22/cl-22-go-076.yaml +43 -0
  248. package/rules/nvd-generated/cwe_22/cl-22-java-060.yaml +43 -0
  249. package/rules/nvd-generated/cwe_22/cl-22-java-061.yaml +43 -0
  250. package/rules/nvd-generated/cwe_22/cl-22-java-062.yaml +43 -0
  251. package/rules/nvd-generated/cwe_22/cl-22-java-063.yaml +43 -0
  252. package/rules/nvd-generated/cwe_22/cl-22-javascript-067.yaml +43 -0
  253. package/rules/nvd-generated/cwe_22/cl-22-javascript-068.yaml +43 -0
  254. package/rules/nvd-generated/cwe_22/cl-22-javascript-069.yaml +43 -0
  255. package/rules/nvd-generated/cwe_22/cl-22-php-064.yaml +43 -0
  256. package/rules/nvd-generated/cwe_22/cl-22-php-065.yaml +43 -0
  257. package/rules/nvd-generated/cwe_22/cl-22-php-066.yaml +44 -0
  258. package/rules/nvd-generated/cwe_22/cl-22-python-071.yaml +43 -0
  259. package/rules/nvd-generated/cwe_22/cl-22-python-072.yaml +43 -0
  260. package/rules/nvd-generated/cwe_22/cl-22-python-073.yaml +43 -0
  261. package/rules/nvd-generated/cwe_287/cl-287-go-187.yaml +43 -0
  262. package/rules/nvd-generated/cwe_287/cl-287-go-188.yaml +43 -0
  263. package/rules/nvd-generated/cwe_287/cl-287-java-180.yaml +43 -0
  264. package/rules/nvd-generated/cwe_287/cl-287-java-181.yaml +43 -0
  265. package/rules/nvd-generated/cwe_287/cl-287-java-182.yaml +43 -0
  266. package/rules/nvd-generated/cwe_287/cl-287-javascript-183.yaml +43 -0
  267. package/rules/nvd-generated/cwe_287/cl-287-javascript-184.yaml +43 -0
  268. package/rules/nvd-generated/cwe_287/cl-287-python-185.yaml +44 -0
  269. package/rules/nvd-generated/cwe_287/cl-287-python-186.yaml +43 -0
  270. package/rules/nvd-generated/cwe_327/cl-327-go-169.yaml +43 -0
  271. package/rules/nvd-generated/cwe_327/cl-327-go-170.yaml +43 -0
  272. package/rules/nvd-generated/cwe_327/cl-327-java-161.yaml +43 -0
  273. package/rules/nvd-generated/cwe_327/cl-327-java-162.yaml +43 -0
  274. package/rules/nvd-generated/cwe_327/cl-327-java-163.yaml +43 -0
  275. package/rules/nvd-generated/cwe_327/cl-327-java-164.yaml +43 -0
  276. package/rules/nvd-generated/cwe_327/cl-327-javascript-165.yaml +43 -0
  277. package/rules/nvd-generated/cwe_327/cl-327-javascript-166.yaml +43 -0
  278. package/rules/nvd-generated/cwe_327/cl-327-php-171.yaml +43 -0
  279. package/rules/nvd-generated/cwe_327/cl-327-php-172.yaml +43 -0
  280. package/rules/nvd-generated/cwe_327/cl-327-python-167.yaml +43 -0
  281. package/rules/nvd-generated/cwe_327/cl-327-python-168.yaml +43 -0
  282. package/rules/nvd-generated/cwe_346/cl-346-all-213.yaml +43 -0
  283. package/rules/nvd-generated/cwe_346/cl-346-all-214.yaml +43 -0
  284. package/rules/nvd-generated/cwe_346/cl-346-all-215.yaml +43 -0
  285. package/rules/nvd-generated/cwe_352/cl-352-java-153.yaml +43 -0
  286. package/rules/nvd-generated/cwe_352/cl-352-java-154.yaml +43 -0
  287. package/rules/nvd-generated/cwe_352/cl-352-javascript-156.yaml +44 -0
  288. package/rules/nvd-generated/cwe_352/cl-352-php-155.yaml +44 -0
  289. package/rules/nvd-generated/cwe_352/cl-352-python-157.yaml +43 -0
  290. package/rules/nvd-generated/cwe_434/cl-434-go-140.yaml +43 -0
  291. package/rules/nvd-generated/cwe_434/cl-434-java-130.yaml +43 -0
  292. package/rules/nvd-generated/cwe_434/cl-434-java-131.yaml +43 -0
  293. package/rules/nvd-generated/cwe_434/cl-434-java-132.yaml +43 -0
  294. package/rules/nvd-generated/cwe_434/cl-434-javascript-138.yaml +43 -0
  295. package/rules/nvd-generated/cwe_434/cl-434-javascript-139.yaml +43 -0
  296. package/rules/nvd-generated/cwe_434/cl-434-php-133.yaml +43 -0
  297. package/rules/nvd-generated/cwe_434/cl-434-php-134.yaml +44 -0
  298. package/rules/nvd-generated/cwe_434/cl-434-php-135.yaml +43 -0
  299. package/rules/nvd-generated/cwe_434/cl-434-python-136.yaml +43 -0
  300. package/rules/nvd-generated/cwe_434/cl-434-python-137.yaml +43 -0
  301. package/rules/nvd-generated/cwe_501/cl-501-all-239.yaml +43 -0
  302. package/rules/nvd-generated/cwe_501/cl-501-all-240.yaml +43 -0
  303. package/rules/nvd-generated/cwe_501/cl-501-all-241.yaml +43 -0
  304. package/rules/nvd-generated/cwe_502/cl-502-go-109.yaml +44 -0
  305. package/rules/nvd-generated/cwe_502/cl-502-go-110.yaml +44 -0
  306. package/rules/nvd-generated/cwe_502/cl-502-java-092.yaml +43 -0
  307. package/rules/nvd-generated/cwe_502/cl-502-java-093.yaml +43 -0
  308. package/rules/nvd-generated/cwe_502/cl-502-java-094.yaml +43 -0
  309. package/rules/nvd-generated/cwe_502/cl-502-java-095.yaml +43 -0
  310. package/rules/nvd-generated/cwe_502/cl-502-java-096.yaml +43 -0
  311. package/rules/nvd-generated/cwe_502/cl-502-java-097.yaml +43 -0
  312. package/rules/nvd-generated/cwe_502/cl-502-java-098.yaml +43 -0
  313. package/rules/nvd-generated/cwe_502/cl-502-java-099.yaml +43 -0
  314. package/rules/nvd-generated/cwe_502/cl-502-javascript-106.yaml +43 -0
  315. package/rules/nvd-generated/cwe_502/cl-502-javascript-107.yaml +43 -0
  316. package/rules/nvd-generated/cwe_502/cl-502-javascript-108.yaml +43 -0
  317. package/rules/nvd-generated/cwe_502/cl-502-php-100.yaml +43 -0
  318. package/rules/nvd-generated/cwe_502/cl-502-php-101.yaml +43 -0
  319. package/rules/nvd-generated/cwe_502/cl-502-php-102.yaml +44 -0
  320. package/rules/nvd-generated/cwe_502/cl-502-python-103.yaml +43 -0
  321. package/rules/nvd-generated/cwe_502/cl-502-python-104.yaml +43 -0
  322. package/rules/nvd-generated/cwe_502/cl-502-python-105.yaml +43 -0
  323. package/rules/nvd-generated/cwe_532/cl-532-all-158.yaml +46 -0
  324. package/rules/nvd-generated/cwe_532/cl-532-all-159.yaml +45 -0
  325. package/rules/nvd-generated/cwe_532/cl-532-all-160.yaml +45 -0
  326. package/rules/nvd-generated/cwe_601/cl-601-go-178.yaml +43 -0
  327. package/rules/nvd-generated/cwe_601/cl-601-java-173.yaml +43 -0
  328. package/rules/nvd-generated/cwe_601/cl-601-javascript-174.yaml +43 -0
  329. package/rules/nvd-generated/cwe_601/cl-601-javascript-175.yaml +43 -0
  330. package/rules/nvd-generated/cwe_601/cl-601-php-179.yaml +43 -0
  331. package/rules/nvd-generated/cwe_601/cl-601-python-176.yaml +43 -0
  332. package/rules/nvd-generated/cwe_601/cl-601-python-177.yaml +43 -0
  333. package/rules/nvd-generated/cwe_611/cl-611-go-123.yaml +43 -0
  334. package/rules/nvd-generated/cwe_611/cl-611-java-111.yaml +43 -0
  335. package/rules/nvd-generated/cwe_611/cl-611-java-112.yaml +43 -0
  336. package/rules/nvd-generated/cwe_611/cl-611-java-113.yaml +43 -0
  337. package/rules/nvd-generated/cwe_611/cl-611-java-114.yaml +43 -0
  338. package/rules/nvd-generated/cwe_611/cl-611-java-115.yaml +43 -0
  339. package/rules/nvd-generated/cwe_611/cl-611-javascript-121.yaml +43 -0
  340. package/rules/nvd-generated/cwe_611/cl-611-javascript-122.yaml +43 -0
  341. package/rules/nvd-generated/cwe_611/cl-611-php-116.yaml +43 -0
  342. package/rules/nvd-generated/cwe_611/cl-611-php-117.yaml +43 -0
  343. package/rules/nvd-generated/cwe_611/cl-611-python-118.yaml +43 -0
  344. package/rules/nvd-generated/cwe_611/cl-611-python-119.yaml +43 -0
  345. package/rules/nvd-generated/cwe_611/cl-611-python-120.yaml +43 -0
  346. package/rules/nvd-generated/cwe_78/cl-78-go-040.yaml +43 -0
  347. package/rules/nvd-generated/cwe_78/cl-78-go-041.yaml +43 -0
  348. package/rules/nvd-generated/cwe_78/cl-78-java-026.yaml +43 -0
  349. package/rules/nvd-generated/cwe_78/cl-78-java-027.yaml +43 -0
  350. package/rules/nvd-generated/cwe_78/cl-78-java-028.yaml +43 -0
  351. package/rules/nvd-generated/cwe_78/cl-78-java-029.yaml +43 -0
  352. package/rules/nvd-generated/cwe_78/cl-78-javascript-037.yaml +43 -0
  353. package/rules/nvd-generated/cwe_78/cl-78-javascript-038.yaml +44 -0
  354. package/rules/nvd-generated/cwe_78/cl-78-javascript-039.yaml +43 -0
  355. package/rules/nvd-generated/cwe_78/cl-78-php-030.yaml +43 -0
  356. package/rules/nvd-generated/cwe_78/cl-78-php-031.yaml +43 -0
  357. package/rules/nvd-generated/cwe_78/cl-78-php-032.yaml +43 -0
  358. package/rules/nvd-generated/cwe_78/cl-78-php-033.yaml +44 -0
  359. package/rules/nvd-generated/cwe_78/cl-78-python-034.yaml +43 -0
  360. package/rules/nvd-generated/cwe_78/cl-78-python-035.yaml +43 -0
  361. package/rules/nvd-generated/cwe_78/cl-78-python-036.yaml +46 -0
  362. package/rules/nvd-generated/cwe_79/cl-79-go-058.yaml +44 -0
  363. package/rules/nvd-generated/cwe_79/cl-79-go-059.yaml +44 -0
  364. package/rules/nvd-generated/cwe_79/cl-79-java-042.yaml +43 -0
  365. package/rules/nvd-generated/cwe_79/cl-79-java-043.yaml +43 -0
  366. package/rules/nvd-generated/cwe_79/cl-79-java-044.yaml +44 -0
  367. package/rules/nvd-generated/cwe_79/cl-79-java-045.yaml +43 -0
  368. package/rules/nvd-generated/cwe_79/cl-79-javascript-049.yaml +45 -0
  369. package/rules/nvd-generated/cwe_79/cl-79-javascript-050.yaml +45 -0
  370. package/rules/nvd-generated/cwe_79/cl-79-javascript-051.yaml +44 -0
  371. package/rules/nvd-generated/cwe_79/cl-79-javascript-052.yaml +44 -0
  372. package/rules/nvd-generated/cwe_79/cl-79-javascript-053.yaml +44 -0
  373. package/rules/nvd-generated/cwe_79/cl-79-javascript-054.yaml +44 -0
  374. package/rules/nvd-generated/cwe_79/cl-79-javascript-055.yaml +44 -0
  375. package/rules/nvd-generated/cwe_79/cl-79-php-046.yaml +43 -0
  376. package/rules/nvd-generated/cwe_79/cl-79-php-047.yaml +44 -0
  377. package/rules/nvd-generated/cwe_79/cl-79-php-048.yaml +44 -0
  378. package/rules/nvd-generated/cwe_79/cl-79-python-056.yaml +44 -0
  379. package/rules/nvd-generated/cwe_79/cl-79-python-057.yaml +44 -0
  380. package/rules/nvd-generated/cwe_798/cl-798-all-124.yaml +45 -0
  381. package/rules/nvd-generated/cwe_798/cl-798-all-125.yaml +43 -0
  382. package/rules/nvd-generated/cwe_798/cl-798-all-126.yaml +43 -0
  383. package/rules/nvd-generated/cwe_798/cl-798-all-127.yaml +43 -0
  384. package/rules/nvd-generated/cwe_798/cl-798-all-128.yaml +43 -0
  385. package/rules/nvd-generated/cwe_798/cl-798-all-129.yaml +43 -0
  386. package/rules/nvd-generated/cwe_862/cl-862-go-150.yaml +44 -0
  387. package/rules/nvd-generated/cwe_862/cl-862-go-151.yaml +43 -0
  388. package/rules/nvd-generated/cwe_862/cl-862-java-141.yaml +44 -0
  389. package/rules/nvd-generated/cwe_862/cl-862-java-142.yaml +44 -0
  390. package/rules/nvd-generated/cwe_862/cl-862-java-143.yaml +43 -0
  391. package/rules/nvd-generated/cwe_862/cl-862-javascript-144.yaml +44 -0
  392. package/rules/nvd-generated/cwe_862/cl-862-javascript-145.yaml +44 -0
  393. package/rules/nvd-generated/cwe_862/cl-862-javascript-146.yaml +44 -0
  394. package/rules/nvd-generated/cwe_862/cl-862-php-152.yaml +44 -0
  395. package/rules/nvd-generated/cwe_862/cl-862-python-148.yaml +44 -0
  396. package/rules/nvd-generated/cwe_862/cl-862-python-149.yaml +43 -0
  397. package/rules/nvd-generated/cwe_89/cl-89-go-023.yaml +43 -0
  398. package/rules/nvd-generated/cwe_89/cl-89-go-024.yaml +43 -0
  399. package/rules/nvd-generated/cwe_89/cl-89-go-025.yaml +43 -0
  400. package/rules/nvd-generated/cwe_89/cl-89-java-001.yaml +43 -0
  401. package/rules/nvd-generated/cwe_89/cl-89-java-002.yaml +43 -0
  402. package/rules/nvd-generated/cwe_89/cl-89-java-003.yaml +43 -0
  403. package/rules/nvd-generated/cwe_89/cl-89-java-004.yaml +43 -0
  404. package/rules/nvd-generated/cwe_89/cl-89-java-005.yaml +43 -0
  405. package/rules/nvd-generated/cwe_89/cl-89-java-006.yaml +43 -0
  406. package/rules/nvd-generated/cwe_89/cl-89-java-007.yaml +43 -0
  407. package/rules/nvd-generated/cwe_89/cl-89-java-008.yaml +43 -0
  408. package/rules/nvd-generated/cwe_89/cl-89-javascript-018.yaml +43 -0
  409. package/rules/nvd-generated/cwe_89/cl-89-javascript-019.yaml +43 -0
  410. package/rules/nvd-generated/cwe_89/cl-89-javascript-020.yaml +43 -0
  411. package/rules/nvd-generated/cwe_89/cl-89-javascript-021.yaml +43 -0
  412. package/rules/nvd-generated/cwe_89/cl-89-javascript-022.yaml +43 -0
  413. package/rules/nvd-generated/cwe_89/cl-89-php-009.yaml +44 -0
  414. package/rules/nvd-generated/cwe_89/cl-89-php-010.yaml +44 -0
  415. package/rules/nvd-generated/cwe_89/cl-89-php-011.yaml +44 -0
  416. package/rules/nvd-generated/cwe_89/cl-89-php-012.yaml +44 -0
  417. package/rules/nvd-generated/cwe_89/cl-89-php-013.yaml +44 -0
  418. package/rules/nvd-generated/cwe_89/cl-89-python-014.yaml +43 -0
  419. package/rules/nvd-generated/cwe_89/cl-89-python-015.yaml +43 -0
  420. package/rules/nvd-generated/cwe_89/cl-89-python-016.yaml +43 -0
  421. package/rules/nvd-generated/cwe_89/cl-89-python-017.yaml +43 -0
  422. package/rules/nvd-generated/cwe_915/cl-915-javascript-216.yaml +43 -0
  423. package/rules/nvd-generated/cwe_915/cl-915-javascript-217.yaml +43 -0
  424. package/rules/nvd-generated/cwe_915/cl-915-javascript-218.yaml +43 -0
  425. package/rules/nvd-generated/cwe_915/cl-915-javascript-219.yaml +43 -0
  426. package/rules/nvd-generated/cwe_918/cl-918-go-088.yaml +43 -0
  427. package/rules/nvd-generated/cwe_918/cl-918-go-089.yaml +43 -0
  428. package/rules/nvd-generated/cwe_918/cl-918-java-077.yaml +43 -0
  429. package/rules/nvd-generated/cwe_918/cl-918-java-078.yaml +43 -0
  430. package/rules/nvd-generated/cwe_918/cl-918-java-079.yaml +43 -0
  431. package/rules/nvd-generated/cwe_918/cl-918-java-080.yaml +44 -0
  432. package/rules/nvd-generated/cwe_918/cl-918-javascript-081.yaml +43 -0
  433. package/rules/nvd-generated/cwe_918/cl-918-javascript-082.yaml +43 -0
  434. package/rules/nvd-generated/cwe_918/cl-918-javascript-083.yaml +43 -0
  435. package/rules/nvd-generated/cwe_918/cl-918-php-090.yaml +43 -0
  436. package/rules/nvd-generated/cwe_918/cl-918-php-091.yaml +43 -0
  437. package/rules/nvd-generated/cwe_918/cl-918-python-084.yaml +43 -0
  438. package/rules/nvd-generated/cwe_918/cl-918-python-085.yaml +43 -0
  439. package/rules/nvd-generated/cwe_918/cl-918-python-086.yaml +43 -0
  440. package/rules/nvd-generated/cwe_918/cl-918-python-087.yaml +43 -0
  441. package/rules/nvd-generated/cwe_943/cl-943-java-238.yaml +36 -0
  442. package/rules/nvd-generated/cwe_943/cl-943-javascript-234.yaml +36 -0
  443. package/rules/nvd-generated/cwe_943/cl-943-javascript-235.yaml +36 -0
  444. package/rules/nvd-generated/cwe_943/cl-943-javascript-236.yaml +36 -0
  445. package/rules/nvd-generated/cwe_943/cl-943-python-237.yaml +36 -0
  446. package/rules/quarantined/cwe-20/cl-20-all-233.yaml +43 -0
  447. package/rules/quarantined/cwe-20/cl-20-java-227.yaml +43 -0
  448. package/rules/quarantined/cwe-20/cl-20-java-228.yaml +43 -0
  449. package/rules/quarantined/cwe-20/cl-20-javascript-229.yaml +43 -0
  450. package/rules/quarantined/cwe-20/cl-20-python-231.yaml +44 -0
  451. package/rules/quarantined/cwe-20/cl-20-python-232.yaml +43 -0
  452. package/rules/quarantined/cwe-20/zm-js-cwe20-nextjs-api-routes.yaml +142 -0
  453. package/rules/quarantined/cwe-200/cl-200-all-189.yaml +46 -0
  454. package/rules/quarantined/cwe-200/cl-200-all-190.yaml +45 -0
  455. package/rules/quarantined/cwe-200/cl-200-all-191.yaml +43 -0
  456. package/rules/quarantined/cwe-200/cl-200-all-192.yaml +43 -0
  457. package/rules/quarantined/cwe-200/cl-200-all-193.yaml +43 -0
  458. package/rules/quarantined/cwe-200/cwe-200-sensitive-data-exposure.yaml +62 -0
  459. package/rules/quarantined/cwe-200/zm-go-cwe200-grpc-metadata.yaml +41 -0
  460. package/rules/quarantined/cwe-200/zm-java-cwe200-actuator-exposure.yaml +9 -0
  461. package/rules/quarantined/cwe-200/zm-java-cwe200-info-disclosure.yaml +92 -0
  462. package/rules/quarantined/cwe-200/zm-js-cwe200-info-disclosure.yaml +96 -0
  463. package/rules/quarantined/cwe-200/zm-k8s-cwe200-service-account.yaml +84 -0
  464. package/rules/quarantined/cwe-200/zm-k8s-cwe200-verbosity-high.yaml +81 -0
  465. package/rules/quarantined/cwe-200/zm-py-django-cwe200-cwe798-cwe352-01.yaml +81 -0
  466. package/rules/quarantined/cwe-200/zm-py-flask-cwe200-cwe326-01.yaml +58 -0
  467. package/rules/quarantined/cwe-200/zm-tf-cwe200-ecr-public.yaml +19 -0
  468. package/rules/quarantined/cwe-200/zm-tf-cwe200-s3-bucket-public.yaml +101 -0
  469. package/rules/quarantined/cwe-532/cl-532-all-158.yaml +46 -0
  470. package/rules/quarantined/cwe-532/cl-532-all-159.yaml +45 -0
  471. package/rules/quarantined/cwe-532/cl-532-all-160.yaml +45 -0
  472. package/rules/quarantined/cwe-862/cl-862-go-150.yaml +44 -0
  473. package/rules/quarantined/cwe-862/cl-862-go-151.yaml +43 -0
  474. package/rules/quarantined/cwe-862/cl-862-java-141.yaml +44 -0
  475. package/rules/quarantined/cwe-862/cl-862-java-142.yaml +44 -0
  476. package/rules/quarantined/cwe-862/cl-862-java-143.yaml +43 -0
  477. package/rules/quarantined/cwe-862/cl-862-javascript-144.yaml +44 -0
  478. package/rules/quarantined/cwe-862/cl-862-javascript-145.yaml +44 -0
  479. package/rules/quarantined/cwe-862/cl-862-javascript-146.yaml +44 -0
  480. package/rules/quarantined/cwe-862/cl-862-php-152.yaml +44 -0
  481. package/rules/quarantined/cwe-862/cl-862-python-148.yaml +44 -0
  482. package/rules/quarantined/cwe-862/cl-862-python-149.yaml +43 -0
  483. package/rules/quarantined/cwe-862/cwe-862-missing-authorization.yaml +41 -0
  484. package/rules/quarantined/cwe-862/zm-java-cwe862-authz-depth.yaml +128 -0
  485. package/rules/quarantined/high-fp/cwe-22/zm-js-cwe22-path-traversal-fs.yaml +114 -0
  486. package/rules/quarantined/high-fp/cwe-22/zm-js-cwe22-pathtraversal.yaml +112 -0
  487. package/rules/quarantined/high-fp/cwe-287/zm-js-cwe287-aws-lambda-config.yaml +105 -0
  488. package/rules/quarantined/high-fp/cwe-501/zm-js-cwe501-graphql-injection.yaml +53 -0
  489. package/rules/quarantined/high-fp/cwe-502/zm-js-cwe502-deserialization-extended.yaml +98 -0
  490. package/rules/quarantined/high-fp/cwe-798/zm-ansible-cwe798-hardcoded-creds.yaml +94 -0
  491. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-go-207.yaml +50 -0
  492. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-194.yaml +50 -0
  493. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-195.yaml +50 -0
  494. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-196.yaml +50 -0
  495. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-197.yaml +50 -0
  496. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-java-198.yaml +50 -0
  497. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-199.yaml +50 -0
  498. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-200.yaml +50 -0
  499. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-201.yaml +50 -0
  500. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-202.yaml +50 -0
  501. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-javascript-203.yaml +50 -0
  502. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-php-208.yaml +50 -0
  503. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-php-209.yaml +50 -0
  504. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-python-204.yaml +50 -0
  505. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-python-205.yaml +50 -0
  506. package/rules/quarantined/nvd-generated/cwe-1336/cl-1336-python-206.yaml +50 -0
  507. package/rules/quarantined/nvd-generated/cwe-22/cl-22-go-074.yaml +50 -0
  508. package/rules/quarantined/nvd-generated/cwe-22/cl-22-go-075.yaml +50 -0
  509. package/rules/quarantined/nvd-generated/cwe-22/cl-22-go-076.yaml +50 -0
  510. package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-060.yaml +50 -0
  511. package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-061.yaml +50 -0
  512. package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-062.yaml +50 -0
  513. package/rules/quarantined/nvd-generated/cwe-22/cl-22-java-063.yaml +50 -0
  514. package/rules/quarantined/nvd-generated/cwe-22/cl-22-javascript-067.yaml +50 -0
  515. package/rules/quarantined/nvd-generated/cwe-22/cl-22-javascript-068.yaml +50 -0
  516. package/rules/quarantined/nvd-generated/cwe-22/cl-22-javascript-069.yaml +50 -0
  517. package/rules/quarantined/nvd-generated/cwe-22/cl-22-php-064.yaml +50 -0
  518. package/rules/quarantined/nvd-generated/cwe-22/cl-22-php-065.yaml +50 -0
  519. package/rules/quarantined/nvd-generated/cwe-22/cl-22-php-066.yaml +51 -0
  520. package/rules/quarantined/nvd-generated/cwe-22/cl-22-python-071.yaml +50 -0
  521. package/rules/quarantined/nvd-generated/cwe-22/cl-22-python-072.yaml +50 -0
  522. package/rules/quarantined/nvd-generated/cwe-22/cl-22-python-073.yaml +50 -0
  523. package/rules/quarantined/nvd-generated/cwe-287/cl-287-go-187.yaml +50 -0
  524. package/rules/quarantined/nvd-generated/cwe-287/cl-287-go-188.yaml +50 -0
  525. package/rules/quarantined/nvd-generated/cwe-287/cl-287-java-180.yaml +50 -0
  526. package/rules/quarantined/nvd-generated/cwe-287/cl-287-java-181.yaml +50 -0
  527. package/rules/quarantined/nvd-generated/cwe-287/cl-287-java-182.yaml +50 -0
  528. package/rules/quarantined/nvd-generated/cwe-287/cl-287-javascript-183.yaml +50 -0
  529. package/rules/quarantined/nvd-generated/cwe-287/cl-287-javascript-184.yaml +50 -0
  530. package/rules/quarantined/nvd-generated/cwe-287/cl-287-python-185.yaml +51 -0
  531. package/rules/quarantined/nvd-generated/cwe-287/cl-287-python-186.yaml +50 -0
  532. package/rules/quarantined/nvd-generated/cwe-327/cl-327-go-169.yaml +50 -0
  533. package/rules/quarantined/nvd-generated/cwe-327/cl-327-go-170.yaml +50 -0
  534. package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-161.yaml +50 -0
  535. package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-162.yaml +50 -0
  536. package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-163.yaml +50 -0
  537. package/rules/quarantined/nvd-generated/cwe-327/cl-327-java-164.yaml +50 -0
  538. package/rules/quarantined/nvd-generated/cwe-327/cl-327-javascript-165.yaml +50 -0
  539. package/rules/quarantined/nvd-generated/cwe-327/cl-327-javascript-166.yaml +50 -0
  540. package/rules/quarantined/nvd-generated/cwe-327/cl-327-php-171.yaml +50 -0
  541. package/rules/quarantined/nvd-generated/cwe-327/cl-327-php-172.yaml +50 -0
  542. package/rules/quarantined/nvd-generated/cwe-327/cl-327-python-167.yaml +50 -0
  543. package/rules/quarantined/nvd-generated/cwe-327/cl-327-python-168.yaml +50 -0
  544. package/rules/quarantined/nvd-generated/cwe-346/cl-346-all-213.yaml +50 -0
  545. package/rules/quarantined/nvd-generated/cwe-346/cl-346-all-214.yaml +50 -0
  546. package/rules/quarantined/nvd-generated/cwe-346/cl-346-all-215.yaml +50 -0
  547. package/rules/quarantined/nvd-generated/cwe-352/cl-352-java-153.yaml +50 -0
  548. package/rules/quarantined/nvd-generated/cwe-352/cl-352-java-154.yaml +50 -0
  549. package/rules/quarantined/nvd-generated/cwe-352/cl-352-javascript-156.yaml +51 -0
  550. package/rules/quarantined/nvd-generated/cwe-352/cl-352-php-155.yaml +51 -0
  551. package/rules/quarantined/nvd-generated/cwe-352/cl-352-python-157.yaml +50 -0
  552. package/rules/quarantined/nvd-generated/cwe-434/cl-434-go-140.yaml +50 -0
  553. package/rules/quarantined/nvd-generated/cwe-434/cl-434-java-130.yaml +50 -0
  554. package/rules/quarantined/nvd-generated/cwe-434/cl-434-java-131.yaml +50 -0
  555. package/rules/quarantined/nvd-generated/cwe-434/cl-434-java-132.yaml +50 -0
  556. package/rules/quarantined/nvd-generated/cwe-434/cl-434-javascript-138.yaml +50 -0
  557. package/rules/quarantined/nvd-generated/cwe-434/cl-434-javascript-139.yaml +50 -0
  558. package/rules/quarantined/nvd-generated/cwe-434/cl-434-php-133.yaml +50 -0
  559. package/rules/quarantined/nvd-generated/cwe-434/cl-434-php-134.yaml +51 -0
  560. package/rules/quarantined/nvd-generated/cwe-434/cl-434-php-135.yaml +50 -0
  561. package/rules/quarantined/nvd-generated/cwe-434/cl-434-python-136.yaml +50 -0
  562. package/rules/quarantined/nvd-generated/cwe-434/cl-434-python-137.yaml +50 -0
  563. package/rules/quarantined/nvd-generated/cwe-501/cl-501-all-239.yaml +50 -0
  564. package/rules/quarantined/nvd-generated/cwe-501/cl-501-all-240.yaml +50 -0
  565. package/rules/quarantined/nvd-generated/cwe-501/cl-501-all-241.yaml +50 -0
  566. package/rules/quarantined/nvd-generated/cwe-502/cl-502-go-109.yaml +51 -0
  567. package/rules/quarantined/nvd-generated/cwe-502/cl-502-go-110.yaml +51 -0
  568. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-092.yaml +50 -0
  569. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-093.yaml +50 -0
  570. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-094.yaml +50 -0
  571. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-095.yaml +50 -0
  572. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-096.yaml +50 -0
  573. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-097.yaml +50 -0
  574. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-098.yaml +50 -0
  575. package/rules/quarantined/nvd-generated/cwe-502/cl-502-java-099.yaml +50 -0
  576. package/rules/quarantined/nvd-generated/cwe-502/cl-502-javascript-106.yaml +50 -0
  577. package/rules/quarantined/nvd-generated/cwe-502/cl-502-javascript-107.yaml +50 -0
  578. package/rules/quarantined/nvd-generated/cwe-502/cl-502-javascript-108.yaml +50 -0
  579. package/rules/quarantined/nvd-generated/cwe-502/cl-502-php-100.yaml +50 -0
  580. package/rules/quarantined/nvd-generated/cwe-502/cl-502-php-101.yaml +50 -0
  581. package/rules/quarantined/nvd-generated/cwe-502/cl-502-php-102.yaml +51 -0
  582. package/rules/quarantined/nvd-generated/cwe-502/cl-502-python-103.yaml +50 -0
  583. package/rules/quarantined/nvd-generated/cwe-502/cl-502-python-104.yaml +50 -0
  584. package/rules/quarantined/nvd-generated/cwe-502/cl-502-python-105.yaml +50 -0
  585. package/rules/quarantined/nvd-generated/cwe-601/cl-601-go-178.yaml +50 -0
  586. package/rules/quarantined/nvd-generated/cwe-601/cl-601-java-173.yaml +50 -0
  587. package/rules/quarantined/nvd-generated/cwe-601/cl-601-javascript-174.yaml +50 -0
  588. package/rules/quarantined/nvd-generated/cwe-601/cl-601-javascript-175.yaml +50 -0
  589. package/rules/quarantined/nvd-generated/cwe-601/cl-601-php-179.yaml +50 -0
  590. package/rules/quarantined/nvd-generated/cwe-601/cl-601-python-176.yaml +50 -0
  591. package/rules/quarantined/nvd-generated/cwe-601/cl-601-python-177.yaml +50 -0
  592. package/rules/quarantined/nvd-generated/cwe-611/cl-611-go-123.yaml +50 -0
  593. package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-111.yaml +50 -0
  594. package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-112.yaml +50 -0
  595. package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-113.yaml +50 -0
  596. package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-114.yaml +50 -0
  597. package/rules/quarantined/nvd-generated/cwe-611/cl-611-java-115.yaml +50 -0
  598. package/rules/quarantined/nvd-generated/cwe-611/cl-611-javascript-121.yaml +50 -0
  599. package/rules/quarantined/nvd-generated/cwe-611/cl-611-javascript-122.yaml +50 -0
  600. package/rules/quarantined/nvd-generated/cwe-611/cl-611-php-116.yaml +50 -0
  601. package/rules/quarantined/nvd-generated/cwe-611/cl-611-php-117.yaml +50 -0
  602. package/rules/quarantined/nvd-generated/cwe-611/cl-611-python-118.yaml +50 -0
  603. package/rules/quarantined/nvd-generated/cwe-611/cl-611-python-119.yaml +50 -0
  604. package/rules/quarantined/nvd-generated/cwe-611/cl-611-python-120.yaml +50 -0
  605. package/rules/quarantined/nvd-generated/cwe-78/cl-78-go-040.yaml +50 -0
  606. package/rules/quarantined/nvd-generated/cwe-78/cl-78-go-041.yaml +50 -0
  607. package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-026.yaml +50 -0
  608. package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-027.yaml +50 -0
  609. package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-028.yaml +50 -0
  610. package/rules/quarantined/nvd-generated/cwe-78/cl-78-java-029.yaml +50 -0
  611. package/rules/quarantined/nvd-generated/cwe-78/cl-78-javascript-037.yaml +50 -0
  612. package/rules/quarantined/nvd-generated/cwe-78/cl-78-javascript-038.yaml +51 -0
  613. package/rules/quarantined/nvd-generated/cwe-78/cl-78-javascript-039.yaml +50 -0
  614. package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-030.yaml +50 -0
  615. package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-031.yaml +50 -0
  616. package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-032.yaml +50 -0
  617. package/rules/quarantined/nvd-generated/cwe-78/cl-78-php-033.yaml +51 -0
  618. package/rules/quarantined/nvd-generated/cwe-78/cl-78-python-034.yaml +50 -0
  619. package/rules/quarantined/nvd-generated/cwe-78/cl-78-python-035.yaml +50 -0
  620. package/rules/quarantined/nvd-generated/cwe-78/cl-78-python-036.yaml +53 -0
  621. package/rules/quarantined/nvd-generated/cwe-79/cl-79-go-058.yaml +51 -0
  622. package/rules/quarantined/nvd-generated/cwe-79/cl-79-go-059.yaml +51 -0
  623. package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-042.yaml +50 -0
  624. package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-043.yaml +50 -0
  625. package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-044.yaml +51 -0
  626. package/rules/quarantined/nvd-generated/cwe-79/cl-79-java-045.yaml +50 -0
  627. package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-049.yaml +52 -0
  628. package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-050.yaml +52 -0
  629. package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-051.yaml +51 -0
  630. package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-052.yaml +51 -0
  631. package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-053.yaml +51 -0
  632. package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-054.yaml +51 -0
  633. package/rules/quarantined/nvd-generated/cwe-79/cl-79-javascript-055.yaml +51 -0
  634. package/rules/quarantined/nvd-generated/cwe-79/cl-79-php-046.yaml +50 -0
  635. package/rules/quarantined/nvd-generated/cwe-79/cl-79-php-047.yaml +51 -0
  636. package/rules/quarantined/nvd-generated/cwe-79/cl-79-php-048.yaml +51 -0
  637. package/rules/quarantined/nvd-generated/cwe-79/cl-79-python-056.yaml +51 -0
  638. package/rules/quarantined/nvd-generated/cwe-79/cl-79-python-057.yaml +51 -0
  639. package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-124.yaml +52 -0
  640. package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-125.yaml +50 -0
  641. package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-126.yaml +50 -0
  642. package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-127.yaml +50 -0
  643. package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-128.yaml +50 -0
  644. package/rules/quarantined/nvd-generated/cwe-798/cl-798-all-129.yaml +50 -0
  645. package/rules/quarantined/nvd-generated/cwe-89/cl-89-go-023.yaml +50 -0
  646. package/rules/quarantined/nvd-generated/cwe-89/cl-89-go-024.yaml +50 -0
  647. package/rules/quarantined/nvd-generated/cwe-89/cl-89-go-025.yaml +50 -0
  648. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-001.yaml +50 -0
  649. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-002.yaml +50 -0
  650. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-003.yaml +50 -0
  651. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-004.yaml +50 -0
  652. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-005.yaml +50 -0
  653. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-006.yaml +50 -0
  654. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-007.yaml +50 -0
  655. package/rules/quarantined/nvd-generated/cwe-89/cl-89-java-008.yaml +50 -0
  656. package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-018.yaml +50 -0
  657. package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-019.yaml +50 -0
  658. package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-020.yaml +50 -0
  659. package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-021.yaml +50 -0
  660. package/rules/quarantined/nvd-generated/cwe-89/cl-89-javascript-022.yaml +50 -0
  661. package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-009.yaml +51 -0
  662. package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-010.yaml +51 -0
  663. package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-011.yaml +51 -0
  664. package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-012.yaml +51 -0
  665. package/rules/quarantined/nvd-generated/cwe-89/cl-89-php-013.yaml +51 -0
  666. package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-014.yaml +50 -0
  667. package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-015.yaml +50 -0
  668. package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-016.yaml +50 -0
  669. package/rules/quarantined/nvd-generated/cwe-89/cl-89-python-017.yaml +50 -0
  670. package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-216.yaml +50 -0
  671. package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-217.yaml +50 -0
  672. package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-218.yaml +50 -0
  673. package/rules/quarantined/nvd-generated/cwe-915/cl-915-javascript-219.yaml +50 -0
  674. package/rules/quarantined/nvd-generated/cwe-918/cl-918-go-088.yaml +50 -0
  675. package/rules/quarantined/nvd-generated/cwe-918/cl-918-go-089.yaml +50 -0
  676. package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-077.yaml +50 -0
  677. package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-078.yaml +50 -0
  678. package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-079.yaml +50 -0
  679. package/rules/quarantined/nvd-generated/cwe-918/cl-918-java-080.yaml +51 -0
  680. package/rules/quarantined/nvd-generated/cwe-918/cl-918-javascript-081.yaml +50 -0
  681. package/rules/quarantined/nvd-generated/cwe-918/cl-918-javascript-082.yaml +50 -0
  682. package/rules/quarantined/nvd-generated/cwe-918/cl-918-javascript-083.yaml +50 -0
  683. package/rules/quarantined/nvd-generated/cwe-918/cl-918-php-090.yaml +50 -0
  684. package/rules/quarantined/nvd-generated/cwe-918/cl-918-php-091.yaml +50 -0
  685. package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-084.yaml +50 -0
  686. package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-085.yaml +50 -0
  687. package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-086.yaml +50 -0
  688. package/rules/quarantined/nvd-generated/cwe-918/cl-918-python-087.yaml +50 -0
  689. package/rules/quarantined/nvd-generated/cwe-943/cl-943-java-238.yaml +43 -0
  690. package/rules/quarantined/nvd-generated/cwe-943/cl-943-javascript-234.yaml +43 -0
  691. package/rules/quarantined/nvd-generated/cwe-943/cl-943-javascript-235.yaml +43 -0
  692. package/rules/quarantined/nvd-generated/cwe-943/cl-943-javascript-236.yaml +43 -0
  693. package/rules/quarantined/nvd-generated/cwe-943/cl-943-python-237.yaml +43 -0
  694. package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-java-196.yaml +35 -0
  695. package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-java-197.yaml +35 -0
  696. package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-javascript-201.yaml +34 -0
  697. package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-javascript-202.yaml +34 -0
  698. package/rules/taint-upgraded/cwe-1336/zm-taint-1336-1336-javascript-203.yaml +34 -0
  699. package/rules/taint-upgraded/cwe-22/zm-taint-22-22-go-076.yaml +36 -0
  700. package/rules/taint-upgraded/cwe-22/zm-taint-22-22-java-061.yaml +40 -0
  701. package/rules/taint-upgraded/cwe-22/zm-taint-22-22-javascript-068.yaml +38 -0
  702. package/rules/taint-upgraded/cwe-22/zm-taint-22-22-javascript-069.yaml +38 -0
  703. package/rules/taint-upgraded/cwe-22/zm-taint-22-22-python-073.yaml +38 -0
  704. package/rules/taint-upgraded/cwe-287/zm-taint-287-287-go-188.yaml +30 -0
  705. package/rules/taint-upgraded/cwe-287/zm-taint-287-287-javascript-184.yaml +31 -0
  706. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-go-169.yaml +30 -0
  707. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-go-170.yaml +31 -0
  708. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-161.yaml +45 -0
  709. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-162.yaml +45 -0
  710. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-163.yaml +39 -0
  711. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-java-164.yaml +31 -0
  712. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-javascript-165.yaml +34 -0
  713. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-javascript-166.yaml +32 -0
  714. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-php-171.yaml +31 -0
  715. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-php-172.yaml +31 -0
  716. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-python-167.yaml +32 -0
  717. package/rules/taint-upgraded/cwe-327/zm-taint-327-327-python-168.yaml +34 -0
  718. package/rules/taint-upgraded/cwe-434/zm-taint-434-434-java-130.yaml +37 -0
  719. package/rules/taint-upgraded/cwe-434/zm-taint-434-434-java-131.yaml +37 -0
  720. package/rules/taint-upgraded/cwe-434/zm-taint-434-434-javascript-139.yaml +38 -0
  721. package/rules/taint-upgraded/cwe-434/zm-taint-434-434-python-136.yaml +35 -0
  722. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-go-109.yaml +32 -0
  723. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-go-110.yaml +32 -0
  724. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-092.yaml +33 -0
  725. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-093.yaml +33 -0
  726. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-094.yaml +33 -0
  727. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-095.yaml +33 -0
  728. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-097.yaml +33 -0
  729. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-098.yaml +33 -0
  730. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-java-099.yaml +33 -0
  731. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-javascript-107.yaml +33 -0
  732. package/rules/taint-upgraded/cwe-502/zm-taint-502-502-python-105.yaml +40 -0
  733. package/rules/taint-upgraded/cwe-601/zm-taint-601-601-go-178.yaml +34 -0
  734. package/rules/taint-upgraded/cwe-601/zm-taint-601-601-python-177.yaml +35 -0
  735. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-go-123.yaml +31 -0
  736. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-111.yaml +38 -0
  737. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-112.yaml +38 -0
  738. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-113.yaml +38 -0
  739. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-114.yaml +38 -0
  740. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-java-115.yaml +38 -0
  741. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-javascript-121.yaml +32 -0
  742. package/rules/taint-upgraded/cwe-611/zm-taint-611-611-javascript-122.yaml +32 -0
  743. package/rules/taint-upgraded/cwe-78/zm-taint-78-78-go-040.yaml +31 -0
  744. package/rules/taint-upgraded/cwe-78/zm-taint-78-78-go-041.yaml +31 -0
  745. package/rules/taint-upgraded/cwe-78/zm-taint-78-78-java-027.yaml +37 -0
  746. package/rules/taint-upgraded/cwe-78/zm-taint-78-78-java-028.yaml +37 -0
  747. package/rules/taint-upgraded/cwe-78/zm-taint-78-78-java-029.yaml +37 -0
  748. package/rules/taint-upgraded/cwe-78/zm-taint-78-78-python-034.yaml +40 -0
  749. package/rules/taint-upgraded/cwe-79/zm-taint-79-79-javascript-050.yaml +38 -0
  750. package/rules/taint-upgraded/cwe-79/zm-taint-79-79-javascript-054.yaml +38 -0
  751. package/rules/taint-upgraded/cwe-79/zm-taint-79-79-python-056.yaml +37 -0
  752. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-go-023.yaml +33 -0
  753. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-go-024.yaml +33 -0
  754. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-go-025.yaml +33 -0
  755. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-java-001.yaml +41 -0
  756. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-java-006.yaml +41 -0
  757. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-java-008.yaml +41 -0
  758. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-javascript-018.yaml +41 -0
  759. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-javascript-019.yaml +41 -0
  760. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-javascript-022.yaml +41 -0
  761. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-python-014.yaml +41 -0
  762. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-python-015.yaml +41 -0
  763. package/rules/taint-upgraded/cwe-89/zm-taint-89-89-python-017.yaml +41 -0
  764. package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-216.yaml +32 -0
  765. package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-217.yaml +33 -0
  766. package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-218.yaml +32 -0
  767. package/rules/taint-upgraded/cwe-915/zm-taint-915-915-javascript-219.yaml +35 -0
  768. package/rules/taint-upgraded/cwe-918/zm-taint-918-918-java-078.yaml +38 -0
  769. package/rules/taint-upgraded/cwe-918/zm-taint-918-918-java-079.yaml +38 -0
  770. package/rules/taint-upgraded/cwe-918/zm-taint-918-918-python-085.yaml +39 -0
  771. package/rules/taint-upgraded/cwe-943/zm-taint-943-943-java-238.yaml +31 -0
  772. package/rules/taint-upgraded/cwe-943/zm-taint-943-943-javascript-234.yaml +34 -0
  773. package/rules/taint-upgraded/cwe-943/zm-taint-943-943-javascript-235.yaml +34 -0
  774. package/rules/taint-upgraded/cwe-943/zm-taint-943-943-javascript-236.yaml +33 -0
  775. package/rules/taint-upgraded/cwe-943/zm-taint-943-943-python-237.yaml +32 -0
  776. package/rules/unified/cwe-117/zm-go-cwe117-log-injection.yaml +76 -0
  777. package/rules/unified/cwe-117/zm-java-cwe117-log-injection.yaml +84 -0
  778. package/rules/unified/cwe-117/zm-java-cwe117-logforging.yaml +154 -0
  779. package/rules/unified/cwe-117/zm-java-cwe117-smtp-header-injection.yaml +59 -0
  780. package/rules/unified/cwe-121/zm-cpp-cwe121-buffer-overflow.yaml +137 -0
  781. package/rules/unified/cwe-1321/zm-js-cwe1321-prototype-pollution.yaml +62 -0
  782. package/rules/unified/cwe-1336/zm-go-cwe1336-template-injection.yaml +39 -0
  783. package/rules/unified/cwe-1336/zm-taint-1336-1336-java-196.yaml +42 -0
  784. package/rules/unified/cwe-1336/zm-taint-1336-1336-java-197.yaml +42 -0
  785. package/rules/unified/cwe-1336/zm-taint-1336-1336-javascript-201.yaml +41 -0
  786. package/rules/unified/cwe-1336/zm-taint-1336-1336-javascript-202.yaml +41 -0
  787. package/rules/unified/cwe-1336/zm-taint-1336-1336-javascript-203.yaml +41 -0
  788. package/rules/unified/cwe-134/zm-cpp-cwe134-format-string.yaml +106 -0
  789. package/rules/unified/cwe-190/zm-cpp-cwe190-integer-overflow.yaml +93 -0
  790. package/rules/unified/cwe-20/zm-cpp-cwe20-input-validation.yaml +92 -0
  791. package/rules/unified/cwe-20/zm-js-cwe20-websocket-validation.yaml +25 -0
  792. package/rules/unified/cwe-20/zm-rust-cwe20-input-validation.yaml +124 -0
  793. package/rules/unified/cwe-200/zm-js-cwe200-nestjs-env.yaml +22 -0
  794. package/rules/unified/cwe-200/zm-py-cwe200-info-leak-redirect.yaml +77 -0
  795. package/rules/unified/cwe-22/cwe-22-path-traversal.yaml +48 -0
  796. package/rules/unified/cwe-22/zm-cs-cwe22-path-traversal.yaml +92 -0
  797. package/rules/unified/cwe-22/zm-go-cwe22-path-traversal-framework.yaml +48 -0
  798. package/rules/unified/cwe-22/zm-go-cwe22-path-traversal-fs.yaml +118 -0
  799. package/rules/unified/cwe-22/zm-go-cwe22-path-traversal.yaml +104 -0
  800. package/rules/unified/cwe-22/zm-java-cwe22-file-depth.yaml +136 -0
  801. package/rules/unified/cwe-22/zm-java-cwe22-file-unnormalized.yaml +58 -0
  802. package/rules/unified/cwe-22/zm-java-cwe22-path-traversal-spring.yaml +82 -0
  803. package/rules/unified/cwe-22/zm-java-file-cwe22-001.yaml +74 -0
  804. package/rules/unified/cwe-22/zm-js-cwe22-express-path-traversal.yaml +26 -0
  805. package/rules/unified/cwe-22/zm-js-cwe22-fs-path-traversal.yaml +28 -0
  806. package/rules/unified/cwe-22/zm-py-cwe22-flask-sendfile.yaml +45 -0
  807. package/rules/unified/cwe-22/zm-py-cwe22-path-traversal.yaml +87 -0
  808. package/rules/unified/cwe-22/zm-rust-cwe22-path-traversal.yaml +134 -0
  809. package/rules/unified/cwe-22/zm-taint-22-22-go-076.yaml +43 -0
  810. package/rules/unified/cwe-22/zm-taint-22-22-java-061.yaml +47 -0
  811. package/rules/unified/cwe-22/zm-taint-22-22-javascript-068.yaml +45 -0
  812. package/rules/unified/cwe-22/zm-taint-22-22-javascript-069.yaml +45 -0
  813. package/rules/unified/cwe-22/zm-taint-22-22-python-073.yaml +45 -0
  814. package/rules/unified/cwe-250/zm-docker-cwe250-root-user.yaml +51 -0
  815. package/rules/unified/cwe-250/zm-java-cwe250-preauth-missing.yaml +69 -0
  816. package/rules/unified/cwe-250/zm-k8s-cwe250-privileged.yaml +57 -0
  817. package/rules/unified/cwe-265/zm-py-fastapi-cwe265-cwe284-01.yaml +49 -0
  818. package/rules/unified/cwe-269/zm-ansible-cwe269-privilege-escalation.yaml +76 -0
  819. package/rules/unified/cwe-269/zm-java-cwe269-requestdumper-valve.yaml +55 -0
  820. package/rules/unified/cwe-284/zm-java-cwe284-missing-auth-spring.yaml +132 -0
  821. package/rules/unified/cwe-284/zm-java-cwe284-permitall-overauth.yaml +57 -0
  822. package/rules/unified/cwe-284/zm-java-cwe284-tomcat-ajp.yaml +57 -0
  823. package/rules/unified/cwe-284/zm-java-springsec-cwe284-001.yaml +110 -0
  824. package/rules/unified/cwe-284/zm-tf-cwe284-sg-egress-any.yaml +33 -0
  825. package/rules/unified/cwe-284/zm-tf-cwe284-sg-wide-open.yaml +89 -0
  826. package/rules/unified/cwe-287/zm-java-oauth-cwe287-001.yaml +137 -0
  827. package/rules/unified/cwe-287/zm-js-cwe287-jwt-no-algorithms.yaml +26 -0
  828. package/rules/unified/cwe-287/zm-taint-287-287-go-188.yaml +37 -0
  829. package/rules/unified/cwe-287/zm-taint-287-287-javascript-184.yaml +38 -0
  830. package/rules/unified/cwe-295/cwe-295-ssl-bypass.yaml +218 -0
  831. package/rules/unified/cwe-295/cwe-295-ssl-verification-disabled.yaml +65 -0
  832. package/rules/unified/cwe-295/zm-cs-cwe295-cert-validation.yaml +67 -0
  833. package/rules/unified/cwe-295/zm-py-aiohttp-cwe295-cwe770-01.yaml +61 -0
  834. package/rules/unified/cwe-306/cwe-306-missing-authentication.yaml +45 -0
  835. package/rules/unified/cwe-306/zm-java-cwe306-actuator-exposure.yaml +53 -0
  836. package/rules/unified/cwe-306/zm-java-cwe306-cloud-config-server.yaml +56 -0
  837. package/rules/unified/cwe-306/zm-java-cwe306-rabbitmq-no-auth.yaml +58 -0
  838. package/rules/unified/cwe-306/zm-py-cwe306-flask-login.yaml +38 -0
  839. package/rules/unified/cwe-307/zm-go-cwe307-brute-force.yaml +130 -0
  840. package/rules/unified/cwe-307/zm-js-cwe307-brute-force.yaml +137 -0
  841. package/rules/unified/cwe-311/zm-docker-cwe311-secrets-in-build-arg.yaml +65 -0
  842. package/rules/unified/cwe-311/zm-java-cwe311-cookie-flags.yaml +94 -0
  843. package/rules/unified/cwe-311/zm-tf-cwe311-iam-wildcard.yaml +84 -0
  844. package/rules/unified/cwe-312/zm-js-cwe312-localstorage-jwt.yaml +32 -0
  845. package/rules/unified/cwe-319/zm-go-cwe319-grpc-notls.yaml +119 -0
  846. package/rules/unified/cwe-319/zm-tf-cwe319-rds-public-snapshot.yaml +47 -0
  847. package/rules/unified/cwe-319/zm-tf-cwe319-rds-public.yaml +73 -0
  848. package/rules/unified/cwe-326/cwe-326-weak-key-size.yaml +108 -0
  849. package/rules/unified/cwe-326/zm-go-cwe326-hmac-iv-nonce.yaml +73 -0
  850. package/rules/unified/cwe-326/zm-go-cwe326-weak-crypto.yaml +125 -0
  851. package/rules/unified/cwe-327/cwe-327-weak-crypto.yaml +178 -0
  852. package/rules/unified/cwe-327/zm-cpp-cwe327-weak-crypto.yaml +106 -0
  853. package/rules/unified/cwe-327/zm-cs-cwe327-weak-crypto.yaml +89 -0
  854. package/rules/unified/cwe-327/zm-go-cwe327-weak-cipher.yaml +153 -0
  855. package/rules/unified/cwe-327/zm-java-crypto-cwe327-001.yaml +104 -0
  856. package/rules/unified/cwe-327/zm-java-cwe327-ecb-weak-key-iv.yaml +87 -0
  857. package/rules/unified/cwe-327/zm-java-cwe327-weakcrypto.yaml +198 -0
  858. package/rules/unified/cwe-327/zm-js-cwe327-weak-cipher-des.yaml +30 -0
  859. package/rules/unified/cwe-327/zm-js-cwe327-weak-hash-md5.yaml +23 -0
  860. package/rules/unified/cwe-327/zm-php-cwe327-weak-hash.yaml +89 -0
  861. package/rules/unified/cwe-327/zm-py-crypto-cwe327-01.yaml +34 -0
  862. package/rules/unified/cwe-327/zm-py-cwe327-weak-crypto.yaml +104 -0
  863. package/rules/unified/cwe-327/zm-rust-cwe327-weak-crypto.yaml +124 -0
  864. package/rules/unified/cwe-327/zm-taint-327-327-go-169.yaml +37 -0
  865. package/rules/unified/cwe-327/zm-taint-327-327-go-170.yaml +38 -0
  866. package/rules/unified/cwe-327/zm-taint-327-327-java-161.yaml +52 -0
  867. package/rules/unified/cwe-327/zm-taint-327-327-java-162.yaml +52 -0
  868. package/rules/unified/cwe-327/zm-taint-327-327-java-163.yaml +46 -0
  869. package/rules/unified/cwe-327/zm-taint-327-327-java-164.yaml +38 -0
  870. package/rules/unified/cwe-327/zm-taint-327-327-javascript-165.yaml +41 -0
  871. package/rules/unified/cwe-327/zm-taint-327-327-javascript-166.yaml +39 -0
  872. package/rules/unified/cwe-327/zm-taint-327-327-php-171.yaml +38 -0
  873. package/rules/unified/cwe-327/zm-taint-327-327-php-172.yaml +38 -0
  874. package/rules/unified/cwe-327/zm-taint-327-327-python-167.yaml +39 -0
  875. package/rules/unified/cwe-327/zm-taint-327-327-python-168.yaml +41 -0
  876. package/rules/unified/cwe-328/cwe-328-weak-hash.yaml +97 -0
  877. package/rules/unified/cwe-329/cwe-329-cbc-mode.yaml +27 -0
  878. package/rules/unified/cwe-338/zm-go-cwe338-weak-prng.yaml +118 -0
  879. package/rules/unified/cwe-338/zm-java-cwe338-weakrandom.yaml +60 -0
  880. package/rules/unified/cwe-345/zm-js-cwe345-postmessage.yaml +76 -0
  881. package/rules/unified/cwe-345/zm-js-cwe345-websocket-security.yaml +91 -0
  882. package/rules/unified/cwe-347/zm-go-cwe347-jwt.yaml +148 -0
  883. package/rules/unified/cwe-347/zm-java-cwe347-jwt-deep.yaml +83 -0
  884. package/rules/unified/cwe-347/zm-java-cwe347-jwt.yaml +31 -0
  885. package/rules/unified/cwe-347/zm-js-cwe347-jwt-weak.yaml +101 -0
  886. package/rules/unified/cwe-352/cwe-352-csrf.yaml +27 -0
  887. package/rules/unified/cwe-352/zm-cs-cwe352-csrf.yaml +86 -0
  888. package/rules/unified/cwe-352/zm-java-cwe352-csrf-deep.yaml +52 -0
  889. package/rules/unified/cwe-352/zm-java-cwe352-csrf-depth.yaml +122 -0
  890. package/rules/unified/cwe-352/zm-java-cwe352-csrf-disabled.yaml +24 -0
  891. package/rules/unified/cwe-352/zm-js-cwe352-csrf.yaml +56 -0
  892. package/rules/unified/cwe-352/zm-py-cwe352-django-csrf.yaml +74 -0
  893. package/rules/unified/cwe-362/zm-java-cwe362-simpledateformat.yaml +57 -0
  894. package/rules/unified/cwe-377/zm-py-cwe377-race-condition.yaml +58 -0
  895. package/rules/unified/cwe-384/zm-go-cwe384-session-fixation.yaml +129 -0
  896. package/rules/unified/cwe-384/zm-java-cwe384-session-fixation.yaml +88 -0
  897. package/rules/unified/cwe-384/zm-js-cwe384-session-fixation.yaml +133 -0
  898. package/rules/unified/cwe-400/zm-docker-cwe400-resource-limit.yaml +105 -0
  899. package/rules/unified/cwe-400/zm-py-cwe400-multipart-dos.yaml +65 -0
  900. package/rules/unified/cwe-415/zm-cpp-cwe415-double-free.yaml +92 -0
  901. package/rules/unified/cwe-416/zm-cpp-cwe416-use-after-free.yaml +81 -0
  902. package/rules/unified/cwe-416/zm-rust-cwe416-unsafe.yaml +150 -0
  903. package/rules/unified/cwe-434/cwe-434-unrestricted-file-upload.yaml +42 -0
  904. package/rules/unified/cwe-434/zm-php-cwe434-file-upload.yaml +99 -0
  905. package/rules/unified/cwe-434/zm-py-cwe434-django-fileupload.yaml +100 -0
  906. package/rules/unified/cwe-434/zm-taint-434-434-java-130.yaml +44 -0
  907. package/rules/unified/cwe-434/zm-taint-434-434-java-131.yaml +44 -0
  908. package/rules/unified/cwe-434/zm-taint-434-434-javascript-139.yaml +45 -0
  909. package/rules/unified/cwe-434/zm-taint-434-434-python-136.yaml +42 -0
  910. package/rules/unified/cwe-470/zm-java-cwe470-reflection.yaml +79 -0
  911. package/rules/unified/cwe-476/zm-cpp-cwe476-null-dereference.yaml +89 -0
  912. package/rules/unified/cwe-501/zm-java-cwe501-trust-boundary.yaml +125 -0
  913. package/rules/unified/cwe-502/cwe-502-insecure-deserialization.yaml +45 -0
  914. package/rules/unified/cwe-502/zm-cs-cwe502-deserialization.yaml +92 -0
  915. package/rules/unified/cwe-502/zm-go-cwe502-deserialization.yaml +121 -0
  916. package/rules/unified/cwe-502/zm-java-cwe502-deserial-depth.yaml +129 -0
  917. package/rules/unified/cwe-502/zm-java-cwe502-dubbo-deserial.yaml +59 -0
  918. package/rules/unified/cwe-502/zm-java-cwe502-fastjson.yaml +138 -0
  919. package/rules/unified/cwe-502/zm-java-cwe502-gadget.yaml +159 -0
  920. package/rules/unified/cwe-502/zm-java-cwe502-hessian-deep.yaml +68 -0
  921. package/rules/unified/cwe-502/zm-java-cwe502-jackson-defaulttyping.yaml +60 -0
  922. package/rules/unified/cwe-502/zm-java-cwe502-jndi-injection.yaml +92 -0
  923. package/rules/unified/cwe-502/zm-java-cwe502-kryo-deep.yaml +65 -0
  924. package/rules/unified/cwe-502/zm-java-cwe502-log4j-jndi.yaml +67 -0
  925. package/rules/unified/cwe-502/zm-java-cwe502-shiro.yaml +109 -0
  926. package/rules/unified/cwe-502/zm-java-cwe502-snakeyaml-load.yaml +56 -0
  927. package/rules/unified/cwe-502/zm-java-cwe502-xstream-nosecurity.yaml +65 -0
  928. package/rules/unified/cwe-502/zm-java-deserial-cwe502-001.yaml +73 -0
  929. package/rules/unified/cwe-502/zm-java-jndi-cwe502-001.yaml +108 -0
  930. package/rules/unified/cwe-502/zm-java-xstream-cwe502-001.yaml +74 -0
  931. package/rules/unified/cwe-502/zm-js-cwe502-deserialization.yaml +120 -0
  932. package/rules/unified/cwe-502/zm-php-cwe502-unserialize.yaml +94 -0
  933. package/rules/unified/cwe-502/zm-py-cwe502-deser-advanced.yaml +130 -0
  934. package/rules/unified/cwe-502/zm-py-cwe502-pickle.yaml +93 -0
  935. package/rules/unified/cwe-502/zm-py-deser-cwe502-01.yaml +67 -0
  936. package/rules/unified/cwe-502/zm-taint-502-502-go-109.yaml +39 -0
  937. package/rules/unified/cwe-502/zm-taint-502-502-go-110.yaml +39 -0
  938. package/rules/unified/cwe-502/zm-taint-502-502-java-092.yaml +40 -0
  939. package/rules/unified/cwe-502/zm-taint-502-502-java-093.yaml +40 -0
  940. package/rules/unified/cwe-502/zm-taint-502-502-java-094.yaml +40 -0
  941. package/rules/unified/cwe-502/zm-taint-502-502-java-095.yaml +40 -0
  942. package/rules/unified/cwe-502/zm-taint-502-502-java-097.yaml +40 -0
  943. package/rules/unified/cwe-502/zm-taint-502-502-java-098.yaml +40 -0
  944. package/rules/unified/cwe-502/zm-taint-502-502-java-099.yaml +40 -0
  945. package/rules/unified/cwe-502/zm-taint-502-502-javascript-107.yaml +40 -0
  946. package/rules/unified/cwe-502/zm-taint-502-502-python-105.yaml +47 -0
  947. package/rules/unified/cwe-506/zm-js-cwe506-npm-supply-chain.yaml +20 -0
  948. package/rules/unified/cwe-532/zm-java-cwe532-printstack-info-leak.yaml +56 -0
  949. package/rules/unified/cwe-601/cwe-601-url-redirect.yaml +111 -0
  950. package/rules/unified/cwe-601/zm-cs-cwe601-url-redirect.yaml +61 -0
  951. package/rules/unified/cwe-601/zm-go-cwe601-open-redirect.yaml +40 -0
  952. package/rules/unified/cwe-601/zm-java-cwe601-modelandview-redirect.yaml +70 -0
  953. package/rules/unified/cwe-601/zm-js-cwe601-express-redirect.yaml +28 -0
  954. package/rules/unified/cwe-601/zm-js-cwe601-fastify-redirect.yaml +25 -0
  955. package/rules/unified/cwe-601/zm-php-cwe601-open-redirect.yaml +107 -0
  956. package/rules/unified/cwe-601/zm-taint-601-601-go-178.yaml +41 -0
  957. package/rules/unified/cwe-601/zm-taint-601-601-python-177.yaml +42 -0
  958. package/rules/unified/cwe-611/cwe-611-xxe.yaml +71 -0
  959. package/rules/unified/cwe-611/zm-cs-cwe611-xxe.yaml +87 -0
  960. package/rules/unified/cwe-611/zm-java-cwe611-xxe-enhanced.yaml +81 -0
  961. package/rules/unified/cwe-611/zm-java-cwe611-xxe-transformer.yaml +86 -0
  962. package/rules/unified/cwe-611/zm-java-xxe-cwe611-003.yaml +106 -0
  963. package/rules/unified/cwe-611/zm-js-cwe611-xxe.yaml +109 -0
  964. package/rules/unified/cwe-611/zm-py-cwe611-xxe-advanced.yaml +70 -0
  965. package/rules/unified/cwe-611/zm-py-cwe611-xxe.yaml +101 -0
  966. package/rules/unified/cwe-611/zm-taint-611-611-go-123.yaml +38 -0
  967. package/rules/unified/cwe-611/zm-taint-611-611-java-111.yaml +45 -0
  968. package/rules/unified/cwe-611/zm-taint-611-611-java-112.yaml +45 -0
  969. package/rules/unified/cwe-611/zm-taint-611-611-java-113.yaml +45 -0
  970. package/rules/unified/cwe-611/zm-taint-611-611-java-114.yaml +45 -0
  971. package/rules/unified/cwe-611/zm-taint-611-611-java-115.yaml +45 -0
  972. package/rules/unified/cwe-611/zm-taint-611-611-javascript-121.yaml +39 -0
  973. package/rules/unified/cwe-611/zm-taint-611-611-javascript-122.yaml +39 -0
  974. package/rules/unified/cwe-639/zm-java-cwe639-idor.yaml +124 -0
  975. package/rules/unified/cwe-639/zm-js-cwe639-idor.yaml +123 -0
  976. package/rules/unified/cwe-643/zm-java-cwe643-xpath-injection.yaml +56 -0
  977. package/rules/unified/cwe-676/zm-cpp-cwe676-dangerous-function.yaml +86 -0
  978. package/rules/unified/cwe-693/zm-go-cwe693-gin-middleware.yaml +49 -0
  979. package/rules/unified/cwe-693/zm-go-cwe693-security-headers.yaml +133 -0
  980. package/rules/unified/cwe-693/zm-js-cwe693-helmet-missing.yaml +57 -0
  981. package/rules/unified/cwe-732/cwe-732-incorrect-permission.yaml +50 -0
  982. package/rules/unified/cwe-74/zm-java-cwe74-host-header-injection.yaml +64 -0
  983. package/rules/unified/cwe-770/cwe-770-resource-exhaustion.yaml +45 -0
  984. package/rules/unified/cwe-770/zm-go-cwe770-redos.yaml +79 -0
  985. package/rules/unified/cwe-770/zm-js-cwe770-nestjs-validator.yaml +27 -0
  986. package/rules/unified/cwe-78/cwe-78-os-command-injection.yaml +44 -0
  987. package/rules/unified/cwe-78/zm-ansible-cwe78-command-injection.yaml +68 -0
  988. package/rules/unified/cwe-78/zm-cpp-cwe78-command-injection.yaml +86 -0
  989. package/rules/unified/cwe-78/zm-cs-cwe78-command-injection.yaml +94 -0
  990. package/rules/unified/cwe-78/zm-go-cwe78-command-injection.yaml +96 -0
  991. package/rules/unified/cwe-78/zm-go-cwe78-osci-advanced.yaml +39 -0
  992. package/rules/unified/cwe-78/zm-java-rce-cwe78-001.yaml +99 -0
  993. package/rules/unified/cwe-78/zm-js-cwe78-exec.yaml +38 -0
  994. package/rules/unified/cwe-78/zm-js-cwe78-execsync-injection.yaml +26 -0
  995. package/rules/unified/cwe-78/zm-js-cwe78-spawn.yaml +38 -0
  996. package/rules/unified/cwe-78/zm-php-cwe78-cmdinj.yaml +222 -0
  997. package/rules/unified/cwe-78/zm-py-cwe78-command-injection.yaml +122 -0
  998. package/rules/unified/cwe-78/zm-py-cwe78-osci-advanced.yaml +77 -0
  999. package/rules/unified/cwe-78/zm-rust-cwe78-cmdinj.yaml +103 -0
  1000. package/rules/unified/cwe-78/zm-taint-78-78-go-040.yaml +38 -0
  1001. package/rules/unified/cwe-78/zm-taint-78-78-go-041.yaml +38 -0
  1002. package/rules/unified/cwe-78/zm-taint-78-78-java-027.yaml +44 -0
  1003. package/rules/unified/cwe-78/zm-taint-78-78-java-028.yaml +44 -0
  1004. package/rules/unified/cwe-78/zm-taint-78-78-java-029.yaml +44 -0
  1005. package/rules/unified/cwe-78/zm-taint-78-78-python-034.yaml +47 -0
  1006. package/rules/unified/cwe-787/cwe-787-out-of-bounds-write.yaml +38 -0
  1007. package/rules/unified/cwe-79/cwe-79-xss.yaml +52 -0
  1008. package/rules/unified/cwe-79/zm-cs-cwe79-xss.yaml +84 -0
  1009. package/rules/unified/cwe-79/zm-go-cwe79-framework-xss.yaml +134 -0
  1010. package/rules/unified/cwe-79/zm-go-cwe79-mail-injection.yaml +68 -0
  1011. package/rules/unified/cwe-79/zm-go-cwe79-xss.yaml +105 -0
  1012. package/rules/unified/cwe-79/zm-java-cwe79-xss-depth.yaml +99 -0
  1013. package/rules/unified/cwe-79/zm-js-cwe79-angular-bypass.yaml +24 -0
  1014. package/rules/unified/cwe-79/zm-js-cwe79-domxss.yaml +85 -0
  1015. package/rules/unified/cwe-79/zm-js-cwe79-electron-security.yaml +36 -0
  1016. package/rules/unified/cwe-79/zm-js-cwe79-react-dangerously.yaml +23 -0
  1017. package/rules/unified/cwe-79/zm-js-cwe79-react-xss-deep.yaml +35 -0
  1018. package/rules/unified/cwe-79/zm-js-cwe79-react-xss.yaml +19 -0
  1019. package/rules/unified/cwe-79/zm-js-cwe79-vue-vhtml.yaml +25 -0
  1020. package/rules/unified/cwe-79/zm-js-cwe79-xss-ejs.yaml +71 -0
  1021. package/rules/unified/cwe-79/zm-php-cwe79-xss.yaml +222 -0
  1022. package/rules/unified/cwe-79/zm-py-cwe79-django-flask-xss.yaml +97 -0
  1023. package/rules/unified/cwe-79/zm-py-cwe79-host-header-injection.yaml +43 -0
  1024. package/rules/unified/cwe-79/zm-py-cwe79-xss.yaml +124 -0
  1025. package/rules/unified/cwe-79/zm-taint-79-79-javascript-050.yaml +45 -0
  1026. package/rules/unified/cwe-79/zm-taint-79-79-javascript-054.yaml +45 -0
  1027. package/rules/unified/cwe-79/zm-taint-79-79-python-056.yaml +44 -0
  1028. package/rules/unified/cwe-798/zm-cs-cwe798-hardcoded-creds.yaml +107 -0
  1029. package/rules/unified/cwe-798/zm-go-cwe798-hardcoded-creds.yaml +154 -0
  1030. package/rules/unified/cwe-798/zm-py-cwe798-framework-creds.yaml +160 -0
  1031. package/rules/unified/cwe-798/zm-py-cwe798-hardcoded-creds.yaml +87 -0
  1032. package/rules/unified/cwe-798/zm-rust-cwe798-hardcoded-creds.yaml +128 -0
  1033. package/rules/unified/cwe-798/zm-tf-cwe798-hardcoded-creds.yaml +103 -0
  1034. package/rules/unified/cwe-862/zm-js-cwe862-nestjs-skip-auth.yaml +24 -0
  1035. package/rules/unified/cwe-89/cwe-89-sqli.yaml +90 -0
  1036. package/rules/unified/cwe-89/zm-cs-cwe89-sql-injection.yaml +95 -0
  1037. package/rules/unified/cwe-89/zm-go-cwe89-framework-sqli.yaml +154 -0
  1038. package/rules/unified/cwe-89/zm-go-cwe89-gorm-sqli.yaml +105 -0
  1039. package/rules/unified/cwe-89/zm-go-cwe89-sqli.yaml +90 -0
  1040. package/rules/unified/cwe-89/zm-java-cwe89-jpa-query-concat.yaml +56 -0
  1041. package/rules/unified/cwe-89/zm-java-hql-cwe89-001.yaml +73 -0
  1042. package/rules/unified/cwe-89/zm-js-cwe89-koa-sqli.yaml +29 -0
  1043. package/rules/unified/cwe-89/zm-js-cwe89-nestjs-typeorm.yaml +34 -0
  1044. package/rules/unified/cwe-89/zm-js-cwe89-prisma-typeorm.yaml +140 -0
  1045. package/rules/unified/cwe-89/zm-js-cwe89-prisma-unsafe.yaml +24 -0
  1046. package/rules/unified/cwe-89/zm-js-cwe89-sequelize-literal.yaml +26 -0
  1047. package/rules/unified/cwe-89/zm-js-cwe89-sqli.yaml +154 -0
  1048. package/rules/unified/cwe-89/zm-php-cwe89-sqli.yaml +185 -0
  1049. package/rules/unified/cwe-89/zm-py-cwe89-django-sqli.yaml +75 -0
  1050. package/rules/unified/cwe-89/zm-py-cwe89-injection-misc.yaml +94 -0
  1051. package/rules/unified/cwe-89/zm-py-cwe89-sqli.yaml +60 -0
  1052. package/rules/unified/cwe-89/zm-py-sqlalchemy-cwe89-01.yaml +66 -0
  1053. package/rules/unified/cwe-89/zm-rust-cwe89-sqli.yaml +149 -0
  1054. package/rules/unified/cwe-89/zm-taint-89-89-go-023.yaml +40 -0
  1055. package/rules/unified/cwe-89/zm-taint-89-89-go-024.yaml +40 -0
  1056. package/rules/unified/cwe-89/zm-taint-89-89-go-025.yaml +40 -0
  1057. package/rules/unified/cwe-89/zm-taint-89-89-java-001.yaml +48 -0
  1058. package/rules/unified/cwe-89/zm-taint-89-89-java-006.yaml +48 -0
  1059. package/rules/unified/cwe-89/zm-taint-89-89-java-008.yaml +48 -0
  1060. package/rules/unified/cwe-89/zm-taint-89-89-javascript-018.yaml +48 -0
  1061. package/rules/unified/cwe-89/zm-taint-89-89-javascript-019.yaml +48 -0
  1062. package/rules/unified/cwe-89/zm-taint-89-89-javascript-022.yaml +48 -0
  1063. package/rules/unified/cwe-89/zm-taint-89-89-python-014.yaml +48 -0
  1064. package/rules/unified/cwe-89/zm-taint-89-89-python-015.yaml +48 -0
  1065. package/rules/unified/cwe-89/zm-taint-89-89-python-017.yaml +48 -0
  1066. package/rules/unified/cwe-90/zm-java-cwe90-ldap-injection.yaml +54 -0
  1067. package/rules/unified/cwe-915/zm-go-cwe915-reflect-injection.yaml +70 -0
  1068. package/rules/unified/cwe-915/zm-java-cwe915-mass-assignment.yaml +17 -0
  1069. package/rules/unified/cwe-915/zm-js-cwe915-mass-assignment.yaml +112 -0
  1070. package/rules/unified/cwe-915/zm-js-cwe915-prototype-pollution.yaml +31 -0
  1071. package/rules/unified/cwe-915/zm-php-cwe915-mass-assignment.yaml +127 -0
  1072. package/rules/unified/cwe-915/zm-taint-915-915-javascript-216.yaml +39 -0
  1073. package/rules/unified/cwe-915/zm-taint-915-915-javascript-217.yaml +40 -0
  1074. package/rules/unified/cwe-915/zm-taint-915-915-javascript-218.yaml +39 -0
  1075. package/rules/unified/cwe-915/zm-taint-915-915-javascript-219.yaml +42 -0
  1076. package/rules/unified/cwe-917/zm-java-cwe917-expression-injection.yaml +121 -0
  1077. package/rules/unified/cwe-918/cwe-918-ssrf.yaml +46 -0
  1078. package/rules/unified/cwe-918/zm-cs-cwe918-ssrf.yaml +96 -0
  1079. package/rules/unified/cwe-918/zm-go-cwe918-ssrf.yaml +118 -0
  1080. package/rules/unified/cwe-918/zm-java-cwe918-jsoup-ssrf.yaml +56 -0
  1081. package/rules/unified/cwe-918/zm-java-cwe918-okhttp-full.yaml +63 -0
  1082. package/rules/unified/cwe-918/zm-java-cwe918-resttemplate.yaml +68 -0
  1083. package/rules/unified/cwe-918/zm-java-cwe918-rt-getforentity.yaml +49 -0
  1084. package/rules/unified/cwe-918/zm-java-cwe918-ssrf-depth.yaml +104 -0
  1085. package/rules/unified/cwe-918/zm-java-cwe918-ssrf-resttemplate.yaml +78 -0
  1086. package/rules/unified/cwe-918/zm-java-cwe918-url-openconnection.yaml +58 -0
  1087. package/rules/unified/cwe-918/zm-java-cwe918-webclient-ssrf.yaml +60 -0
  1088. package/rules/unified/cwe-918/zm-java-cwe918-webclient.yaml +45 -0
  1089. package/rules/unified/cwe-918/zm-js-cwe918-http-ssrf-concat.yaml +28 -0
  1090. package/rules/unified/cwe-918/zm-js-cwe918-nextjs-ssrf.yaml +46 -0
  1091. package/rules/unified/cwe-918/zm-js-cwe918-ssrf-fetch.yaml +135 -0
  1092. package/rules/unified/cwe-918/zm-js-cwe918-ssrf.yaml +133 -0
  1093. package/rules/unified/cwe-918/zm-php-cwe918-ssrf.yaml +144 -0
  1094. package/rules/unified/cwe-918/zm-py-cwe918-flask-ssrf.yaml +40 -0
  1095. package/rules/unified/cwe-918/zm-py-cwe918-ssrf-advanced.yaml +105 -0
  1096. package/rules/unified/cwe-918/zm-py-cwe918-ssrf.yaml +124 -0
  1097. package/rules/unified/cwe-918/zm-taint-918-918-java-078.yaml +45 -0
  1098. package/rules/unified/cwe-918/zm-taint-918-918-java-079.yaml +45 -0
  1099. package/rules/unified/cwe-918/zm-taint-918-918-python-085.yaml +46 -0
  1100. package/rules/unified/cwe-94/cwe-94-code-injection.yaml +60 -0
  1101. package/rules/unified/cwe-94/zm-java-cwe94-ognl.yaml +67 -0
  1102. package/rules/unified/cwe-94/zm-java-cwe94-spel-injection.yaml +86 -0
  1103. package/rules/unified/cwe-94/zm-java-cwe94-spel.yaml +113 -0
  1104. package/rules/unified/cwe-94/zm-java-cwe94-ssti.yaml +23 -0
  1105. package/rules/unified/cwe-94/zm-java-cwe94-value-spel.yaml +56 -0
  1106. package/rules/unified/cwe-94/zm-java-expression-cwe94-001.yaml +111 -0
  1107. package/rules/unified/cwe-94/zm-js-cwe94-template-injection.yaml +131 -0
  1108. package/rules/unified/cwe-94/zm-php-cwe94-code-injection.yaml +129 -0
  1109. package/rules/unified/cwe-94/zm-py-cwe94-ssti.yaml +88 -0
  1110. package/rules/unified/cwe-942/zm-java-cwe942-cors-wildcard.yaml +63 -0
  1111. package/rules/unified/cwe-942/zm-java-cwe942-cors.yaml +16 -0
  1112. package/rules/unified/cwe-942/zm-js-cwe942-cors.yaml +50 -0
  1113. package/rules/unified/cwe-942/zm-js-cwe942-express-cors.yaml +25 -0
  1114. package/rules/unified/cwe-943/zm-go-cwe943-nosql-injection.yaml +89 -0
  1115. package/rules/unified/cwe-943/zm-js-cwe943-mongoose-nosqli.yaml +29 -0
  1116. package/rules/unified/cwe-943/zm-js-cwe943-nosql-injection.yaml +53 -0
  1117. package/rules/unified/cwe-943/zm-py-cwe943-nosql-injection.yaml +124 -0
  1118. package/rules/unified/cwe-943/zm-taint-943-943-java-238.yaml +38 -0
  1119. package/rules/unified/cwe-943/zm-taint-943-943-javascript-234.yaml +41 -0
  1120. package/rules/unified/cwe-943/zm-taint-943-943-javascript-235.yaml +41 -0
  1121. package/rules/unified/cwe-943/zm-taint-943-943-javascript-236.yaml +40 -0
  1122. package/rules/unified/cwe-943/zm-taint-943-943-python-237.yaml +39 -0
  1123. package/rules/unified/cwe-95/zm-js-cwe95-eval.yaml +60 -0
  1124. package/rules/unified/cwe-95/zm-js-cwe95-function-ctor.yaml +32 -0
  1125. package/rules/unified/cwe-98/zm-php-cwe98-file-include.yaml +142 -0
  1126. package/rules/unified/cwe-unknown/zm-docker-security.yaml +105 -0
  1127. package/rules/unified/cwe-unknown/zm-go-cwe-unknown-misc.yaml +152 -0
  1128. package/rules/unified/cwe-unknown/zm-k8s-security.yaml +80 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhuma4/cli",
3
- "version": "4.0.0-alpha.1",
3
+ "version": "4.3.0",
4
4
  "description": "逐码 CLI — 命令行代码安全审计工具 (SAST + SCA)",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -21,7 +21,7 @@
21
21
  "prepublishOnly": "node scripts/copy-rules.mjs"
22
22
  },
23
23
  "dependencies": {
24
- "@zhuma4/sdk": "^4.0.0-alpha.1",
24
+ "@zhuma4/sdk": "4.3.0",
25
25
  "commander": "^13.0.0",
26
26
  "chalk": "^5.4.0",
27
27
  "ora": "^8.2.0"
@@ -33,7 +33,14 @@
33
33
  "type": "git",
34
34
  "url": "https://github.com/zeracker/zhuma-v4"
35
35
  },
36
- "keywords": ["sast", "security", "code-analysis", "semgrep", "sca", "supply-chain"],
36
+ "keywords": [
37
+ "sast",
38
+ "security",
39
+ "code-analysis",
40
+ "semgrep",
41
+ "sca",
42
+ "supply-chain"
43
+ ],
37
44
  "license": "Apache-2.0",
38
45
  "engines": {
39
46
  "node": ">=18.0.0"
@@ -0,0 +1,38 @@
1
+ rules:
2
+ - id: zm-go-template-injection-001
3
+ severity: ERROR
4
+ message: >-
5
+ 使用text/template处理HTML内容。text/template不做HTML转义,用户输入直接注入HTML造成XSS。
6
+ 必须用html/template替代。CVE-2019-11888。
7
+ 修复:import "text/template" → import "html/template"。
8
+ languages:
9
+ - go
10
+ patterns:
11
+ - pattern-either:
12
+ - pattern: $T.Execute($W, $DATA)
13
+ - pattern: $T.ExecuteTemplate($W, $NAME, $DATA)
14
+ metadata:
15
+ cwe: "CWE-1336"
16
+ confidence: MEDIUM
17
+ likelihood: HIGH
18
+ impact: CRITICAL
19
+ owasp: "A03:2021"
20
+ cve: "CVE-2019-11888"
21
+ category: template-injection
22
+ - id: zm-go-template-injection-002
23
+ severity: ERROR
24
+ message: >-
25
+ 文件同时导入text/template和net/http。Web应用可能用text/template处理HTTP响应存在XSS。
26
+ 修复:改用html/template。
27
+ languages:
28
+ - go
29
+ patterns:
30
+ - pattern-regex: '"text/template"'
31
+ metadata:
32
+ cwe: "CWE-1336"
33
+ confidence: LOW
34
+ likelihood: MEDIUM
35
+ impact: CRITICAL
36
+ owasp: "A03:2021"
37
+ cve: "CVE-2019-11888"
38
+ category: template-injection
@@ -0,0 +1,40 @@
1
+ rules:
2
+ - id: zm-go-grpc-meta-001
3
+ severity: ERROR
4
+ message: >-
5
+ gRPC metadata明文传输"authorization"/"token"/"api-key"等认证凭据。
6
+ 若不使用TLS则以明文在HTTP/2帧中发送,可被网络嗅探获取。
7
+ 修复:使用TLS加密gRPC连接(credentials.NewClientTLSFromCert),
8
+ 或使用应用层加密传输敏感元数据。
9
+ languages:
10
+ - go
11
+ patterns:
12
+ - pattern-either:
13
+ - pattern: $X.New($Y, "$Z")
14
+ metadata:
15
+ cwe: "CWE-200"
16
+ confidence: HIGH
17
+ likelihood: MEDIUM
18
+ impact: HIGH
19
+ owasp: "A04:2021"
20
+ category: grpc-security
21
+ cve: "CVE-2022-31081"
22
+ - id: zm-go-grpc-meta-002
23
+ severity: WARNING
24
+ message: >-
25
+ gRPC metadata Append/Set方法设置敏感键名("authorization"/"token"等)。
26
+ 若gRPC连接未加密,这些元数据将以明文传输。
27
+ 修复:确保gRPC使用TLS,或用protobuf消息体传输敏感数据。
28
+ languages:
29
+ - go
30
+ patterns:
31
+ - pattern-either:
32
+ - pattern: $X.Append("$Z", $VAL)
33
+ - pattern: $X.Set("$Z", $VAL)
34
+ metadata:
35
+ cwe: "CWE-200"
36
+ confidence: MEDIUM
37
+ likelihood: MEDIUM
38
+ impact: HIGH
39
+ owasp: "A04:2021"
40
+ category: grpc-security
@@ -0,0 +1,118 @@
1
+ # CWE-319: Go gRPC 明文传输(无TLS)
2
+ # 逐码 ZhuMa V4.1 — Go 通用规则库
3
+ # 检测: gRPC Server 未配置TLS / gRPC Client使用 insecure 拨号
4
+
5
+ rules:
6
+
7
+ # ZM-GO-GRPC-001: gRPC Server 未启用TLS
8
+ - id: zm-go-grpc-tls-001
9
+ severity: ERROR
10
+ message: |
11
+ 检测到 gRPC Server 未配置 TLS 传输层加密,所有通信数据将以明文
12
+ 在网络上传输。攻击者可通过中间人攻击(MITM)窃听或篡改 RPC 调用,
13
+ 包括认证令牌、业务数据和敏感参数。
14
+
15
+ CVE参考:
16
+ - CVE-2022-31081: gRPC Go 明文通信可被中间人攻击利用
17
+ - 违反 NIST SP 800-52 Rev.2 TLS 传输层加密要求
18
+
19
+ 修复方案:
20
+ 1. 使用 grpc.Creds(credentials.NewServerTLSFromFile(certFile, keyFile))
21
+ 2. 生产环境使用来自 Let's Encrypt 或企业 CA 的有效证书
22
+ 3. 开发环境可使用 insecure.NewCredentials() + 网络隔离,但禁止用于生产
23
+ 4. 配置 TLS 1.2+ 并禁用弱密码套件
24
+ 5. 服务间通信使用 mTLS 双向认证
25
+ languages:
26
+ - go
27
+ pattern-either:
28
+ - pattern: |
29
+ grpc.NewServer()
30
+ - pattern: |
31
+ grpc.NewServer(grpc.Creds(insecure.NewCredentials()))
32
+ metadata:
33
+ cwe: "CWE-319: Cleartext Transmission of Sensitive Information"
34
+ severity: ERROR
35
+ precision: high
36
+ category: grpc-security
37
+ likelihood: HIGH
38
+ impact: HIGH
39
+ cve: "CVE-2022-31081"
40
+ owasp: "A02:2021 - Cryptographic Failures"
41
+ references:
42
+ - "https://grpc.io/docs/guides/auth/"
43
+ - "https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-52r2.pdf"
44
+
45
+ # ZM-GO-GRPC-002: gRPC Client 使用 insecure 连接
46
+ - id: zm-go-grpc-tls-002
47
+ severity: ERROR
48
+ message: |
49
+ 检测到 gRPC Client 使用 grpc.WithInsecure()(已弃用)或
50
+ insecure.NewCredentials() 建立明文连接。攻击者可通过中间人攻击
51
+ 拦截和篡改 gRPC 请求/响应,窃取认证令牌或注入恶意数据。
52
+
53
+ CVE参考:
54
+ - CVE-2019-9512/CVE-2019-9514/CVE-2019-9515: HTTP/2 DoS 漏洞,
55
+ 使用明文 gRPC 时加剧影响
56
+ - gRPC-Go v1.43.0 起 WithInsecure() 已标记为弃用
57
+
58
+ 修复方案:
59
+ 1. 使用 grpc.WithTransportCredentials(credentials.NewClientTLSFromCert(...))
60
+ 2. 使用 grpc.WithCredentialsBundle 配置完整TLS
61
+ 3. 至少使用系统根CA: credentials.NewClientTLSFromCert(nil, "")
62
+ 4. 禁止在生产代码中使用 insecure 包
63
+ languages:
64
+ - go
65
+ pattern-either:
66
+ - pattern: grpc.WithInsecure()
67
+ - pattern: grpc.Dial($ADDR, grpc.WithInsecure(), ...)
68
+ - pattern: grpc.DialContext($CTX, $ADDR, grpc.WithInsecure(), ...)
69
+ - pattern: grpc.Dial($ADDR, grpc.WithTransportCredentials(insecure.NewCredentials()))
70
+ - pattern: grpc.NewClient($ADDR, grpc.WithTransportCredentials(insecure.NewCredentials()))
71
+ metadata:
72
+ cwe: "CWE-319: Cleartext Transmission of Sensitive Information"
73
+ severity: ERROR
74
+ precision: high
75
+ category: grpc-security
76
+ likelihood: HIGH
77
+ impact: HIGH
78
+ owasp: "A02:2021 - Cryptographic Failures"
79
+ references:
80
+ - "https://github.com/grpc/grpc-go/issues/5087"
81
+ - "https://grpc.io/docs/guides/auth/"
82
+
83
+ # ZM-GO-GRPC-003: gRPC Service 无认证拦截器
84
+ - id: zm-go-grpc-auth-001
85
+ severity: ERROR
86
+ message: |
87
+ 检测到 gRPC Server 注册了Service但未配置认证拦截器(UnaryInterceptor
88
+ 或 StreamInterceptor)。缺少认证机制意味着任何可网络访问该服务的
89
+ 攻击者都可以调用所有 RPC 方法,执行任意操作。
90
+
91
+ 常见危险场景:
92
+ - 微服务架构中 gRPC 端口未做网络隔离且无认证
93
+ - 暴露在公网或内网中的 gRPC 服务无 JWT/OAuth2 校验
94
+
95
+ 修复方案:
96
+ 1. Unary RPC 认证:
97
+ grpc.UnaryInterceptor(grpc_auth.UnaryServerInterceptor(authFunc))
98
+ 2. Stream RPC 认证:
99
+ grpc.StreamInterceptor(grpc_auth.StreamServerInterceptor(authFunc))
100
+ 3. 使用 grpc-ecosystem/go-grpc-middleware 的 auth 中间件
101
+ 4. 实现 JWT/OAuth2/mTLS Token 校验逻辑
102
+ 5. 结合网络策略限制 gRPC 端口访问来源
103
+ languages:
104
+ - go
105
+ pattern-either:
106
+ - pattern: $SERVER.RegisterService($SD, $IMPL)
107
+ - pattern: $SERVER.RegisterService($SD, $SS)
108
+ metadata:
109
+ cwe: "CWE-306: Missing Authentication for Critical Function"
110
+ severity: ERROR
111
+ precision: medium
112
+ category: grpc-security
113
+ likelihood: HIGH
114
+ impact: CRITICAL
115
+ owasp: "A01:2021 - Broken Access Control"
116
+ references:
117
+ - "https://github.com/grpc-ecosystem/go-grpc-middleware/tree/main/auth"
118
+ - "https://grpc.io/docs/guides/auth/"
@@ -0,0 +1,117 @@
1
+ # CWE-338: Go crypto/rand vs math/rand 误用检测
2
+ # 逐码 ZhuMa V4.1 — Go 通用规则库
3
+ # 检测: 安全场景使用 math/rand 而非 crypto/rand
4
+
5
+ rules:
6
+
7
+ # ZM-GO-RAND-001: 安全场景使用 math/rand
8
+ - id: zm-go-weakrand-001
9
+ severity: ERROR
10
+ message: |
11
+ 检测到在安全场景中使用了 math/rand 而非 crypto/rand。
12
+ math/rand 使用伪随机数生成器(PRNG),基于可预测的种子,不适用于
13
+ 任何密码学安全场景。攻击者可预测生成的"随机"值。
14
+
15
+ 安全场景包括但不限于:
16
+ - 生成 Session ID / CSRF Token / 密码重置 Token
17
+ - 生成 API Key / Access Token / 密钥
18
+ - 生成随机 nonce(加密随机数)
19
+ - 生成验证码 / OTP
20
+ - 随机排序/洗牌用于安全决策
21
+
22
+ math/rand 种子仅 64bit,枚举空间远小于现代密码学要求的 128bit+。
23
+
24
+ CVE参考:
25
+ - CVE-2020-28917: Go Web 应用使用 math/rand 生成会话Token可被预测
26
+ - CVE-2021-29923: Go 标准库 math/rand 种子可预测导致认证绕过
27
+
28
+ 修复方案:
29
+ 1. 替换: import "math/rand" → import "crypto/rand"
30
+ 2. 生成随机字节: rand.Read(b) (crypto/rand)
31
+ 3. 生成随机整数: rand.Int(rand.Reader, max) (crypto/rand)
32
+ 4. 生成随机字符串: 使用 crypto/rand 读取字节后编码为 base64/hex
33
+ b := make([]byte, 32)
34
+ rand.Read(b)
35
+ token := hex.EncodeToString(b)
36
+ 5. 使用 ulid.New() 或 uuid.NewRandom() 等基于 crypto/rand 的高级库
37
+ languages:
38
+ - go
39
+ pattern-either:
40
+ - pattern: rand.Intn($N)
41
+ - pattern: rand.Int63n($N)
42
+ - pattern: rand.Int31n($N)
43
+ - pattern: rand.Int()
44
+ - pattern: rand.Int63()
45
+ - pattern: rand.Int31()
46
+ - pattern: rand.Float64()
47
+ - pattern: rand.Float32()
48
+ - pattern: rand.Read($B)
49
+ - pattern: rand.Perm($N)
50
+ - pattern: rand.Shuffle($N, $FN)
51
+ - pattern: rand.Seed($SEED)
52
+ - pattern: rand.NewSource($SEED)
53
+ metadata:
54
+ cwe: "CWE-338: Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)"
55
+ severity: ERROR
56
+ precision: medium
57
+ category: crypto
58
+ likelihood: HIGH
59
+ impact: CRITICAL
60
+ cve: "CVE-2020-28917"
61
+ owasp: "A02:2021 - Cryptographic Failures"
62
+ references:
63
+ - "https://pkg.go.dev/crypto/rand"
64
+ - "https://pkg.go.dev/math/rand"
65
+ - "https://cwe.mitre.org/data/definitions/338.html"
66
+
67
+ # ZM-GO-RAND-002: math/rand 用于 Token 生成
68
+ - id: zm-go-weakrand-002
69
+ severity: CRITICAL
70
+ message: |
71
+ 检测到使用 math/rand(而非 crypto/rand)配合字符串构建生成
72
+ Token/Session/Key 等安全敏感值。math/rand 的种子空间仅为 2^64,
73
+ 现代硬件可轻松暴力枚举。攻击者可预测所有后续"随机"值。
74
+
75
+ 典型危险模式:
76
+ import "math/rand"
77
+ const charset = "abcdefghijklmnopqrstuvwxyz0123456789"
78
+ func GenerateToken() string {
79
+ b := make([]byte, 32)
80
+ for i := range b {
81
+ b[i] = charset[rand.Intn(len(charset))] // ← 可预测!
82
+ }
83
+ return string(b)
84
+ }
85
+
86
+ CVE参考:
87
+ - CVE-2020-28917: math/rand 产生的Session Token可预测
88
+ - CVE-2019-19886: Go 应用使用弱PRNG导致管理员Token被枚举
89
+
90
+ 修复方案:
91
+ 1. 使用 crypto/rand 生成随机字节:
92
+ b := make([]byte, 32)
93
+ if _, err := rand.Read(b); err != nil { panic(err) }
94
+ return base64.URLEncoding.EncodeToString(b)
95
+ 2. 使用 google/uuid: uuid.Must(uuid.NewRandom())
96
+ 3. 使用 oklog/ulid: ulid.MustNew(ulid.Timestamp(time.Now()), entropy)
97
+ 4. 代码审查:搜索 math/rand 的 import,确认不在安全上下文中使用
98
+ languages:
99
+ - go
100
+ pattern-either:
101
+ - pattern: charset[rand.Intn(len(charset))]
102
+ - pattern: alphabet[rand.Intn(len(alphabet))]
103
+ - pattern: letters[rand.Intn(len(letters))]
104
+ - pattern: digits[rand.Intn(len(digits))]
105
+ - pattern: $CHARSET[rand.Intn(len($CHARSET))]
106
+ metadata:
107
+ cwe: "CWE-338: Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)"
108
+ severity: CRITICAL
109
+ precision: high
110
+ category: crypto
111
+ likelihood: HIGH
112
+ impact: CRITICAL
113
+ cve: "CVE-2020-28917"
114
+ owasp: "A02:2021 - Cryptographic Failures"
115
+ references:
116
+ - "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28917"
117
+ - "https://github.com/golang/go/issues"
@@ -0,0 +1,147 @@
1
+ # CWE-347: Go JWT 安全检测
2
+ # 逐码 ZhuMa V4.1 — Go 通用规则库
3
+ # 检测: JWT alg:none / 弱密钥 / 未验证签名 / 硬编码密钥
4
+
5
+ rules:
6
+
7
+ # ZM-GO-JWT-001: JWT alg=none 未禁用
8
+ - id: zm-go-jwt-alg-none-001
9
+ severity: CRITICAL
10
+ message: |
11
+ 检测到 JWT 解析使用了可能接受 alg=none 签名的配置。
12
+ 若未显式验证签名算法,攻击者可构造 header 中 alg 为 "none"
13
+ 的 JWT Token,伪造任意身份绕过认证。
14
+
15
+ 攻击流程:
16
+ 1. 攻击者构造 JWT: header={"alg":"none","typ":"JWT"}, payload={"sub":"admin"}
17
+ 2. 签名部分置空: signature=""
18
+ 3. 若服务端未禁用 none 算法,接受此Token为有效
19
+ 4. 攻击者以管理员身份访问任意受保护资源
20
+
21
+ CVE参考:
22
+ - CVE-2015-9235: alg=none 导致JWT签名验证被绕过
23
+ - CVE-2018-1000531: JWT库未正确验证算法导致认证绕过
24
+ - CVE-2020-28042: golang-jwt v3 未安全处理算法验证
25
+
26
+ 修复方案:
27
+ 1. 使用 ParseWithClaims 时指定算法:
28
+ jwt.ParseWithClaims(tokenString, &claims, func(token *jwt.Token) (interface{}, error) {
29
+ if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
30
+ return nil, fmt.Errorf("unexpected signing method: %v", token.Header["alg"])
31
+ }
32
+ return []byte(secretKey), nil
33
+ })
34
+ 2. 明确检查 token.Method.Alg() 是否在允许的算法列表中
35
+ 3. 使用 jose2go 等更安全的JWT库(默认禁用 none)
36
+ 4. 绝对禁止允许 alg=none 用于生产环境
37
+ languages:
38
+ - go
39
+ pattern-either:
40
+ - pattern: jwt.Parse($TOKEN, $KEYFUNC)
41
+ - pattern: jwt.ParseWithClaims($TOKEN, $CLAIMS, $KEYFUNC)
42
+ - pattern: jwt.NewParser().Parse($TOKEN, $KEYFUNC)
43
+ - pattern: jwt.NewParser().ParseWithClaims($TOKEN, $CLAIMS, $KEYFUNC)
44
+ metadata:
45
+ cwe: "CWE-347: Improper Verification of Cryptographic Signature"
46
+ severity: CRITICAL
47
+ precision: high
48
+ category: jwt
49
+ likelihood: HIGH
50
+ impact: CRITICAL
51
+ cve: "CVE-2015-9235"
52
+ owasp: "A01:2021 - Broken Access Control"
53
+ references:
54
+ - "https://auth0.com/blog/critical-vulnerabilities-in-json-web-token-libraries/"
55
+ - "https://pkg.go.dev/github.com/golang-jwt/jwt/v5"
56
+
57
+ # ZM-GO-JWT-002: JWT 弱HMAC密钥
58
+ - id: zm-go-jwt-weak-key-001
59
+ severity: CRITICAL
60
+ message: |
61
+ 检测到 JWT HMAC 签名使用了弱密钥(长度 < 256bit 或硬编码字符串)。
62
+ 攻击者可通过暴力破解或字典攻击恢复签名密钥,伪造任意用户的 JWT Token。
63
+
64
+ 密钥强度要求:
65
+ - HS256: 最少 256 bit (32 字节) 随机密钥
66
+ - HS384: 最少 384 bit (48 字节)
67
+ - HS512: 最少 512 bit (64 字节)
68
+ - 禁止使用简短字符串如 "secret", "password123", "key" 等
69
+
70
+ CVE参考:
71
+ - CVE-2016-10555: RS/HS256 JWT 密钥混淆可导致算法降级攻击
72
+ - CVE-2018-0114: 弱JWT密钥导致认证绕过
73
+ - CVE-2022-39236: golang-jwt 弱密钥验证不足
74
+
75
+ 修复方案:
76
+ 1. 使用 crypto/rand 生成至少 256bit 随机密钥:
77
+ key := make([]byte, 32)
78
+ rand.Read(key)
79
+ 2. 使用 RS256 (RSA) 或 ES256 (ECDSA) 替代 HMAC(可保护私钥)
80
+ 3. 将密钥存储于环境变量或密钥管理服务,禁止硬编码
81
+ 4. 定期轮换 JWT 签名密钥
82
+ 5. 在处理密钥时始终验证 token.Method.Alg()
83
+ languages:
84
+ - go
85
+ pattern-either:
86
+ - pattern: jwt.SigningMethodHS256
87
+ - pattern: jwt.SigningMethodHS384
88
+ - pattern: jwt.SigningMethodHS512
89
+ - pattern: "jwt.SigningMethodRS256"
90
+ metadata:
91
+ cwe: "CWE-347: Improper Verification of Cryptographic Signature"
92
+ severity: CRITICAL
93
+ precision: high
94
+ category: jwt
95
+ likelihood: HIGH
96
+ impact: CRITICAL
97
+ cve: "CVE-2022-39236"
98
+ owasp: "A02:2021 - Cryptographic Failures"
99
+ references:
100
+ - "https://pkg.go.dev/github.com/golang-jwt/jwt/v5"
101
+ - "https://datatracker.ietf.org/doc/html/rfc7518#section-3.2"
102
+
103
+ # ZM-GO-JWT-003: JWT 未验证过期/签发时间
104
+ - id: zm-go-jwt-exp-001
105
+ severity: HIGH
106
+ message: |
107
+ 检测到 JWT token 解析时未检查 exp(过期时间)或 nbf(生效时间)
108
+ 声明。攻击者可能使用已过期的 Token 或未来将生效的 Token 进行
109
+ 未授权访问。
110
+
111
+ JWT 关键时间声明:
112
+ - exp (Expires At): Token 过期时间,超过此时间应拒绝
113
+ - nbf (Not Before): Token 生效时间,早于此时间应拒绝
114
+ - iat (Issued At): Token 签发时间,用于检测异常签发时间
115
+ - jti (JWT ID): 用于防止重放攻击
116
+
117
+ CVE参考:
118
+ - CVE-2021-21309: Redis Labs 未验证 JWT 过期导致会话永不过期
119
+ - CVE-2020-15092: JWT 过期验证缺失导致认证绕过
120
+
121
+ 修复方案:
122
+ 1. 使用 jwt.RegisteredClaims(jwt/v5)而非 jwt.StandardClaims(v4已弃用)
123
+ 2. 使用 ParseWithClaims 自动验证时间声明:
124
+ opts := []jwt.ParserOption{jwt.WithLeeway(30 * time.Second)}
125
+ token, err := jwt.ParseWithClaims(tokenStr, &jwt.RegisteredClaims{},
126
+ keyFunc, opts...)
127
+ 3. 使用 jwt.WithValidMethods() 限制允许的算法
128
+ 4. 实现 Token 黑名单或 jti 重放检测
129
+ 5. 设置合理的过期时间(Access Token: 15-60分钟,Refresh Token: 7-30天)
130
+ languages:
131
+ - go
132
+ pattern-either:
133
+ - pattern: |
134
+ $TOKEN, $ERR := jwt.Parse($TOKENSTR, $KEYFUNC)
135
+ - pattern: |
136
+ $TOKEN, $ERR := jwt.ParseWithClaims($TOKENSTR, &$CLAIMS, $KEYFUNC)
137
+ metadata:
138
+ cwe: "CWE-613: Insufficient Session Expiration"
139
+ severity: HIGH
140
+ precision: high
141
+ category: jwt
142
+ likelihood: HIGH
143
+ impact: HIGH
144
+ owasp: "A01:2021 - Broken Access Control"
145
+ references:
146
+ - "https://pkg.go.dev/github.com/golang-jwt/jwt/v5"
147
+ - "https://datatracker.ietf.org/doc/html/rfc7519#section-4.1.4"
@@ -0,0 +1,48 @@
1
+ rules:
2
+ - id: zm-go-gin-auth-001
3
+ severity: ERROR
4
+ message: >-
5
+ Gin路由组未完整覆盖认证中间件。攻击者可绕过认证访问敏感API。
6
+ 修复:在Group上使用Use()后所有子路由通过Group注册。
7
+ languages: [go]
8
+ patterns:
9
+ - pattern: $R.Use($MIDDLEWARE)
10
+ metadata:
11
+ cwe: "CWE-693"
12
+ confidence: LOW
13
+ likelihood: MEDIUM
14
+ impact: HIGH
15
+ owasp: "A01:2021"
16
+ category: gin-security
17
+ cve: "CVE-2023-24539"
18
+ - id: zm-go-gin-bind-001
19
+ severity: WARNING
20
+ message: >-
21
+ Gin c.ShouldBindJSON绑定结构体但缺少validate标签约束。
22
+ 修复:添加binding标签(required/min/max/url等)。
23
+ languages: [go]
24
+ patterns:
25
+ - pattern: $C.ShouldBindJSON(&$OBJ)
26
+ metadata:
27
+ cwe: "CWE-20"
28
+ confidence: MEDIUM
29
+ likelihood: MEDIUM
30
+ impact: MEDIUM
31
+ owasp: "A03:2021"
32
+ category: gin-security
33
+ - id: zm-go-gin-next-bypass-001
34
+ severity: ERROR
35
+ message: >-
36
+ Gin中间件中使用c.Next()位置不当可能导致认证绕过。
37
+ 修复:确保认证检查在c.Next()调用之前完成。
38
+ languages: [go]
39
+ patterns:
40
+ - pattern: $C.Next()
41
+ metadata:
42
+ cwe: "CWE-693"
43
+ confidence: LOW
44
+ likelihood: MEDIUM
45
+ impact: HIGH
46
+ owasp: "A01:2021"
47
+ category: gin-security
48
+ cve: "CVE-2023-24539"
@@ -0,0 +1,120 @@
1
+ # CWE-693: Go HTTP 安全头缺失检测
2
+ # 逐码 ZhuMa V4.1 — Go 通用规则库
3
+ # 检测: net/http 服务缺失安全响应头 / Gin 框架未配置安全头
4
+
5
+ rules:
6
+
7
+ # ZM-GO-HDR-001: HTTP 响应缺失 Content-Security-Policy
8
+ - id: zm-go-sec-header-001
9
+ severity: WARNING
10
+ message: |
11
+ 检测到 HTTP handler 中未设置 Content-Security-Policy (CSP) 响应头。
12
+ CSP 是防御 XSS、数据注入、Clickjacking 攻击的核心安全头。
13
+ 缺失 CSP 意味着浏览器将执行页面中所有脚本,包括攻击者注入的恶意脚本。
14
+
15
+ CSP 可防御的攻击类型:
16
+ - XSS(跨站脚本攻击)- 限制 script-src
17
+ - 数据注入 - 限制 style-src/img-src/connect-src
18
+ - Clickjacking - frame-ancestors
19
+ - CSS 注入 - style-src
20
+ - 表单劫持 - form-action
21
+
22
+ CVE参考:
23
+ - CVE-2022-22965: 缺失CSP可加剧Spring4Shell等RCE漏洞的XSS利用
24
+ - CVE-2021-23358: 缺失CSP导致通过模板注入的XSS可利用性提升
25
+
26
+ 修复方案:
27
+ 1. 设置严格的CSP:
28
+ w.Header().Set("Content-Security-Policy",
29
+ "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self'")
30
+ 2. 使用 Gin 中间件全局设置安全头
31
+ 3. 使用 securego/gosec 或 secure 库自动添加安全头
32
+ 4. 使用 CSP 报告模式 (report-uri/report-to) 调试策略
33
+ 5. 参考 OWASP CSP Cheat Sheet 配置
34
+ languages:
35
+ - go
36
+ pattern-either:
37
+ - pattern: |
38
+ func $HANDLER(w http.ResponseWriter, r *http.Request) {
39
+ ...
40
+ w.Write($DATA)
41
+ }
42
+ - pattern: |
43
+ func $HANDLER(c *gin.Context) {
44
+ ...
45
+ c.String($CODE, $DATA)
46
+ }
47
+ - pattern: |
48
+ func $HANDLER(c *gin.Context) {
49
+ ...
50
+ c.JSON($CODE, $DATA)
51
+ }
52
+ - pattern: |
53
+ func $HANDLER(c *gin.Context) {
54
+ ...
55
+ c.HTML($CODE, $NAME, $DATA)
56
+ }
57
+ metadata:
58
+ cwe: "CWE-693: Protection Mechanism Failure"
59
+ severity: WARNING
60
+ precision: low
61
+ category: security-headers
62
+ likelihood: HIGH
63
+ impact: MEDIUM
64
+ owasp: "A05:2021 - Security Misconfiguration"
65
+ references:
66
+ - "https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP"
67
+ - "https://cheatsheetseries.owasp.org/cheatsheets/Content_Security_Policy_Cheat_Sheet.html"
68
+
69
+ # ZM-GO-HDR-002: HTTP 响应缺失安全头
70
+ - id: zm-go-sec-header-002
71
+ severity: WARNING
72
+ message: |
73
+ 检测到 HTTP handler 中未设置关键安全响应头。
74
+ 缺少的安全头使应用暴露于多种客户端攻击。
75
+
76
+ 应设置的安全头及防御范围:
77
+ - Strict-Transport-Security (HSTS): 强制HTTPS,防降级攻击和Cookie劫持
78
+ - X-Frame-Options: 防 Clickjacking(点击劫持)
79
+ - X-Content-Type-Options: 防 MIME 类型嗅探攻击
80
+ - Referrer-Policy: 控制 Referer 信息泄露
81
+ - Permissions-Policy: 限制浏览器API访问(摄像头/麦克风/定位等)
82
+
83
+ CVE参考:
84
+ - CVE-2022-42889: 缺失安全头可配合 Text4Shell 漏洞进行JS注入
85
+ - CVE-2021-22926: HSTS缺失导致TLS剥离攻击
86
+
87
+ 修复方案:
88
+ 1. 设置 HSTS:
89
+ w.Header().Set("Strict-Transport-Security", "max-age=31536000; includeSubDomains; preload")
90
+ 2. 设置防嗅探:
91
+ w.Header().Set("X-Content-Type-Options", "nosniff")
92
+ 3. 设置防点击劫持:
93
+ w.Header().Set("X-Frame-Options", "DENY")
94
+ 4. 设置 Referrer-Policy:
95
+ w.Header().Set("Referrer-Policy", "strict-origin-when-cross-origin")
96
+ 5. 使用 Gin 中间件或 net/http middleware 链统一设置
97
+ 6. 创建 SecurityHeadersMiddleware 函数复用
98
+ languages:
99
+ - go
100
+ pattern-either:
101
+ - pattern: |
102
+ func $HANDLER(w http.ResponseWriter, r *http.Request) {
103
+ ...
104
+ }
105
+ - pattern: |
106
+ func $HANDLER(c *gin.Context) {
107
+ ...
108
+ }
109
+ metadata:
110
+ cwe: "CWE-693: Protection Mechanism Failure"
111
+ severity: WARNING
112
+ precision: low
113
+ category: security-headers
114
+ likelihood: HIGH
115
+ impact: MEDIUM
116
+ cve: "CVE-2022-42889"
117
+ owasp: "A05:2021 - Security Misconfiguration"
118
+ references:
119
+ - "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers"
120
+ - "https://owasp.org/www-project-secure-headers/"