{"id":17965,"date":"2024-08-28T15:37:57","date_gmt":"2024-08-28T13:37:57","guid":{"rendered":"https:\/\/xlogic.org\/blog\/?p=17965"},"modified":"2024-08-28T15:37:57","modified_gmt":"2024-08-28T13:37:57","slug":"che-cose-lattacco-sql-injection-e-come-prevenirlo","status":"publish","type":"post","link":"https:\/\/xlogic.org\/blog\/che-cose-lattacco-sql-injection-e-come-prevenirlo.html\/","title":{"rendered":"Che cos&#8217;\u00e8 l&#8217;attacco SQL Injection e come prevenirlo"},"content":{"rendered":"<p>&nbsp;<\/p>\n<p><span style=\"font-family: georgia, palatino, serif;\">WordPress \u00e8 il CMS pi\u00f9 utilizzato nel mondo dello sviluppo web e di conseguenza \u00e8 anche il CMS gi\u00e0 vulnerabile; tra gli attacchi che pi\u00f9 frequentemente interessano un sito WordPress troviamo gli SQL Injection.<\/span><\/p>\n<table style=\"border-collapse: collapse; width: 100%;\">\n<tbody>\n<tr>\n<td style=\"width: 100%;\"><span style=\"font-family: georgia, palatino, serif; color: #000000;\"><strong>Indice dei contenuti<\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li><span style=\"font-size: 10pt; font-family: georgia, palatino, serif; color: #000000;\">Come pu\u00f2 verificarsi un attacco SQL Injection su WordPress<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 10pt; color: #000000;\">Come funziona un attacco SQL Injection<\/span><\/li>\n<li><span style=\"font-size: 10pt; font-family: georgia, palatino, serif; color: #000000;\">Esempio di SQL Injection<\/span><\/li>\n<li><span style=\"font-size: 10pt; font-family: georgia, palatino, serif; color: #000000;\">Come proteggere il tuo Sito WordPress dagli attacchi SQL<\/span><\/li>\n<li><span style=\"font-size: 10pt; font-family: georgia, palatino, serif; color: #000000;\">Come risolvere il problema<\/span><\/li>\n<li><span style=\"font-size: 10pt; font-family: georgia, palatino, serif; color: #000000;\">Conclusioni<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><span style=\"font-size: 24pt; font-family: georgia, palatino, serif;\"><strong>Che cos&#8217;\u00e8 l&#8217;attacco SQL Injection e come prevenirlo<\/strong><\/span><\/h2>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">SQL Injection \u00e8 una tecnica di attacco informatico utilizzata per sfruttare le vulnerabilit\u00e0 nei sistemi che gestiscono database relazionali.<\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">In particolare, un attaccante pu\u00f2 inserire, attraverso l\u2019interfaccia di un\u2019applicazione web o software, del codice SQL malevolo in una query SQL, con l\u2019obiettivo di manipolare il comportamento del database.<\/span><\/p>\n<h3><span style=\"font-size: 24pt; font-family: georgia, palatino, serif;\"><strong>Come pu\u00f2 verificarsi un attacco SQL Injection su WordPress<\/strong><\/span><\/h3>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Plugin e Temi Vulnerabili:<\/b><\/span><\/p>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">La maggior parte delle vulnerabilit\u00e0 di SQL Injection in WordPress deriva da plugin e temi di terze parti. Se un plugin o un tema non valida o non sanifica correttamente l\u2019input dell\u2019utente prima di usarlo in una query SQL, pu\u00f2 essere vulnerabile a un attacco di SQL Injection.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Un plugin che permette agli utenti di cercare nel database senza sanificare correttamente l\u2019input potrebbe eseguire query SQL malevole inserite dall\u2019utente.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Form di Input non Protetti:<\/b><\/span><\/p>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Se un modulo di input (come un modulo di contatto, una ricerca o un modulo di registrazione) non \u00e8 protetto adeguatamente, un attaccante potrebbe inserire del codice SQL malevolo nei campi di input per manipolare le query SQL eseguite dal database.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Parametri URL:<\/b><\/span><\/p>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Alcuni plugin o temi potrebbero utilizzare parametri URL direttamente nelle query SQL senza sanificarli, permettendo a un attaccante di manipolare le query tramite URL malformati.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>File Personalizzati:<\/b><\/span><\/p>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Se un sito WordPress ha file PHP personalizzati che eseguono query SQL senza utilizzare le API sicure di WordPress (come wpdb-&gt;prepare()), possono essere vulnerabili a SQL Injection.<\/span><\/li>\n<\/ul>\n<h3><span style=\"font-size: 24pt; font-family: georgia, palatino, serif;\"><strong>Come funziona un attacco SQL Injection<\/strong><\/span><\/h3>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Quando un\u2019applicazione non valida correttamente gli input forniti dagli utenti, c&#8217;\u00e8 il rischio che venga inserito del codice SQL malevolo nei campi di input (come campi di testo, URL, o cookie); di conseguenza questo codice viene poi eseguito dal database, permettendo all&#8217;hacker di:<\/span><\/p>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Accedere a dati non autorizzati:<\/b> Leggere dati sensibili come credenziali di accesso, informazioni personali, ecc.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Modificare o cancellare dati:<\/b> Cambiare o eliminare informazioni nel database.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Eseguire comandi amministrativi:<\/b> Ad esempio, eliminare intere tabelle o database.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Bypassare l\u2019autenticazione:<\/b> Accedere a un sistema senza conoscere le credenziali legittime.<\/span><\/li>\n<\/ul>\n<h3><span style=\"font-size: 24pt; font-family: georgia, palatino, serif;\"><strong>Esempio di SQL Injection<\/strong><\/span><\/h3>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Immagina un\u2019applicazione che autentica un utente con una query SQL come questa:<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">SELECT * FROM utenti WHERE username = &#8216;admin&#8217; AND password = &#8216;password&#8217;;<\/span><\/p><\/blockquote>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Se l\u2019applicazione non filtra adeguatamente gli input, un hacker potrebbe inserire qualcosa come:<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">admin&#8217; OR &#8216;1&#8217;=&#8217;1<\/span><\/p><\/blockquote>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Il risultato sarebbe una query:<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">SELECT * FROM utenti WHERE username = &#8216;admin&#8217; OR &#8216;1&#8217;=&#8217;1&#8242; AND password = &#8216;password&#8217;;<\/span><\/p><\/blockquote>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Questa condizione \u00e8 sempre vera, consentendo all&#8217;hacker di accedere all&#8217;interno del sistema.<\/span><\/p>\n<h3><span style=\"font-size: 24pt; font-family: georgia, palatino, serif;\"><b>Come proteggere il tuo sito WordPress dagli attacchi SQL<\/b><\/span><\/h3>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">L\u2019SQL Injection \u00e8 una delle vulnerabilit\u00e0 pi\u00f9 comuni e pericolose, ma pu\u00f2 essere prevenuta con una corretta gestione e sicurezza del codice.<\/span><\/p>\n<ol>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Utilizzare query parametriche:<\/b> Separare il codice SQL dai dati, utilizzando prepared statements o stored procedures.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Validare e sanificare gli input:<\/b> Rimuovere o codificare i caratteri speciali dagli input forniti dagli utenti.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Limitare i privilegi dell\u2019utente del database:<\/b> L\u2019utente del database utilizzato dall\u2019applicazione dovrebbe avere i minimi privilegi necessari.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Utilizzare ORM (Object-Relational Mapping):<\/b> Gli ORM astraggono il livello SQL e riducono il rischio di SQL Injection.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Monitoraggio e logging:<\/b> Implementare meccanismi di monitoraggio per rilevare e rispondere rapidamente a eventuali attacchi.<\/span><\/li>\n<\/ol>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Per prevenire questi tipi di attacchi sul tuo Sito WordPress ti consigliamo di:<\/span><\/p>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Aggiornare Regolarmente WordPress, Plugin e Temi: <\/b>Assicurarsi che il core di WordPress, i plugin e i temi siano sempre aggiornati alle ultime versioni, che includono patch di sicurezza per vulnerabilit\u00e0 note.<\/span><\/li>\n<\/ul>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Utilizzare Plugin e Temi Affidabili: <\/b>Scaricare plugin e temi solo da fonti affidabili, come il repository ufficiale di WordPress, e verificare che siano mantenuti attivamente dagli sviluppatori.<\/span><\/li>\n<\/ul>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Utilizzare le API di WordPress per l\u2019Accesso al Database: <\/b>Utilizzare l\u2019API wpdb di WordPress, in particolare il metodo wpdb-&gt;prepare(), per eseguire query SQL in modo sicuro. Questo metodo sanifica automaticamente i dati in ingresso, esempio:<\/span><\/li>\n<\/ul>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">global $wpdb;<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">$username = $_POST[&#8216;username&#8217;];<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">$query = $wpdb-&gt;prepare(&#8220;SELECT * FROM utenti WHERE username = %s&#8221;, $username);<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">$results = $wpdb-&gt;get_results($query);<\/span><\/p><\/blockquote>\n<ul>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Implementare WAF (Web Application Firewall): <\/b>Un WAF pu\u00f2 bloccare tentativi di attacco, incluso SQL Injection, analizzando il traffico in entrata e filtrando richieste sospette.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Monitorare e Loggare le Attivit\u00e0: <\/b>Utilizzare plugin di sicurezza per monitorare il sito e tenere traccia delle attivit\u00e0 sospette. I log possono aiutare a identificare e rispondere rapidamente a tentativi di SQL Injection.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Utilizzare la Convalida degli Input: <\/b>Validare e sanitizzare tutti gli input dell\u2019utente. Ad esempio, utilizzare funzioni come sanitize_text_field(), esc_sql(), e altre funzioni di escaping fornite da WordPress.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Limitare i Privilegi del Database: <\/b>L\u2019utente del database utilizzato da WordPress dovrebbe avere solo i privilegi minimi necessari per eseguire l\u2019applicazione. Ad esempio, evitare di usare un account con privilegi di amministrazione completa del database.<\/span><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span style=\"font-size: 24pt; font-family: georgia, palatino, serif;\"><b>Come risolvere il problema<\/b><\/span><\/h3>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Per risolvere il problema dell\u2019SQL Injection, \u00e8 fondamentale adottare una serie di pratiche di sviluppo sicure che riducono o eliminano la possibilit\u00e0 che un attaccante possa iniettare codice SQL malevolo. Ecco alcune delle principali tecniche e strategie per prevenire l\u2019SQL Injection:<\/span><\/p>\n<p><span style=\"font-size: 18pt; font-family: georgia, palatino, serif;\"><b>Utilizzare Prepared Statements (Query Parametriche)<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Le query parametriche separano il codice SQL dai dati, impedendo che l\u2019input dell\u2019utente venga interpretato come parte della query SQL. La maggior parte dei linguaggi di programmazione e delle librerie di accesso ai database supporta prepared statements.<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\"><b>Esempio in PHP con PDO:<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">$stmt = $pdo-&gt;prepare(&#8220;SELECT * FROM utenti WHERE username = :username AND password = :password&#8221;);<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">$stmt-&gt;execute([&#8216;username&#8217; =&gt; $username, &#8216;password&#8217; =&gt; $password]);<\/span><\/p><\/blockquote>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">In questo esempio, :username e :password sono parametri che vengono sostituiti con valori sicuri, eliminando il rischio di SQL Injection.<\/span><\/p>\n<p><span style=\"font-size: 18pt; font-family: georgia, palatino, serif;\"><b>Utilizzare ORM (Object-Relational Mapping)<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">L\u2019uso di ORM (come Hibernate per Java, Entity Framework per .NET, o SQLAlchemy per Python) pu\u00f2 aiutare a prevenire l\u2019SQL Injection poich\u00e9 queste librerie costruiscono automaticamente le query e gestiscono la sanificazione degli input.<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\"><b>Esempio con SQLAlchemy in Python:<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">user = session.query(User).filter_by(username=username).first()<\/span><\/p><\/blockquote>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">L\u2019ORM si occupa di generare le query SQL in modo sicuro, riducendo il rischio di iniezioni SQL.<\/span><\/p>\n<p><span style=\"font-size: 18pt; font-family: georgia, palatino, serif;\"><b>Sanificare e Validare gli Input<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">\u00c8 importante validare e sanificare tutti gli input dell\u2019utente, rimuovendo caratteri speciali o proibiti e assicurandosi che l\u2019input rispetti il formato previsto.<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\"><b>Esempi di validazione:<\/b><\/span><\/p>\n<ol>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Limitare la lunghezza dei campi di input.<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Utilizzare espressioni regolari per controllare il formato dell\u2019input (ad esempio, email, numeri di telefono).<\/span><\/li>\n<li><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Escaping dei caratteri speciali come apici singoli (&#8216;), doppi apici (&#8220;), backslash (\\), &#8230;<\/span><\/li>\n<\/ol>\n<\/blockquote>\n<p><span style=\"font-size: 18pt; font-family: georgia, palatino, serif;\"><b>Utilizzare Stored Procedures<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Le stored procedures, se implementate correttamente, possono contribuire a ridurre il rischio di SQL Injection poich\u00e9 separano il codice SQL dai dati e possono essere progettate per accettare solo parametri sicuri.<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\"><b>Esempio in SQL Server:<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">CREATE PROCEDURE GetUser<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">@username NVARCHAR(50),<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">@password NVARCHAR(50)<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">AS<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">BEGIN<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">SELECT * FROM utenti WHERE username = @username AND password = @password;<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">END<\/span><\/p><\/blockquote>\n<p><span style=\"font-size: 18pt; font-family: georgia, palatino, serif;\"><b>Gestire gli Errori in Modo Sicuro<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Non esporre dettagli degli errori SQL all\u2019utente finale; i messaggi di errore possono fornire indizi agli attaccanti su come \u00e8 strutturato il database.<\/span><\/p>\n<blockquote><p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\"><b>Esempio di gestione degli errori in PHP:<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">try {<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">$stmt = $pdo-&gt;prepare(&#8220;SELECT * FROM utenti WHERE username = :username&#8221;);<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">$stmt-&gt;execute([&#8216;username&#8217; =&gt; $username]);<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">} catch (PDOException $e) {<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">\/\/ Log the error but don&#8217;t show details to the user<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">error_log($e-&gt;getMessage());<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">echo &#8220;Si \u00e8 verificato un errore. Riprova pi\u00f9 tardi.&#8221;;<\/span><br \/>\n<span style=\"font-family: georgia, palatino, serif; font-size: 10pt;\">}<\/span><\/p><\/blockquote>\n<p><span style=\"font-size: 18pt; font-family: georgia, palatino, serif;\"><b>Eseguire Test di Sicurezza<\/b><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Regolarmente condurre test di sicurezza, come penetration testing e code reviews, per identificare e correggere eventuali vulnerabilit\u00e0 di SQL Injection prima che possano essere sfruttate.<\/span><\/p>\n<p>&nbsp;<\/p>\n<h3><span style=\"font-size: 24pt; font-family: georgia, palatino, serif;\"><b>Conclusioni<\/b><\/span><\/h3>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Un attacco SQL Injection pu\u00f2 essere devastante per un sito WordPress, ma seguendo queste linee guida \u00e8 possibile prevenire questi attacchi e mantenere il sito sicuro.<\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Ti ricordiamo di effettuare sempre backup regolari del tuo sito WordPress per poter ripristinare rapidamente il sito in caso di compromissione; per esempio noi di Xlogic offriamo ai nostri clienti lo strumento di backup automatico JetBackup che permette di ripristinare un backup parziale o completo in due semplici click, per ottenere maggiori informazioni consulta questa guida &#8211;&gt; <a href=\"https:\/\/xlogic.org\/backup-automatico\/\" target=\"_blank\" rel=\"noopener\">JetBackup &#8211; Backup automatico<\/a>\u00a0<\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Inoltre noi di Xlogic offriamo ai nostri clienti un antivirus avanzato in grado di rilevare migliaia e migliaia di virus \/ malware ed attacchi hacker, per ottenere maggiori informazioni consulta questa pagina &#8211;&gt; <a href=\"https:\/\/xlogic.org\/suite-sicurezza\/\" target=\"_blank\" rel=\"noopener\">Imunify 360 &#8211; Suite di sicurezza avanzata<\/a><\/span><\/p>\n<p><span style=\"font-family: georgia, palatino, serif; font-size: 12pt;\">Se sei nostro cliente ed hai bisogno di maggiori informazioni puoi contattarci tramite il modulo di contatto, via mail o via ticket.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; WordPress \u00e8 il CMS pi\u00f9 utilizzato nel mondo dello sviluppo web e di conseguenza \u00e8 anche il CMS gi\u00e0 vulnerabile; tra gli attacchi che pi\u00f9 frequentemente interessano un sito WordPress troviamo gli SQL Injection. Indice dei contenuti &nbsp; Come pu\u00f2 verificarsi un attacco SQL Injection su WordPress Come funziona un attacco SQL Injection Esempio [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"no","_lmt_disable":"","footnotes":""},"categories":[1410,1401],"tags":[],"class_list":["post-17965","post","type-post","status-publish","format-standard","hentry","category-blogging","category-wordpress"],"modified_by":"Andrea (Xlogic.org)","_links":{"self":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/posts\/17965","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/comments?post=17965"}],"version-history":[{"count":0,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/posts\/17965\/revisions"}],"wp:attachment":[{"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/media?parent=17965"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/categories?post=17965"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xlogic.org\/blog\/wp-json\/wp\/v2\/tags?post=17965"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}