Apache Struts2 Remote Command Execution (July 29, 2010)


Apache Struts2 is originated from 2 different projects, the Apache Struts and WebWork. In 2008, the two projects combined to create Struts2, which is a MVC framework for building Java web-based applications. OGNL stands for Object-Graph Navigation Language; it is an expression language for getting and setting properties of Java objects.

A remote command execution vulnerability exists in Apache Struts2. The vulnerability is due to insufficient validation when evaluating request parameter names as OGNL statements. A remote attacker can exploit this vulnerability by sending a crafted HTTP request to the target server. Successful exploitation of this vulnerability would allow the attacker to execute arbitrary command with the privileges of the target service. In the case command execution is not successful, the vulnerable process may terminate abnormally, resulting a denial of service condition.

The CVE identifier for this vulnerability is CVE-2010-1870.

SonicWALL has released an IPS signature to detect and block specific exploitation attempts targeting this vulnerability. The signature is listed below:

  • 4680 Apache Struts2/XWork Remote Command Execution
Security News
The SonicWall Capture Labs Threat Research Team gathers, analyzes and vets cross-vector threat information from the SonicWall Capture Threat network, consisting of global devices and resources, including more than 1 million security sensors in nearly 200 countries and territories. The research team identifies, analyzes, and mitigates critical vulnerabilities and malware daily through in-depth research, which drives protection for all SonicWall customers. In addition to safeguarding networks globally, the research team supports the larger threat intelligence community by releasing weekly deep technical analyses of the most critical threats to small businesses, providing critical knowledge that defenders need to protect their networks.