June 20, 2017 By Mark Samuels 2 min read

Apache modules could be used as a new attack vector to make it easier for cybercriminals to take over web servers. Bleeping Computer reported that Dutch web developer Luke Paris created a rootkit that hides inside a PHP module and attacks servers through Apache modules, which are open source HTTP servers.

About the Threat Vector

A rootkit is a piece of code that allows administrator-level access to a computer or network that attackers can exploit to inject malicious code. Most rootkits traditionally work close to the operating system kernel (OS). Attackers often need advanced coding skills to avoid crashing a victim’s computer.

Paris took a simpler approach, developing a rootkit that interacts with the PHP interpreter rather than the OS kernel. On his websiteParis explained that writing a PHP module is easier than a kernel because the code base is smaller, better documented and simpler. He created the method to educate others about the potential dangers of malicious PHP modules.

Using PHP modules to hide rootkits provided several advantages for nefarious actors. For example, crashes are less likely, and PHP rootkits only have to hook into one system process, while kernel rootkits must hook into many. Additionally, PHP is cross-platform language, meaning code written for one platform can easily be compiled to be run on another.

Paris has published the full rootkit source code on GitHub for public reference. His rootkit hooks into the PHP server’s SHA-1 function, which is a cryptographic algorithm that generates hashes for digital data that help prove the identity of a file. The entire rootkit is just 80 lines of code and can easily hide in legitimate modules. This rootkit’s existence represents a fresh potential attack vector for errant actors and server administrators must start thinking about preventative actions.

Responding to Malicious Apache Modules

Experts are already aware of the increasing risk of malware authors crafting attacks that inject malicious code into OS kernels. What makes Paris’ work different is its focus on PHP, although Bleeping Computer noted that he is not the first person to suggest hiding malicious code in Apache modules. London-based developer Christian Papathanasiou hid a similar rootkit inside an Apache module on GitHub in 2015.

Keeping a list of the module hashes after installing PHP is the simplest way of detecting whether any are malicious. Paris even published a Python script on his website that allows users to check the SHA-1 hashes of their PHP modules.

Scott Arciszewski, chief development officer at Paragon Initiative Enterprise, told Bleeping Computer the only modification he would make to Paris’ mitigation script is to use SHA-256 hashes in place of SHA-1. Experts also suggested businesses should urgently move from SHA-1 to safer alternatives such as SHA-256.

The fresh attack vector presents another threat to enterprise security bosses who are already fighting to protect their organizations from the ever-increasing malware challenge. IT decision-makers should ensure their companies are focused on techniques to help prevent malicious code injections.

More from

SoaPy: Stealthy enumeration of Active Directory environments through ADWS

10 min read - Introduction Over time, both targeted and large-scale enumeration of Active Directory (AD) environments have become increasingly detected due to modern defensive solutions. During our internship at X-Force Red this past summer, we noticed FalconForce’s SOAPHound was becoming popular for enumerating Active Directory environments. This tool brought a new perspective to Active Directory enumeration by performing collection via Active Directory Web Services (ADWS) instead of directly through Lightweight Directory Access Protocol (LDAP) as other AD enumeration tools had in the past.…

Smoltalk: RCE in open source agents

26 min read - Big shoutout to Hugging Face and the smolagents team for their cooperation and quick turnaround for a fix! Introduction Recently, I have been working on a side project to automate some pentest reconnaissance with AI agents. Just after I started this project, Hugging Face announced the release of smolagents, a lightweight framework for building AI agents that implements the methodology described in the ReAct paper, emphasizing reasoning through iterative decision-making. Interestingly, smolagents enables agents to reason and act by generating…

4 ways to bring cybersecurity into your community

4 min read - It’s easy to focus on technology when talking about cybersecurity. However, the best prevention measures rely on the education of those who use technology. Organizations training their employees is the first step. But the industry needs to expand the concept of a culture of cybersecurity and take it from where it currently stands as an organizational responsibility to a global perspective.When every person who uses technology — for work, personal use and school — views cybersecurity as their responsibility, it…

Topic updates

Get email updates and stay ahead of the latest threats to the security landscape, thought leadership and research.
Subscribe today