跳至主要内容
REST API 现在已版本化。 有关更多信息,请参阅 "关于 API 版本控制."

全局安全公告的 REST API 端点

使用 REST API 查看全局安全公告。

列出全局安全公告

列出所有与指定参数匹配的全局安全公告。如果未定义其他参数,则请求将仅返回 GitHub 审核的非恶意软件公告。

默认情况下,所有响应都将排除恶意软件公告,因为恶意软件不是标准漏洞。要列出恶意软件公告,您必须在请求中包含 type 参数,其值为 malware。有关不同类型安全公告的更多信息,请参阅 "关于 GitHub 公告数据库."

用于“列出全局安全公告”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌不需要任何权限。

如果只请求公共资源,则无需身份验证即可使用此端点。

“列出全局安全建议”的参数

标题
名称、类型、描述
accept string

建议设置为application/vnd.github+json

查询参数
名称、类型、描述
ghsa_id string

如果指定,则只返回具有此 GHSA(GitHub 安全建议)标识符的建议。

type string

如果指定,则只返回此类型的建议。默认情况下,没有其他参数定义的请求将只返回经过审查且不是恶意软件的建议。

默认: reviewed

可以是以下之一: reviewed, malware, unreviewed

cve_id string

如果指定,则只返回具有此 CVE(常见漏洞和暴露)标识符的建议。

ecosystem string

如果指定,则只返回这些生态系统的建议。

可以是以下之一: rubygems, npm, pip, maven, nuget, composer, go, rust, erlang, actions, pub, other, swift

severity string

如果指定,则只返回具有这些严重程度的建议。

可以是以下之一: unknown, low, medium, high, critical

cwes

如果指定,则只返回具有这些常见弱点枚举 (CWE) 的建议。

示例:cwes=79,284,22cwes[]=79&cwes[]=284&cwes[]=22

is_withdrawn 布尔值

是否仅返回已撤回的咨询。

affects

如果指定,则仅返回影响任何packagepackage@version的咨询。最多可以指定 1000 个包。如果查询参数导致 URL 超过您的客户端支持的最大 URL 长度,则您必须指定更少的包。

示例:affects=package1,[email protected],package3@^2.0.0affects[]=package1&affects[][email protected]

published 字符串

如果指定,则仅返回在特定日期或日期范围内发布的咨询。

有关日期范围语法的更多信息,请参阅“理解搜索语法”。

updated 字符串

如果指定,则仅返回在特定日期或日期范围内更新的咨询。

有关日期范围语法的更多信息,请参阅“理解搜索语法”。

modified 字符串

如果指定,则仅显示在特定日期或日期范围内更新或发布的咨询。

有关日期范围语法的更多信息,请参阅“理解搜索语法”。

before 字符串

一个游标,如 Link 标头 中所述。如果指定,则查询仅搜索此游标之前的结果。有关更多信息,请参阅“在 REST API 中使用分页”。

after 字符串

一个游标,如 Link 标头 中所述。如果指定,则查询仅搜索此游标之后的结果。有关更多信息,请参阅“在 REST API 中使用分页”。

direction 字符串

对结果进行排序的方向。

默认值: desc

可以是以下之一: asc, desc

per_page 整数

每页的结果数(最大 100)。有关更多信息,请参阅“在 REST API 中使用分页”。

默认值: 30

sort 字符串

用于对结果进行排序的属性。

默认: published

可以是以下之一: updated, published

“列出全局安全建议”的 HTTP 响应状态代码

状态代码描述
200

OK

422

验证失败,或端点已被垃圾邮件攻击。

429

请求过多

“列出全局安全建议”的代码示例

请求示例

get/advisories
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/advisories

响应

