Sélectionner une page

Formation > Blog > Cybersécurité > React2Shell: Compromised Server? The Ultimate Survival Guide

December 3, 2025: The IT world is shaken by the disclosure of the React2Shell vulnerability (CVE-2025-55182). With a CVSS score of 10/10, a level rarely reached, the shock is profound. Especially since React has been THE most popular Web component of the last ten years. As early as December 4, 2025, a wave of massive exploitation was reported across the globe. Services like Zoom or LinkedIn became inaccessible. In this article, we will see how to react if you are a victim of this flaw yourself.

A Fearsome Vulnerability

The very next day after the discovery, a series of opportunistic attacks overwhelmed vulnerable servers using React Server Components (RSC) and Frameworks such as Next.js, RedwoodJS, Remix, or tools like Vite, Parcel, and React Router.

This critical vulnerability allowed unauthenticated attackers to perform Remote Code Execution (RCE), opening the door to the installation of backdoors, viruses, trojans, and cryptocurrency miners.

If your infrastructure has been exposed, it is imperative to consider it compromised. This Ultimate Survival Guide was written to provide you with the complete procedure and precise steps needed to disinfect your Linux server machine, stop the bleeding, and most importantly, recover your server and data without having to reinstall everything immediately.

Symptoms of a Machine Hacked by the React2Shell Flaw

If your machine is infected, know that the hacker will seek to exploit your server for profit or malicious intent: transforming your machine into a relay for a zombie network (botnet), running a crypto miner on it (cryptojacking), or worse, triggering a ransomware attack.

Warning: These symptoms may appear gradually!

Inability to List Processes

A particularly characteristic symptom lies in the malfunction of system commands:

  • ps, top, and htop stop working normally.
  • Process display stops abruptly.
  • The message “Process stopped” appears without explanation.

This behavior aims to prevent the observation of active processes and delay any diagnostic attempts.

Impossible or Inconsistent Backups

Backup mechanisms quickly become unusable:

  • tar, zip, or rsync never finish execution or fail.
  • Backups cut off without an explicit error message.
  • No reliable archive can be produced.

The inability to perform reliable backups is a critical operational risk. The danger lies in the perverse effect of a corrupt backup: it can happen silently and not immediately alert the administrator of the compromise. This prevents any rapid restoration and any offline post-incident analysis.

Database Corruption

Relational databases such as MariaDB or PostgreSQL can be indirectly affected:

  • Uncontrolled engine shutdowns.
  • Damaged transaction logs.
  • Corrupted tables or indexes.

These effects are often linked to forced interruptions of critical processes or prolonged system instability.

The Ambient-it Team

Quickly Diagnose Your Server to Repair It

I suggest these 3 commands in order, hoping we can get something out of them:

  • Check user tasks: crontab -e
  • Check system tasks: ls -la /etc/cron* /var/spool/cron
  • Examine Suspect Services: systemctl list-units --type=service --state=running

STOP :

At this stage, you must look carefully at the scheduled tasks. You might need to delete a component of the Rondo Malware and, if the situation is blocked, attempt a system reboot.

This reboot should only be considered if you have already removed as many malicious elements as possible and cannot progress without starting from a more stable state.

  • To identify potential abnormal processes: ps aux | grep -vE "sshd|bash|systemd"
  • To spot binaries or files recently modified (adjustable 10-day window): find /etc /usr /bin /sbin /lib -type f -mtime -10 2>/dev/null

This last command is optional but often rich in insights.

The Ambient-it Team

Remediation: Using AI to Eliminate the Enemy

Take the outputs of each command, grab your best LLM (ChatGPT, Gemini, Mistral, etc.), and ask it to help you with this simple prompt:

“My machine has been infected by a virus following the React2Shell vulnerability, help me step by step to eliminate all processes likely to be dangerous for my server. Here is the result of my investigation: [PASTE THE RESULT OF THE 5 PREVIOUS COMMANDS HERE]”

Useful: Eliminating the Rondo malware or other trojan at startup

Neutralize its persistence

The first vital action is to prevent the malware from restarting after a reboot, ensuring that the disinfection effort is not in vain.

Here is the procedure:

1. Open the root user’s crontab for editing:

crontab -e

2. Identify and delete the SUSPECT line. For example :

@reboot /etc/rondo/rondo react.x86_64.persisted

3. Save and quit the editor

Result: The malware will no longer launch at startup. However, it is still present and active in memory.

After the Cleanup: Rethinking Security in the “Server-Side” Era

If the previous manipulations allowed you to cut the ground from under the Rondo malware’s feet and stop the active exfiltration of data, do not consider the incident closed. In cybersecurity, a compromised server unfortunately never becomes totally reliable again.

The cleanup we propose is more of a tourniquet—an emergency measure—rather than a lasting solution for your infrastructure. Your goal is to prevent a recurrence. You must act on 4 major axes:

Virus Scanning and Monitoring

Under Linux, possibilities are not numerous, but solutions exist. The deletion of the line in the crontab is the lock that prevents the attacker’s return. This manipulation will prevent the virus from automatically relaunching when your machine starts, but it will still be considered infected.

Only a complete cleanup, validated by tools, can confirm the resumption of system control:

  • ClamAV: Scans the hard drive. It compares every file present on your server to a huge database of known viral signatures. It ensures that no inert file containing malicious code remains on the system.
  • Falco: Is more subtle and modern (widely used in Cloud/Kubernetes environments). It doesn’t look at files; it listens to the system Kernel in real-time. In case of abnormal behaviors, it warns the user.

Nuke it from orbit

Since it is technically almost impossible to determine if an attacker hasn’t left a dormant binary deep within a library, the best solution is to destroy and then rebuild. If you use containers (Docker, Kubernetes) or Infrastructure-as-Code (Terraform, Ansible), redeploy a fresh and healthy instance of your application, then switch the traffic. Keep the infected instance offline only for forensic analysis

The React / Next.js Paradigm Shift

This flaw is not an isolated incident. In reality, it is rather logical when looking at the evolution of the web. With the advent of React Server Components (RSC), the airtight boundary between the browser (Client) and the server (Back-end) has disappeared. JavaScript code, once confined to aesthetics and interactivity, now holds the keys to the file system and databases.

This evolution implies a new reality: the React developer is now also (a little bit of) a system administrator, whether they like it or not. Training Front-end teams on server security issues (OWASP, command injection, rights management) is no longer an option, it is a vital necessity.

Post-Crisis: Forensic and GDPR

It is a painful question, but crucial to ask after the attack: What did they take? Before permanently deleting logs, you must absolutely:

  • Identify if personal or client data has been exfiltrated.
  • Determine if you have a legal obligation to notify the authorities within 72 hours and your users, in compliance with GDPR.
  • Understand how the payload bypassed your current defenses (WAF, firewall) to harden your future configuration.

It is also the right time to put the crisis to good use; use this incident as leverage to impose a Security by Design culture in your development cycles.

UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?

Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.

ILS SE SONT FORMÉS CHEZ NOUS

partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp
partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp