Code Execution Flaw in Checkbox Survey Exploited in the Wild
A Checkbox Survey vulnerability that could allow a remote attacker to execute arbitrary code without authentication is being exploited in the wild, the CERT Coordination Center (CERT/CC) at Carnegie Mellon University warns.
A flexible online survey tool written in ASP.NET, Checkbox Survey helps organizations create professional surveys that can be easily accessed from either desktop computers or mobile devices.
The flaw found in Checkbox Survey, tracked as CVE-2021-27852, is related to insecure deserialization of view state data, a method employed by the ASP.NET page framework for preserving page and control values.
“When the HTML markup for the page is rendered, the current state of the page and values that must be retained during postback are serialized into base64-encoded strings. This information is then put into the view state hidden field or fields,” Microsoft explains.
Prior to version 7.0, Checkbox Survey employed its own view state functionality through a _VSTATE argument that is deserialized using LosFormatter.
The Checkbox Survey code handles the data, but ignores the ASP.NET ViewState Message Authentication Code (MAC) setting on the server, an issue that an attacker can exploit to create arbitrary data that, when deserialized, may lead to code execution.
“By making a specially-crafted request to a server that uses Checkbox Survey 6.x or earlier, a remote, unauthenticated attacker may be able to execute arbitrary code with the privileges of the web server,” the advisory reads.
The advisory mentions that the vulnerability is reportedly being exploited in attacks, but provides no information about these attacks.
Users are encouraged to upgrade to Checkbox Survey version 7.0 or later, which no longer use view state data, thus are no longer vulnerable. Furthermore, Checkbox has halted development of Checkbox Survey version 6.