@cdxgen/cdxgen 0.0.1 → 13.0.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 (722) hide show
  1. package/README.md +921 -87
  2. package/bin/audit.js +239 -0
  3. package/bin/cdxgen.js +2324 -0
  4. package/bin/convert.js +213 -0
  5. package/bin/evinse.js +353 -0
  6. package/bin/hbom.js +495 -0
  7. package/bin/repl.js +2224 -0
  8. package/bin/sign.js +195 -0
  9. package/bin/tracebom.js +295 -0
  10. package/bin/validate.js +268 -0
  11. package/bin/verify.js +189 -0
  12. package/data/README.md +307 -0
  13. package/data/bom-1.4.schema.json +1605 -0
  14. package/data/bom-1.5.schema.json +3660 -0
  15. package/data/bom-1.6.schema.json +5511 -0
  16. package/data/bom-1.7.schema.json +6700 -0
  17. package/data/cbomosdb-queries.json +68 -0
  18. package/data/component-tags.json +339 -0
  19. package/data/container-knowledge-index.json +125 -0
  20. package/data/cosdb-queries.json +17 -0
  21. package/data/crypto-oid.json +1998 -0
  22. package/data/cryptography-defs.json +3793 -0
  23. package/data/cryptography-defs.schema.json +576 -0
  24. package/data/cyclonedx-2.0-bundled.schema.json +7182 -0
  25. package/data/frameworks-list.json +219 -0
  26. package/data/glibc-stdlib.json +117 -0
  27. package/data/gtfobins-index.json +6296 -0
  28. package/data/helpers/init.gradle +71 -0
  29. package/data/jsf-0.82.schema.json +211 -0
  30. package/data/known-licenses.json +82 -0
  31. package/data/lic-mapping.json +338 -0
  32. package/data/license-aliases.json +6624 -0
  33. package/data/license-db.json +39059 -0
  34. package/data/license-deprecations.json +302 -0
  35. package/data/lolbas-index.json +150 -0
  36. package/data/predictive-audit-allowlist.json +11 -0
  37. package/data/pypi-pkg-aliases.json +1199 -0
  38. package/data/python-stdlib.json +308 -0
  39. package/data/queries-darwin.json +193 -0
  40. package/data/queries-win.json +257 -0
  41. package/data/queries.json +268 -0
  42. package/data/ruby-known-modules.json +281 -0
  43. package/data/rules/ai-agent-governance.yaml +323 -0
  44. package/data/rules/ai-bom.yaml +268 -0
  45. package/data/rules/ai-oversight.yaml +186 -0
  46. package/data/rules/ai-provenance.yaml +92 -0
  47. package/data/rules/asar-archives.yaml +150 -0
  48. package/data/rules/cbom-security.yaml +165 -0
  49. package/data/rules/chrome-extensions.yaml +248 -0
  50. package/data/rules/ci-permissions.yaml +802 -0
  51. package/data/rules/container-risk.yaml +353 -0
  52. package/data/rules/dependency-sources.yaml +236 -0
  53. package/data/rules/golem-go.yaml +229 -0
  54. package/data/rules/hbom-compliance.yaml +325 -0
  55. package/data/rules/hbom-performance.yaml +307 -0
  56. package/data/rules/hbom-security.yaml +248 -0
  57. package/data/rules/host-topology.yaml +165 -0
  58. package/data/rules/mcp-servers.yaml +388 -0
  59. package/data/rules/obom-runtime.yaml +1776 -0
  60. package/data/rules/package-integrity.yaml +364 -0
  61. package/data/rules/rootfs-hardening.yaml +179 -0
  62. package/data/rules/vscode-extensions.yaml +237 -0
  63. package/data/spdx-export.schema.json +6794 -0
  64. package/data/spdx-license-list.json +7449 -0
  65. package/data/spdx-licenses.json +759 -0
  66. package/data/spdx.schema.json +819 -0
  67. package/data/templates/README.md +3 -0
  68. package/data/templates/asvs-4.0.3.cdx.json +2943 -0
  69. package/data/templates/asvs-5.0.cdx.json +3046 -0
  70. package/data/templates/bsimm-v13.cdx.json +1008 -0
  71. package/data/templates/masvs-2.0.0.cdx.json +225 -0
  72. package/data/templates/nist-ssdf-1.1.cdx.json +828 -0
  73. package/data/templates/pcissc-secure-slc-1.1.cdx.json +1027 -0
  74. package/data/templates/scvs-1.0.0.cdx.json +813 -0
  75. package/data/templates/ssaf-DRAFT-2023-11.cdx.json +127 -0
  76. package/data/vendor-alias.json +41967 -0
  77. package/data/wrapdb-releases.json +4227 -0
  78. package/index.cjs +15 -0
  79. package/lib/audit/index.js +2800 -0
  80. package/lib/audit/progress.js +114 -0
  81. package/lib/audit/reporters.js +937 -0
  82. package/lib/audit/scoring.js +560 -0
  83. package/lib/audit/targets.js +798 -0
  84. package/lib/cli/bomAssembly.js +1833 -0
  85. package/lib/cli/cliOptions.js +513 -0
  86. package/lib/cli/index.js +2759 -0
  87. package/lib/cli/jsBom.js +2087 -0
  88. package/lib/cli/jvmBom.js +1858 -0
  89. package/lib/cli/managedBom.js +2083 -0
  90. package/lib/cli/nativeBom.js +2125 -0
  91. package/lib/core/activity.js +1087 -0
  92. package/lib/core/env.js +719 -0
  93. package/lib/core/fs.js +1058 -0
  94. package/lib/core/httpClient.js +730 -0
  95. package/lib/core/logger.js +142 -0
  96. package/lib/core/parallel.js +323 -0
  97. package/lib/core/paths.js +70 -0
  98. package/lib/core/projectConfig.js +122 -0
  99. package/lib/core/propertySanitizer.js +174 -0
  100. package/lib/core/spdx.js +5 -0
  101. package/lib/core/state.js +59 -0
  102. package/lib/core/text.js +207 -0
  103. package/lib/core/ui.js +876 -0
  104. package/lib/core/urls.js +84 -0
  105. package/lib/ecosystems/asarutils.js +1636 -0
  106. package/lib/ecosystems/bunutils.js +402 -0
  107. package/lib/ecosystems/caxa.js +77 -0
  108. package/lib/ecosystems/chromextutils.js +1174 -0
  109. package/lib/ecosystems/cmakeResolver.js +587 -0
  110. package/lib/ecosystems/cppEvidence.js +305 -0
  111. package/lib/ecosystems/denoutils.js +1094 -0
  112. package/lib/ecosystems/dotnetutils.js +132 -0
  113. package/lib/ecosystems/ecosystems.js +2772 -0
  114. package/lib/ecosystems/golem.js +1807 -0
  115. package/lib/ecosystems/gradleutils.js +1048 -0
  116. package/lib/ecosystems/jsEvidence.js +317 -0
  117. package/lib/ecosystems/npmutils.js +586 -0
  118. package/lib/ecosystems/parsers-bazel.js +875 -0
  119. package/lib/ecosystems/parsers-dotnet.js +1430 -0
  120. package/lib/ecosystems/parsers-gleam.js +302 -0
  121. package/lib/ecosystems/parsers-go.js +818 -0
  122. package/lib/ecosystems/parsers-js.js +4222 -0
  123. package/lib/ecosystems/parsers-jvm.js +948 -0
  124. package/lib/ecosystems/parsers-misc.js +3191 -0
  125. package/lib/ecosystems/parsers-python.js +2070 -0
  126. package/lib/ecosystems/parsers-rust.js +1294 -0
  127. package/lib/ecosystems/parsers-zig.js +861 -0
  128. package/lib/ecosystems/pep770.js +341 -0
  129. package/lib/ecosystems/pylockutils.js +427 -0
  130. package/lib/ecosystems/pythonutils.js +1281 -0
  131. package/lib/ecosystems/registryProvenance.js +1003 -0
  132. package/lib/ecosystems/remote/huggingface.js +1343 -0
  133. package/lib/ecosystems/rubyutils.js +1629 -0
  134. package/lib/ecosystems/rusi.js +820 -0
  135. package/lib/ecosystems/sbtutils.js +972 -0
  136. package/lib/ecosystems/tea.js +607 -0
  137. package/lib/ecosystems/utils.js +575 -0
  138. package/lib/ecosystems/zigResolver.js +410 -0
  139. package/lib/evinser/db.js +145 -0
  140. package/lib/evinser/evinser.js +2362 -0
  141. package/lib/evinser/scalasem.js +65 -0
  142. package/lib/evinser/swiftsem.js +767 -0
  143. package/lib/helpers/annotationFormatter.js +84 -0
  144. package/lib/helpers/bomSigner.js +312 -0
  145. package/lib/helpers/exportUtils.js +160 -0
  146. package/lib/helpers/remote/dependency-track.js +117 -0
  147. package/lib/helpers/versutils.js +202 -0
  148. package/lib/helpers/vsixutils.js +1069 -0
  149. package/lib/inventory/agentFormulationParser.js +322 -0
  150. package/lib/inventory/aiCollector.js +2140 -0
  151. package/lib/inventory/aiInventory.js +414 -0
  152. package/lib/inventory/aiModelVariants.js +121 -0
  153. package/lib/inventory/aiOversightCollector.js +661 -0
  154. package/lib/inventory/aiProvenanceCollector.js +822 -0
  155. package/lib/inventory/analyzer.js +6089 -0
  156. package/lib/inventory/analyzerScope.js +807 -0
  157. package/lib/inventory/astWorker.js +20 -0
  158. package/lib/inventory/atomUtils.js +1092 -0
  159. package/lib/inventory/auditCategories.js +192 -0
  160. package/lib/inventory/bomUtils.js +369 -0
  161. package/lib/inventory/cacheCommands.js +182 -0
  162. package/lib/inventory/cacheDir.js +104 -0
  163. package/lib/inventory/cbomutils.js +590 -0
  164. package/lib/inventory/cdxrs.js +434 -0
  165. package/lib/inventory/ciParsers/azurePipelines.js +295 -0
  166. package/lib/inventory/ciParsers/circleCi.js +286 -0
  167. package/lib/inventory/ciParsers/common.js +24 -0
  168. package/lib/inventory/ciParsers/githubActions.js +2434 -0
  169. package/lib/inventory/ciParsers/gitlabCi.js +213 -0
  170. package/lib/inventory/ciParsers/jenkins.js +180 -0
  171. package/lib/inventory/citations.js +234 -0
  172. package/lib/inventory/communityAiConfigParser.js +756 -0
  173. package/lib/inventory/containerRisk.js +204 -0
  174. package/lib/inventory/cryptoAlgorithmFamily.js +258 -0
  175. package/lib/inventory/deps.js +807 -0
  176. package/lib/inventory/depsUtils.js +588 -0
  177. package/lib/inventory/display.js +2128 -0
  178. package/lib/inventory/dosai.js +601 -0
  179. package/lib/inventory/dosaiParsers.js +154 -0
  180. package/lib/inventory/dynamic.js +145 -0
  181. package/lib/inventory/envcontext.js +1789 -0
  182. package/lib/inventory/evidenceUtils.js +774 -0
  183. package/lib/inventory/fetchBatch.js +779 -0
  184. package/lib/inventory/fetchRate.js +255 -0
  185. package/lib/inventory/forgeEnricher.js +300 -0
  186. package/lib/inventory/formulationParsers.js +422 -0
  187. package/lib/inventory/gtfobins.js +339 -0
  188. package/lib/inventory/hbom.js +719 -0
  189. package/lib/inventory/hbomAnalysis.js +310 -0
  190. package/lib/inventory/hbomLoader.js +35 -0
  191. package/lib/inventory/hostTopology.js +835 -0
  192. package/lib/inventory/inventoryStats.js +100 -0
  193. package/lib/inventory/jsonLike.js +121 -0
  194. package/lib/inventory/licenseEnhancer.js +918 -0
  195. package/lib/inventory/lolbas.js +285 -0
  196. package/lib/inventory/mcp.js +253 -0
  197. package/lib/inventory/mcpConfigParser.js +683 -0
  198. package/lib/inventory/mcpDiscovery.js +112 -0
  199. package/lib/inventory/mcpPinning.js +209 -0
  200. package/lib/inventory/osPackageResolver.js +493 -0
  201. package/lib/inventory/osinfo.js +277 -0
  202. package/lib/inventory/osqueryTransform.js +274 -0
  203. package/lib/inventory/plugins.js +466 -0
  204. package/lib/inventory/protobom.js +231 -0
  205. package/lib/inventory/protobomLoader.js +43 -0
  206. package/lib/inventory/provenanceUtils.js +224 -0
  207. package/lib/inventory/purl.js +749 -0
  208. package/lib/inventory/rustFormulationParser.js +339 -0
  209. package/lib/inventory/sbomDocument.js +340 -0
  210. package/lib/inventory/source.js +1488 -0
  211. package/lib/inventory/spdx.js +361 -0
  212. package/lib/inventory/spdxExpression.js +512 -0
  213. package/lib/inventory/spdxUtils.js +107 -0
  214. package/lib/inventory/table.js +263 -0
  215. package/lib/inventory/traceRunner.js +439 -0
  216. package/lib/inventory/unicodeScan.js +147 -0
  217. package/lib/managers/binary.js +3307 -0
  218. package/lib/managers/containerutils.js +125 -0
  219. package/lib/managers/docker.js +2145 -0
  220. package/lib/managers/dockerConnection.js +162 -0
  221. package/lib/managers/oci.js +704 -0
  222. package/lib/managers/piptree.js +267 -0
  223. package/lib/parsers/cmakeCache.js +199 -0
  224. package/lib/parsers/gguf.js +492 -0
  225. package/lib/parsers/gitAiNotes.js +233 -0
  226. package/lib/parsers/gitmodules.js +239 -0
  227. package/lib/parsers/htmlExtract.js +610 -0
  228. package/lib/parsers/huggingfaceManifest.js +551 -0
  229. package/lib/parsers/huggingfaceUtils.js +506 -0
  230. package/lib/parsers/iri.js +618 -0
  231. package/lib/parsers/npmrc.js +99 -0
  232. package/lib/parsers/ollama.js +101 -0
  233. package/lib/parsers/xml.js +841 -0
  234. package/lib/server/openapi.yaml +433 -0
  235. package/lib/server/server.js +616 -0
  236. package/lib/stages/postgen/annotator.js +977 -0
  237. package/lib/stages/postgen/auditBom.js +468 -0
  238. package/lib/stages/postgen/postgen.js +1239 -0
  239. package/lib/stages/postgen/ruleEngine.js +731 -0
  240. package/lib/stages/postgen/sortBom.js +195 -0
  241. package/lib/stages/postgen/spdxConverter.js +796 -0
  242. package/lib/stages/postgen/specVersionCompat.js +703 -0
  243. package/lib/stages/pregen/envAudit.js +388 -0
  244. package/lib/stages/pregen/pregen.js +637 -0
  245. package/lib/third-party/README.md +9 -0
  246. package/lib/third-party/arborist/CHANGELOG.md +1109 -0
  247. package/lib/third-party/arborist/LICENSE.md +20 -0
  248. package/lib/third-party/arborist/README.md +315 -0
  249. package/lib/third-party/arborist/lib/arborist/index.js +258 -0
  250. package/lib/third-party/arborist/lib/arborist/load-actual.js +605 -0
  251. package/lib/third-party/arborist/lib/arborist/load-virtual.js +300 -0
  252. package/lib/third-party/arborist/lib/bin-links.js +120 -0
  253. package/lib/third-party/arborist/lib/calc-dep-flags.js +130 -0
  254. package/lib/third-party/arborist/lib/case-insensitive-map.js +51 -0
  255. package/lib/third-party/arborist/lib/consistent-resolve.js +42 -0
  256. package/lib/third-party/arborist/lib/debug.js +50 -0
  257. package/lib/third-party/arborist/lib/dep-valid.js +190 -0
  258. package/lib/third-party/arborist/lib/edge.js +417 -0
  259. package/lib/third-party/arborist/lib/from-path.js +36 -0
  260. package/lib/third-party/arborist/lib/gather-dep-set.js +43 -0
  261. package/lib/third-party/arborist/lib/index.js +22 -0
  262. package/lib/third-party/arborist/lib/inventory.js +138 -0
  263. package/lib/third-party/arborist/lib/link.js +169 -0
  264. package/lib/third-party/arborist/lib/node.js +1673 -0
  265. package/lib/third-party/arborist/lib/npm-extension.js +45 -0
  266. package/lib/third-party/arborist/lib/override-resolves.js +11 -0
  267. package/lib/third-party/arborist/lib/override-set.js +319 -0
  268. package/lib/third-party/arborist/lib/package-extensions.js +289 -0
  269. package/lib/third-party/arborist/lib/printable.js +210 -0
  270. package/lib/third-party/arborist/lib/proc-log.js +30 -0
  271. package/lib/third-party/arborist/lib/realpath.js +100 -0
  272. package/lib/third-party/arborist/lib/relpath.js +4 -0
  273. package/lib/third-party/arborist/lib/shrinkwrap.js +1291 -0
  274. package/lib/third-party/arborist/lib/spec-from-lock.js +34 -0
  275. package/lib/third-party/arborist/lib/tree-check.js +165 -0
  276. package/lib/third-party/arborist/lib/validate-npm-package-name.js +107 -0
  277. package/lib/third-party/arborist/lib/version-from-tgz.js +51 -0
  278. package/lib/third-party/arborist/lib/yarn-lock.js +397 -0
  279. package/lib/validator/bomValidator.js +985 -0
  280. package/lib/validator/complianceEngine.js +241 -0
  281. package/lib/validator/complianceRules.js +1680 -0
  282. package/lib/validator/generated/runtime.mjs +17 -0
  283. package/lib/validator/generated/validate-1.6.mjs +21258 -0
  284. package/lib/validator/generated/validate-1.7.mjs +24803 -0
  285. package/lib/validator/generated/validate-2.0.mjs +22931 -0
  286. package/lib/validator/index.js +246 -0
  287. package/lib/validator/reporters/annotations.js +142 -0
  288. package/lib/validator/reporters/console.js +160 -0
  289. package/lib/validator/reporters/index.js +41 -0
  290. package/lib/validator/reporters/json.js +37 -0
  291. package/lib/validator/reporters/sarif.js +184 -0
  292. package/package.json +209 -26
  293. package/types/bin/audit.d.ts +3 -0
  294. package/types/bin/audit.d.ts.map +1 -0
  295. package/types/bin/cdxgen.d.ts +3 -0
  296. package/types/bin/cdxgen.d.ts.map +1 -0
  297. package/types/bin/convert.d.ts +3 -0
  298. package/types/bin/convert.d.ts.map +1 -0
  299. package/types/bin/evinse.d.ts +3 -0
  300. package/types/bin/evinse.d.ts.map +1 -0
  301. package/types/bin/hbom.d.ts +3 -0
  302. package/types/bin/hbom.d.ts.map +1 -0
  303. package/types/bin/repl.d.ts +3 -0
  304. package/types/bin/repl.d.ts.map +1 -0
  305. package/types/bin/sign.d.ts +3 -0
  306. package/types/bin/sign.d.ts.map +1 -0
  307. package/types/bin/tracebom.d.ts +3 -0
  308. package/types/bin/tracebom.d.ts.map +1 -0
  309. package/types/bin/validate.d.ts +14 -0
  310. package/types/bin/validate.d.ts.map +1 -0
  311. package/types/bin/verify.d.ts +3 -0
  312. package/types/bin/verify.d.ts.map +1 -0
  313. package/types/lib/audit/index.d.ts +153 -0
  314. package/types/lib/audit/index.d.ts.map +1 -0
  315. package/types/lib/audit/progress.d.ts +31 -0
  316. package/types/lib/audit/progress.d.ts.map +1 -0
  317. package/types/lib/audit/reporters.d.ts +62 -0
  318. package/types/lib/audit/reporters.d.ts.map +1 -0
  319. package/types/lib/audit/scoring.d.ts +36 -0
  320. package/types/lib/audit/scoring.d.ts.map +1 -0
  321. package/types/lib/audit/targets.d.ts +77 -0
  322. package/types/lib/audit/targets.d.ts.map +1 -0
  323. package/types/lib/cli/bomAssembly.d.ts +315 -0
  324. package/types/lib/cli/bomAssembly.d.ts.map +1 -0
  325. package/types/lib/cli/cliOptions.d.ts +156 -0
  326. package/types/lib/cli/cliOptions.d.ts.map +1 -0
  327. package/types/lib/cli/index.d.ts +107 -0
  328. package/types/lib/cli/index.d.ts.map +1 -0
  329. package/types/lib/cli/jsBom.d.ts +94 -0
  330. package/types/lib/cli/jsBom.d.ts.map +1 -0
  331. package/types/lib/cli/jvmBom.d.ts +54 -0
  332. package/types/lib/cli/jvmBom.d.ts.map +1 -0
  333. package/types/lib/cli/managedBom.d.ts +105 -0
  334. package/types/lib/cli/managedBom.d.ts.map +1 -0
  335. package/types/lib/cli/nativeBom.d.ts +143 -0
  336. package/types/lib/cli/nativeBom.d.ts.map +1 -0
  337. package/types/lib/core/activity.d.ts +178 -0
  338. package/types/lib/core/activity.d.ts.map +1 -0
  339. package/types/lib/core/env.d.ts +192 -0
  340. package/types/lib/core/env.d.ts.map +1 -0
  341. package/types/lib/core/fs.d.ts +158 -0
  342. package/types/lib/core/fs.d.ts.map +1 -0
  343. package/types/lib/core/httpClient.d.ts +149 -0
  344. package/types/lib/core/httpClient.d.ts.map +1 -0
  345. package/types/lib/core/logger.d.ts +28 -0
  346. package/types/lib/core/logger.d.ts.map +1 -0
  347. package/types/lib/core/parallel.d.ts +95 -0
  348. package/types/lib/core/parallel.d.ts.map +1 -0
  349. package/types/lib/core/paths.d.ts +36 -0
  350. package/types/lib/core/paths.d.ts.map +1 -0
  351. package/types/lib/core/projectConfig.d.ts +23 -0
  352. package/types/lib/core/projectConfig.d.ts.map +1 -0
  353. package/types/lib/core/propertySanitizer.d.ts +23 -0
  354. package/types/lib/core/propertySanitizer.d.ts.map +1 -0
  355. package/types/lib/core/spdx.d.ts +5 -0
  356. package/types/lib/core/spdx.d.ts.map +1 -0
  357. package/types/lib/core/state.d.ts +20 -0
  358. package/types/lib/core/state.d.ts.map +1 -0
  359. package/types/lib/core/text.d.ts +78 -0
  360. package/types/lib/core/text.d.ts.map +1 -0
  361. package/types/lib/core/ui.d.ts +87 -0
  362. package/types/lib/core/ui.d.ts.map +1 -0
  363. package/types/lib/core/urls.d.ts +43 -0
  364. package/types/lib/core/urls.d.ts.map +1 -0
  365. package/types/lib/ecosystems/asarutils.d.ts +71 -0
  366. package/types/lib/ecosystems/asarutils.d.ts.map +1 -0
  367. package/types/lib/ecosystems/bunutils.d.ts +38 -0
  368. package/types/lib/ecosystems/bunutils.d.ts.map +1 -0
  369. package/types/lib/ecosystems/caxa.d.ts +8 -0
  370. package/types/lib/ecosystems/caxa.d.ts.map +1 -0
  371. package/types/lib/ecosystems/chromextutils.d.ts +97 -0
  372. package/types/lib/ecosystems/chromextutils.d.ts.map +1 -0
  373. package/types/lib/ecosystems/cmakeResolver.d.ts +176 -0
  374. package/types/lib/ecosystems/cmakeResolver.d.ts.map +1 -0
  375. package/types/lib/ecosystems/cppEvidence.d.ts +35 -0
  376. package/types/lib/ecosystems/cppEvidence.d.ts.map +1 -0
  377. package/types/lib/ecosystems/denoutils.d.ts +76 -0
  378. package/types/lib/ecosystems/denoutils.d.ts.map +1 -0
  379. package/types/lib/ecosystems/dotnetutils.d.ts +45 -0
  380. package/types/lib/ecosystems/dotnetutils.d.ts.map +1 -0
  381. package/types/lib/ecosystems/ecosystems.d.ts +279 -0
  382. package/types/lib/ecosystems/ecosystems.d.ts.map +1 -0
  383. package/types/lib/ecosystems/golem.d.ts +60 -0
  384. package/types/lib/ecosystems/golem.d.ts.map +1 -0
  385. package/types/lib/ecosystems/gradleutils.d.ts +139 -0
  386. package/types/lib/ecosystems/gradleutils.d.ts.map +1 -0
  387. package/types/lib/ecosystems/jsEvidence.d.ts +17 -0
  388. package/types/lib/ecosystems/jsEvidence.d.ts.map +1 -0
  389. package/types/lib/ecosystems/npmutils.d.ts +183 -0
  390. package/types/lib/ecosystems/npmutils.d.ts.map +1 -0
  391. package/types/lib/ecosystems/parsers-bazel.d.ts +36 -0
  392. package/types/lib/ecosystems/parsers-bazel.d.ts.map +1 -0
  393. package/types/lib/ecosystems/parsers-dotnet.d.ts +116 -0
  394. package/types/lib/ecosystems/parsers-dotnet.d.ts.map +1 -0
  395. package/types/lib/ecosystems/parsers-gleam.d.ts +33 -0
  396. package/types/lib/ecosystems/parsers-gleam.d.ts.map +1 -0
  397. package/types/lib/ecosystems/parsers-go.d.ts +92 -0
  398. package/types/lib/ecosystems/parsers-go.d.ts.map +1 -0
  399. package/types/lib/ecosystems/parsers-js.d.ts +242 -0
  400. package/types/lib/ecosystems/parsers-js.d.ts.map +1 -0
  401. package/types/lib/ecosystems/parsers-jvm.d.ts +100 -0
  402. package/types/lib/ecosystems/parsers-jvm.d.ts.map +1 -0
  403. package/types/lib/ecosystems/parsers-misc.d.ts +450 -0
  404. package/types/lib/ecosystems/parsers-misc.d.ts.map +1 -0
  405. package/types/lib/ecosystems/parsers-python.d.ts +145 -0
  406. package/types/lib/ecosystems/parsers-python.d.ts.map +1 -0
  407. package/types/lib/ecosystems/parsers-rust.d.ts +56 -0
  408. package/types/lib/ecosystems/parsers-rust.d.ts.map +1 -0
  409. package/types/lib/ecosystems/parsers-zig.d.ts +83 -0
  410. package/types/lib/ecosystems/parsers-zig.d.ts.map +1 -0
  411. package/types/lib/ecosystems/pep770.d.ts +38 -0
  412. package/types/lib/ecosystems/pep770.d.ts.map +1 -0
  413. package/types/lib/ecosystems/pylockutils.d.ts +68 -0
  414. package/types/lib/ecosystems/pylockutils.d.ts.map +1 -0
  415. package/types/lib/ecosystems/pythonutils.d.ts +70 -0
  416. package/types/lib/ecosystems/pythonutils.d.ts.map +1 -0
  417. package/types/lib/ecosystems/registryProvenance.d.ts +26 -0
  418. package/types/lib/ecosystems/registryProvenance.d.ts.map +1 -0
  419. package/types/lib/ecosystems/remote/huggingface.d.ts +31 -0
  420. package/types/lib/ecosystems/remote/huggingface.d.ts.map +1 -0
  421. package/types/lib/ecosystems/rubyutils.d.ts +182 -0
  422. package/types/lib/ecosystems/rubyutils.d.ts.map +1 -0
  423. package/types/lib/ecosystems/rusi.d.ts +40 -0
  424. package/types/lib/ecosystems/rusi.d.ts.map +1 -0
  425. package/types/lib/ecosystems/sbtutils.d.ts +179 -0
  426. package/types/lib/ecosystems/sbtutils.d.ts.map +1 -0
  427. package/types/lib/ecosystems/tea.d.ts +180 -0
  428. package/types/lib/ecosystems/tea.d.ts.map +1 -0
  429. package/types/lib/ecosystems/utils.d.ts +41 -0
  430. package/types/lib/ecosystems/utils.d.ts.map +1 -0
  431. package/types/lib/ecosystems/zigResolver.d.ts +70 -0
  432. package/types/lib/ecosystems/zigResolver.d.ts.map +1 -0
  433. package/types/lib/evinser/db.d.ts +17 -0
  434. package/types/lib/evinser/db.d.ts.map +1 -0
  435. package/types/lib/evinser/evinser.d.ts +354 -0
  436. package/types/lib/evinser/evinser.d.ts.map +1 -0
  437. package/types/lib/evinser/scalasem.d.ts +15 -0
  438. package/types/lib/evinser/scalasem.d.ts.map +1 -0
  439. package/types/lib/evinser/swiftsem.d.ts +103 -0
  440. package/types/lib/evinser/swiftsem.d.ts.map +1 -0
  441. package/types/lib/helpers/annotationFormatter.d.ts +23 -0
  442. package/types/lib/helpers/annotationFormatter.d.ts.map +1 -0
  443. package/types/lib/helpers/bomSigner.d.ts +28 -0
  444. package/types/lib/helpers/bomSigner.d.ts.map +1 -0
  445. package/types/lib/helpers/exportUtils.d.ts +52 -0
  446. package/types/lib/helpers/exportUtils.d.ts.map +1 -0
  447. package/types/lib/helpers/remote/dependency-track.d.ts +23 -0
  448. package/types/lib/helpers/remote/dependency-track.d.ts.map +1 -0
  449. package/types/lib/helpers/versutils.d.ts +8 -0
  450. package/types/lib/helpers/versutils.d.ts.map +1 -0
  451. package/types/lib/helpers/vsixutils.d.ts +130 -0
  452. package/types/lib/helpers/vsixutils.d.ts.map +1 -0
  453. package/types/lib/inventory/agentFormulationParser.d.ts +21 -0
  454. package/types/lib/inventory/agentFormulationParser.d.ts.map +1 -0
  455. package/types/lib/inventory/aiCollector.d.ts +61 -0
  456. package/types/lib/inventory/aiCollector.d.ts.map +1 -0
  457. package/types/lib/inventory/aiInventory.d.ts +103 -0
  458. package/types/lib/inventory/aiInventory.d.ts.map +1 -0
  459. package/types/lib/inventory/aiModelVariants.d.ts +31 -0
  460. package/types/lib/inventory/aiModelVariants.d.ts.map +1 -0
  461. package/types/lib/inventory/aiOversightCollector.d.ts +28 -0
  462. package/types/lib/inventory/aiOversightCollector.d.ts.map +1 -0
  463. package/types/lib/inventory/aiProvenanceCollector.d.ts +13 -0
  464. package/types/lib/inventory/aiProvenanceCollector.d.ts.map +1 -0
  465. package/types/lib/inventory/analyzer.d.ts +157 -0
  466. package/types/lib/inventory/analyzer.d.ts.map +1 -0
  467. package/types/lib/inventory/analyzerScope.d.ts +106 -0
  468. package/types/lib/inventory/analyzerScope.d.ts.map +1 -0
  469. package/types/lib/inventory/astWorker.d.ts +9 -0
  470. package/types/lib/inventory/astWorker.d.ts.map +1 -0
  471. package/types/lib/inventory/atomUtils.d.ts +159 -0
  472. package/types/lib/inventory/atomUtils.d.ts.map +1 -0
  473. package/types/lib/inventory/auditCategories.d.ts +80 -0
  474. package/types/lib/inventory/auditCategories.d.ts.map +1 -0
  475. package/types/lib/inventory/bomUtils.d.ts +145 -0
  476. package/types/lib/inventory/bomUtils.d.ts.map +1 -0
  477. package/types/lib/inventory/cacheCommands.d.ts +28 -0
  478. package/types/lib/inventory/cacheCommands.d.ts.map +1 -0
  479. package/types/lib/inventory/cacheDir.d.ts +55 -0
  480. package/types/lib/inventory/cacheDir.d.ts.map +1 -0
  481. package/types/lib/inventory/cbomutils.d.ts +37 -0
  482. package/types/lib/inventory/cbomutils.d.ts.map +1 -0
  483. package/types/lib/inventory/cdxrs.d.ts +90 -0
  484. package/types/lib/inventory/cdxrs.d.ts.map +1 -0
  485. package/types/lib/inventory/ciParsers/azurePipelines.d.ts +27 -0
  486. package/types/lib/inventory/ciParsers/azurePipelines.d.ts.map +1 -0
  487. package/types/lib/inventory/ciParsers/circleCi.d.ts +27 -0
  488. package/types/lib/inventory/ciParsers/circleCi.d.ts.map +1 -0
  489. package/types/lib/inventory/ciParsers/common.d.ts +11 -0
  490. package/types/lib/inventory/ciParsers/common.d.ts.map +1 -0
  491. package/types/lib/inventory/ciParsers/githubActions.d.ts +38 -0
  492. package/types/lib/inventory/ciParsers/githubActions.d.ts.map +1 -0
  493. package/types/lib/inventory/ciParsers/gitlabCi.d.ts +26 -0
  494. package/types/lib/inventory/ciParsers/gitlabCi.d.ts.map +1 -0
  495. package/types/lib/inventory/ciParsers/jenkins.d.ts +26 -0
  496. package/types/lib/inventory/ciParsers/jenkins.d.ts.map +1 -0
  497. package/types/lib/inventory/citations.d.ts +90 -0
  498. package/types/lib/inventory/citations.d.ts.map +1 -0
  499. package/types/lib/inventory/communityAiConfigParser.d.ts +14 -0
  500. package/types/lib/inventory/communityAiConfigParser.d.ts.map +1 -0
  501. package/types/lib/inventory/containerRisk.d.ts +20 -0
  502. package/types/lib/inventory/containerRisk.d.ts.map +1 -0
  503. package/types/lib/inventory/cryptoAlgorithmFamily.d.ts +37 -0
  504. package/types/lib/inventory/cryptoAlgorithmFamily.d.ts.map +1 -0
  505. package/types/lib/inventory/deps.d.ts +140 -0
  506. package/types/lib/inventory/deps.d.ts.map +1 -0
  507. package/types/lib/inventory/depsUtils.d.ts +74 -0
  508. package/types/lib/inventory/depsUtils.d.ts.map +1 -0
  509. package/types/lib/inventory/display.d.ts +227 -0
  510. package/types/lib/inventory/display.d.ts.map +1 -0
  511. package/types/lib/inventory/dosai.d.ts +130 -0
  512. package/types/lib/inventory/dosai.d.ts.map +1 -0
  513. package/types/lib/inventory/dosaiParsers.d.ts +59 -0
  514. package/types/lib/inventory/dosaiParsers.d.ts.map +1 -0
  515. package/types/lib/inventory/dynamic.d.ts +25 -0
  516. package/types/lib/inventory/dynamic.d.ts.map +1 -0
  517. package/types/lib/inventory/envcontext.d.ts +377 -0
  518. package/types/lib/inventory/envcontext.d.ts.map +1 -0
  519. package/types/lib/inventory/evidenceUtils.d.ts +74 -0
  520. package/types/lib/inventory/evidenceUtils.d.ts.map +1 -0
  521. package/types/lib/inventory/fetchBatch.d.ts +127 -0
  522. package/types/lib/inventory/fetchBatch.d.ts.map +1 -0
  523. package/types/lib/inventory/fetchRate.d.ts +118 -0
  524. package/types/lib/inventory/fetchRate.d.ts.map +1 -0
  525. package/types/lib/inventory/forgeEnricher.d.ts +31 -0
  526. package/types/lib/inventory/forgeEnricher.d.ts.map +1 -0
  527. package/types/lib/inventory/formulationParsers.d.ts +50 -0
  528. package/types/lib/inventory/formulationParsers.d.ts.map +1 -0
  529. package/types/lib/inventory/gtfobins.d.ts +27 -0
  530. package/types/lib/inventory/gtfobins.d.ts.map +1 -0
  531. package/types/lib/inventory/hbom.d.ts +58 -0
  532. package/types/lib/inventory/hbom.d.ts.map +1 -0
  533. package/types/lib/inventory/hbomAnalysis.d.ts +56 -0
  534. package/types/lib/inventory/hbomAnalysis.d.ts.map +1 -0
  535. package/types/lib/inventory/hbomLoader.d.ts +7 -0
  536. package/types/lib/inventory/hbomLoader.d.ts.map +1 -0
  537. package/types/lib/inventory/hostTopology.d.ts +47 -0
  538. package/types/lib/inventory/hostTopology.d.ts.map +1 -0
  539. package/types/lib/inventory/inventoryStats.d.ts +42 -0
  540. package/types/lib/inventory/inventoryStats.d.ts.map +1 -0
  541. package/types/lib/inventory/jsonLike.d.ts +23 -0
  542. package/types/lib/inventory/jsonLike.d.ts.map +1 -0
  543. package/types/lib/inventory/licenseEnhancer.d.ts +70 -0
  544. package/types/lib/inventory/licenseEnhancer.d.ts.map +1 -0
  545. package/types/lib/inventory/lolbas.d.ts +16 -0
  546. package/types/lib/inventory/lolbas.d.ts.map +1 -0
  547. package/types/lib/inventory/mcp.d.ts +29 -0
  548. package/types/lib/inventory/mcp.d.ts.map +1 -0
  549. package/types/lib/inventory/mcpConfigParser.d.ts +20 -0
  550. package/types/lib/inventory/mcpConfigParser.d.ts.map +1 -0
  551. package/types/lib/inventory/mcpDiscovery.d.ts +33 -0
  552. package/types/lib/inventory/mcpDiscovery.d.ts.map +1 -0
  553. package/types/lib/inventory/mcpPinning.d.ts +11 -0
  554. package/types/lib/inventory/mcpPinning.d.ts.map +1 -0
  555. package/types/lib/inventory/osPackageResolver.d.ts +49 -0
  556. package/types/lib/inventory/osPackageResolver.d.ts.map +1 -0
  557. package/types/lib/inventory/osinfo.d.ts +120 -0
  558. package/types/lib/inventory/osinfo.d.ts.map +1 -0
  559. package/types/lib/inventory/osqueryTransform.d.ts +84 -0
  560. package/types/lib/inventory/osqueryTransform.d.ts.map +1 -0
  561. package/types/lib/inventory/plugins.d.ts +58 -0
  562. package/types/lib/inventory/plugins.d.ts.map +1 -0
  563. package/types/lib/inventory/protobom.d.ts +71 -0
  564. package/types/lib/inventory/protobom.d.ts.map +1 -0
  565. package/types/lib/inventory/protobomLoader.d.ts +17 -0
  566. package/types/lib/inventory/protobomLoader.d.ts.map +1 -0
  567. package/types/lib/inventory/provenanceUtils.d.ts +98 -0
  568. package/types/lib/inventory/provenanceUtils.d.ts.map +1 -0
  569. package/types/lib/inventory/purl.d.ts +313 -0
  570. package/types/lib/inventory/purl.d.ts.map +1 -0
  571. package/types/lib/inventory/rustFormulationParser.d.ts +17 -0
  572. package/types/lib/inventory/rustFormulationParser.d.ts.map +1 -0
  573. package/types/lib/inventory/sbomDocument.d.ts +59 -0
  574. package/types/lib/inventory/sbomDocument.d.ts.map +1 -0
  575. package/types/lib/inventory/source.d.ts +163 -0
  576. package/types/lib/inventory/source.d.ts.map +1 -0
  577. package/types/lib/inventory/spdx.d.ts +66 -0
  578. package/types/lib/inventory/spdx.d.ts.map +1 -0
  579. package/types/lib/inventory/spdxExpression.d.ts +58 -0
  580. package/types/lib/inventory/spdxExpression.d.ts.map +1 -0
  581. package/types/lib/inventory/spdxUtils.d.ts +12 -0
  582. package/types/lib/inventory/spdxUtils.d.ts.map +1 -0
  583. package/types/lib/inventory/table.d.ts +19 -0
  584. package/types/lib/inventory/table.d.ts.map +1 -0
  585. package/types/lib/inventory/traceRunner.d.ts +80 -0
  586. package/types/lib/inventory/traceRunner.d.ts.map +1 -0
  587. package/types/lib/inventory/unicodeScan.d.ts +46 -0
  588. package/types/lib/inventory/unicodeScan.d.ts.map +1 -0
  589. package/types/lib/managers/binary.d.ts +76 -0
  590. package/types/lib/managers/binary.d.ts.map +1 -0
  591. package/types/lib/managers/containerutils.d.ts +30 -0
  592. package/types/lib/managers/containerutils.d.ts.map +1 -0
  593. package/types/lib/managers/docker.d.ts +157 -0
  594. package/types/lib/managers/docker.d.ts.map +1 -0
  595. package/types/lib/managers/dockerConnection.d.ts +42 -0
  596. package/types/lib/managers/dockerConnection.d.ts.map +1 -0
  597. package/types/lib/managers/oci.d.ts +21 -0
  598. package/types/lib/managers/oci.d.ts.map +1 -0
  599. package/types/lib/managers/piptree.d.ts +13 -0
  600. package/types/lib/managers/piptree.d.ts.map +1 -0
  601. package/types/lib/parsers/cmakeCache.d.ts +70 -0
  602. package/types/lib/parsers/cmakeCache.d.ts.map +1 -0
  603. package/types/lib/parsers/gguf.d.ts +39 -0
  604. package/types/lib/parsers/gguf.d.ts.map +1 -0
  605. package/types/lib/parsers/gitAiNotes.d.ts +15 -0
  606. package/types/lib/parsers/gitAiNotes.d.ts.map +1 -0
  607. package/types/lib/parsers/gitmodules.d.ts +88 -0
  608. package/types/lib/parsers/gitmodules.d.ts.map +1 -0
  609. package/types/lib/parsers/htmlExtract.d.ts +34 -0
  610. package/types/lib/parsers/htmlExtract.d.ts.map +1 -0
  611. package/types/lib/parsers/huggingfaceManifest.d.ts +153 -0
  612. package/types/lib/parsers/huggingfaceManifest.d.ts.map +1 -0
  613. package/types/lib/parsers/huggingfaceUtils.d.ts +155 -0
  614. package/types/lib/parsers/huggingfaceUtils.d.ts.map +1 -0
  615. package/types/lib/parsers/iri.d.ts +68 -0
  616. package/types/lib/parsers/iri.d.ts.map +1 -0
  617. package/types/lib/parsers/npmrc.d.ts +33 -0
  618. package/types/lib/parsers/npmrc.d.ts.map +1 -0
  619. package/types/lib/parsers/ollama.d.ts +22 -0
  620. package/types/lib/parsers/ollama.d.ts.map +1 -0
  621. package/types/lib/parsers/xml.d.ts +47 -0
  622. package/types/lib/parsers/xml.d.ts.map +1 -0
  623. package/types/lib/server/server.d.ts +51 -0
  624. package/types/lib/server/server.d.ts.map +1 -0
  625. package/types/lib/stages/postgen/annotator.d.ts +36 -0
  626. package/types/lib/stages/postgen/annotator.d.ts.map +1 -0
  627. package/types/lib/stages/postgen/auditBom.d.ts +92 -0
  628. package/types/lib/stages/postgen/auditBom.d.ts.map +1 -0
  629. package/types/lib/stages/postgen/postgen.d.ts +59 -0
  630. package/types/lib/stages/postgen/postgen.d.ts.map +1 -0
  631. package/types/lib/stages/postgen/ruleEngine.d.ts +18 -0
  632. package/types/lib/stages/postgen/ruleEngine.d.ts.map +1 -0
  633. package/types/lib/stages/postgen/sortBom.d.ts +34 -0
  634. package/types/lib/stages/postgen/sortBom.d.ts.map +1 -0
  635. package/types/lib/stages/postgen/spdxConverter.d.ts +11 -0
  636. package/types/lib/stages/postgen/spdxConverter.d.ts.map +1 -0
  637. package/types/lib/stages/postgen/specVersionCompat.d.ts +71 -0
  638. package/types/lib/stages/postgen/specVersionCompat.d.ts.map +1 -0
  639. package/types/lib/stages/pregen/envAudit.d.ts +14 -0
  640. package/types/lib/stages/pregen/envAudit.d.ts.map +1 -0
  641. package/types/lib/stages/pregen/pregen.d.ts +59 -0
  642. package/types/lib/stages/pregen/pregen.d.ts.map +1 -0
  643. package/types/lib/third-party/arborist/lib/arborist/index.d.ts +47 -0
  644. package/types/lib/third-party/arborist/lib/arborist/index.d.ts.map +1 -0
  645. package/types/lib/third-party/arborist/lib/arborist/load-actual.d.ts +4 -0
  646. package/types/lib/third-party/arborist/lib/arborist/load-actual.d.ts.map +1 -0
  647. package/types/lib/third-party/arborist/lib/arborist/load-virtual.d.ts +4 -0
  648. package/types/lib/third-party/arborist/lib/arborist/load-virtual.d.ts.map +1 -0
  649. package/types/lib/third-party/arborist/lib/bin-links.d.ts +18 -0
  650. package/types/lib/third-party/arborist/lib/bin-links.d.ts.map +1 -0
  651. package/types/lib/third-party/arborist/lib/calc-dep-flags.d.ts +3 -0
  652. package/types/lib/third-party/arborist/lib/calc-dep-flags.d.ts.map +1 -0
  653. package/types/lib/third-party/arborist/lib/case-insensitive-map.d.ts +9 -0
  654. package/types/lib/third-party/arborist/lib/case-insensitive-map.d.ts.map +1 -0
  655. package/types/lib/third-party/arborist/lib/consistent-resolve.d.ts +3 -0
  656. package/types/lib/third-party/arborist/lib/consistent-resolve.d.ts.map +1 -0
  657. package/types/lib/third-party/arborist/lib/debug.d.ts +3 -0
  658. package/types/lib/third-party/arborist/lib/debug.d.ts.map +1 -0
  659. package/types/lib/third-party/arborist/lib/dep-valid.d.ts +3 -0
  660. package/types/lib/third-party/arborist/lib/dep-valid.d.ts.map +1 -0
  661. package/types/lib/third-party/arborist/lib/edge.d.ts +46 -0
  662. package/types/lib/third-party/arborist/lib/edge.d.ts.map +1 -0
  663. package/types/lib/third-party/arborist/lib/from-path.d.ts +3 -0
  664. package/types/lib/third-party/arborist/lib/from-path.d.ts.map +1 -0
  665. package/types/lib/third-party/arborist/lib/gather-dep-set.d.ts +3 -0
  666. package/types/lib/third-party/arborist/lib/gather-dep-set.d.ts.map +1 -0
  667. package/types/lib/third-party/arborist/lib/index.d.ts +3 -0
  668. package/types/lib/third-party/arborist/lib/index.d.ts.map +1 -0
  669. package/types/lib/third-party/arborist/lib/inventory.d.ts +14 -0
  670. package/types/lib/third-party/arborist/lib/inventory.d.ts.map +1 -0
  671. package/types/lib/third-party/arborist/lib/link.d.ts +18 -0
  672. package/types/lib/third-party/arborist/lib/link.d.ts.map +1 -0
  673. package/types/lib/third-party/arborist/lib/node.d.ts +112 -0
  674. package/types/lib/third-party/arborist/lib/node.d.ts.map +1 -0
  675. package/types/lib/third-party/arborist/lib/npm-extension.d.ts +18 -0
  676. package/types/lib/third-party/arborist/lib/npm-extension.d.ts.map +1 -0
  677. package/types/lib/third-party/arborist/lib/override-resolves.d.ts +3 -0
  678. package/types/lib/third-party/arborist/lib/override-resolves.d.ts.map +1 -0
  679. package/types/lib/third-party/arborist/lib/override-set.d.ts +27 -0
  680. package/types/lib/third-party/arborist/lib/override-set.d.ts.map +1 -0
  681. package/types/lib/third-party/arborist/lib/package-extensions.d.ts +36 -0
  682. package/types/lib/third-party/arborist/lib/package-extensions.d.ts.map +1 -0
  683. package/types/lib/third-party/arborist/lib/printable.d.ts +3 -0
  684. package/types/lib/third-party/arborist/lib/printable.d.ts.map +1 -0
  685. package/types/lib/third-party/arborist/lib/proc-log.d.ts +20 -0
  686. package/types/lib/third-party/arborist/lib/proc-log.d.ts.map +1 -0
  687. package/types/lib/third-party/arborist/lib/realpath.d.ts +3 -0
  688. package/types/lib/third-party/arborist/lib/realpath.d.ts.map +1 -0
  689. package/types/lib/third-party/arborist/lib/relpath.d.ts +3 -0
  690. package/types/lib/third-party/arborist/lib/relpath.d.ts.map +1 -0
  691. package/types/lib/third-party/arborist/lib/shrinkwrap.d.ts +54 -0
  692. package/types/lib/third-party/arborist/lib/shrinkwrap.d.ts.map +1 -0
  693. package/types/lib/third-party/arborist/lib/spec-from-lock.d.ts +3 -0
  694. package/types/lib/third-party/arborist/lib/spec-from-lock.d.ts.map +1 -0
  695. package/types/lib/third-party/arborist/lib/tree-check.d.ts +3 -0
  696. package/types/lib/third-party/arborist/lib/tree-check.d.ts.map +1 -0
  697. package/types/lib/third-party/arborist/lib/validate-npm-package-name.d.ts +13 -0
  698. package/types/lib/third-party/arborist/lib/validate-npm-package-name.d.ts.map +1 -0
  699. package/types/lib/third-party/arborist/lib/version-from-tgz.d.ts +6 -0
  700. package/types/lib/third-party/arborist/lib/version-from-tgz.d.ts.map +1 -0
  701. package/types/lib/third-party/arborist/lib/yarn-lock.d.ts +35 -0
  702. package/types/lib/third-party/arborist/lib/yarn-lock.d.ts.map +1 -0
  703. package/types/lib/validator/bomValidator.d.ts +40 -0
  704. package/types/lib/validator/bomValidator.d.ts.map +1 -0
  705. package/types/lib/validator/complianceEngine.d.ts +72 -0
  706. package/types/lib/validator/complianceEngine.d.ts.map +1 -0
  707. package/types/lib/validator/complianceRules.d.ts +61 -0
  708. package/types/lib/validator/complianceRules.d.ts.map +1 -0
  709. package/types/lib/validator/index.d.ts +101 -0
  710. package/types/lib/validator/index.d.ts.map +1 -0
  711. package/types/lib/validator/reporters/annotations.d.ts +37 -0
  712. package/types/lib/validator/reporters/annotations.d.ts.map +1 -0
  713. package/types/lib/validator/reporters/console.d.ts +34 -0
  714. package/types/lib/validator/reporters/console.d.ts.map +1 -0
  715. package/types/lib/validator/reporters/index.d.ts +30 -0
  716. package/types/lib/validator/reporters/index.d.ts.map +1 -0
  717. package/types/lib/validator/reporters/json.d.ts +11 -0
  718. package/types/lib/validator/reporters/json.d.ts.map +1 -0
  719. package/types/lib/validator/reporters/sarif.d.ts +22 -0
  720. package/types/lib/validator/reporters/sarif.d.ts.map +1 -0
  721. package/mod.d.ts +0 -7
  722. package/mod.js +0 -22
