CASE / D · Built environment · WordPress and infrastructure

Client name
redacted.

A server-level compromise contained, investigated, and moved toward a clean, defensible recovery.

Confidential / Server incident response

Osiris protects the confidentiality of security clients. The organization’s name, domains, dates, vendors, personnel, credentials, and sensitive indicators are redacted or generalized. This account explains the technical work without publishing details that could identify the client or expose its environment.

01 / From file alert to incident

The first clue did not explain the whole event.

An unfamiliar PHP file in a web-accessible path prompted an evidence-preserving investigation. Its behaviour was consistent with a command-capable web shell, so Osiris expanded the scope beyond deleting one file. WordPress core verification passed, but that result addressed only the application distribution—not the trustworthiness of the server beneath it.

Process, network, filesystem, and service review revealed an active cryptocurrency miner, outbound mining activity, a second payload location, and an operating-system service designed to restore the workload automatically. Related artifacts predated the newest visible clue, expanding the likely exposure window. Publicly reachable administrative services further increased consequence. Together, the evidence established an active server-level compromise rather than an isolated WordPress anomaly.

02 / Evidence-led containment

Stop the activity without destroying the record.

Osiris recorded process details, ownership, network connections, service definitions, timestamps, and hashes before intervention. The PHP shell and malicious executable trees were quarantined; the miner was stopped; its connection was verified closed; and the startup service was disabled and removed from automatic execution.

Relevant web roots, temporary directories, user homes, startup locations, scheduled activity, and service definitions were searched for related indicators. An unnecessary browser terminal was stopped and blocked, while hosting-management access was narrowed to safer administrative paths. Each action ended with a state check confirming that the process, connection, service, and listeners had not returned. Credentials were treated as potentially exposed, and containment was reported honestly as restored control—not proof that the existing operating system had become permanently trustworthy.

03 / Access and recovery hardening

Restore control, then rebuild trust.

Remote administration was converted to verified key-based SSH access. Direct root login, password authentication, and keyboard-interactive authentication were disabled; permitted administration was restricted; and firewall and listener states were validated. A configuration-precedence conflict initially preserved an unsafe effective setting, so Osiris corrected the load order and verified the resolved runtime configuration rather than trusting the edited file alone.

Because privileged persistence had occurred, the durable recommendation was a clean rebuild from trusted sources. The transition plan called for minimal services, current updates, rotated secrets, clean WordPress packages, deliberate migration of reviewed database content and uploads, validation of critical integrations and user journeys, monitored backups, and continued observation. Known malicious activity was contained; long-term trust would be restored through clean infrastructure and verified migration.

What happened.
What Osiris did.

04

The initial alert became an incident boundary

The engagement began with a narrow question about an unfamiliar PHP file in a web-accessible location. Osiris preserved the file and its metadata before changing the system, then treated it as a possible command interface rather than an isolated piece of unwanted content.

That decision expanded the investigation from one file to the surrounding WordPress application, operating system, user accounts, running processes, network activity, startup mechanisms, and other hosted properties. The response scope followed the highest confirmed level of access—not the smallest visible symptom.

05

The PHP file was confirmed as a command-capable web shell

Static and behavioural review showed that the file could accept instructions and manipulate the server from a web request. Its location and construction were inconsistent with the expected application, and no legitimate deployment record explained its presence.

The shell was removed from web execution and retained in restricted evidence storage. Related paths, uploads, temporary locations, neighboring sites, and account-owned files were searched for matching indicators so the response would not end with deleting the first artifact found.

06

Valid WordPress core files did not establish server trust

WordPress checksum verification showed that distributed core files matched trusted sources. That was useful evidence, but it answered only one question. Plugins, themes, uploads, administrators, configuration, scheduled activity, and the hosting environment still required separate review.

Osiris documented this boundary clearly: application integrity can coexist with infrastructure compromise. A clean core cannot certify the operating system, privileged accounts, services, or every other application sharing the server.

07

Process inspection revealed active resource abuse

An unfamiliar executable was consuming sustained processor capacity under a service account. Process details, ownership, command lines, open files, and runtime paths were recorded before intervention.

Network inspection connected the process to cryptocurrency-mining infrastructure. The outbound session and abnormal resource use established that the compromise was active, not merely historical, and gave the response team concrete states to verify after containment.

