Aalexbit-codemod

java-security-blocker-mining-bundle

Read-only workflow bundle that runs all 19 Java security blocker-severity mining codemods (injection, hard-coded credentials/secrets, deserialization, XXE, and more) in one pass.

miningmetricsjavasecurityvulnerabilitybundlerecipe
PublicBundle
1 executions

Run locally

npx codemod java-security-blocker-mining-bundle

java-security-blocker-mining-bundle

Read-only workflow bundle that runs all 19 Java security blocker-severity
mining codemods in a single pass. It accumulates findings as metrics in the
Codemod run output — no files are written to the target repo.

Use it to baseline an entire Java codebase against the blocker-severity
SonarSource vulnerability rules (injection, hard-coded credentials/secrets,
unsafe deserialization, XXE, and more) before prioritizing remediation. As with
every miner in this suite, results are high-signal review candidates surfaced by
AST pattern matching — not proven vulnerabilities.

Bundled codemods

StepCodemodRuleCWE
1java-db-empty-password-miningjava:S2115CWE-521
2java-hardcoded-credentials-miningjava:S6437CWE-798
3java-hardcoded-secrets-miningjava:S6418CWE-798
4java-sql-injection-miningjavasecurity:S3649CWE-89
5java-nosql-injection-miningjavasecurity:S5147CWE-943
6java-ldap-injection-miningjavasecurity:S2078CWE-90
7java-xpath-injection-miningjavasecurity:S2091CWE-643
8java-os-command-injection-miningjavasecurity:S2076CWE-78
9java-dynamic-code-execution-miningjavasecurity:S5334CWE-95
10java-server-side-template-injection-miningjavasecurity:S5496CWE-94
11java-deserialization-injection-miningjavasecurity:S5135CWE-502
12java-path-injection-miningjavasecurity:S2083CWE-22
13java-zip-slip-miningjavasecurity:S6096CWE-22
14java-open-redirect-miningjavasecurity:S5146CWE-601
15java-reflected-xss-miningjavasecurity:S5131CWE-79
16java-webview-cross-app-scripting-miningjavasecurity:S7606CWE-79
17java-android-intent-redirection-miningjavasecurity:S6384CWE-20
18java-xxe-miningjava:S2755CWE-611
19java-xml-arbitrary-file-inclusion-miningjava:S6373CWE-611

Each step emits a metric named after its codemod (e.g. java-sql-injection-mining).
Every record shares the base cardinality rule, cwe, severity (always
blocker), sink, package_name, class_name, method_name, file, line;
injection miners add arg_kind, the XXE miners add hardened, and the secrets
miner adds secret_name. See each child codemod's README.md for the full
metric and security-standard details.

Workflows

  • workflow.yaml — references each miner by its published
    registry name
    (source: 'java-sql-injection-mining'). Use this once the
    child codemods are published.
  • workflow.local.yaml — references each miner by its
    sibling path (source: '../java-sql-injection-mining') for local
    development and smoke testing in this monorepo.

Run locally

bash

Need a deeper assessment?

These miners are a strong portfolio-wide baseline, but they do not replace a full
taint-analysis engine and cannot prove an end-to-end source→sink data flow.

Reach out to the Codemod team if you want tailored
analyzers for your stack: custom sink/source libraries, framework-aware taint
tracking, and dashboards wired to your security remediation milestones.

Ready to contribute?

Build your own codemod and share it with the community.