Skip to content

Apache Axis 1.x (EOL) may allow RCE when untrusted input is passed to getService

Critical severity GitHub Reviewed Published Sep 5, 2023 to the GitHub Advisory Database • Updated Mar 14, 2024

Package

maven axis:axis (Maven)

Affected versions

<= 1.4

Patched versions

None
maven org.apache.axis:axis (Maven)
<= 1.4
None

Description

When integrating Apache Axis 1.x in an application, it may not have been obvious that looking up a service through "ServiceFactory.getService" allows potentially dangerous lookup mechanisms such as LDAP. When passing untrusted input to this API method, this could expose the application to DoS, SSRF and even attacks leading to RCE.

As Axis 1 has been EOL we recommend you migrate to a different SOAP engine, such as Apache Axis 2/Java. As a workaround, you may review your code to verify no untrusted or unsanitized input is passed to "ServiceFactory.getService", or by applying the patch from apache/axis-axis1-java@7e66753 . The Apache Axis project does not expect to create an Axis 1.x release fixing this problem, though contributors that would like to work towards this are welcome.

References

Published by the National Vulnerability Database Sep 5, 2023
Published to the GitHub Advisory Database Sep 5, 2023
Reviewed Oct 18, 2023
Last updated Mar 14, 2024

Severity

Critical
9.8
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Weaknesses

CVE ID

CVE-2023-40743

GHSA ID

GHSA-rmqp-9w4c-gc7w

Credits

Checking history
See something to contribute? Suggest improvements for this vulnerability.