ZAP Scanning Report

Site: http://api.datasubvention.beta.gouv.fr

Generated on Sun, 8 Jun 2025 11:46:46

ZAP Version: 2.16.1

ZAP by Checkmarx

Summary of Alerts

Risk Level Number of Alerts
High
0
Medium
1
Low
2
Informational
5
False Positives:
0

Summary of Sequences

For each step: result (Pass/Fail) - risk (of highest alert(s) for the step, if any).

Alerts

Name Risk Level Number of Instances
CSP: Failure to Define Directive with No Fallback Medium 1
Permissions Policy Header Not Set Low 2
Server Leaks Information via "X-Powered-By" HTTP Response Header Field(s) Low 3
Sec-Fetch-Dest Header is Missing Informational 3
Sec-Fetch-Mode Header is Missing Informational 3
Sec-Fetch-Site Header is Missing Informational 3
Sec-Fetch-User Header is Missing Informational 3
Storable and Cacheable Content Informational 3

Alert Detail

Medium
CSP: Failure to Define Directive with No Fallback
Description
The Content Security Policy fails to define one of the directives that has no fallback. Missing/excluding them is the same as allowing anything.
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter Content-Security-Policy
Attack
Evidence default-src 'none'
Other Info The directive(s): frame-ancestors, form-action is/are among the directives that do not fallback to default-src.
Instances 1
Solution
Ensure that your web server, application server, load balancer, etc. is properly configured to set the Content-Security-Policy header.
Reference https://www.w3.org/TR/CSP/
https://caniuse.com/#search=content+security+policy
https://content-security-policy.com/
https://github.com/HtmlUnit/htmlunit-csp
https://developers.google.com/web/fundamentals/security/csp#policy_applies_to_a_wide_variety_of_resources
CWE Id 693
WASC Id 15
Plugin Id 10055
Low
Permissions Policy Header Not Set
Description
Permissions Policy Header is an added layer of security that helps to restrict from unauthorized access or usage of browser/client features by web resources. This policy ensures the user privacy by limiting or specifying the features of the browsers can be used by the web resources. Permissions Policy provides a set of standard HTTP headers that allow website owners to limit which features of browsers can be used by the page such as camera, microphone, location, full screen etc.
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/sitemap.xml
Method GET
Parameter
Attack
Evidence
Other Info
Instances 2
Solution
Ensure that your web server, application server, load balancer, etc. is configured to set the Permissions-Policy header.
Reference https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Permissions-Policy
https://developer.chrome.com/blog/feature-policy/
https://scotthelme.co.uk/a-new-security-header-feature-policy/
https://w3c.github.io/webappsec-feature-policy/
https://www.smashingmagazine.com/2018/12/feature-policy/
CWE Id 693
WASC Id 15
Plugin Id 10063
Low
Server Leaks Information via "X-Powered-By" HTTP Response Header Field(s)
Description
The web/application server is leaking information via one or more "X-Powered-By" HTTP response headers. Access to such information may facilitate attackers identifying other frameworks/components your web application is reliant upon and the vulnerabilities such components may be subject to.
URL http://api.datasubvention.beta.gouv.fr
Method GET
Parameter
Attack
Evidence X-Powered-By: Express
Other Info
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter
Attack
Evidence X-Powered-By: Express
Other Info
URL http://api.datasubvention.beta.gouv.fr/sitemap.xml
Method GET
Parameter
Attack
Evidence X-Powered-By: Express
Other Info
Instances 3
Solution
Ensure that your web server, application server, load balancer, etc. is configured to suppress "X-Powered-By" headers.
Reference https://owasp.org/www-project-web-security-testing-guide/v42/4-Web_Application_Security_Testing/01-Information_Gathering/08-Fingerprint_Web_Application_Framework
https://www.troyhunt.com/2012/02/shhh-dont-let-your-response-headers.html
CWE Id 497
WASC Id 13
Plugin Id 10037
Informational
Sec-Fetch-Dest Header is Missing
Description
Specifies how and where the data would be used. For instance, if the value is audio, then the requested resource must be audio data and not any other type of resource.
URL http://api.datasubvention.beta.gouv.fr
Method GET
Parameter Sec-Fetch-Dest
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter Sec-Fetch-Dest
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/sitemap.xml
Method GET
Parameter Sec-Fetch-Dest
Attack
Evidence
Other Info
Instances 3
Solution
Ensure that Sec-Fetch-Dest header is included in request headers.
Reference https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Dest
CWE Id 352
WASC Id 9
Plugin Id 90005
Informational
Sec-Fetch-Mode Header is Missing
Description
Allows to differentiate between requests for navigating between HTML pages and requests for loading resources like images, audio etc.
URL http://api.datasubvention.beta.gouv.fr
Method GET
Parameter Sec-Fetch-Mode
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter Sec-Fetch-Mode
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/sitemap.xml
Method GET
Parameter Sec-Fetch-Mode
Attack
Evidence
Other Info
Instances 3
Solution
Ensure that Sec-Fetch-Mode header is included in request headers.
Reference https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Mode
CWE Id 352
WASC Id 9
Plugin Id 90005
Informational
Sec-Fetch-Site Header is Missing
Description
Specifies the relationship between request initiator's origin and target's origin.
URL http://api.datasubvention.beta.gouv.fr
Method GET
Parameter Sec-Fetch-Site
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter Sec-Fetch-Site
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/sitemap.xml
Method GET
Parameter Sec-Fetch-Site
Attack
Evidence
Other Info
Instances 3
Solution
Ensure that Sec-Fetch-Site header is included in request headers.
Reference https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Site
CWE Id 352
WASC Id 9
Plugin Id 90005
Informational
Sec-Fetch-User Header is Missing
Description
Specifies if a navigation request was initiated by a user.
URL http://api.datasubvention.beta.gouv.fr
Method GET
Parameter Sec-Fetch-User
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter Sec-Fetch-User
Attack
Evidence
Other Info
URL http://api.datasubvention.beta.gouv.fr/sitemap.xml
Method GET
Parameter Sec-Fetch-User
Attack
Evidence
Other Info
Instances 3
Solution
Ensure that Sec-Fetch-User header is included in user initiated requests.
Reference https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-User
CWE Id 352
WASC Id 9
Plugin Id 90005
Informational
Storable and Cacheable Content
Description
The response contents are storable by caching components such as proxy servers, and may be retrieved directly from the cache, rather than from the origin server by the caching servers, in response to similar requests from other users. If the response data is sensitive, personal or user-specific, this may result in sensitive information being leaked. In some cases, this may even result in a user gaining complete control of the session of another user, depending on the configuration of the caching components in use in their environment. This is primarily an issue where "shared" caching servers such as "proxy" caches are configured on the local network. This configuration is typically found in corporate or educational environments, for instance.
URL http://api.datasubvention.beta.gouv.fr
Method GET
Parameter
Attack
Evidence
Other Info In the absence of an explicitly specified caching lifetime directive in the response, a liberal lifetime heuristic of 1 year was assumed. This is permitted by rfc7234.
URL http://api.datasubvention.beta.gouv.fr/robots.txt
Method GET
Parameter
Attack
Evidence
Other Info In the absence of an explicitly specified caching lifetime directive in the response, a liberal lifetime heuristic of 1 year was assumed. This is permitted by rfc7234.
URL http://api.datasubvention.beta.gouv.fr/sitemap.xml
Method GET
Parameter
Attack
Evidence
Other Info In the absence of an explicitly specified caching lifetime directive in the response, a liberal lifetime heuristic of 1 year was assumed. This is permitted by rfc7234.
Instances 3
Solution
Validate that the response does not contain sensitive, personal or user-specific information. If it does, consider the use of the following HTTP response headers, to limit, or prevent the content being stored and retrieved from the cache by another user:

Cache-Control: no-cache, no-store, must-revalidate, private

Pragma: no-cache

Expires: 0

This configuration directs both HTTP 1.0 and HTTP 1.1 compliant caching servers to not store the response, and to not retrieve the response (without validation) from the cache, in response to a similar request.
Reference https://datatracker.ietf.org/doc/html/rfc7234
https://datatracker.ietf.org/doc/html/rfc7231
https://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html
CWE Id 524
WASC Id 13
Plugin Id 10049

Sequence Details

With the associated active scan results.