CVE-2018-10740

9.8 CRITICAL

📋 TL;DR

CVE-2018-10740 is a critical remote code execution vulnerability in Axublog 1.1.0 that allows attackers to inject PHP code via the webkeywords parameter into the cmsconfig.php file. This affects all users running the vulnerable version of Axublog, potentially giving attackers complete control over affected web servers.

💻 Affected Systems

Products:
  • Axublog
Versions: 1.1.0
Operating Systems: All platforms running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: All installations of Axublog 1.1.0 are vulnerable by default. No special configuration is required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full server compromise allowing attackers to execute arbitrary commands, steal data, install malware, pivot to internal networks, and maintain persistent access.

🟠

Likely Case

Website defacement, data theft, installation of web shells or cryptocurrency miners, and complete control of the affected web application.

🟢

If Mitigated

No impact if properly patched or if the vulnerable component is not exposed to untrusted users.

🌐 Internet-Facing: HIGH - The vulnerability is remotely exploitable without authentication and affects internet-facing web applications.
🏢 Internal Only: MEDIUM - Internal applications could still be exploited by authenticated users or through other attack vectors.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: CONFIRMED
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation is trivial with publicly available proof-of-concept code. The vulnerability requires no authentication and has simple exploitation steps.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions after 1.1.0

Vendor Advisory: https://github.com/axublog/axublog/issues/1

Restart Required: No

Instructions:

1. Upgrade to the latest version of Axublog. 2. Replace all vulnerable files with patched versions. 3. Verify the cmsconfig.php file no longer contains malicious code.

🔧 Temporary Workarounds

Input Validation Filter

all

Add input validation to filter PHP code from webkeywords parameter

Modify the relevant PHP file to add: if (preg_match('/<\?php|eval\(|system\(|exec\(|shell_exec\(/i', $_POST['webkeywords'])) { die('Invalid input'); }

File Permissions Restriction

linux

Set cmsconfig.php to read-only for the web server user

chmod 444 cmsconfig.php
chown root:root cmsconfig.php

🧯 If You Can't Patch

  • Remove or disable the vulnerable Axublog installation entirely
  • Implement a web application firewall (WAF) with rules to block PHP code injection attempts

🔍 How to Verify

Check if Vulnerable:

Check if running Axublog version 1.1.0 and examine cmsconfig.php for suspicious PHP code in the webkeywords section.

Check Version:

Check the Axublog configuration files or admin panel for version information, or examine the source code for version markers.

Verify Fix Applied:

Verify the Axublog version is updated beyond 1.1.0 and test that PHP code injection via webkeywords parameter no longer works.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to admin pages with webkeywords parameter containing PHP code
  • File modification events on cmsconfig.php
  • Execution of suspicious PHP functions from web requests

Network Indicators:

  • HTTP POST requests containing PHP code patterns in parameters
  • Traffic to known exploit URLs for this CVE

SIEM Query:

source="web_logs" AND (http_method="POST" AND uri_path="*admin*" AND http_params CONTAINS "<?php" OR "eval(" OR "system(")

🔗 References

📤 Share & Export