■ Incident Response · Fixed-Fee Emergency Packages
Vector: Magecart-style skimmer on Checkout
Detected: Day 14
Removed: Day 14
Notified CNIL: Day 16 (within 72-hour window)
Outcome: No card data confirmed exfiltrated post-removal

■ Incident response — talk to the lead architect
Ritesh Agarwal · Lead Architect, Appycodes · LinkedIn
■ What you get
We don't sell a scanner. We sell engineers who treat the compromise like the start of a project, not the end of one.
01
Magecart skimmers, SEO-spam injections, redirect malware, cryptominers, backdoor PHP shells. Identified, removed, root cause documented.
02
Timeline reconstruction. Breach-window estimation from page revision history. Indicator-of-compromise documentation handed to your legal and DPO.
03
File integrity monitoring, WAF rules, geo-blocking, ASN blocking, full credential rotation (DB, API keys, hosting panel, FTP/SSH, gateways), 2FA enforcement.
04
GDPR Article 33, CNIL, ICO. What to write, when to write it, what counts as a notifiable breach, who has to be told within 72 hours.
05
Monitoring, alerting, patch management, scheduled scans. Quarterly review. Not a vendor relationship — a phone number that picks up at 02:00.
06
7.x → 8.x. The work that should have happened before the compromise — done after, with the codebase rewritten where the old packages stopped receiving security patches.
▼ The IOC Map
Twelve indicator-of-compromise patterns we look for during an incident. Each tile is the one-line check we actually run.
File mtime drift
find wp-content -mtime -30 -type f
PHP in /uploads/
find wp-content/uploads -name '*.php'
eval(base64_decode(
grep -R 'eval(base64_decode' wp-content/
option_value injection
SELECT option_value WHERE LIKE '%<script%'
Admin user drift
wp user list --role=administrator
Cron task hijack
wp cron event list
.htaccess rewrite
git diff .htaccess (or backup compare)
Skimmer JS in content
grep -R 'metrics.js\|easystation' wp_posts
Backdoor polling URLs
tail -f access.log | grep wp-load
ASN traffic spikes
Cloudflare Firewall Events · group by ASN
WSO / FilesMan shells
grep -R 'FilesMan\|WSO\|assert(\$_'
Iframe injections
grep -R '<iframe[^>]*src="http' theme/
■ Evidence — anonymised case files
French WooCommerce site running Payplug + WPML. Duplicate card-detail fields appeared at checkout. Initial hypotheses (duplicate plugins, WCML gateway double-registration, Gutenberg block conflicts, theme overrides) all ruled out methodically.
Actual cause: malicious third-party script easystation.top/fibrebio/metrics.js injected into Checkout page content, rendering a fake payment form overlay alongside the legitimate Payplug form. Classic Magecart pattern — overlay captures, exfiltrates, passes through to the real form so the order completes and nobody notices.
Post-removal: file-mtime audit across wp-content/ for 30 days, grep for backdoor patterns (eval(base64_decode, eval(gzinflate, assert($_, FilesMan, WSO), PHP-in-uploads scan, SQL audit of wp_options for script injection, admin user review, MalCare deep scan with second-pass confirmation, full credential rotation, GDPR Article 33 conversation with the client.
nginx upstream timeout cascade caused by PHP-FPM worker pool exhaustion. Diagnosed: coordinated bot attack from Hetzner Cloud IPs hitting /boiler-cover/ variants. Higher-priority finding alongside: POST requests to wp-load.php and /v1/wp-load.php with randomised hex query parameters — backdoor polling pattern suggesting the install was already compromised.
Remediation: ASN-level Cloudflare blocking, aggressive page caching to absorb bot traffic, reduced fastcgi_read_timeout, geo-blocking by country allowlist with cf.client.bot bypass for verified Googlebot. Deployed first under Managed Challenge before switching to Block to avoid taking down legitimate traffic.
Hardening engagements run alongside maintenance & support, custom WordPress, and WooCommerce development. Edge-layer work for WAF and geo-blocking ties into Cloudflare edge engineering.
■ Good fit if
■ Probably not a fit
■ Tools we use
■ Active incident
Engineers, not a ticketing queue.
■ Other services
Explore the rest of what we build.
MVP to production builds, multi-tenant, billing, AI features.
Learn moreiOS + Android in one codebase. Push, offline, OTA updates.
Learn moreConvert your Lovable / Claude / Bolt web app to React Native or Flutter — backend reused.
Learn morePrerender, schema, Core Web Vitals — engineering-led SEO.
Learn moreB2B marketplaces, membership sites, headless WordPress.
Learn moreCustom themes, migration to Shopify, Shopify apps, supplier-feed automation.
Learn moreB2B wholesale, high-SKU catalogues, WooCommerce Subscriptions, Shopify-to-Woo migrations.
Learn morePost-launch stability, security, monthly improvements.
Learn moreTake an AI-built prototype to a production-ready product.
Learn moreConvert AI-built web prototypes into native mobile apps.
Learn moreSubmit, configure and optimise for App Store + Play Store.
Learn moreModernise legacy systems with zero-downtime migrations.
Learn moreEngineering capacity for agencies, under your brand.
Learn moreFrom idea to live product — design, build, launch, growth.
Learn moreCustom REST/GraphQL APIs and third-party integrations.
Learn moreMulti-tenant AI SaaS with subscriptions and admin dashboards.
Learn moreMarketplaces with credit, KYC, and trust infrastructure baked in.
Learn moreCustomised Moodle deployments and bespoke Moodle mobile apps.
Learn moreSubscription recovery, dunning, migrations, combinatorial billing matrices.
Learn moreMagento, WordPress, BigCommerce → Shopify. Redirect-engineering first.
Learn moreFour production Laravel platforms. ERPs, contracts, tendering.
Learn moreWebhooks, metering, proration, dunning, multi-currency, reconciliation.
Learn moreWorkers, R2, WAF, Bulk Redirects. The full surface, not just the orange cloud.
Learn moreTender automation, contract operations, compliance calendars, calculators.
Learn moreRLS, multi-role auth, production-hardening Lovable / Bolt / v0 prototypes.
Learn moreWP + Next.js with preview, ISR, auth handoff, media pipeline, search.
Learn moreSchema-first builds, multilingual setups, migrations from WP / Contentful / Strapi.
Learn moreFour production Vue platforms. Vue + Laravel as the default pairing.
Learn morenginx, PHP-FPM, slow-query analysis, plugin audit. Diagnostic engineering, not plugin installs.
Learn moreSurgical plugin work — namespaced, idempotent, version-controlled. Not functions.php.
Learn moreKB + forum + adjacent surfaces. Search, version-aware routing, role-based visibility.
Learn moreMulti-day festivals, white-label venue groups, offline-capable door-staff apps.
Learn moreProduction RAG with chunking, hybrid retrieval, reranking, grounding, eval.
Learn moreMake.com, n8n, Zapier, and custom Node workers — chosen by volume.
Learn moreCalculator- and location-driven SEO surfaces with real data and SSR.
Learn more