Limitare i tentativi di accesso senza un plugin?
Come proteggere la pagina di accesso di WordPress senza utilizzare un plugin
English version: Limit login attempts without a plugin?
Su Internet si possono trovare molti commenti e consigli a riguardo. Ma è vero?
Di default, WordPress consente tentativi di accesso illimitati tramite il modulo di login, l'invio di cookie speciali, l'utilizzo di chiamate XML-RPC e chiamate API REST. Questo permette di decifrare le password con relativa facilità tramite attacchi brute force. Al giorno d'oggi, hacker e bot cercano costantemente di accedere al tuo sito WordPress indovinando la tua password di amministratore e le password degli altri utenti registrati sul sito. Quindi, se vuoi proteggere il tuo sito senza utilizzare plugin, hai bisogno di:
- Conoscere bene PHP .
- È necessario avere una conoscenza sufficiente dei filtri e delle azioni di autenticazione (integrati in WordPress) per poterli agganciare. Consiglio di iniziare da hook come "authenticate" e "wp_login_failed".
- Tieni traccia del modulo di accesso post, delle richieste di autorizzazione XML RPC e REST API e, sì, non dimenticare i cookie di autorizzazione (sono validi?).
- Memorizza da qualche parte tutti i tentativi, tutti gli accessi tentati e tutti gli indirizzi IP, per calcolare quando e quale IP bloccare. Consiglio di usare l'API Transient. Davvero. È il modo più semplice. Certo, non puoi controllarla, ma usarla ti permette di fare qualcosa senza conoscere SQL.
- Calcola il tempo tra i tentativi di accesso non riusciti per un determinato IP.
- Hai uno strumento o un codice PHP per azzerare uno qualsiasi di quei contatori e bloccare l'IP dei clienti. Cosa succederebbe se un cliente legittimo venisse bloccato per caso?
Sembra folle? Hai una seconda opzione. Puoi cercare su Google e prendere qualche frammento di codice da qualche blog su Internet, senza alcuna garanzia o supporto.
Conclusione: su Internet si possono trovare molti consigli su come limitare i tentativi di accesso senza plugin. Ma tutti i consigli sono forniti da persone che non sanno nemmeno come funziona esattamente l'algoritmo di autenticazione di WordPress, compresi quei bravi ragazzi di StackOverflow. In ogni caso, è possibile farlo, se non ci si preoccupa davvero della sicurezza del proprio sito, perché non c'è modo di farlo correttamente senza competenze di programmazione PHP e conoscenza del meccanismo di autenticazione di WordPress.