NO-JIRA: support: add redhat-support skill for CVE lookup and validation#26
NO-JIRA: support: add redhat-support skill for CVE lookup and validation#26gkneighb wants to merge 1 commit into
Conversation
cluster-update/update-advisor references a `redhat-support` skill in its
"Investigate with other skills" section and failure-modes list ("Never
fabricate ... CVE numbers. Use the redhat-support skill to get real
data."), but the skill doesn't exist yet.
This adds it, wrapping the public Red Hat Security Data API
(https://access.redhat.com/hydra/rest/securitydata, no auth required).
Capabilities:
- Validate a CVE ID exists in Red Hat's record
- Retrieve severity, CVSS3, and Bugzilla metadata
- Determine which Red Hat products are affected and in what state
(fix_state vs shipped advisory)
- Find the RHSA fixing a CVE for a product family — exact-match for
product proper, family-match including EUS / AUS / E4S variants
- List CVEs by package, advisory, or severity + date filter
Out of scope: CVRF/CSAF documents, direct advisory bodies, and KB
solutions are not exposed by this public API. The skill calls this
out and directs callers to surface the public access.redhat.com/errata
URL when full advisory contents are needed.
Format follows cluster-update/product-lifecycle: SKILL.md with curl +
jq examples and references/security-data-api.md with the field-by-field
schema.
Verification:
- Every curl + jq example in SKILL.md was executed against the live
API and confirmed to produce the documented output
- The skill was end-to-end tested by an independent agent given two
realistic CVE questions; the test surfaced three issues (startswith
ambiguity between RHEL 9 and its EUS variants, undocumented
affected_release duplicates, and a gap in the cvss3 schema reference)
which are all addressed here
|
@gkneighb: This pull request explicitly references no jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: gkneighb The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Hi @gkneighb. Thanks for your PR. I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with Regular contributors should join the org to skip this step. Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
Proposal and discussion in #25.
cluster-update/update-advisorreferences aredhat-supportskill ("Never fabricate ... CVE numbers. Use theredhat-supportskill to get real data.") but the skill doesn't exist yet. This adds it.What's in this PR
support/redhat-support/SKILL.md— wraps the public Red Hat Security Data API (https://access.redhat.com/hydra/rest/securitydata, no auth required). Covers CVE validation, severity / CVSS / Bugzilla lookup, affected-products checks, RHSA lookup for a product, and search by package / advisory / severity+date.support/redhat-support/references/security-data-api.md— field-by-field schema for the single-CVE and CVE-list responses, including filter parameters,package_statevsaffected_releasesemantics, and what the API does not expose (CVRF/CSAF/errata bodies/KB solutions — out of scope; surface the public errata URL instead).Format follows
cluster-update/product-lifecycle.Out of scope
CVRF/CSAF documents, direct advisory bodies, and KB solutions (
/solutions/<id>requires auth) are not exposed by this public API. The skill documents this and points toaccess.redhat.com/errata/<RHSA>URLs for callers that need full advisory contents. KB lookup, in particular, would need a different access pattern and is left for a follow-up.Location
Staged under
support/redhat-support/to align with @harche's plannedsupport/jira/(#9), since both are support-system integrations. Happy to move if a different parent fits better —support/OWNERSisn't created here; root OWNERS applies until #9 or a similar PR establishes one.Verification
SKILL.mdwas executed against the live API and confirmed to produce the documented output.startswithambiguity betweenRed Hat Enterprise Linux 9and its EUS variants. Split into an exact-match recipe (RHEL 9 proper only) and a family-match recipe (includes EUS/AUS/E4S), with explicit guidance on which to use.(product_name, advisory)entries inaffected_release[](one per arch/sub-package). Examples now useunique_by(), and the schema reference documents the duplication.cvss3sub-fields were only in the JSON example, not the schema table. Added a dedicatedcvss3sub-fields section in the reference doc.Type of change
Related Tickets & Documents
redhat-supportskill for CVE lookup and validation #25Checklist before requesting a review