CVE-2012-0394: Remote Code Execution in Apache Struts's DebuggingInterceptor Component

Summary

04/05/2022
Yes i
Moderate
Not published

CVE-2012-0394: Apache Struts's DebuggingInterceptor component allows remote code execution in developer mode. Affects org.apache.struts.xwork:xwork-core versions < 2.3.18. Fixed in 2.3.18. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

Apache Struts is an open-source framework for developing Java web applications. The DebuggingInterceptor component is a feature in Apache Struts that allows developers to debug their applications by providing detailed information about the execution flow. This component is enabled in developer mode, which is intended for use during application development and testing. However, it has been found that when developer mode is enabled, remote attackers can exploit unspecified vectors to execute arbitrary commands on the target system.

Vulnerability Detail

The DebuggingInterceptor component in Apache Struts, when used in developer mode, contains a vulnerability that allows remote code execution. This vulnerability can be exploited by attackers to execute arbitrary commands on the target system. The exact vectors through which the attack can be carried out are not specified. The vendor has disputed the classification of this behavior as a security vulnerability, but it is still considered a potential risk.

How To Fix

Latest published version: 2.3.37 as of 23 Oct 2026

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

2.3.18

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

There is no specific workaround provided for this vulnerability. However, as a general best practice, it is recommended to disable the developer mode in Apache Struts when the application is deployed in a production environment. This reduces the attack surface and minimizes the risk of remote code execution.

Conclusion

The DebuggingInterceptor component in Apache Struts, when used in developer mode, contains a vulnerability that allows remote code execution. It is recommended to update the Apache Struts framework to the latest version to fix this vulnerability. Additionally, disabling the developer mode in production environments can further mitigate the risk. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for org.apache.struts.xwork:xwork-core →

Share this vulnerability

FAQ

Apache Struts is an open-source framework for developing Java web applications. It provides a set of tools and libraries that simplify the development process and enhance the security of web applications.

The DebuggingInterceptor component is a feature in Apache Struts that allows developers to debug their applications by providing detailed information about the execution flow. It is enabled in developer mode, which is intended for use during application development and testing.

This vulnerability allows remote attackers to execute arbitrary commands on systems running Apache Struts in developer mode. This can lead to unauthorized access, data breaches, and potential compromise of the entire system.

Yes, upgrading Apache Struts to version 2.3.1.1 or later fixes this vulnerability. It is recommended to update the framework to the latest version to ensure the system is protected.

While there is no specific mitigation technique provided, disabling the developer mode in Apache Struts when the application is deployed in a production environment can reduce the risk of exploitation.

Related vulnerabilities

Recent vulnerabilities recorded for org.apache.struts.xwork:xwork-core.

How To Fix

Latest published version: 2.3.37 as of 23 Oct 2026

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

2.3.18

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback