RANSOMWARE

ShinyHunters Rooted Clop's Leak Site Through Grav CMS, and Now Wants to Extort the Extortionists

On September 19, 2026, ShinyHunters defaced Clop's dark web leak site after exploiting an unauthenticated file upload flaw in Grav CMS, then claimed the source code, /var/log contents, and the private keys to Clop's Tor onion service.

Matt Lucas  |  September 20, 2026  |  5 min
Editorial hero illustration
Sept 19, 2026
Clop leak site defaced
72 hours
ShinyHunters contact deadline
Oracle EBS flaw in dispute
Grav CMS
Unauthenticated upload entry point
TL;DR
  • What: ShinyHunters compromised and defaced the Clop ransomware gang's dark web data leak site on Friday, September 19, 2026, using an unauthenticated file upload vulnerability in Grav CMS.
  • Impact: ShinyHunters claims it took the leak site source code and Grav plugins, system logs from /var/log, and the private cryptographic keys for Clop's Tor onion service, then set a 72 hour deadline and said it intends to extort Clop.
  • Fix / mitigation: The source names no patched Grav release or CVE for the upload flaw, so the action for defenders is to inventory every Grav install, upgrade core and plugins to current with bin/gpm, and block PHP execution in writable content directories.
  • Who's at risk: Anyone running a public facing flat file CMS such as Grav outside their patch program, plus Oracle E-Business Suite operators still tracking fallout from the CVE-2025-61882 campaign.

The crew behind one of the most aggressive mass exploitation operations of the last two years spent Friday night watching its own extortion infrastructure get taken apart. On September 19, 2026, ShinyHunters compromised the Clop ransomware operation's dark web data leak site, the page Clop uses to name victims and squeeze them into paying. The way in was not a zero day in a hardened appliance. It was an unauthenticated file upload vulnerability in Grav CMS, the flat file content management system Clop was running its own public site on.

A leak site with a CMS problem

ShinyHunters started small. The first sign of trouble was a single text file dropped onto Clop's site reading "THIS SITE HAS BEEN PWN3D BY SHINYHUNTERES #Skids10p - Maybe don't try to threaten us next time", along with a link back to ShinyHunters' own leak site. Hours later the whole site was gone, replaced with ASCII art of Umbreon, the Pokemon ShinyHunters uses as its logo, above the line "rooting your systems since '19 ;)". BleepingComputer confirmed the defacement. That two stage pattern, prove write access first and come back later for full control, is the classic shape of an unauthenticated upload bug that leads to code execution. It is also the shape you should expect to see in your own web logs.

The grudge started with Oracle E-Business Suite

This was not a random hit. The conflict traces to Clop's October 2025 campaign against Oracle E-Business Suite, which exploited CVE-2025-61882. ShinyHunters claims that exploit was originally theirs and that Clop took it, and says Clop representatives later followed up with violent threats. The defacement message answers that directly. What is on display is a criminal ecosystem doing what it does under pressure, turning on itself, except the property being fought over here is an exploit chain that hit real enterprise ERP deployments and real victim organizations.

The claim versus the confirmation

BleepingComputer verified the defacement of Clop's leak site. It has not independently verified the data theft claims. Read the site compromise as fact and the stolen source code, logs, and onion keys as assertions from an extortion group with an obvious motive to inflate them.

What ShinyHunters says it walked away with

The group gave Clop 72 hours to make contact and said flatly that it is going to extort them. If the onion key claim holds, that is the item that matters. Whoever controls those keys controls the address victims are pointed to, which means a Clop victim negotiating at that onion address can no longer be sure who is on the other end. The logs matter for a different reason: they are exactly what law enforcement wants, and unlike a password, an operator cannot revoke them after the fact.

The RedEye take

The funny part of this story is the smallest part. A gang that built its entire brand on breaking file transfer products and ERP stacks was running its own public infrastructure on a content management system with an unauthenticated upload flaw, and had not fixed it. That is not irony, it is a usable data point about the people on the other side of your incidents. They are operators working under time pressure, and they take the same shortcuts and leave the same forgotten public endpoints your own teams do. Stop modeling ransomware crews as uniformly disciplined, because that assumption inflates their capability and deflates the value of basic hygiene.

