Il proprietario di un negozio di solito si accorge di un attacco brute force solo quando la pagina di accesso inizia a comportarsi in modo strano, ad esempio con ripetuti tentativi di accesso falliti, indirizzi IP sconosciuti nei log o un calo delle prestazioni del negozio.
Uno script automatizzato continua a provare diverse password in un modulo di accesso. Un tentativo andato a buon fine può consentire a un malintenzionato di accedere al back office del tuo negozio e di modificare i dati dei prodotti, scaricare le informazioni dei clienti, modificare le impostazioni, installare moduli o interferire con le operazioni del negozio.
Come si può quindi proteggere un negozio PrestaShop dagli attacchi brute-force?
Non affidarti a una sola impostazione. Inizia proteggendo gli account amministratore, rendi più difficili i tentativi di accesso automatizzati, aggiungi un ulteriore fattore di autenticazione, limita gli accessi non necessari, mantieni PrestaShop e i suoi moduli aggiornati e assicurati di poter rilevare e ripristinare attività sospette. Le attuali linee guida di sicurezza di PrestaShop raccomandano inoltre account univoci, un'attenta gestione delle credenziali, firewall, backup e l'aggiornamento costante dei moduli.
Il resto del lavoro consiste nel far sì che queste pratiche funzionino in modo integrato.
1.0 Iniziate dal back office, non dal negozio