状态:200
[ { "id": 1, "ghsa_id": "GHSA-abcd-1234-efgh", "cve_id": "CVE-2050-00000", "url": "https://api.github.com/advisories/GHSA-abcd-1234-efgh", "html_url": "https://github.com/advisories/GHSA-abcd-1234-efgh", "repository_advisory_url": "https://api.github.com/repos/project/a-package/security-advisories/GHSA-abcd-1234-efgh", "summary": "Heartbleed 安全建议", "description": "此错误允许攻击者读取受影响服务器内存的部分内容,可能泄露敏感信息。", "type": "reviewed", "severity": "high", "source_code_location": "https://github.com/project/a-package", "identifiers": [ { "type": "GHSA", "value": "GHSA-abcd-1234-efgh" }, { "type": "CVE", "value": "CVE-2050-00000" } ], "references": [ "https://nvd.nist.gov/vuln/detail/CVE-2050-00000" ], "published_at": "2023-03-23T02:30:56Z", "updated_at": "2023-03-24T02:30:56Z", "github_reviewed_at": "2023-03-23T02:30:56Z", "nvd_published_at": "2023-03-25T02:30:56Z", "withdrawn_at": null, "vulnerabilities": [ { "package": { "ecosystem": "npm", "name": "a-package" }, "first_patched_version": "1.0.3", "vulnerable_version_range": "<=1.0.2", "vulnerable_functions": [ "a_function" ] } ], "cvss": { "vector_string": "CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:H", "score": 7.6 }, "cwes": [ { "cwe_id": "CWE-400", "name": "不受控制的资源消耗" } ], "credits": [ { "user": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", "url": "https://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false }, "type": "analyst" } ] } ]

获取全局安全建议

使用其 GitHub 安全建议 (GHSA) 标识符获取全局安全建议。

“获取全局安全建议”的细粒度访问令牌

此端点适用于以下细粒度令牌类型

细粒度令牌不需要任何权限。

如果只请求公共资源,则无需身份验证即可使用此端点。

获取全局安全公告的参数

标题
名称、类型、描述
accept string

建议设置为application/vnd.github+json

路径参数
名称、类型、描述
ghsa_id 字符串 必需

公告的 GHSA(GitHub 安全公告)标识符。

获取全局安全公告的 HTTP 响应状态码

状态代码描述
200

OK

404

资源未找到

获取全局安全公告的代码示例

请求示例

get/advisories/{ghsa_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/advisories/GHSA_ID

响应

状态:200
{ "ghsa_id": "GHSA-abcd-1234-efgh", "cve_id": "CVE-2050-00000", "url": "https://api.github.com/advisories/GHSA-abcd-1234-efgh", "html_url": "https://github.com/advisories/GHSA-abcd-1234-efgh", "repository_advisory_url": "https://api.github.com/repos/project/a-package/security-advisories/GHSA-abcd-1234-efgh", "summary": "公告的简短摘要。", "description": "公告内容的详细描述。", "type": "reviewed", "severity": "high", "source_code_location": "https://github.com/project/a-package", "identifiers": [ { "type": "GHSA", "value": "GHSA-abcd-1234-efgh" }, { "type": "CVE", "value": "CVE-2050-00000" } ], "references": [ "https://nvd.nist.gov/vuln/detail/CVE-2050-00000" ], "published_at": "2023-03-23T02:30:56Z", "updated_at": "2023-03-24T02:30:56Z", "github_reviewed_at": "2023-03-23T02:30:56Z", "nvd_published_at": "2023-03-25T02:30:56Z", "withdrawn_at": null, "vulnerabilities": [ { "package": { "ecosystem": "npm", "name": "a-package" }, "first_patched_version": "1.0.3", "vulnerable_version_range": "<=1.0.2", "vulnerable_functions": [ "a_function" ] } ], "cvss": { "vector_string": "CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:H", "score": 7.6 }, "cwes": [ { "cwe_id": "CWE-400", "name": "Uncontrolled Resource Consumption" } ], "credits": [ { "user": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", "url": "https://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false }, "type": "analyst" } ] }