Cum oprești atacurile de tip Brute Force în WordPress și cPanel
Autor: Cozma Calin
Specialist Infrastructură și Securitate Web • Publicat: August 2026
Atacurile Brute Force trimit mii de combinații user/parolă spre wp-login.php sau portul cPanel. Chiar dacă parola rezistă, cererile umplu PHP-FPM și MySQL până cade site-ul. E prevenție, nu devirusare — dar un server blocat arată la fel de mort. Pentru hardening complet vezi securizare site WordPress.
1. Cum recunoști un atac Brute Force
CPU la 100%, site lent, log-uri pline de POST /wp-login.php de pe IP-uri din toată lumea. În cPanel → Metrics → Errors sau în access_log vezi același pattern la câteva milisecunde. Fail2ban sau CSF, dacă există, deja blochează — dar shared hosting-ul ieftin nu are mereu asta activ.
- Simptom: TTFB uriaș, 504 Gateway Timeout, email-uri „login failed” în masă.
- Nu e malware (încă): botul doar ghicește. Dacă ghicește, atunci începe infectarea.
- cPanel e o țintă separată: port 2083/2082. Parola de hosting e mai valoroasă decât un user WordPress.
2. Mută adresa de login WordPress
Botneții lovesc doar /wp-login.php și /wp-admin. O adresă personalizată (WPS Hide Login sau echivalent) taie peste 90% din zgomot. Nu e securitate criptografică — e reducere de zgomot. Păstrezi 2FA și parole lungi.
După mutare, verifică că xmlrpc.php nu rămâne deschis pentru wp.getUsersBlogs — e a doua ușă de Brute Force. Dacă nu folosești Jetpack sau aplicații mobile, blochează xmlrpc din .htaccess.
🛡️ Vrei protecție automată împotriva botneților?
Mentenanța lunară include WAF, blocare Brute Force și monitorizare uptime 24/7.
Activează Scutul Lunar (190 RON/lună)3. Limit Login, 2FA și userul admin
Trei setări care se fac în 15 minute: redenumește userul admin, activează 2FA pe toate conturile cu manage_options, limitează încercările eșuate la 3–5 pe 15 minute. Fără astea, un login „ascuns” tot cade dacă parola e Firma2024!.
4. cPanel: IP Blocker și ModSecurity
În cPanel → Security → IP Blocker pui range-urile care umplu log-ul. E manual și se învechște. Mai util: ModSecurity pe On, cu reguli OWASP dacă hosterul le oferă. Cere-i să activeze rate-limit pe /wp-login.php și pe /wp-admin.
Dacă ai WHM (VPS/dedicated), CSF + LFD e standardul: blochează după N eșecuri pe 2083 și pe 22 (SSH). Pe shared, n-ai root — atunci Cloudflare e cel mai bun strat pe care îl controlezi tu.
5. Cloudflare WAF înainte de server
Proxy-ul Cloudflare taie cererile înainte să ajungă la PHP. Reguli utile: Challenge pe /wp-login.php pentru țări din care nu ai clienți, Block pe user-agenți goi, Rate limiting 5 requeste / 10 secunde pe login. DNS-ul trebuie pe proxied (nor portocaliu), altfel WAF-ul e ocolit.
Regula de aur a lui Calin: Brute Force-ul nu se „vindecă” din WordPress. Se taie în fața serverului. Dacă PHP tot vede mii de POST-uri, ai pierdut deja CPU-ul.
6. După ce atacul s-a oprit
Verifică wp_users pentru admini noi, schimbă parola cPanel și WordPress, regenerează SALT keys. Dacă botul a ghicit parola, nu mai e Brute Force — e incident. Atunci urmezi protocolul de devirusare.
Întrebări frecvente
Brute Force-ul poate cădea serverul fără să ghicească parola?+
Da. Mii de requeste PHP pe secundă umplu workerii și MySQL. Site-ul dă 503/504 deși nimeni n-a intrat în admin.
Ajunge să schimb URL-ul de wp-login?+
Reduce zgomotul, nu înlocuiește 2FA, parole lungi și WAF. xmlrpc.php rămâne o a doua țintă dacă nu îl blochezi.
Cloudflare e obligatoriu?+
Nu, dar pe shared hosting e cel mai ieftin strat pe care îl controlezi tu. Fără root nu instalezi CSF. WAF-ul Cloudflare stă în fața PHP-ului.
cPanel are protecție built-in?+
IP Blocker și ModSecurity, dacă hosterul le ține aprinse. Cere rate-limit pe wp-login și pe portul 2083. Nu presupune că „e deja pus”.
Protejează-ți site-ul proactiv
Configurăm WAF, limităm login-ul și monitorizăm uptime-ul ca serverul să nu mai cadă de la botneți.