@@ -0,0 +1,150 @@
1
+ # Electron ASAR archive security rules
2
+ # Category: asar-archive
3
+ # Evaluates packaged Electron application archives for dynamic execution,
4
+ # capability overlap, integrity mismatches, and embedded install-time scripts.
5
+
6
+ - id: ASAR-001
7
+ name: "Archived JavaScript with eval or dynamic loading"
8
+ description: "ASAR-packaged JavaScript using eval, Function, or dynamic import/require deserves review for arbitrary code execution and remote payload loading risk."
9
+ severity: high
10
+ category: asar-archive
11
+ dry-run-support: full
12
+ condition: |
13
+ components[
14
+ $prop($, 'cdx:file:kind') = 'asar-entry'
15
+ and (
16
+ $propBool($, 'cdx:asar:js:hasEval') = true
17
+ or $propBool($, 'cdx:asar:js:capability:dynamicImport') = true
18
+ or $listContains($propList($, 'cdx:asar:js:executionIndicators'), 'eval')
19
+ or $listContains($propList($, 'cdx:asar:js:executionIndicators'), 'function-constructor')
20
+ )
21
+ ]
22
+ location: |
23
+ {
24
+ "bomRef": $. "bom-ref",
25
+ "srcFile": $prop($, 'internal:SrcFile'),
26
+ "archivePath": $prop($, 'cdx:asar:path')
27
+ }
28
+ message: "Archived JavaScript '{{ name }}' uses eval-like or dynamic loading behavior inside an ASAR package"
29
+ mitigation: "Review the packaged source for eval, Function, dynamic import, or runtime module resolution. Prefer static imports and signed update channels."
30
+ evidence: |
31
+ {
32
+ "archivePath": $prop($, 'cdx:asar:path'),
33
+ "executionIndicators": $prop($, 'cdx:asar:js:executionIndicators'),
34
+ "dynamicImport": $prop($, 'cdx:asar:js:capability:dynamicImport'),
35
+ "hasEval": $prop($, 'cdx:asar:js:hasEval')
36
+ }
37
+
38
+ - id: ASAR-002
39
+ name: "Archived JavaScript with network plus file or hardware access"
40
+ description: "Packaged JavaScript that combines outbound network capability with filesystem or hardware access can materially increase exfiltration or device-control risk."
41
+ severity: high
42
+ category: asar-archive
43
+ dry-run-support: full
44
+ condition: |
45
+ components[
46
+ $prop($, 'cdx:file:kind') = 'asar-entry'
47
+ and $propBool($, 'cdx:asar:js:capability:network') = true
48
+ and (
49
+ $propBool($, 'cdx:asar:js:capability:fileAccess') = true
50
+ or $propBool($, 'cdx:asar:js:capability:hardware') = true
51
+ or $propBool($, 'cdx:asar:js:hasDynamicFetch') = true
52
+ )
53
+ ]
54
+ location: |
55
+ {
56
+ "bomRef": $. "bom-ref",
57
+ "srcFile": $prop($, 'internal:SrcFile'),
58
+ "archivePath": $prop($, 'cdx:asar:path')
59
+ }
60
+ message: "Archived JavaScript '{{ name }}' combines network behavior with sensitive local access capabilities"
61
+ mitigation: "Review outbound endpoints, local file access, and hardware APIs. Limit packaged code to explicit allowlisted operations and sign release artifacts."
62
+ evidence: |
63
+ {
64
+ "archivePath": $prop($, 'cdx:asar:path'),
65
+ "capabilities": $prop($, 'cdx:asar:js:capabilities'),
66
+ "networkIndicators": $prop($, 'cdx:asar:js:networkIndicators'),
67
+ "hardwareIndicators": $prop($, 'cdx:asar:js:hardwareIndicators'),
68
+ "fileAccessIndicators": $prop($, 'cdx:asar:js:fileAccessIndicators')
69
+ }
70
+
71
+ - id: ASAR-003
72
+ name: "Declared ASAR integrity mismatch"
73
+ description: "An ASAR entry whose declared integrity hash does not match the computed file hash may indicate tampering or packaging defects."
74
+ severity: high
75
+ category: asar-archive
76
+ dry-run-support: full
77
+ condition: |
78
+ components[
79
+ $prop($, 'cdx:file:kind') = 'asar-entry'
80
+ and $prop($, 'cdx:asar:integrityVerified') = 'false'
81
+ ]
82
+ location: |
83
+ {
84
+ "bomRef": $. "bom-ref",
85
+ "srcFile": $prop($, 'internal:SrcFile'),
86
+ "archivePath": $prop($, 'cdx:asar:path')
87
+ }
88
+ message: "Archived entry '{{ name }}' has a declared integrity hash mismatch inside an ASAR package"
89
+ mitigation: "Rebuild the archive from trusted sources, verify signing provenance, and compare the packaged file to the expected release artifact."
90
+ evidence: |
91
+ {
92
+ "archivePath": $prop($, 'cdx:asar:path'),
93
+ "declaredHash": $prop($, 'cdx:asar:declaredIntegrityHash'),
94
+ "verified": $prop($, 'cdx:asar:integrityVerified')
95
+ }
96
+
97
+ - id: ASAR-004
98
+ name: "Embedded npm package with install-time scripts inside ASAR"
99
+ description: "Node packages shipped inside ASAR archives that declare install/preinstall hooks are still useful compromise indicators during artifact review."
100
+ severity: high
101
+ category: asar-archive
102
+ dry-run-support: partial
103
+ condition: |
104
+ components[
105
+ $propBool($, 'cdx:npm:hasInstallScript') = true
106
+ and $contains($prop($, 'internal:SrcFile'), '.asar#/')
107
+ ]
108
+ location: |
109
+ {
110
+ "bomRef": $. "bom-ref",
111
+ "purl": purl,
112
+ "srcFile": $prop($, 'internal:SrcFile')
113
+ }
114
+ message: "Embedded npm package '{{ name }}@{{ version }}' inside ASAR declares install-time lifecycle scripts"
115
+ mitigation: "Review the embedded package source and build provenance. Remove unnecessary lifecycle hooks or vendor only prebuilt trusted artifacts."
116
+ evidence: |
117
+ {
118
+ "srcFile": $prop($, 'internal:SrcFile'),
119
+ "lifecycleScripts": $prop($, 'cdx:npm:risky_scripts'),
120
+ "executionIndicators": $prop($, 'cdx:npm:lifecycleExecutionIndicators'),
121
+ "obfuscationIndicators": $prop($, 'cdx:npm:lifecycleObfuscationIndicators')
122
+ }
123
+
124
+ - id: ASAR-005
125
+ name: "Electron ASAR signing metadata failed verification"
126
+ description: "Electron Info.plist signing metadata that fails verification is a high-signal indicator of packaging defects or release-artifact tampering."
127
+ severity: high
128
+ category: asar-archive
129
+ dry-run-support: full
130
+ condition: |
131
+ components[
132
+ $prop($, 'cdx:file:kind') = 'asar-archive'
133
+ and $propBool($, 'cdx:asar:hasSigningMetadata') = true
134
+ and $prop($, 'cdx:asar:signingVerified') = 'false'
135
+ ]
136
+ location: |
137
+ {
138
+ "bomRef": $. "bom-ref",
139
+ "srcFile": $prop($, 'internal:SrcFile')
140
+ }
141
+ message: "ASAR archive '{{ name }}' has Electron signing metadata that failed verification"
142
+ mitigation: "Rebuild the Electron package from trusted sources, verify the Info.plist ElectronAsarIntegrity data, and confirm the shipped ASAR matches the expected signed release artifact."
143
+ evidence: |
144
+ {
145
+ "signingDeclaredHash": $prop($, 'cdx:asar:signingDeclaredHash'),
146
+ "signingAlgorithm": $prop($, 'cdx:asar:signingAlgorithm'),
147
+ "signingSource": $prop($, 'cdx:asar:signingSource'),
148
+ "signingScope": $prop($, 'cdx:asar:signingScope'),
149
+ "signingVerified": $prop($, 'cdx:asar:signingVerified')
150
+ }
@@ -0,0 +1,165 @@
1
+ # CBOM Security and Compliance Rules
2
+ # Category: cbom-security, cbom-compliance
3
+ # Evaluates cryptographic assets (algorithms, protocols, certificates, related-crypto-material) for weaknesses.
4
+
5
+ - id: CBS-001
6
+ name: "Weak/Deprecated Cryptographic Algorithm"
7
+ description: "Usage of weak or deprecated cryptographic algorithms such as MD5, SHA-1, RC4, DES, 3DES, or Blowfish exposes data to decryption or collision attacks."
8
+ severity: high
9
+ category: cbom-security
10
+ dry-run-support: full
11
+ standards:
12
+ nist-800-53:
13
+ - "SC-13 Cryptographic Protection"
14
+ iso-27001:
15
+ - "A.8.24 Use of cryptography"
16
+ condition: |
17
+ components[
18
+ cryptoProperties.assetType = 'algorithm'
19
+ and (
20
+ $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'md5')
21
+ or $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'sha-1')
22
+ or $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'sha1')
23
+ or $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'rc4')
24
+ or $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'des')
25
+ or $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'blowfish')
26
+ or $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'md4')
27
+ or $contains($lowercase($safeStr(cryptoProperties.algorithmProperties.algorithmFamily)), 'rc2')
28
+ )
29
+ ]
30
+ location: |
31
+ {
32
+ "bomRef": $firstNonEmpty($."bom-ref", bom.serialNumber)
33
+ }
34
+ message: "Weak/Deprecated cryptographic algorithm family '{{ cryptoProperties.algorithmProperties.algorithmFamily }}' detected in component '{{ name }}'"
35
+ mitigation: "Migrate to secure alternatives like SHA-256, SHA-3, or AES-GCM."
36
+ evidence: |
37
+ {
38
+ "algorithmFamily": cryptoProperties.algorithmProperties.algorithmFamily,
39
+ "primitive": cryptoProperties.algorithmProperties.primitive
40
+ }
41
+
42
+ - id: CBS-002
43
+ name: "Insecure Cipher Mode of Operation"
44
+ description: "Electronic Codebook (ECB) mode lacks cryptographic diffusion and exposes patterns in ciphertext, while Cipher Block Chaining (CBC) without authenticated encryption (AEAD) is vulnerable to padding oracle attacks."
45
+ severity: high
46
+ category: cbom-security
47
+ dry-run-support: full
48
+ standards:
49
+ nist-800-53:
50
+ - "SC-13 Cryptographic Protection"
51
+ condition: |
52
+ components[
53
+ cryptoProperties.assetType = 'algorithm'
54
+ and (
55
+ cryptoProperties.algorithmProperties.mode = 'ecb'
56
+ or (cryptoProperties.algorithmProperties.mode = 'cbc' and cryptoProperties.algorithmProperties.primitive != 'ae')
57
+ )
58
+ ]
59
+ location: |
60
+ {
61
+ "bomRef": $firstNonEmpty($."bom-ref", bom.serialNumber)
62
+ }
63
+ message: "Insecure cipher mode '{{ cryptoProperties.algorithmProperties.mode }}' detected for component '{{ name }}'"
64
+ mitigation: "Use authenticated encryption modes such as GCM or CCM."
65
+ evidence: |
66
+ {
67
+ "algorithmFamily": cryptoProperties.algorithmProperties.algorithmFamily,
68
+ "mode": cryptoProperties.algorithmProperties.mode,
69
+ "primitive": cryptoProperties.algorithmProperties.primitive
70
+ }
71
+
72
+ - id: CBS-003
73
+ name: "Insufficient Classical Security Level or Key Size"
74
+ description: "Symmetric algorithms with security levels under 128 bits, or asymmetric algorithms (like RSA) with keys under 2048 bits, are vulnerable to brute-force attacks."
75
+ severity: high
76
+ category: cbom-security
77
+ dry-run-support: full
78
+ standards:
79
+ nist-800-53:
80
+ - "SC-13 Cryptographic Protection"
81
+ condition: |
82
+ components[
83
+ (
84
+ cryptoProperties.assetType = 'algorithm'
85
+ and $number(cryptoProperties.algorithmProperties.classicalSecurityLevel) > 0
86
+ and $number(cryptoProperties.algorithmProperties.classicalSecurityLevel) < 128
87
+ )
88
+ or (
89
+ cryptoProperties.assetType = 'related-crypto-material'
90
+ and cryptoProperties.relatedCryptoMaterialProperties.type = 'private-key'
91
+ and $number(cryptoProperties.relatedCryptoMaterialProperties.size) > 0
92
+ and $number(cryptoProperties.relatedCryptoMaterialProperties.size) < 2048
93
+ )
94
+ ]
95
+ location: |
96
+ {
97
+ "bomRef": $firstNonEmpty($."bom-ref", bom.serialNumber)
98
+ }
99
+ message: "Cryptographic strength is insufficient: {{ $firstNonEmpty(cryptoProperties.algorithmProperties.classicalSecurityLevel, cryptoProperties.relatedCryptoMaterialProperties.size) }} bits"
100
+ mitigation: "Upgrade key lengths to at least 128 bits for symmetric keys and 2048 bits (preferably 3072 or 4096 bits) for asymmetric/RSA keys."
101
+ evidence: |
102
+ {
103
+ "assetType": cryptoProperties.assetType,
104
+ "classicalSecurityLevel": cryptoProperties.algorithmProperties.classicalSecurityLevel,
105
+ "keySize": cryptoProperties.relatedCryptoMaterialProperties.size
106
+ }
107
+
108
+ - id: CBS-004
109
+ name: "Outdated/Insecure Protocol Version"
110
+ description: "Outdated protocols such as SSL v2, SSL v3, TLS 1.0, or TLS 1.1 contain severe vulnerabilities and should be disabled in favor of TLS 1.2 or TLS 1.3."
111
+ severity: critical
112
+ category: cbom-security
113
+ dry-run-support: full
114
+ standards:
115
+ nist-800-53:
116
+ - "SC-8 Transmission Confidentiality and Integrity"
117
+ condition: |
118
+ components[
119
+ cryptoProperties.assetType = 'protocol'
120
+ and (
121
+ cryptoProperties.protocolProperties.type = 'tls' or cryptoProperties.protocolProperties.type = 'dtls'
122
+ )
123
+ and (
124
+ $contains($lowercase($safeStr(cryptoProperties.protocolProperties.version)), '1.0')
125
+ or $contains($lowercase($safeStr(cryptoProperties.protocolProperties.version)), '1.1')
126
+ or $contains($lowercase($safeStr(cryptoProperties.protocolProperties.version)), 'ssl')
127
+ or $contains($lowercase($safeStr(cryptoProperties.protocolProperties.version)), '2.0')
128
+ or $contains($lowercase($safeStr(cryptoProperties.protocolProperties.version)), '3.0')
129
+ )
130
+ ]
131
+ location: |
132
+ {
133
+ "bomRef": $firstNonEmpty($."bom-ref", bom.serialNumber)
134
+ }
135
+ message: "Insecure protocol version '{{ cryptoProperties.protocolProperties.version }}' detected for component '{{ name }}'"
136
+ mitigation: "Require TLS 1.2 or TLS 1.3 as the minimum protocol version."
137
+ evidence: |
138
+ {
139
+ "protocol": cryptoProperties.protocolProperties.type,
140
+ "version": cryptoProperties.protocolProperties.version
141
+ }
142
+
143
+ - id: CBC-001
144
+ name: "Expired or Expiring Certificate"
145
+ description: "Certificates that have expired or are close to their expiration date will cause service disruptions or trust validation failures."
146
+ severity: high
147
+ category: cbom-compliance
148
+ dry-run-support: full
149
+ condition: |
150
+ components[
151
+ cryptoProperties.assetType = 'certificate'
152
+ and $hasProp($, 'cdx:cert:isExpired', 'true')
153
+ ]
154
+ location: |
155
+ {
156
+ "bomRef": $firstNonEmpty($."bom-ref", bom.serialNumber)
157
+ }
158
+ message: "Certificate for Subject '{{ cryptoProperties.certificateProperties.subjectName }}' has expired or is invalid"
159
+ mitigation: "Renew the certificate and update the deployment trust stores."
160
+ evidence: |
161
+ {
162
+ "subject": cryptoProperties.certificateProperties.subjectName,
163
+ "issuer": cryptoProperties.certificateProperties.issuerName,
164
+ "notValidAfter": cryptoProperties.certificateProperties.notValidAfter
165
+ }
@@ -0,0 +1,248 @@
1
+ # Chrome Extension Security Rules
2
+ # Category: chrome-extension
3
+ # Evaluates Chromium browser extensions for risky permissions and execution posture
4
+
5
+ - id: CHE-001
6
+ name: "Extension with broad host access"
7
+ description: "Browser extensions with <all_urls> or wildcard host permissions can access and manipulate content on most websites"
8
+ severity: high
9
+ category: chrome-extension
10
+ dry-run-support: full
11
+ condition: |
12
+ components[
13
+ $startsWith(purl, 'pkg:chrome-extension/')
14
+ and (
15
+ $listContains($propList($, 'cdx:chrome-extension:permissions'), '<all_urls>')
16
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '<all_urls>')
17
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '*://*/*')
18
+ )
19
+ ]
20
+ location: |
21
+ {
22
+ "bomRef": $. "bom-ref",
23
+ "purl": purl,
24
+ "srcFile": $prop($, 'internal:SrcFile')
25
+ }
26
+ message: "Chrome extension '{{ name }}@{{ version }}' has broad host access permissions"
27
+ mitigation: "Limit host permissions to required domains; avoid <all_urls> and broad wildcard host patterns"
28
+ evidence: |
29
+ {
30
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
31
+ "hostPermissions": $prop($, 'cdx:chrome-extension:hostPermissions')
32
+ }
33
+
34
+ - id: CHE-002
35
+ name: "Extension with network interception capabilities"
36
+ description: "Extensions that combine webRequest and webRequestBlocking can intercept and modify browser network traffic"
37
+ severity: critical
38
+ category: chrome-extension
39
+ dry-run-support: full
40
+ condition: |
41
+ components[
42
+ $startsWith(purl, 'pkg:chrome-extension/')
43
+ and $listContains($propList($, 'cdx:chrome-extension:permissions'), 'webRequest')
44
+ and $listContains($propList($, 'cdx:chrome-extension:permissions'), 'webRequestBlocking')
45
+ ]
46
+ location: |
47
+ {
48
+ "bomRef": $. "bom-ref",
49
+ "purl": purl,
50
+ "srcFile": $prop($, 'internal:SrcFile')
51
+ }
52
+ message: "Chrome extension '{{ name }}@{{ version }}' can intercept and block web requests"
53
+ mitigation: "Review extension code for request filtering/modification logic; restrict deployment to trusted publishers"
54
+ evidence: |
55
+ {
56
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
57
+ "contentScriptsRunAt": $prop($, 'cdx:chrome-extension:contentScriptsRunAt')
58
+ }
59
+
60
+ - id: CHE-003
61
+ name: "Always-early content scripts with broad access"
62
+ description: "Extensions injecting content scripts at document_start together with broad host permissions increase pre-DOM execution risk"
63
+ severity: high
64
+ category: chrome-extension
65
+ dry-run-support: full
66
+ condition: |
67
+ components[
68
+ $startsWith(purl, 'pkg:chrome-extension/')
69
+ and $listContains($propList($, 'cdx:chrome-extension:contentScriptsRunAt'), 'document_start')
70
+ and (
71
+ $listContains($propList($, 'cdx:chrome-extension:permissions'), '<all_urls>')
72
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '<all_urls>')
73
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '*://*/*')
74
+ )
75
+ ]
76
+ location: |
77
+ {
78
+ "bomRef": $. "bom-ref",
79
+ "purl": purl
80
+ }
81
+ message: "Chrome extension '{{ name }}@{{ version }}' injects scripts at document_start with broad site access"
82
+ mitigation: "Prefer run_at=document_idle where possible and scope host permissions to explicit trusted origins"
83
+ evidence: |
84
+ {
85
+ "contentScriptsRunAt": $prop($, 'cdx:chrome-extension:contentScriptsRunAt'),
86
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
87
+ "hostPermissions": $prop($, 'cdx:chrome-extension:hostPermissions')
88
+ }
89
+
90
+ - id: CHE-004
91
+ name: "Autofill-capable extension with broad host permissions"
92
+ description: "Autofill features handling credential or PII flows should be reviewed when broad host permissions are granted"
93
+ severity: medium
94
+ category: chrome-extension
95
+ dry-run-support: full
96
+ condition: |
97
+ components[
98
+ $startsWith(purl, 'pkg:chrome-extension/')
99
+ and $propBool($, 'cdx:chrome-extension:hasAutofill') = true
100
+ and (
101
+ $listContains($propList($, 'cdx:chrome-extension:permissions'), '<all_urls>')
102
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '<all_urls>')
103
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '*://*/*')
104
+ )
105
+ ]
106
+ location: |
107
+ {
108
+ "bomRef": $. "bom-ref",
109
+ "purl": purl
110
+ }
111
+ message: "Autofill-capable extension '{{ name }}@{{ version }}' has broad host access"
112
+ mitigation: "Review autofill data handling and origin checks; enforce least-privilege host permissions"
113
+ evidence: |
114
+ {
115
+ "hasAutofill": $prop($, 'cdx:chrome-extension:hasAutofill'),
116
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
117
+ "hostPermissions": $prop($, 'cdx:chrome-extension:hostPermissions'),
118
+ "storageManagedSchema": $prop($, 'cdx:chrome-extension:storageManagedSchema')
119
+ }
120
+
121
+ - id: CHE-005
122
+ name: "Extension with file/device capability and broad host scope"
123
+ description: "Extensions requesting file or device-adjacent capabilities alongside broad host scope can increase data collection and exfiltration risk."
124
+ severity: high
125
+ category: chrome-extension
126
+ dry-run-support: full
127
+ condition: |
128
+ components[
129
+ $startsWith(purl, 'pkg:chrome-extension/')
130
+ and (
131
+ $propBool($, 'cdx:chrome-extension:capability:fileAccess') = true
132
+ or $propBool($, 'cdx:chrome-extension:capability:deviceAccess') = true
133
+ or $propBool($, 'cdx:chrome-extension:capability:bluetooth') = true
134
+ )
135
+ and (
136
+ $listContains($propList($, 'cdx:chrome-extension:permissions'), '<all_urls>')
137
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '<all_urls>')
138
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '*://*/*')
139
+ )
140
+ ]
141
+ location: |
142
+ {
143
+ "bomRef": $. "bom-ref",
144
+ "purl": purl,
145
+ "srcFile": $prop($, 'internal:SrcFile')
146
+ }
147
+ message: "Chrome extension '{{ name }}@{{ version }}' combines broad host scope with file/device capabilities"
148
+ mitigation: "Review whether file/device permissions are required and narrow host permissions to explicit trusted origins."
149
+ evidence: |
150
+ {
151
+ "capabilities": $prop($, 'cdx:chrome-extension:capabilities'),
152
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
153
+ "hostPermissions": $prop($, 'cdx:chrome-extension:hostPermissions')
154
+ }
155
+
156
+ - id: CHE-006
157
+ name: "Code-injecting extension with broad host scope"
158
+ description: "Extensions with explicit code-injection capability and broad host scope may execute arbitrary script logic across many origins."
159
+ severity: critical
160
+ category: chrome-extension
161
+ dry-run-support: full
162
+ condition: |
163
+ components[
164
+ $startsWith(purl, 'pkg:chrome-extension/')
165
+ and $propBool($, 'cdx:chrome-extension:capability:codeInjection') = true
166
+ and (
167
+ $listContains($propList($, 'cdx:chrome-extension:permissions'), '<all_urls>')
168
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '<all_urls>')
169
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '*://*/*')
170
+ )
171
+ ]
172
+ location: |
173
+ {
174
+ "bomRef": $. "bom-ref",
175
+ "purl": purl,
176
+ "srcFile": $prop($, 'internal:SrcFile')
177
+ }
178
+ message: "Chrome extension '{{ name }}@{{ version }}' has code-injection capability with broad host coverage"
179
+ mitigation: "Constrain host permissions and validate code-injection paths (scripting/tabs/debugger/content scripts) against strict allowlists."
180
+ evidence: |
181
+ {
182
+ "capabilities": $prop($, 'cdx:chrome-extension:capabilities'),
183
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
184
+ "contentScriptsRunAt": $prop($, 'cdx:chrome-extension:contentScriptsRunAt')
185
+ }
186
+
187
+ - id: CHE-007
188
+ name: "Fingerprinting-capable extension with broad host scope"
189
+ description: "Fingerprinting-related capability indicators combined with broad host access can increase tracking and privacy risk."
190
+ severity: high
191
+ category: chrome-extension
192
+ dry-run-support: full
193
+ condition: |
194
+ components[
195
+ $startsWith(purl, 'pkg:chrome-extension/')
196
+ and $propBool($, 'cdx:chrome-extension:capability:fingerprinting') = true
197
+ and (
198
+ $listContains($propList($, 'cdx:chrome-extension:permissions'), '<all_urls>')
199
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '<all_urls>')
200
+ or $listContains($propList($, 'cdx:chrome-extension:hostPermissions'), '*://*/*')
201
+ )
202
+ ]
203
+ location: |
204
+ {
205
+ "bomRef": $. "bom-ref",
206
+ "purl": purl,
207
+ "srcFile": $prop($, 'internal:SrcFile')
208
+ }
209
+ message: "Chrome extension '{{ name }}@{{ version }}' has fingerprinting indicators with broad host access"
210
+ mitigation: "Review extension behavior for passive/active fingerprinting collection and reduce scope to required domains."
211
+ evidence: |
212
+ {
213
+ "capabilities": $prop($, 'cdx:chrome-extension:capabilities'),
214
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
215
+ "hostPermissions": $prop($, 'cdx:chrome-extension:hostPermissions')
216
+ }
217
+
218
+ - id: CHE-008
219
+ name: "AI-assistant extension with code injection on AI provider domains"
220
+ description: "Extensions targeting AI assistant domains (OpenAI/ChatGPT/Claude/Copilot) with code-injection capability should be reviewed for prompt/session manipulation risk."
221
+ severity: high
222
+ category: chrome-extension
223
+ dry-run-support: full
224
+ condition: |
225
+ components[
226
+ $startsWith(purl, 'pkg:chrome-extension/')
227
+ and $propBool($, 'cdx:chrome-extension:capability:codeInjection') = true
228
+ and (
229
+ $contains($safeStr($prop($, 'cdx:chrome-extension:hostPermissions')), 'openai.com')
230
+ or $contains($safeStr($prop($, 'cdx:chrome-extension:hostPermissions')), 'chatgpt.com')
231
+ or $contains($safeStr($prop($, 'cdx:chrome-extension:hostPermissions')), 'claude.ai')
232
+ or $contains($safeStr($prop($, 'cdx:chrome-extension:hostPermissions')), 'github.com/copilot')
233
+ )
234
+ ]
235
+ location: |
236
+ {
237
+ "bomRef": $. "bom-ref",
238
+ "purl": purl,
239
+ "srcFile": $prop($, 'internal:SrcFile')
240
+ }
241
+ message: "AI-assistant extension '{{ name }}@{{ version }}' can inject code in assistant workflows"
242
+ mitigation: "Review prompt/session handling, enforce least-privilege host permissions, and gate deployment to trusted publishers."
243
+ evidence: |
244
+ {
245
+ "capabilities": $prop($, 'cdx:chrome-extension:capabilities'),
246
+ "permissions": $prop($, 'cdx:chrome-extension:permissions'),
247
+ "hostPermissions": $prop($, 'cdx:chrome-extension:hostPermissions')
248
+ }