Skip to content

Commit

Permalink
Update alert pages
Browse files Browse the repository at this point in the history
Signed-off-by: zapbot <12745184+zapbot@users.noreply.github.com>
  • Loading branch information
zapbot committed Jul 14, 2023
1 parent 3565f72 commit d0fa106
Show file tree
Hide file tree
Showing 17 changed files with 49 additions and 75 deletions.
6 changes: 3 additions & 3 deletions site/content/docs/alerts/10099.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 10099
alertindex: 1009900
alerttype: "Passive"
alertcount: 1
status: alpha
status: beta
type: alert
risk: Medium
solution: "Ensure that application Source Code is not available with alternative extensions, and ensure that source code is not present within other files or data deployed to the web server, or served by the web server. "
Expand All @@ -15,7 +15,7 @@ wasc: 13
alerttags:
- OWASP_2017_A06
- OWASP_2021_A05
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesAlpha/src/main/java/org/zaproxy/zap/extension/pscanrulesAlpha/SourceCodeDisclosureScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesAlpha/SourceCodeDisclosureScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesBeta/src/main/java/org/zaproxy/zap/extension/pscanrulesBeta/SourceCodeDisclosureScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesBeta/SourceCodeDisclosureScanRule.java"
---
Application Source Code was disclosed by the web server - PHP
6 changes: 3 additions & 3 deletions site/content/docs/alerts/40042.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 40042
alertindex: 4004200
alerttype: "Active"
alertcount: 1
status: beta
status: release
type: alert
risk: Medium
solution: "Disable the Health Actuators and other actuators, or restrict them to administrative users."
Expand All @@ -19,7 +19,7 @@ alerttags:
- OWASP_2017_A05
- OWASP_2021_A01
- WSTG-v42-CONF-05
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/SpringActuatorScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/SpringActuatorScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrules/src/main/java/org/zaproxy/zap/extension/ascanrules/SpringActuatorScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrules/SpringActuatorScanRule.java"
---
Spring Actuator for Health is enabled and may reveal sensitive information about this application. Spring Actuators can be used for real monitoring purposes, but should be used with caution as to not expose too much information about the application or the infrastructure running it.
6 changes: 3 additions & 3 deletions site/content/docs/alerts/40043-1.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 40043-1
alertindex: 4004301
alerttype: "Active"
alertcount: 2
status: beta
status: release
type: alert
risk: High
solution: "Upgrade Log4j2 to version 2.17.1 or newer. In previous releases (>2.10) this behavior can be mitigated by setting system property 'log4j2.formatMsgNoLookups' to 'true' or by removing the JndiLookup class from the classpath (example: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class). Java 8u121 (see https://www.oracle.com/java/technologies/javase/8u121-relnotes.html) protects against remote code execution by defaulting 'com.sun.jndi.rmi.object.trustURLCodebase' and 'com.sun.jndi.cosnaming.object.trustURLCodebase' to 'false'."
Expand All @@ -21,7 +21,7 @@ alerttags:
- OWASP_2017_A09
- OWASP_2021_A06
- WSTG-v42-INPV-11
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/Log4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/Log4ShellScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrules/src/main/java/org/zaproxy/zap/extension/ascanrules/Log4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrules/Log4ShellScanRule.java"
---
Apache Log4j2 <=2.14.1 JNDI features used in configuration, log messages, and parameters do not protect against attacker controlled LDAP and other JNDI related endpoints. An attacker who can control log messages or log message parameters can execute arbitrary code loaded from LDAP servers when message lookup substitution is enabled. From log4j 2.15.0, this behavior has been disabled by default.
6 changes: 3 additions & 3 deletions site/content/docs/alerts/40043-2.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 40043-2
alertindex: 4004302
alerttype: "Active"
alertcount: 2
status: beta
status: release
type: alert
risk: High
solution: "Upgrade Log4j2 to version 2.17.1 or newer."
Expand All @@ -21,7 +21,7 @@ alerttags:
- OWASP_2017_A09
- OWASP_2021_A06
- WSTG-v42-INPV-11
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/Log4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/Log4ShellScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrules/src/main/java/org/zaproxy/zap/extension/ascanrules/Log4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrules/Log4ShellScanRule.java"
---
It was found that the fix to address CVE-2021-44228 in Apache Log4j 2.15.0 was incomplete in certain non-default configurations. This could allow attackers to craft malicious input data using a JNDI Lookup pattern resulting in an information leak and remote code execution in some environments.
6 changes: 3 additions & 3 deletions site/content/docs/alerts/40043.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: "Log4Shell"
alertid: 40043
alertindex: 4004300
alerttype: "Active"
status: beta
status: release
type: alertset
alerts:
40043-1:
Expand All @@ -12,6 +12,6 @@ alerts:
40043-2:
alertid: 40043-2
name: "Log4Shell (CVE-2021-45046)"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/Log4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/Log4ShellScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrules/src/main/java/org/zaproxy/zap/extension/ascanrules/Log4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrules/Log4ShellScanRule.java"
---
6 changes: 3 additions & 3 deletions site/content/docs/alerts/40045.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 40045
alertindex: 4004500
alerttype: "Active"
alertcount: 1
status: beta
status: release
type: alert
risk: High
solution: "Upgrade Spring Framework to versions 5.3.18, 5.2.20, or newer."
Expand All @@ -25,7 +25,7 @@ alerttags:
- OWASP_2021_A03
- OWASP_2021_A06
- WSTG-v42-INPV-12
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/Spring4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/Spring4ShellScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrules/src/main/java/org/zaproxy/zap/extension/ascanrules/Spring4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrules/Spring4ShellScanRule.java"
---
The application appears to be vulnerable to CVE-2022-22965 (otherwise known as Spring4Shell) - remote code execution (RCE) via data binding.
6 changes: 3 additions & 3 deletions site/content/docs/alerts/40046.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 40046
alertindex: 4004600
alerttype: "Active"
alertcount: 1
status: alpha
status: beta
type: alert
risk: High
solution: "Do not accept remote addresses as request parameters, and if you must, ensure that they are validated against an allow-list of expected values."
Expand All @@ -16,7 +16,7 @@ alerttags:
- OUT_OF_BAND
- OWASP_2021_A10
- WSTG-v42-INPV-19
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesAlpha/src/main/java/org/zaproxy/zap/extension/ascanrulesAlpha/SsrfScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesAlpha/SsrfScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/SsrfScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/SsrfScanRule.java"
---
The web server receives a remote address and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.
8 changes: 4 additions & 4 deletions site/content/docs/alerts/40047.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ alertid: 40047
alertindex: 4004700
alerttype: "Active"
alertcount: 1
status: alpha
status: beta
type: alert
risk: High
solution: "Upgrade Apache Commons Text prior to version 1.10.0 or newer."
references:
- https://www.cve.org/CVERecord?id=CVE-2022-42889
- https://nvd.nist.gov/vuln/detail/CVE-2022-42889
- https://securitylab.github.com/advisories/GHSL-2022-018_Apache_Commons_Text/
cwe: 117
wasc: 20
Expand All @@ -21,7 +21,7 @@ alerttags:
- OWASP_2017_A09
- OWASP_2021_A06
- WSTG-v42-INPV-11
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesAlpha/src/main/java/org/zaproxy/zap/extension/ascanrulesAlpha/Text4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesAlpha/Text4ShellScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/Text4ShellScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/Text4ShellScanRule.java"
---
Apache Commons Text prior to 1.10.0 allows RCE when applied to untrusted input due to insecure interpolation defaults.Apache Commons Text performs variable interpolation, allowing properties to be dynamically evaluated and expanded.The application has been shown to initial contact with remote servers via variable interpolation and may well be vulnerable to Remote Code Execution (RCE).
30 changes: 2 additions & 28 deletions site/content/docs/alerts/43.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,7 @@ alertcount: 1
status: beta
type: alert
risk: High
solution: "Assume all input is malicious. Use an 'accept known good' input validation strategy, i.e., use an allow list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does. Do not rely exclusively on looking for malicious or malformed inputs (i.e., do not rely on a deny list). However, deny lists can be useful for detecting potential attacks or determining which inputs are so malformed that they should be rejected outright.
When performing input validation, consider all potentially relevant properties, including length, type of input, the full range of acceptable values, missing or extra inputs, syntax, consistency across related fields, and conformance to business rules. As an example of business rule logic, 'boat' may be syntactically valid because it only contains alphanumeric characters, but it is not valid if you are expecting colors such as 'red' or 'blue.'
For filenames, use stringent allow lists that limit the character set to be used. If feasible, only allow a single '.' character in the filename to avoid weaknesses, and exclude directory separators such as '/'. Use an allow list of allowable file extensions.
Warning: if you attempt to cleanse your data, then do so that the end result is not in the form that can be dangerous. A sanitizing mechanism can remove characters such as '.' and ';' which may be required for some exploits. An attacker can try to fool the sanitizing mechanism into 'cleaning' data into a dangerous form. Suppose the attacker injects a '.' inside a filename (e.g. 'sensi.tiveFile') and the sanitizing mechanism removes the character resulting in the valid filename, 'sensitiveFile'. If the input data are now assumed to be safe, then the file may be compromised.
Inputs should be decoded and canonicalized to the application's current internal representation before being validated. Make sure that your application does not decode the same input twice. Such errors could be used to bypass allow list schemes by introducing dangerous inputs after they have been checked.
Use a built-in path canonicalization function (such as realpath() in C) that produces the canonical version of the pathname, which effectively removes '..' sequences and symbolic links.
Run your code using the lowest privileges that are required to accomplish the necessary tasks. If possible, create isolated accounts with limited privileges that are only used for a single task. That way, a successful attack will not immediately give the attacker access to the rest of the software or its environment. For example, database applications rarely need to run as the database administrator, especially in day-to-day operations.
When the set of acceptable objects, such as filenames or URLs, is limited or known, create a mapping from a set of fixed input values (such as numeric IDs) to the actual filenames or URLs, and reject all other inputs.
Run your code in a 'jail' or similar sandbox environment that enforces strict boundaries between the process and the operating system. This may effectively restrict which files can be accessed in a particular directory or which commands can be executed by your software.
OS-level examples include the Unix chroot jail, AppArmor, and SELinux. In general, managed code may provide some protection. For example, java.io.FilePermission in the Java SecurityManager allows you to specify restrictions on file operations.
This may not be a feasible solution, and it only limits the impact to the operating system; the rest of your application may still be subject to compromise."
solution: "Ensure that arbitrary files specified by the user are not included in the output"
references:
- http://projects.webappsec.org/Path-Traversal
- http://cwe.mitre.org/data/definitions/22.html
Expand All @@ -39,10 +19,4 @@ alerttags:
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/ascanrulesBeta/src/main/java/org/zaproxy/zap/extension/ascanrulesBeta/SourceCodeDisclosureFileInclusionScanRule.java
linktext: "org/zaproxy/zap/extension/ascanrulesBeta/SourceCodeDisclosureFileInclusionScanRule.java"
---
The Path Traversal attack technique allows an attacker access to files, directories, and commands that potentially reside outside the web document root directory. An attacker may manipulate a URL in such a way that the web site will execute or reveal the contents of arbitrary files anywhere on the web server. Any device that exposes an HTTP-based interface is potentially vulnerable to Path Traversal.