08

A system service provided automatic persistence

Filesystem and service-manager review found a second installation path and a startup definition designed to relaunch the miner. Enablement links and service state showed that the malicious workload could return after termination or restart.

The service definition, executable material, timestamps, and hashes were preserved. The service was then stopped, disabled, removed from automatic startup, and followed by a service-manager reload so the known persistence path could no longer restore the process.

09

The timeline extended beyond the newest visible clue

Artifacts in temporary storage and service locations predated the suspicious PHP file by a meaningful period. Osiris used file metadata, process state, available logs, and configuration history to establish the earliest defensible evidence date.

The report separated confirmed facts from inference. It did not invent an entry route that the evidence could not prove; instead, it defined the exposure window, the credentials and applications requiring review, and the sequence of known attacker activity.

10

Containment preserved evidence while stopping execution

Known malicious directories, executables, service files, and the PHP shell were moved into restricted quarantine before removal from active paths. Cryptographic hashes and an evidence manifest preserved a reviewable record of what had been found and where.

The active miner was terminated and the outbound connection was checked again. Follow-up process and filesystem searches confirmed that the known executable trees were no longer active while retaining enough evidence to support the incident narrative and recovery decisions.

11

Unnecessary administrative exposure was reduced

A browser-accessible terminal and hosting-management listeners increased consequence during the incident. The terminal was stopped, verified as no longer listening, and blocked at the firewall. Management ports without a justified public requirement were restricted.

This did not substitute obscurity for security. It reduced reachable attack surface while the deeper recovery continued and preserved administrative access through narrower, documented paths appropriate to the client’s operating needs.

12

Every containment action ended with a state check

Osiris verified that the miner process was absent, its known outbound connection had closed, the persistence service was inactive and no longer enabled, the terminal listener had not returned, and processor use had settled into an expected range.

These checks distinguished completed actions from intended actions. They supported a defensible statement that known malicious behaviour had been contained without overstating the trustworthiness of a system that had experienced privileged compromise.

13

SSH hardening was validated as effective configuration

Remote administration was moved to verified key-based access. Direct root login, password authentication, and keyboard-interactive authentication were disabled; permitted administration was narrowed and authentication attempts were reduced.

A precedence conflict initially left password authentication enabled despite the new file declaring otherwise. Osiris traced the effective value to an earlier provisioning include, corrected the load order, validated syntax, reloaded safely, and checked the resolved runtime settings again.

14

Credentials and the operating-system trust boundary were reset

Credentials with plausible exposure were scheduled for rotation from a trusted device, and administrative access was reduced to the smallest necessary group. Secrets were not treated as safe simply because no direct theft could be demonstrated.

Because privileged persistence had occurred, containment could not make the existing operating system permanently trustworthy. The client received a clear distinction between a controlled transition environment and a clean long-term production baseline.

15

A clean rebuild created the defensible recovery path

The recommended replacement would be provisioned from trusted sources with current updates, minimal services, restricted management access, monitored backups, and documented ownership. WordPress core, plugins, and themes would be installed cleanly rather than copied from the affected server.

Database content and uploads would be reviewed and migrated deliberately. Forms, integrations, scheduled tasks, email, caching, security headers, monitoring, backups, and critical user journeys would be verified before cutover, with a rollback path that did not reintroduce untrusted system components.

System state

From unknown
to controlled.

Observed stateMalicious PHP command interface in a web-accessible path
Active cryptocurrency miner consuming server resources
Automatic operating-system persistence
Publicly exposed management and terminal services

Contained stateKnown web shell and payloads securely quarantined
Miner stopped and outbound activity verified closed
Malicious startup service disabled and removed
Management surface restricted and SSH verified key-only

Recovery outcome

Known malicious execution stopped, privileged persistence removed, administrative exposure reduced, and a clean recovery path established.

Containment restored operational control. A clean rebuild, verified migration, rotated credentials, and continued monitoring were required to restore long-term trust.

Let’s make it
worthy of trust.

Bring us the platform that needs stronger engineering, tighter security, or a clear technical owner.

Tell us what needs attention.Secure enquiry

Do not send passwords, private keys, customer data, or vulnerability details through this form. Submissions are retained securely so Osiris can respond and maintain an enquiry record.