devsecops-tools's People
devsecops-tools's Issues
Tekton Zap Scan Result
ZAP Scanning Report
Summary of Alerts
Risk Level | Number of Alerts |
---|---|
High | 0 |
Medium | 3 |
Low | 3 |
Informational | 0 |
Alerts
Name | Risk Level | Number of Instances |
---|---|---|
Absence of Anti-CSRF Tokens | Medium | 4 |
Content Security Policy (CSP) Header Not Set | Medium | 5 |
Missing Anti-clickjacking Header | Medium | 2 |
Server Leaks Version Information via "Server" HTTP Response Header Field | Low | 10 |
Timestamp Disclosure - Unix | Low | 1 |
X-Content-Type-Options Header Missing | Low | 7 |
Alert Detail
Absence of Anti-CSRF Tokens
Medium (Low)
Description
No Anti-CSRF tokens were found in a HTML submission form.
A cross-site request forgery is an attack that involves forcing a victim to send an HTTP request to a target destination without their knowledge or intent in order to perform an action as the victim. The underlying cause is application functionality using predictable URL/form actions in a repeatable way. The nature of the attack is that CSRF exploits the trust that a web site has for a user. By contrast, cross-site scripting (XSS) exploits the trust that a user has for a web site. Like XSS, CSRF attacks are not necessarily cross-site, but they can be. Cross-site request forgery is also known as CSRF, XSRF, one-click attack, session riding, confused deputy, and sea surf.
CSRF attacks are effective in a number of situations, including:
* The victim has an active session on the target site.
* The victim is authenticated via HTTP auth on the target site.
* The victim is on the same local network as the target site.
CSRF has primarily been used to perform an action against a target site using the victim's privileges, but recent techniques have been discovered to disclose information by gaining access to the response. The risk of information disclosure is dramatically increased when the target site is vulnerable to XSS, because XSS can be used as a platform for CSRF, allowing the attack to operate within the bounds of the same-origin policy.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="sb-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="footer-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="sb-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="footer-search" action="/search/">
- Method:
Instances: 4
Solution
Phase: Architecture and Design
Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
For example, use anti-CSRF packages such as the OWASP CSRFGuard.
Phase: Implementation
Ensure that your application is free of cross-site scripting issues, because most CSRF defenses can be bypassed using attacker-controlled script.
Phase: Architecture and Design
Generate a unique nonce for each form, place the nonce into the form, and verify the nonce upon receipt of the form. Be sure that the nonce is not predictable (CWE-330).
Note that this can be bypassed using XSS.
Identify especially dangerous operations. When the user performs a dangerous operation, send a separate confirmation request to ensure that the user intended to perform that operation.
Note that this can be bypassed using XSS.
Use the ESAPI Session Management control.
This control includes a component for CSRF.
Do not use the GET method for any request that triggers a state change.
Phase: Implementation
Check the HTTP Referer header to see if the request originated from an expected page. This could break legitimate functionality, because users or proxies may have disabled sending the Referer for privacy reasons.
Reference
- http://projects.webappsec.org/Cross-Site-Request-Forgery
- http://cwe.mitre.org/data/definitions/352.html
CWE Id: 352
WASC Id: 9
Source ID: 3
Content Security Policy (CSP) Header Not Set
Medium (High)
Description
Content Security Policy (CSP) is an added layer of security that helps to detect and mitigate certain types of attacks, including Cross Site Scripting (XSS) and data injection attacks. These attacks are used for everything from data theft to site defacement or distribution of malware. CSP provides a set of standard HTTP headers that allow website owners to declare approved sources of content that browsers should be allowed to load on that page — covered types are JavaScript, CSS, HTML frames, fonts, images and embeddable objects such as Java applets, ActiveX, audio and video files.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/robots.txt
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/search/%3Fq=ZAP
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/sitemap.xml
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
Instances: 5
Solution
Ensure that your web server, application server, load balancer, etc. is configured to set the Content-Security-Policy header, to achieve optimal browser support: "Content-Security-Policy" for Chrome 25+, Firefox 23+ and Safari 7+, "X-Content-Security-Policy" for Firefox 4.0+ and Internet Explorer 10+, and "X-WebKit-CSP" for Chrome 14+ and Safari 6+.
Reference
- https://developer.mozilla.org/en-US/docs/Web/Security/CSP/Introducing_Content_Security_Policy
- https://cheatsheetseries.owasp.org/cheatsheets/Content_Security_Policy_Cheat_Sheet.html
- http://www.w3.org/TR/CSP/
- http://w3c.github.io/webappsec/specs/content-security-policy/csp-specification.dev.html
- http://www.html5rocks.com/en/tutorials/security/content-security-policy/
- http://caniuse.com/#feat=contentsecuritypolicy
- http://content-security-policy.com/
CWE Id: 693
WASC Id: 15
Source ID: 3
Missing Anti-clickjacking Header
Medium (Medium)
Description
The response does not include either Content-Security-Policy with 'frame-ancestors' directive or X-Frame-Options to protect against 'ClickJacking' attacks.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter:
X-Frame-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter:
X-Frame-Options
- Attack: ``
- Evidence: ``
- Method:
Instances: 2
Solution
Modern Web browsers support the Content-Security-Policy and X-Frame-Options HTTP headers. Ensure one of them is set on all web pages returned by your site/app.
If you expect the page to be framed only by pages on your server (e.g. it's part of a FRAMESET) then you'll want to use SAMEORIGIN, otherwise if you never expect the page to be framed, you should use DENY. Alternatively consider implementing Content Security Policy's "frame-ancestors" directive.
Reference
CWE Id: 1021
WASC Id: 15
Source ID: 3
Server Leaks Version Information via "Server" HTTP Response Header Field
Low (High)
Description
The web/application server is leaking version information via the "Server" HTTP response header. Access to such information may facilitate attackers identifying other vulnerabilities your web/application server is subject to.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/images/sitelogo.png
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/robots.txt
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/search/%3Fq=ZAP
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/css/main.css
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/images/tiny-eyeicon.png
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/site.css
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/sitemap.xml
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
Instances: 10
Solution
Ensure that your web server, application server, load balancer, etc. is configured to suppress the "Server" header or provide generic details.
Reference
- http://httpd.apache.org/docs/current/mod/core.html#servertokens
- http://msdn.microsoft.com/en-us/library/ff648552.aspx#ht_urlscan_007
- http://blogs.msdn.com/b/varunm/archive/2013/04/23/remove-unwanted-http-response-headers.aspx
- http://www.troyhunt.com/2012/02/shhh-dont-let-your-response-headers.html
CWE Id: 200
WASC Id: 13
Source ID: 3
Timestamp Disclosure - Unix
Low (Low)
Description
A timestamp was disclosed by the application/web server - Unix
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
11009417
- Method:
Instances: 1
Solution
Manually confirm that the timestamp data is not sensitive, and that the data cannot be aggregated to disclose exploitable patterns.
Reference
CWE Id: 200
WASC Id: 13
Source ID: 3
X-Content-Type-Options Header Missing
Low (Medium)
Description
The Anti-MIME-Sniffing header X-Content-Type-Options was not set to 'nosniff'. This allows older versions of Internet Explorer and Chrome to perform MIME-sniffing on the response body, potentially causing the response body to be interpreted and displayed as a content type other than the declared content type. Current (early 2014) and legacy versions of Firefox will use the declared content type (if one is set), rather than performing MIME-sniffing.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/images/sitelogo.png
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/css/main.css
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/images/tiny-eyeicon.png
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/site.css
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
Instances: 7
Solution
Ensure that the application/web server sets the Content-Type header appropriately, and that it sets the X-Content-Type-Options header to 'nosniff' for all web pages.
If possible, ensure that the end user uses a standards-compliant and modern web browser that does not perform MIME-sniffing at all, or that can be directed by the web application/web server to not perform MIME-sniffing.
Reference
- http://msdn.microsoft.com/en-us/library/ie/gg622941%28v=vs.85%29.aspx
- https://owasp.org/www-community/Security_Headers
CWE Id: 693
WASC Id: 15
Source ID: 3
Tekton Zap Scan Result
Tekton Zap Scan Result
Tekton Zap Scan Result
Tekton ZAP Scan Result (Manual)
ZAP Scanning Report
Summary of Alerts
Risk Level | Number of Alerts |
---|---|
High | 0 |
Medium | 3 |
Low | 3 |
Informational | 0 |
Alerts
Name | Risk Level | Number of Instances |
---|---|---|
Absence of Anti-CSRF Tokens | Medium | 4 |
Content Security Policy (CSP) Header Not Set | Medium | 5 |
Missing Anti-clickjacking Header | Medium | 2 |
Server Leaks Version Information via "Server" HTTP Response Header Field | Low | 10 |
Timestamp Disclosure - Unix | Low | 1 |
X-Content-Type-Options Header Missing | Low | 7 |
Alert Detail
Absence of Anti-CSRF Tokens
Medium (Low)
Description
No Anti-CSRF tokens were found in a HTML submission form.
A cross-site request forgery is an attack that involves forcing a victim to send an HTTP request to a target destination without their knowledge or intent in order to perform an action as the victim. The underlying cause is application functionality using predictable URL/form actions in a repeatable way. The nature of the attack is that CSRF exploits the trust that a web site has for a user. By contrast, cross-site scripting (XSS) exploits the trust that a user has for a web site. Like XSS, CSRF attacks are not necessarily cross-site, but they can be. Cross-site request forgery is also known as CSRF, XSRF, one-click attack, session riding, confused deputy, and sea surf.
CSRF attacks are effective in a number of situations, including:
* The victim has an active session on the target site.
* The victim is authenticated via HTTP auth on the target site.
* The victim is on the same local network as the target site.
CSRF has primarily been used to perform an action against a target site using the victim's privileges, but recent techniques have been discovered to disclose information by gaining access to the response. The risk of information disclosure is dramatically increased when the target site is vulnerable to XSS, because XSS can be used as a platform for CSRF, allowing the attack to operate within the bounds of the same-origin policy.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="sb-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="footer-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="sb-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="footer-search" action="/search/">
- Method:
Instances: 4
Solution
Phase: Architecture and Design
Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
For example, use anti-CSRF packages such as the OWASP CSRFGuard.
Phase: Implementation
Ensure that your application is free of cross-site scripting issues, because most CSRF defenses can be bypassed using attacker-controlled script.
Phase: Architecture and Design
Generate a unique nonce for each form, place the nonce into the form, and verify the nonce upon receipt of the form. Be sure that the nonce is not predictable (CWE-330).
Note that this can be bypassed using XSS.
Identify especially dangerous operations. When the user performs a dangerous operation, send a separate confirmation request to ensure that the user intended to perform that operation.
Note that this can be bypassed using XSS.
Use the ESAPI Session Management control.
This control includes a component for CSRF.
Do not use the GET method for any request that triggers a state change.
Phase: Implementation
Check the HTTP Referer header to see if the request originated from an expected page. This could break legitimate functionality, because users or proxies may have disabled sending the Referer for privacy reasons.
Reference
- http://projects.webappsec.org/Cross-Site-Request-Forgery
- http://cwe.mitre.org/data/definitions/352.html
CWE Id: 352
WASC Id: 9
Source ID: 3
Content Security Policy (CSP) Header Not Set
Medium (High)
Description
Content Security Policy (CSP) is an added layer of security that helps to detect and mitigate certain types of attacks, including Cross Site Scripting (XSS) and data injection attacks. These attacks are used for everything from data theft to site defacement or distribution of malware. CSP provides a set of standard HTTP headers that allow website owners to declare approved sources of content that browsers should be allowed to load on that page — covered types are JavaScript, CSS, HTML frames, fonts, images and embeddable objects such as Java applets, ActiveX, audio and video files.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/robots.txt
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/search/%3Fq=ZAP
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/sitemap.xml
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
Instances: 5
Solution
Ensure that your web server, application server, load balancer, etc. is configured to set the Content-Security-Policy header, to achieve optimal browser support: "Content-Security-Policy" for Chrome 25+, Firefox 23+ and Safari 7+, "X-Content-Security-Policy" for Firefox 4.0+ and Internet Explorer 10+, and "X-WebKit-CSP" for Chrome 14+ and Safari 6+.
Reference
- https://developer.mozilla.org/en-US/docs/Web/Security/CSP/Introducing_Content_Security_Policy
- https://cheatsheetseries.owasp.org/cheatsheets/Content_Security_Policy_Cheat_Sheet.html
- http://www.w3.org/TR/CSP/
- http://w3c.github.io/webappsec/specs/content-security-policy/csp-specification.dev.html
- http://www.html5rocks.com/en/tutorials/security/content-security-policy/
- http://caniuse.com/#feat=contentsecuritypolicy
- http://content-security-policy.com/
CWE Id: 693
WASC Id: 15
Source ID: 3
Missing Anti-clickjacking Header
Medium (Medium)
Description
The response does not include either Content-Security-Policy with 'frame-ancestors' directive or X-Frame-Options to protect against 'ClickJacking' attacks.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter:
X-Frame-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter:
X-Frame-Options
- Attack: ``
- Evidence: ``
- Method:
Instances: 2
Solution
Modern Web browsers support the Content-Security-Policy and X-Frame-Options HTTP headers. Ensure one of them is set on all web pages returned by your site/app.
If you expect the page to be framed only by pages on your server (e.g. it's part of a FRAMESET) then you'll want to use SAMEORIGIN, otherwise if you never expect the page to be framed, you should use DENY. Alternatively consider implementing Content Security Policy's "frame-ancestors" directive.
Reference
CWE Id: 1021
WASC Id: 15
Source ID: 3
Server Leaks Version Information via "Server" HTTP Response Header Field
Low (High)
Description
The web/application server is leaking version information via the "Server" HTTP response header. Access to such information may facilitate attackers identifying other vulnerabilities your web/application server is subject to.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/images/sitelogo.png
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/robots.txt
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/search/%3Fq=ZAP
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/css/main.css
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/images/tiny-eyeicon.png
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/site.css
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/sitemap.xml
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
Instances: 10
Solution
Ensure that your web server, application server, load balancer, etc. is configured to suppress the "Server" header or provide generic details.
Reference
- http://httpd.apache.org/docs/current/mod/core.html#servertokens
- http://msdn.microsoft.com/en-us/library/ff648552.aspx#ht_urlscan_007
- http://blogs.msdn.com/b/varunm/archive/2013/04/23/remove-unwanted-http-response-headers.aspx
- http://www.troyhunt.com/2012/02/shhh-dont-let-your-response-headers.html
CWE Id: 200
WASC Id: 13
Source ID: 3
Timestamp Disclosure - Unix
Low (Low)
Description
A timestamp was disclosed by the application/web server - Unix
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
11009417
- Method:
Instances: 1
Solution
Manually confirm that the timestamp data is not sensitive, and that the data cannot be aggregated to disclose exploitable patterns.
Reference
CWE Id: 200
WASC Id: 13
Source ID: 3
X-Content-Type-Options Header Missing
Low (Medium)
Description
The Anti-MIME-Sniffing header X-Content-Type-Options was not set to 'nosniff'. This allows older versions of Internet Explorer and Chrome to perform MIME-sniffing on the response body, potentially causing the response body to be interpreted and displayed as a content type other than the declared content type. Current (early 2014) and legacy versions of Firefox will use the declared content type (if one is set), rather than performing MIME-sniffing.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/images/sitelogo.png
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/css/main.css
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/images/tiny-eyeicon.png
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/site.css
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
Instances: 7
Solution
Ensure that the application/web server sets the Content-Type header appropriately, and that it sets the X-Content-Type-Options header to 'nosniff' for all web pages.
If possible, ensure that the end user uses a standards-compliant and modern web browser that does not perform MIME-sniffing at all, or that can be directed by the web application/web server to not perform MIME-sniffing.
Reference
- http://msdn.microsoft.com/en-us/library/ie/gg622941%28v=vs.85%29.aspx
- https://owasp.org/www-community/Security_Headers
CWE Id: 693
WASC Id: 15
Source ID: 3
Tekton Zap Scan Result
Tekton Zap Scan Result
ZAP Scanning Report
Summary of Alerts
Risk Level | Number of Alerts |
---|---|
High | 0 |
Medium | 3 |
Low | 3 |
Informational | 0 |
Alerts
Name | Risk Level | Number of Instances |
---|---|---|
Absence of Anti-CSRF Tokens | Medium | 4 |
Content Security Policy (CSP) Header Not Set | Medium | 5 |
Missing Anti-clickjacking Header | Medium | 2 |
Server Leaks Version Information via "Server" HTTP Response Header Field | Low | 10 |
Timestamp Disclosure - Unix | Low | 1 |
X-Content-Type-Options Header Missing | Low | 7 |
Alert Detail
Absence of Anti-CSRF Tokens
Medium (Low)
Description
No Anti-CSRF tokens were found in a HTML submission form.
A cross-site request forgery is an attack that involves forcing a victim to send an HTTP request to a target destination without their knowledge or intent in order to perform an action as the victim. The underlying cause is application functionality using predictable URL/form actions in a repeatable way. The nature of the attack is that CSRF exploits the trust that a web site has for a user. By contrast, cross-site scripting (XSS) exploits the trust that a user has for a web site. Like XSS, CSRF attacks are not necessarily cross-site, but they can be. Cross-site request forgery is also known as CSRF, XSRF, one-click attack, session riding, confused deputy, and sea surf.
CSRF attacks are effective in a number of situations, including:
* The victim has an active session on the target site.
* The victim is authenticated via HTTP auth on the target site.
* The victim is on the same local network as the target site.
CSRF has primarily been used to perform an action against a target site using the victim's privileges, but recent techniques have been discovered to disclose information by gaining access to the response. The risk of information disclosure is dramatically increased when the target site is vulnerable to XSS, because XSS can be used as a platform for CSRF, allowing the attack to operate within the bounds of the same-origin policy.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="sb-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="footer-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="sb-search" action="/search/">
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
<form id="footer-search" action="/search/">
- Method:
Instances: 4
Solution
Phase: Architecture and Design
Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
For example, use anti-CSRF packages such as the OWASP CSRFGuard.
Phase: Implementation
Ensure that your application is free of cross-site scripting issues, because most CSRF defenses can be bypassed using attacker-controlled script.
Phase: Architecture and Design
Generate a unique nonce for each form, place the nonce into the form, and verify the nonce upon receipt of the form. Be sure that the nonce is not predictable (CWE-330).
Note that this can be bypassed using XSS.
Identify especially dangerous operations. When the user performs a dangerous operation, send a separate confirmation request to ensure that the user intended to perform that operation.
Note that this can be bypassed using XSS.
Use the ESAPI Session Management control.
This control includes a component for CSRF.
Do not use the GET method for any request that triggers a state change.
Phase: Implementation
Check the HTTP Referer header to see if the request originated from an expected page. This could break legitimate functionality, because users or proxies may have disabled sending the Referer for privacy reasons.
Reference
- http://projects.webappsec.org/Cross-Site-Request-Forgery
- http://cwe.mitre.org/data/definitions/352.html
CWE Id: 352
WASC Id: 9
Source ID: 3
Content Security Policy (CSP) Header Not Set
Medium (High)
Description
Content Security Policy (CSP) is an added layer of security that helps to detect and mitigate certain types of attacks, including Cross Site Scripting (XSS) and data injection attacks. These attacks are used for everything from data theft to site defacement or distribution of malware. CSP provides a set of standard HTTP headers that allow website owners to declare approved sources of content that browsers should be allowed to load on that page — covered types are JavaScript, CSS, HTML frames, fonts, images and embeddable objects such as Java applets, ActiveX, audio and video files.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/robots.txt
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/search/%3Fq=ZAP
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/sitemap.xml
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence: ``
- Method:
Instances: 5
Solution
Ensure that your web server, application server, load balancer, etc. is configured to set the Content-Security-Policy header, to achieve optimal browser support: "Content-Security-Policy" for Chrome 25+, Firefox 23+ and Safari 7+, "X-Content-Security-Policy" for Firefox 4.0+ and Internet Explorer 10+, and "X-WebKit-CSP" for Chrome 14+ and Safari 6+.
Reference
- https://developer.mozilla.org/en-US/docs/Web/Security/CSP/Introducing_Content_Security_Policy
- https://cheatsheetseries.owasp.org/cheatsheets/Content_Security_Policy_Cheat_Sheet.html
- http://www.w3.org/TR/CSP/
- http://w3c.github.io/webappsec/specs/content-security-policy/csp-specification.dev.html
- http://www.html5rocks.com/en/tutorials/security/content-security-policy/
- http://caniuse.com/#feat=contentsecuritypolicy
- http://content-security-policy.com/
CWE Id: 693
WASC Id: 15
Source ID: 3
Missing Anti-clickjacking Header
Medium (Medium)
Description
The response does not include either Content-Security-Policy with 'frame-ancestors' directive or X-Frame-Options to protect against 'ClickJacking' attacks.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter:
X-Frame-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter:
X-Frame-Options
- Attack: ``
- Evidence: ``
- Method:
Instances: 2
Solution
Modern Web browsers support the Content-Security-Policy and X-Frame-Options HTTP headers. Ensure one of them is set on all web pages returned by your site/app.
If you expect the page to be framed only by pages on your server (e.g. it's part of a FRAMESET) then you'll want to use SAMEORIGIN, otherwise if you never expect the page to be framed, you should use DENY. Alternatively consider implementing Content Security Policy's "frame-ancestors" directive.
Reference
CWE Id: 1021
WASC Id: 15
Source ID: 3
Server Leaks Version Information via "Server" HTTP Response Header Field
Low (High)
Description
The web/application server is leaking version information via the "Server" HTTP response header. Access to such information may facilitate attackers identifying other vulnerabilities your web/application server is subject to.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/images/sitelogo.png
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/robots.txt
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/search/%3Fq=ZAP
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/css/main.css
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/shared/images/tiny-eyeicon.png
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/site.css
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
- URL: http://scanme.nmap.org/sitemap.xml
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
Apache/2.4.7 (Ubuntu)
- Method:
Instances: 10
Solution
Ensure that your web server, application server, load balancer, etc. is configured to suppress the "Server" header or provide generic details.
Reference
- http://httpd.apache.org/docs/current/mod/core.html#servertokens
- http://msdn.microsoft.com/en-us/library/ff648552.aspx#ht_urlscan_007
- http://blogs.msdn.com/b/varunm/archive/2013/04/23/remove-unwanted-http-response-headers.aspx
- http://www.troyhunt.com/2012/02/shhh-dont-let-your-response-headers.html
CWE Id: 200
WASC Id: 13
Source ID: 3
Timestamp Disclosure - Unix
Low (Low)
Description
A timestamp was disclosed by the application/web server - Unix
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter: ``
- Attack: ``
- Evidence:
11009417
- Method:
Instances: 1
Solution
Manually confirm that the timestamp data is not sensitive, and that the data cannot be aggregated to disclose exploitable patterns.
Reference
CWE Id: 200
WASC Id: 13
Source ID: 3
X-Content-Type-Options Header Missing
Low (Medium)
Description
The Anti-MIME-Sniffing header X-Content-Type-Options was not set to 'nosniff'. This allows older versions of Internet Explorer and Chrome to perform MIME-sniffing on the response body, potentially causing the response body to be interpreted and displayed as a content type other than the declared content type. Current (early 2014) and legacy versions of Firefox will use the declared content type (if one is set), rather than performing MIME-sniffing.
- URL: http://scanme.nmap.org
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/images/sitelogo.png
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/css/main.css
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/ga.js
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/shared/images/tiny-eyeicon.png
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
- URL: http://scanme.nmap.org/site.css
- Method:
GET
- Parameter:
X-Content-Type-Options
- Attack: ``
- Evidence: ``
- Method:
Instances: 7
Solution
Ensure that the application/web server sets the Content-Type header appropriately, and that it sets the X-Content-Type-Options header to 'nosniff' for all web pages.
If possible, ensure that the end user uses a standards-compliant and modern web browser that does not perform MIME-sniffing at all, or that can be directed by the web application/web server to not perform MIME-sniffing.
Reference
- http://msdn.microsoft.com/en-us/library/ie/gg622941%28v=vs.85%29.aspx
- https://owasp.org/www-community/Security_Headers
CWE Id: 693
WASC Id: 15
Source ID: 3
Tekton Zap Scan Result
Tekton Zap Scan Result
ZAP Full Scan Report
- Site: https://photo-sharing-web--bcb254-dev.apps.clab.devops.gov.bc.ca
New Alerts- Content Security Policy (CSP) Header Not Set [10038] total: 4:
- Proxy Disclosure [40025] total: 4:
- Permissions Policy Header Not Set [10063] total: 4:
- Strict-Transport-Security Header Not Set [10035] total: 4:
- Timestamp Disclosure - Unix [10096] total: 4:
- Non-Storable Content [10049] total: 4:
View the following link to download the report.
RunnerID:1995065261
Tekton Zap Scan Result
Tekton Zap Scan Result
Tekton Zap Scan Result
Tekton Zap Scan Result
Tekton Zap Scan Result
Tekton Zap Scan Result
OWAP Baseline
- Site: https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca
New Alerts- Content Security Policy (CSP) Header Not Set [10038] total: 3:
- Missing Anti-clickjacking Header [10020] total: 3:
- Cookie with SameSite Attribute None [10054] total: 2:
- Dangerous JS Functions [10110] total: 1:
- Incomplete or No Cache-control Header Set [10015] total: 3:
- Permissions Policy Header Not Set [10063] total: 5:
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/logo192.png
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/sitemap.xml
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/2.8ae38162.chunk.js
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/main.3383beb6.chunk.js
- Strict-Transport-Security Header Not Set [10035] total: 10:
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/favicon.ico
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/logo192.png
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/manifest.json
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/robots.txt
- ..
- Timestamp Disclosure - Unix [10096] total: 61:
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/2.8ae38162.chunk.js
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/2.8ae38162.chunk.js
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/2.8ae38162.chunk.js
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/2.8ae38162.chunk.js
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/2.8ae38162.chunk.js
- ..
- X-Content-Type-Options Header Missing [10021] total: 10:
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/favicon.ico
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/logo192.png
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/manifest.json
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/robots.txt
- ..
- Base64 Disclosure [10094] total: 1:
- Content-Type Header Missing [10019] total: 3:
- Information Disclosure - Suspicious Comments [10027] total: 2:
- Modern Web Application [10109] total: 4:
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/logo192.png
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/sitemap.xml
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/js/2.8ae38162.chunk.js
- Non-Storable Content [10049] total: 2:
- Storable and Cacheable Content [10049] total: 8:
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/favicon.ico
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/logo192.png
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/manifest.json
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/sitemap.xml
- https://mautic-subscription-prod-de0974-prod.apps.silver.devops.gov.bc.ca/static/css/2.f01efe62.chunk.css
- ..
View the following link to download the report.
RunnerID:1889296726
test title
test body
Tekton Zap Scan Result
tekton zap scan result test
gh auth login testing successful
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.