Get a list of active risks for your account
Changed onReturns a list of risks that have been detected for your account.
Required API key permissions: BreachRisk (select when creating API key in Account Settings)
Request
- Base URLhttps://cyber-risk.upguard.com/api/public
- AuthAPI key in header Authorization
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Query parameters
Minimum severity for the risks
Include metadata for risks
Include sources for risks, e.g. the hostname and/or IP addresses the risk was detected on, including ports when available
Only return risks on hosts in any of these domain portfolios. Get portfolio names from /asset_portfolio/list. Portfolio names are case-sensitive. A domain that is not in any portfolio is in the default portfolio, and an IP host is only in the default portfolio. A risk keeps only its hosts in the named portfolios, and is omitted if none remain. firstDetected and risk waivers reflect only those hosts. Returns 422 if your account does not have domain portfolios or a portfolio does not exist, and 403 if you do not have access to a portfolio.
Response
A list of detected risks
Example response
{
"risks": [
{
"category": "dns",
"description": "Domains must be renewed within specified intervals to maintain ownership of the name. The minimum interval is 1 year and the maximum interval is 10 years. If a domain is not renewed within the appropriate interval, the domain name becomes “expired.” There is a 30 day grace period where the domain owner can still renew the expired domain name. After that, the domain can be purchased by a third party",
"finding": "Domain expired",
"firstDetected": "\"2019-10-12T07:20:50.52Z\"",
"hostnameCount": 2,
"hostnameMeta": {
"example.com": "'SMTP': [listening on port 25]"
},
"hostnames": [
"example.com",
"subdomain.example.com"
],
"id": "domain_expired",
"remediation": "The domain should be renewed as soon as possible with the registrar. Domains can be configured with auto-renewal to ensure that they are renewed before the expiration date",
"risk": "This domain is expired. An expired domain is no longer functional. Any services relying on the expired domain will become unavailable. In addition to the loss of functionality, expired domains can be snapped up quickly by third parties and used to drive traffic to malicious and fraudulent websites",
"riskSubtype": "CVE-2021-34473",
"riskType": "verified_vuln",
"risk_waivers": [
{
"active_at": "\"2019-10-12T07:20:50.52Z\"",
"approved_by": "\"john@example.com\"",
"created_by": "\"john@example.com\"",
"expires_at": "\"2019-10-12T07:20:50.52Z\"",
"hostnames": [
"example.com",
"subdomain.example.com"
],
"justification": "\"Loren Ipsum\""
}
],
"severity": "high",
"sources": [
"192.168.1.1",
"subdomain.example.com",
"example.com:443"
]
}
]
}Changes
- info
added the new optional
queryrequest parameterasset_portfolio_names
- info