Most web sites restrict user access to a specific portion of the file-system, typically called the "web document root" or "CGI root" directory. These directories contain the files intended for user access and the executable necessary to drive web application functionality. To access files or execute commands anywhere on the file-system, Path Traversal attacks will utilize the ability of special-characters sequences.

The most basic Path Traversal attack uses the "../" special-character sequence to alter the resource location requested in the URL. Although most popular web servers will prevent this technique from escaping the web document root, alternate encodings of the "../" sequence may help bypass the security filters. These method variations include valid and invalid Unicode-encoding ("..%u2216" or "..%c0%af") of the forward slash character, backslash characters ("..\") on Windows-based servers, URL encoded characters "%2e%2e%2f"), and double URL encoding ("..%255c") of the backslash character.

Even if the web server properly restricts Path Traversal attempts in the URL path, a web application itself may still be vulnerable due to improper handling of user-supplied input. This is a common problem of web applications that use template mechanisms or load static text from files. In variations of the attack, the original URL parameter value is substituted with the file name of one of the web application's dynamic scripts. Consequently, the results can reveal source code because the file is interpreted as text instead of an executable script. These techniques often employ additional special characters such as the dot (".") to reveal the listing of the current working directory, or "%00" NULL characters in order to bypass rudimentary file extension checks.
The source code for the current page was disclosed by the web server
6 changes: 3 additions & 3 deletions site/content/docs/alerts/90004-1.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 90004-1
alertindex: 9000401
alerttype: "Passive"
alertcount: 3
status: alpha
status: beta
type: alert
risk: Low
solution: "Ensure that the application/web server sets the Cross-Origin-Resource-Policy header appropriately, and that it sets the Cross-Origin-Resource-Policy header to 'same-origin' for all web pages.
Expand All @@ -18,7 +18,7 @@ wasc: 14
alerttags:
- OWASP_2017_A03
- OWASP_2021_A04
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesAlpha/src/main/java/org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesBeta/src/main/java/org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java"
---
Cross-Origin-Resource-Policy header is an opt-in header designed to counter side-channels attacks like Spectre. Resource should be specifically set as shareable amongst different origins.
6 changes: 3 additions & 3 deletions site/content/docs/alerts/90004-2.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 90004-2
alertindex: 9000402
alerttype: "Passive"
alertcount: 3
status: alpha
status: beta
type: alert
risk: Low
solution: "Ensure that the application/web server sets the Cross-Origin-Embedder-Policy header appropriately, and that it sets the Cross-Origin-Embedder-Policy header to 'require-corp' for documents.
Expand All @@ -16,7 +16,7 @@ wasc: 14
alerttags:
- OWASP_2017_A03
- OWASP_2021_A04
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesAlpha/src/main/java/org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesBeta/src/main/java/org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java"
---
Cross-Origin-Embedder-Policy header is a response header that prevents a document from loading any cross-origin resources that don't explicitly grant the document permission (using CORP or CORS).
6 changes: 3 additions & 3 deletions site/content/docs/alerts/90004-3.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ alertid: 90004-3
alertindex: 9000403
alerttype: "Passive"
alertcount: 3
status: alpha
status: beta
type: alert
risk: Low
solution: "Ensure that the application/web server sets the Cross-Origin-Opener-Policy header appropriately, and that it sets the Cross-Origin-Opener-Policy header to 'same-origin' for documents.
Expand All @@ -17,7 +17,7 @@ wasc: 14
alerttags:
- OWASP_2017_A03
- OWASP_2021_A04
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesAlpha/src/main/java/org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesBeta/src/main/java/org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java"
---
Cross-Origin-Opener-Policy header is a response header that allows a site to control if others included documents share the same browsing context. Sharing the same browsing context with untrusted documents might lead to data leak.
6 changes: 3 additions & 3 deletions site/content/docs/alerts/90004.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: "Insufficient Site Isolation Against Spectre Vulnerability"
alertid: 90004
alertindex: 9000400
alerttype: "Passive"
status: alpha
status: beta
type: alertset
alerts:
90004-1:
Expand All @@ -15,6 +15,6 @@ alerts:
90004-3:
alertid: 90004-3
name: "Insufficient Site Isolation Against Spectre Vulnerability"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesAlpha/src/main/java/org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesAlpha/SiteIsolationScanRule.java"
code: https://github.com/zaproxy/zap-extensions/blob/main/addOns/pscanrulesBeta/src/main/java/org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java
linktext: "org/zaproxy/zap/extension/pscanrulesBeta/SiteIsolationScanRule.java"
---
Loading

0 comments on commit d0fa106

Please sign in to comment.