The second takeaway is harder. If ShinyHunters is right that Clop lifted the Oracle E-Business Suite chain, then the capability behind CVE-2025-61882 sat in at least two sets of hands before most enterprises had it patched. Exploits move between crews the way tools move between contractors, which makes attribution by exploit a weak signal and makes any defense built on one group's known tooling brittle by design. The third takeaway: the 72 hour countdown is theater. Clop is not going to pay. But if those logs are real, they have a long shelf life, and the people most interested in them do not negotiate over Tor.

What defenders should learn

The check worth running this week

Grav is a flat file CMS, which means content, uploads, and executable PHP frequently live under the same writable tree. That is what turns an upload primitive into a shell. Find your Grav installs, confirm the core and plugin versions, and look for PHP files that appeared recently in directories that are supposed to hold only content and images.

find /var/www /srv /opt -maxdepth 5 -type f -path '*/bin/gpm' 2>/dev/null
bin/gpm version
bin/gpm index -i
find user/pages user/data user/images -type f -name '*.php' -newermt '2026-09-01' 2>/dev/null
If you find an unexpected PHP file in a content directory

Do not delete it. Move it to a directory outside the web root, preserve timestamps and ownership, and pull the web server access log for every request to that path before and after its creation time. The write is the cheap part of this attack, and the interesting question is what came back for it later.

Fix It Yourself

Everything above is what happened. This is what to run. The check commands change nothing.

Check whether you are exposed

Locate every Grav CMS install on the host, including forgotten microsites

find / -xdev -maxdepth 6 -type f -path '*/system/defines.php' 2>/dev/null

Show the Grav core and installed plugin versions, run from a Grav root

bin/gpm version && bin/gpm index -i

Find PHP files that appeared in content or upload directories in the last 14 days

find user/pages user/data user/images user/accounts -type f -name '*.php' -mtime -14 -printf '%T+ %s %p\n' 2>/dev/null | sort

Close it

No fixed version is named in the reporting, so upgrade Grav core and all plugins to current

bin/gpm selfupgrade && bin/gpm update

Containment: deny PHP execution inside writable content and upload directories on Apache

printf '<FilesMatch "\\.(php|phar|phtml)$">\n  Require all denied\n</FilesMatch>\n' > user/images/.htaccess

Quarantine a suspicious upload without destroying evidence, then review the access log

mkdir -p /var/tmp/quarantine && mv -n user/images/suspect.php /var/tmp/quarantine/ && grep -F 'suspect.php' /var/log/nginx/access.log

Prompts for the agent you already run

You run a public facing Grav site and want to know whether you are exposed the way Clop was

Find every Grav CMS installation on this machine by locating files matching */system/defines.php, and for each one print the GRAV_VERSION constant and the output of bin/gpm index -i run from that install root. Then list any file with a .php, .phar, or .phtml extension under user/pages, user/data, user/images, or user/accounts, with modification time, size, and owner. Show me every command you run and its raw output. Do not modify, move, delete, or upgrade anything. Stop and report your findings, then wait for my decision before taking any action.

You have confirmed an unexpected PHP file in a Grav content directory and want the timeline built for you

An unexpected PHP file was found in a Grav content directory on this host. Build me an incident timeline: stat the file for create and modify times, grep the web server access logs in /var/log/nginx and /var/log/apache2 for every request to that exact path, and list all requests from the same source IP addresses within one hour on either side of the file creation time. Also show any php-fpm or apache child process that spawned a shell in the auditd or journald records for that window. Print each command and its output. Do not delete, move, truncate, or rotate any file or log. Stop after the timeline and wait for my instruction.

What to alert on

The observable to alert on is a web server worker writing an executable file into a content directory, followed by a request to that file. In web server logs (nginx access.log or Apache access_log) alert on any successful 200 or 201 response to a POST carrying a multipart content type against a Grav path, then correlate on the request_uri field for the first GET or POST to a newly created path under /user/pages, /user/data, /user/images, or /user/accounts ending in .php, .phar, or .phtml. Pair that with file integrity monitoring or auditd watches on those directories, alerting on the SYSCALL and PATH records where a file with a PHP extension is created by the uid of the web server, since legitimate Grav content changes almost never produce new PHP files under those trees. The highest fidelity signal is process lineage: in EDR or auditd telemetry, php-fpm or httpd as the parent of sh, bash, curl, wget, or tar is close to zero in normal operation on a CMS host, and it is what separates the harmless text file stage seen on Clop's site from the full compromise that followed hours later.

Questions about your exposure?

RedEye Security provides assessments for organizations that need to understand their real risk.

Talk to us