Per la maggior parte dei negozi, il back office di PrestaShop è la prima area da esaminare.
I clienti devono poter accedere al negozio, non all'area amministrativa. Questa distinzione rende il back office un luogo ideale per aggiungere ulteriori restrizioni.
Un semplice accorgimento consiste nell'evitare di utilizzare un URL di amministrazione facilmente prevedibile. Modificare la directory di amministrazione predefinita può ridurre l'esposizione agli scanner automatici che cercano percorsi di amministrazione comuni.
Non si tratta di una misura di sicurezza a sé stante. Un utente malintenzionato che scopra il nuovo URL può comunque raggiungere la pagina di accesso. È più opportuno considerarla come una riduzione dell'esposizione non necessaria, piuttosto che come una sostituzione dei controlli di autenticazione.
C'è un altro aspetto pratico da considerare: non rendete il nuovo URL così oscuro da rischiare che persino il vostro team lo perda di vista. Archiviate le informazioni in modo sicuro e documentatele per chi si occupa della gestione del negozio.
2.0 Non considerare un URL di amministrazione nascosto come protezione contro gli attacchi brute-force.
È un errore facile da commettere.
Modificare l'URL di amministrazione potrebbe impedire a uno scanner di base di trovare la pagina di accesso, ma non fermerà chi già conosce l'indirizzo. Inoltre, non sarà d'aiuto se la password di un amministratore è stata compromessa.
La sicurezza del pannello di amministrazione dovrebbe quindi prevedere diversi controlli indipendenti. Se un livello di sicurezza fallisce, un altro deve comunque essere pronto a intervenire.
3.0 Assegnare a ciascun amministratore un account separato
Se un negozio è gestito da cinque persone, non assegnate a tutte e cinque le stesse credenziali di amministratore.
PrestaShop consiglia di creare account e profili diversi per le persone che svolgono diverse tipologie di lavoro e di revocare l'accesso di amministratore non più necessario.
Ciò è utile sia per la sicurezza che per la responsabilità.
Supponiamo che uno sviluppatore abbia bisogno di accedere per modificare un modulo, mentre un addetto all'assistenza clienti debba solo gestire gli ordini. Non è detto che debbano avere permessi identici.
Inoltre, la creazione di account separati semplifica notevolmente le indagini. Se si verifica qualcosa di insolito, è possibile determinare quale account è coinvolto, anziché dover cercare di capire chi ha utilizzato un login condiviso.
Per il proprietario di un negozio, una rapida revisione dell'account è utile:
Rimuovi gli ex dipendenti e i vecchi account aziendali. Verifica se ogni amministratore necessita ancora dell'accesso al back-office. Concedi ai dipendenti solo le autorizzazioni necessarie per il loro lavoro. Non condividere l'account SuperAmministratore. Utilizza un gestore di password per le credenziali di amministratore.
Si tratta di piccole modifiche, ma eliminano contemporaneamente diverse debolezze evitabili.
4.0 Utilizza password complesse e univoche
La protezione dagli attacchi di forza bruta inizia dalla password stessa.
Non utilizzare il nome del negozio, il nome del dominio, il nome dell'azienda o una loro variante prevedibile. Ancora più importante, non riutilizzare la password di amministratore di PrestaShop in nessun altro luogo.
Il credential stuffing è particolarmente rilevante in questo contesto. Un malintenzionato non ha sempre bisogno di indovinare una password carattere per carattere. Se una password e un indirizzo email sono già comparsi in una violazione di dati altrove, strumenti automatizzati possono provare a utilizzare quelle credenziali sul tuo negozio.
Un gestore di password semplifica notevolmente la gestione di password univoche. Le linee guida di PrestaShop raccomandano l'utilizzo di un gestore di login e password e la protezione accurata delle credenziali per il back office, l'hosting, l'FTP e altri servizi.
C'è anche una questione più ampia: proteggere la password di PrestaShop lasciando l'account di hosting protetto da una password debole e riutilizzata non risolve il problema di fondo. Le credenziali di hosting, database, FTP, email e amministrazione dovrebbero essere considerate come confini di sicurezza separati.
5.0 Aggiungere l'autenticazione a due fattori all'accesso amministratore
Le password sono solo una parte del processo di autenticazione.
Se la password di un amministratore viene rubata tramite phishing, malware o un altro servizio compromesso, un secondo fattore di autenticazione può impedire all'attaccante di accedere direttamente al back office.
Ecco perché un modulo di autenticazione a due fattori per PrestaShop può essere utile per i negozi che necessitano di una maggiore protezione per gli accessi degli amministratori.
L'implementazione esatta dipende dalla versione di PrestaShop che utilizzi e dall'estensione che scegli. Prima di installarne una, verifica la compatibilità e capisci quali account e flussi di accesso protegge.
Il principio è semplice: non rendere sufficiente una password rubata per accedere a un account privilegiato.
Per un negozio con diversi amministratori, questo è particolarmente importante. Una singola password compromessa non dovrebbe automaticamente significare che qualcuno ha accesso amministrativo completo.
6.0 Rallenta i tentativi di accesso ripetuti
È qui che la protezione dagli attacchi brute force di PrestaShop diventa più specifica.
Immaginate che un malintenzionato invii centinaia o migliaia di richieste di accesso. Se ogni richiesta viene elaborata esattamente nello stesso modo di un normale accesso, il malintenzionato può continuare a provare.
La limitazione della velocità cambia questo.
A seconda dell'implementazione, i guasti ripetuti possono attivare controlli progressivamente più stringenti, come ad esempio:
Ritardo tra i tentativi di accesso Blocco temporaneo CAPTCHA o altra sfida Restrizioni basate su IP Restrizioni a livello di account Avvisi per attività di autenticazione insolite
L'implementazione, tuttavia, richiede una certa attenzione.
Il blocco permanente dell'account dopo un numero limitato di tentativi falliti può sembrare una soluzione sicura, ma può creare un altro problema. Un utente malintenzionato potrebbe attivare intenzionalmente il blocco e impedire al vero amministratore di accedere.
Per questo motivo, in genere è meglio combinare i controlli a livello di account con segnali relativi a IP, frequenza delle richieste e comportamento, piuttosto che affidarsi completamente a una semplice regola "cinque tentativi falliti e blocco dell'account".
7.0 Il CAPTCHA può essere d'aiuto, ma non deve essere la tua unica difesa
Un modulo captcha può aggiungere attrito ai tentativi di accesso automatizzati.
Il CAPTCHA non è magico, però.
Alcuni sistemi automatizzati possono aggirare le verifiche più deboli e obbligare ogni cliente legittimo a superare un CAPTCHA può peggiorare l'esperienza di acquisto. Di solito, ha più senso considerarlo parte di una strategia anti-abuso più ampia.
8.0 Metti un firewall tra gli aggressori e PrestaShop
Non tutte le richieste dannose devono necessariamente raggiungere l'applicazione.
Un firewall o un firewall per applicazioni web può filtrare il traffico prima che raggiunga il processo di login di PrestaShop. A seconda della configurazione del tuo hosting, questa protezione può essere fornita dal tuo provider di hosting, da una CDN, da un proxy inverso, dalla configurazione del server o da una soluzione di sicurezza applicativa dedicata.
Il modulo firewall può fornire un ulteriore livello di protezione, ma non dovrebbe essere automaticamente considerato un sostituto della protezione a livello di infrastruttura.
La configurazione corretta dipende da dove è ospitato il tuo negozio.
Una disposizione a strati efficace potrebbe essere questa:
Internet → CDN/WAF → Server Web → PrestaShop → Controlli di autenticazione → Amministratore
Ogni strato ha una funzione diversa.
Il firewall può gestire i modelli di traffico sospetti. Il server web può applicare le regole di accesso. PrestaShop gestisce l'autenticazione e le autorizzazioni. L'autenticazione a più fattori (MFA) protegge l'account in caso di compromissione della password.
Questo è molto più efficace che chiedere a un singolo componente di fare tutto.
9.0 Limitare l'accesso al back office quando è opportuno
Alcune aziende dispongono di un ambiente amministrativo relativamente controllato. I loro dipendenti lavorano da una rete aziendale condivisa o si connettono tramite una VPN aziendale.
Se questa è la tua situazione, potrebbe essere opportuno valutare la possibilità di limitare l'accesso degli amministratori alle reti attendibili.
L'inserimento di indirizzi IP in una lista bianca può essere efficace, ma non è adatto a tutti i negozi. Dipendenti che lavorano da remoto, indirizzi IP dinamici, VPN, reti mobili e agenzie di terze parti possono rendere difficile la gestione di questa regola.
Un negoziante che lavora da casa, ad esempio, potrebbe scoprire che una restrizione IP troppo rigida crea più problemi operativi che vantaggi in termini di sicurezza.
Quindi non aggiungete una regola di accesso solo perché compare in una checklist di sicurezza. Prima di tutto, cercate di capire come il vostro team accede effettivamente al negozio.
10.0 Mantieni aggiornati PrestaShop e i suoi moduli
La protezione contro gli attacchi di forza bruta non servirà a nulla se un aggressore riesce a eludere il sistema di accesso sfruttando una vulnerabilità non correlata.
PrestaShop attualmente raccomanda di mantenere i moduli aggiornati e di prestare attenzione alla loro provenienza. Le sue linee guida per gli aggiornamenti raccomandano inoltre di verificare la compatibilità tra moduli e temi, rimuovere i componenti obsoleti, testare gli aggiornamenti in un ambiente di pre-produzione e conservare backup testati.
Questo è importante perché i moduli di terze parti diventano parte della superficie di attacco del tuo negozio.
Prima di installare un'estensione, chiedi:
È compatibile con la mia versione di PrestaShop? Lo sviluppatore lo mantiene attivamente? Quando è stato aggiornato l'ultima volta? Proviene da una fonte affidabile? Introduce accessi non necessari ad aree sensibili? Posso rimuoverlo se non è più supportato?
Non lasciare installati i vecchi moduli solo perché non vengono più utilizzati.
Anche i software non utilizzati devono essere mantenuti. Se non servono, spesso è più semplice rimuoverli che ricordarsi di proteggerli a tempo indeterminato.
11.0 Proteggere il server e PrestaShop
Il tuo negozio non esiste solo all'interno della dashboard di PrestaShop.
Sono inoltre presenti il server web, l'ambiente PHP, il database, il pannello di controllo dell'hosting, l'accesso FTP/SFTP, la gestione delle attività pianificate, il file system e, eventualmente, una CDN o un proxy inverso.
Un'efficace procedura di rafforzamento della sicurezza dell'area amministrativa di PrestaShop dovrebbe includere questi componenti.
Ad esempio, le credenziali di amministratore non saranno di grande aiuto se un malintenzionato ha già ottenuto l'accesso all'account di hosting. Allo stesso modo, proteggere il back office non impedisce che un modulo obsoleto diventi un punto di ingresso.
Revisione:
Credenziali dell'account di hosting Accesso FTP/SFTP Credenziali del database Permessi dei file Configurazione HTTPS Versioni del server e di PHP Moduli e temi non utilizzati File sensibili accessibili pubblicamente Configurazione del firewall e del WAF
La documentazione attuale di PrestaShop raccomanda inoltre l'utilizzo di firewall appropriati e backup affidabili come parte integrante della protezione del negozio.
12.0 Controlla i registri
Un attacco con la forza bruta lascia delle tracce.
Potresti riscontrare numerose richieste non riuscite verso lo stesso endpoint di accesso, tentativi ripetuti verso diversi account di dipendenti o traffico proveniente da fonti insolite.
Non serve una piattaforma di monitoraggio della sicurezza enorme per iniziare a prestare attenzione.
Come minimo, è importante sapere dove il provider di hosting conserva i log del server web e dove è possibile consultare gli eventi di sicurezza relativi a PrestaShop.
Cerca di individuare degli schemi ricorrenti, piuttosto che un singolo tentativo di accesso fallito isolato.
Ad esempio, cinque tentativi di accesso falliti distribuiti su diversi giorni potrebbero non significare molto. Cinquecento tentativi in un breve periodo da diversi indirizzi, invece, meritano un'indagine.
Presta attenzione anche agli accessi riusciti che si verificano immediatamente dopo un gran numero di tentativi falliti. Questo non è una prova di compromissione, ma è un segnale utile per indagare.
13.0 I backup fanno parte della sicurezza
È facile pensare ai backup come a qualcosa di necessario solo dopo un crash del server.
Hanno la stessa importanza anche dopo un incidente di sicurezza.
Se un utente malintenzionato modifica i file, cambia la configurazione, danneggia il database o in altro modo interrompe il funzionamento del sistema, è necessario disporre di un metodo affidabile per ripristinare uno stato precedente funzionante.
PrestaShop raccomanda di mantenere backup completi e testati, inclusi file e database, e le sue linee guida per gli aggiornamenti raccomandano specificamente di verificare che il ripristino funzioni effettivamente.
Non dare per scontato che esista un backup solo perché il pannello di controllo del tuo hosting indica "backup giornaliero".
Provalo.
Un backup che non può essere ripristinato quando ne hai bisogno non rappresenta un vero e proprio piano di ripristino.
È inoltre preferibile mantenere le copie di backup separate dall'ambiente di produzione, in modo che una compromissione del server non comprometta automaticamente tutti i backup disponibili.
Se il tuo hosting non fornisce il servizio di backup, puoi anche considerare il modulo Backup & Restore per mantenere
14.0 Dove si inserisce un modulo di sicurezza PrestaShop
I proprietari di negozi che non desiderano configurare autonomamente tutti i controlli di sicurezza possono prendere in considerazione un modulo di sicurezza dedicato per PrestaShop.
Knowband Prestashop Advanced Security Manager è un'opzione da valutare se si desidera aggiungere controlli di sicurezza al proprio ambiente PrestaShop. È fondamentale confrontare le sue funzionalità effettive con le esigenze del proprio negozio, anziché presumere che ogni estensione di sicurezza risolva gli stessi problemi.
Dovrebbe inoltre integrare, e non sostituire, una buona sicurezza dell'hosting, password complesse, gestione degli accessi amministrativi, aggiornamenti, backup e monitoraggio.
Prima di installare qualsiasi estensione di sicurezza, verifica la sua compatibilità con la tua versione di PrestaShop e analizza attentamente le modifiche che apporta. Uno strumento di sicurezza diventa un componente a sé stante del tuo ambiente di produzione, pertanto deve essere gestito con la stessa cura riservata al resto del negozio.
15.0 Un piano di rafforzamento realistico per il proprietario di un negozio
Non devi affrontare tutto in un solo pomeriggio.
Se il tuo negozio attualmente offre un livello di protezione molto basso, inizia con i controlli che ti garantiscono il miglioramento maggiore senza creare inutili complessità operative.
Oggi cambia le password di amministratore deboli o riutilizzate. Rimuovi i vecchi account di amministratore. Verifica chi ha attualmente accesso al back office. Assicurati che l'URL di amministrazione non utilizzi un percorso predefinito ovvio.
Successivamente, aggiungi l'autenticazione a due fattori dove opportuno. Introduci la limitazione della frequenza delle richieste o la protezione dai tentativi di accesso non riusciti. Valuta l'utilizzo del CAPTCHA per il traffico di autenticazione sospetto. Esamina le opzioni firewall o WAF disponibili tramite il tuo provider di hosting.
Durante la manutenzione ordinaria, aggiorna PrestaShop e i moduli di terze parti. Rimuovi le estensioni non più necessarie. Verifica i permessi di amministratore. Controlla i log di sicurezza e del server. Verifica che i backup siano in esecuzione.
Eseguire periodicamente test di ripristino dei backup. Rivedere gli account di hosting e FTP/SFTP. Verificare i moduli di terze parti. Controllare chi necessita ancora dell'accesso di amministratore. Verificare che la configurazione di sicurezza sia ancora adeguata alle esigenze operative dell'azienda.
Quest'ultimo punto è facile da trascurare. Una configurazione di sicurezza adeguata due anni fa potrebbe non esserlo più dopo aver cambiato provider di hosting, aggiunto dipendenti da remoto, installato nuove integrazioni o migrato a una versione diversa di PrestaShop.
16.0 Se si verifica un'ondata improvvisa di tentativi di accesso falliti
Non dare per scontato che il negozio sia stato compromesso.
Innanzitutto, verificate le prove.
Esamina il numero e la tempistica dei tentativi falliti. Controlla se almeno un accesso da parte di un amministratore è andato a buon fine. Rivedi le modifiche recenti apportate a dipendenti, moduli, configurazione e file.
Se trovi prove di accesso non autorizzato, trattalo come un incidente anziché limitarti a cambiare una password e passare oltre.
Cambia le credenziali interessate utilizzando un dispositivo affidabile, rivedi gli account amministratore, indaga sulla fonte dell'accesso, verifica la presenza di modifiche inattese e, se necessario, coinvolgi il tuo provider di hosting o uno specialista della sicurezza. Come sottolinea TPx , agire rapidamente e con metodo dopo un incidente è ciò che limita i danni.
La cosa più importante è scoprire perché l'aggressore è riuscito ad arrivare così lontano.
Se il problema era dovuto a una password riutilizzata, correggi il processo di gestione delle password. Se era coinvolto un modulo obsoleto, rimuovilo o aggiornalo. Se l'account amministratore non aveva un'autenticazione a due fattori, valuta la possibilità di aggiungerla.
Asporto finale
Una buona sicurezza di accesso non consiste nel trovare un'unica impostazione perfetta, ma nel rendere progressivamente più difficile un attacco riuscito.
Utilizza account e password di amministratore univoci. Aggiungi l'autenticazione a più fattori (MFA). Limita i tentativi di accesso ripetuti. Contrasta le automazioni sospette. Installa un firewall di protezione adeguato a protezione del tuo negozio. Mantieni PrestaShop e i suoi moduli aggiornati. Monitora costantemente l'attività e conserva backup verificati.
Se desideri aggiungere un livello di sicurezza dedicato, valuta Knowband Prestashop Advanced Security Manager in aggiunta ai controlli già forniti dal tuo hosting e dalla configurazione di PrestaShop.
Iniziate oggi stesso dagli account amministratore. Poi procedete dalla pagina di accesso al server, alla rete e infine al processo di ripristino. Questo offre al proprietario di un negozio un percorso pratico per ottenere una maggiore protezione dagli attacchi brute force senza trasformare la sicurezza in un progetto inutilmente complicato.
Se hai domande o necessiti di assistenza per le prestazioni o la migrazione del tuo sito web, i nostri esperti sono a tua disposizione. Contatta oggi stesso il team di Knowband all'indirizzo [email protected] per plugin e-commerce affidabili e personalizzati in base alle tue esigenze.

