Skip to content

feat: add CSAF VEX document generation#170

Merged
IlonaShishov merged 20 commits into
mainfrom
vex
Jan 18, 2026
Merged

feat: add CSAF VEX document generation#170
IlonaShishov merged 20 commits into
mainfrom
vex

Conversation

@IlonaShishov

Copy link
Copy Markdown
Collaborator

Generate machine-readable VEX documents in CSAF 2.0 format containing:

  • Product identification and vulnerability status
  • Patch recommendations from GHSA intel
  • ExploitIQ analysis summaries and justifications
  • RHSA/GHSA enrichment data

Includes pluggable VexGenerator architecture for future format support.

EIQ output has been remodeled to include a VEX field for the analysis as a whole. (output: {analysis: {}, vex: {}})

@zvigrinberg zvigrinberg left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @IlonaShishov
This looks good and does the work.
Though i have some comments. PTAL.
In addition, kindly modify openapi spec to reflect new output structure payload
https://github.com/RHEcosystemAppEng/vulnerability-analysis/blob/bb6f1b10685ac3801a22db7a1613a85da187cef3/src/vuln_analysis/configs/openapi/openapi.json

Comment thread src/vuln_analysis/utils/vex/implementations/csaf_generator.py Outdated
Comment thread src/vuln_analysis/functions/cve_generate_vex.py Outdated
Comment thread src/vuln_analysis/functions/cve_generate_vex.py Outdated
Comment thread src/vuln_analysis/utils/vex/implementations/csaf_generator.py Outdated
Comment thread src/vuln_analysis/utils/vex/implementations/csaf_generator.py Outdated
Comment thread src/vuln_analysis/utils/vex/vex_generator_base.py

@zvigrinberg zvigrinberg left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great Job @IlonaShishov
LGTM Approved.

@IlonaShishov IlonaShishov force-pushed the vex branch 2 times, most recently from 130d70e to da03ec9 Compare January 1, 2026 14:57
@zvigrinberg

Copy link
Copy Markdown
Collaborator

@IlonaShishov Please rebase on top of main.
Thanks!.

@vbelouso

Copy link
Copy Markdown
Collaborator

/test vulnerability-analysis-on-pr

@IlonaShishov IlonaShishov force-pushed the vex branch 4 times, most recently from 083827d to c8e2592 Compare January 14, 2026 12:25

@zvigrinberg zvigrinberg left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @IlonaShishov
It looks good, i have only few minor comments.
Thanks!.

Comment thread src/vuln_analysis/utils/vex/implementations/csaf_generator.py
Comment thread src/vuln_analysis/utils/vex/implementations/csaf_generator.py Outdated
Comment thread src/vuln_analysis/utils/vex/implementations/csaf_generator.py Outdated
Ilona Shishov added 16 commits January 18, 2026 10:36
…SAF format support

Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
…ble CVEs only

Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
…stants for reusability and readability

Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
…ve intel score

Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Ilona Shishov added 4 commits January 18, 2026 10:36
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>
Signed-off-by: Ilona Shishov <ishishov@ishishov-thinkpadp1gen7.raanaii.csb>

@zvigrinberg zvigrinberg left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM Approved.

@IlonaShishov IlonaShishov merged commit 854b856 into main Jan 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants