Skip to content
Mane Dev

WooCommerce online store, Moldova

Emergency response to an attack on an online store

A store built by another team was attacked. We were the first line of defence: access regained, backdoor removed, store recovered, then an audit, a report and backups an attacker can't delete.

Service
Maintenance and IT consulting
Year
2026
response, in the middle of the night
Immediate
timeline, weak points and action plan
1 report
delete permissions for the server's backup key
0
encrypted off-server backup
Daily
Reconstruction: in the hosting panel, sorting the WordPress files by date reveals one file newer than the rest. Opened, it has an ordinary WordPress header and hidden code that runs commands sent by the attacker. The same code is searched for across the site, the file is deleted and the WordPress core is verified. Names, code and dates are illustrative.
Reconstruction: the backdoor, posing as a WordPress file, found and removed. Names and code are illustrative.

The situation

The WooCommerce store wasn't built by us. It takes orders and holds customer data. It was compromised in February and again in March 2026, and each time the breach was discovered weeks after it happened.

The host's backups only covered 14 days, so every restore point already contained the attacker's hidden access. They also lived in the same account as the site and would have disappeared with it.

First line of defence

We were called in after the attack and stepped in straight away, in the middle of the night:

  • What the attacker compromised

    We first established what the attacker had compromised and how far they had got.

  • Access regained

    We took back control of the site and found the backdoor the attacker had left behind: a file posing as an ordinary WordPress file. We removed it.

  • Damage found, store recovered

    We identified what had been affected and brought the store back to a clean, working state.

Audit and report

Once the emergency was over, we ran an in-depth audit. How the attacker originally got in could no longer be established with certainty, so we closed every likely way in and put in place the security measures a store of this size and traffic needs. The client received a full report: what we found and when, what we removed, the weak points, and an action plan.

Measures put in place

  • Encrypted off-server backups

    Nightly database and weekly file backups in Backblaze B2, in an EU data centre. They are encrypted before leaving the server, so the storage provider sees only opaque files and cannot read customer data.

  • A backup an attacker can't destroy

    The server's storage key can add and hide backups but has no permission to delete them. Even someone with full control of the server can't wipe the recovery copies. We tested this: the delete attempt is rejected.

  • A verified restore

    We restored the full site, database and files, into staging and checked cart, checkout, product pages and orders. Backups are only trusted after integrity checks, because a failed dump can silently produce a valid-looking empty file.

  • A routine

    Monthly integrity checks, quarterly full restore tests, and a written decision trail for open items such as who holds the encryption key.

How the backup works

Store server

database nightly, files weekly

Encrypted on the server

before any data leaves

Separate EU storage

the server's key can add but not delete

Attacker with server access

the delete attempt is rejected

Tested restore

into staging, with cart and orders checked

How we work on the client's store

  • Every update goes backup, staging, test, and only then live.
  • Named admin accounts, minimal roles and two-factor authentication.
  • A runbook, a one-page architecture and access document, and a monthly note on what ran.
  • The contract states who is responsible for what. Customer data is handled only as instructed, as a processor (GDPR art. 28).

Result

The store is back to a clean state and the client knows exactly what happened and why. Another attack no longer means weeks of lost data or a rebuild from scratch: there is a tested, tamper-resistant path back to a clean state.

Contact

Facing something similar?

Describe the problem briefly. We'll tell you what can be done, how long it takes and what it costs.

Direct contact

Prefer a video call?

Pick a free slot in the calendar.

Leave a phone number or an email, at least one.

Prefer email? hello@manedev.md

By submitting this form you agree to your message being delivered to Mane Dev via Resend. Your details are used only to reply and are not stored in a database. See the Privacy Policy.

Call