WordPress alimentează peste 40% din internet în 2026 — și implicit e ținta numărul 1 pentru atacatori automatizați. Vestea bună: 95% din breach-uri WordPress vin din câteva greșeli foarte cunoscute. Vestea rea: foarte puține site-uri respectă măcar primele 10 puncte din lista de mai jos.
Acest checklist e organizat în 6 zone: configurare, autentificare, plug-in-uri & teme, backup, monitoring și răspuns la incident. Fiecare punct are explicație și acțiune concretă. Citește, bifează ce ai deja, prioritizează ce nu ai.
Configurare de bază (5 puncte)
1. WordPress core la zi
Configurează update-uri automate pentru versiuni minore (security patches). Pentru major updates (5.x → 6.x), update manual cu staging environment + testare. WP Core abandonat e cel mai mare risc — versiunile cu > 1 an au CVE-uri exploatate activ.
2. PHP la versiune supportată
În 2026, minim PHP 8.2. PHP 8.0 și mai vechi sunt end-of-life și nu mai primesc security patches. Verifică în WP-Admin → Tools → Site Health.
3. HTTPS forțat
SSL gratuit prin Let's Encrypt (toți providerii decenți îl oferă auto). Forțează redirect HTTP → HTTPS la nivel de server (htaccess sau Nginx) și setează în WP General Settings ambele URL-uri ca https://.
4. wp-config.php protejat
Mută wp-config.php deasupra rădăcinii web (un nivel mai sus de /public_html/). Sau setează permisiuni 400 (read-only owner). Conține credentials DB — leak = domain takeover.
5. Salts unice + recente
Generează salts noi de pe api.wordpress.org/secret-key/1.1/salt/ și înlocuiește în wp-config. Schimbă-le anual și după orice incident suspect.
Autentificare (6 puncte)
6. Username admin diferit de „admin"
Brute-force atacă mereu username-ul „admin". Folosește ceva non-evident. Dacă l-ai uitat, creează user nou admin → șterge cel vechi.
7. Parolă admin lungă (16+ caractere)
Folosește 1Password, Bitwarden sau KeePass pentru generare și stocare. Niciodată nu refolosi parole între site-uri.
8. Two-Factor Authentication (2FA)
Plugin: Wordfence (free) sau Two Factor (de WP core team). Nu negociabil pentru admini și editori. SMS 2FA e mai slab decât TOTP — preferă Google Authenticator / Authy.
9. Limit Login Attempts
Plug-in: Limit Login Attempts Reloaded. Blochează IP după 5 încercări greșite. Singurul pas care oprește 90% din brute-force.
10. Schimbă URL-ul wp-admin
Plug-in: WPS Hide Login. Mută /wp-login.php la /secret-path-of-your-choice. Nu e securitate „adevărată" (security through obscurity), dar reduce dramatic atacurile automatizate.
11. Dezactivează editarea fișierelor în admin
Adaugă în wp-config.php:
define('DISALLOW_FILE_EDIT', true);Previne ca un admin compromis să injecteze cod prin Theme Editor sau Plugin Editor.
Plug-in-uri & teme (4 puncte)
12. Doar plugin-uri din directorul oficial sau dezvoltatori cunoscuți
Plug-in-uri „nulled" (versiuni piratate de pluginuri pro) conțin aproape mereu malware. Free e gratuit. Pro merită cumpărat.
13. Audit lunar plug-in-uri
Șterge plug-in-urile pe care nu le folosești efectiv. Fiecare plug-in instalat = potențial vector de atac. Țintește 10-15 plug-in-uri max pentru un site standard.
14. Update-uri în 7 zile
Când un plug-in primește patch de securitate, fereastra între disclosure și exploit automatizat e tipic 24-72 ore. Setează update-uri auto pentru plug-in-uri minore. Major updates testate pe staging.
15. Temă child custom
Nu modifica temele direct (pierzi modificările la update). Folosește child theme. Și niciodată teme „nulled" — vezi punctul 12.
Backup-uri (3 puncte)
16. Backup zilnic automat
Plug-in: UpdraftPlus, BackWPup, sau (pro) BlogVault. Backup-ul include database + uploads + plugins + themes.
17. Off-site storage
Backup-ul stocat pe același server cu site-ul = inutil când serverul e compromis. Configurează S3, Google Drive, Dropbox, sau Backblaze B2 (cel mai ieftin).
18. Test restore lunar
Backup-ul fără restore testat e o iluzie. O dată pe lună, restorează un backup pe staging și verifică integritatea.
Cea mai dezamăgitoare experiență din viața unui dezvoltator: descoperi că backup-urile rulau de un an, dar fișierele erau corupte / incomplete. Testează restore-ul măcar o dată — preferabil înainte să ai nevoie urgentă.
Monitoring & detecție (4 puncte)
19. Web Application Firewall (WAF)
Cloudflare (free tier acoperă cazurile mici-medii), Sucuri, sau Wordfence Premium. Blochează atacuri OWASP Top 10 înainte să ajungă la WordPress.
20. File integrity monitoring
Wordfence și iThemes Security scanează zilnic dacă fișierele core / plug-in-uri sunt modificate. Modificări ne-explicate = malware.
21. Activity log
Plug-in: WP Activity Log. Loghează cine a editat ce, când. În caz de incident, ai trail complet.
22. Uptime monitoring
UptimeRobot (free), Better Uptime, Pingdom. Te alertează în 1-5 min când site-ul e down. Atacurile DDoS sau defacement se observă imediat.
Răspuns la incident (3 puncte)
23. Plan de răspuns scris
Nu improviza la 3 dimineața când site-ul e hackuit. Documentează în avans: cine ia decizia de a opri site-ul, cine restorează backup-ul, cine comunică cu clienții, cine raportează la ANSPDCP dacă e breach de date personale.
24. Restore from clean backup, niciodată „clean malware in place"
Dacă site-ul e compromis serios, NU încerca să cureți malware-ul. Restoraz cel mai recent backup curat (de dinaintea breach-ului), apoi closing the gap (update plug-in-ul vulnerabil, schimbă parolele).
25. Schimbă tot după breach
Toate parolele (WP, FTP, hosting cPanel, DB, API keys), toate salts, toate session-urile invalidate. Asume că orice credentialaccesibil din WP a fost capturat.
Prioritizare pentru bugete strânse
Dacă ai timp doar pentru 5 puncte, fă acestea (în ordine):
- 2FA pentru admini (10 min, impact uriaș)
- Limit Login Attempts (5 min)
- Backup zilnic off-site (15 min setup, salvează viața)
- WP + plug-in-uri update-ate (5 min lunar)
- Cloudflare în față (30 min setup, free)
Aceste 5 acoperă 80% din riscul real. Pentru restul de 20%, mergi prin checklist complet sau angajează un specialist.
Audit de securitate WordPress
Ofer audit complet WordPress (toate cele 25 de puncte + scan malware activ + raport scris) ca parte din serviciul nostru WordPress. Pentru site-uri existente, audit standalone — 350 EUR. Contactează-mă pentru detalii.