…e poi hai vinto

SQL-Loves-Linux_2_Twitter-002-640x358Premessa: non sono aprioristicamente tifoso di nessun sistema operativo o linguaggio. Per me ci sono due tipi di sistemi o linguaggi: quelli adatti ad uno scopo e quelli non adatti.

Microsoft ha annunciato che a metà 2017 potrebbe uscire una versione per Linux del loro SQL Server.

Ricordo ancora quando nel 2001 Steve “Developers! Developers! Developers!” Ballmer aveva detto «Linux is a cancer that attaches itself in an intellectual property sense to everything it touches» Leggi tutto “…e poi hai vinto”

Poi non date la colpa al malware

Museo di Iraklio / Heraklion museumSpesso c’è la tendenza ad incolpare il malware per ogni tipo di danno causato ai sistemi informativi o per ogni tipo di furto di informazioni.

Se non si può parlare di colpa di chi scrive il software, certo il programmatore è in molti casi correo colposo (quando non è doloso, ma è un altro paio di maniche) di intrusioni illecite o furti di informazioni.

Negli ultimi anni le cose stanno lentamente cambiando, ma fino a poco tempo fa chi scriveva software era assolutamente inconsapevole dei rischi della sicurezza perché o non se ne curava affatto o pensava che fosse un Problema Altrui.

Scrivere un software che tenga presente i problemi della sicurezza non è semplice, ma sta diventando rapidamente una necessità imperativa se non si vuole fare brutte figure, o peggio.

Leggi tutto “Poi non date la colpa al malware”

Scavalcare l’autenticazione di MS SQL Server

Come altri articoli riguardanti la sicurezza informatica, anche questo può essere interpretato sia come documentazione di un fatto sia come spiegazione di come si può agire in maniera illegale.

Ovviamente l’intento non è di promuovere o incitare alcun comportamento contro la legge, ma di avvertire gli amministratori di sistema di un comportamento del software che hanno installato sulle loro macchine.

Un secondo e, forse, più comune utilizzo di questa procedura è accedere ai propri dati registrati da un applicativo i cui gestori o installatori non sono più disponibili o che rifiutano di dare accesso ai dati di proprietà dell’utente.

Come molti database, anche Microsoft SQL Server ha un sistema per bypassare la sicurezza inegrata.

Leggi tutto “Scavalcare l’autenticazione di MS SQL Server”

La sicurezza dei database è in mano agli sviluppatori

Controllo siluri / Torpedo consoleAgli sviluppatori delle applicazioni che usano i database, ovviamente.

Dark Reading raccoglie in un articolo un decalogo di consigli per gli sviluppatori che vogliono mitigare i problemi di sicurezza delle applicazioni che utilizzano database (tipicamente SQL, ma non necessariamente).

Alcune norme sono ovvie e ne abbiamo parlato anche noi: la prima in assoluto è la SQL injection, molto più diffusa di quello che si possa credere. Basta, infatti, che un solo campo di un’intera applicazione non venga opportunamente sanificato per mettere a repentaglio la sicurezza dell’intero progetto.

Il secondo errore più comune commesso dagli sviluppatori è l’eccesso di informazioni di errore visualizzate all’utente. Ci dicono che non dobbiamo essere criptici nella messaggistica, però è anche bene evitare di esagerare per non rivelare involontariamente dati che potrebbero essere utili per un attacco mirato.

Leggi tutto “La sicurezza dei database è in mano agli sviluppatori”

SQL injection

BackupQuesto articolo è per chi non sa cosa sia la SQL injection.

Con questo termine si identifica una classe di vulnerabilità dei software che consente ad un utente qualsiasi di aggirare i controlli del software e inviare direttamente al server comandi SQL.

Prima della diffusione dei server SQL i dati venivano archiviati e recuperati utilizzando funzioni di libreria del linguaggio di programmazione. Esisteva un comando/funzione del linguaggio per aprire un archivio di dati, uno per cercare un record, un altro per aggiornare i dati, un altro ancora per cancellarli e così via. Con questo sistema era di fatto impossibile portare attacchi tipo SQL injection perché i comandi relativi al trattamento dei dati erano parte del programma. In altre parole, le azioni che avevano come oggetto i dati erano cablate nel programma e non c’era modo di cambiarle se non cambiando il programma (e ricompilarlo).

La diffusione capillare dei server SQL ha cambiato le carte in tavola.

Leggi tutto “SQL injection”

Ottimizzazione di WSUS

Windows Server Update Services (WSUS) è un utile servizio di Windows Server che permette di gestire gli aggiornamenti automatici di Windows.

La consolle di amministrazione di WSUS ha una funzione di ottimizzazione e cleanup che, però non ottimizza le tabelle SQL.

Dopo qualche tempo gli indici si frammentano e le performance calano in maniera sensibile, anche considerando il fatto che spesso WSUS viene installato in un server secondario.

Lo script che segue ricostruisce e ottimizza gli indici delle tabelle utilizzate da WSUS.

Leggi tutto “Ottimizzazione di WSUS”

Non è colpa degli hacker

Ultimamente ci sono stati molti episodi di attacchi informatici a vari siti, a partire dal noto caso di Sony, di cui credo si sia perso il conto dei siti compromessi.

The Hacker News segnala un errore nel sito di CNN che sono riuscito a riprodurre senza problemi.

Se si visita l’URL http://cgi.money.cnn.com/tools/collegecost/collegecost.jsp?college_id='7966 (notare l’apicino) esce il bel messaggio d’errore

ERROR!
SELECT G.NAME, G.STATE_CODE, G.CITY, E.TUIT_OVERALL_FT_D, E.TUIT_AREA_FT_D, E.TUIT_STATE_FT_D, E.TUIT_NRES_FT_D, E.FEES_FT_D, E.RM_BD_D, E.RM_ONLY_D FROM COLLEGE_EXPENSES E, COLLEGE_GENERAL G WHERE G.INUN_ID = '7966 AND G.INUN_ID = E.INUN_ID (+) ORDER BY E.ACAD_YR DESC
java.sql.SQLException: ORA-01756: quoted string not properly terminated

e la videata riprodotta a qui sopra.

Questo non è un sofisticato attacco di un esperto programmatore contro un sito dotato di tutte le normali difese che il buon senso richiede.

Si tratta, invece, del più banale degli esempi di SQL Injection, così ovvio che è citato nella Wikipedia.

Come narra la cronaca, la maggior parte degli attacchi contro vari siti ha avuto successo non perché portati da gente esperta, ma perché c’era una porta lasciata colpevolmente aperta che attendeva solamente che qualcuno entrasse.

Un’ultima cosa:  visualizzare all’utente trace e dettaglio degli errori in un ambiente di produzione non è la più furba delle idee.

mysql.com e sun.com attaccati con una MySQL injection

Gli host mysql.com, www.reman.sun.com e www.ibb.sun.com sono stati attaccati con successo con una blind SQL injection.

Un post sulla lista Full Disclosure rivela l’elenco delle tabelle di alcuni database e il dump di mysql.user di mysql.com

Una pagina su BayWorlds rivela alcuni dati estratti attraverso l’attacco agli host di sun.com.

Ma chi vuoi che…

«Sicurezza» sulla rampa di Malpensa / «Safety at Malpensa ramp»«Ma chi vuoi che venga ad hackerare proprio il nostro sito?»

Questa è la reazione di molte persone (indifferentemente singoli cittadini e responsabili di aziende o enti pubblici) che hanno o gestiscono un sito web  quando viene segnalata loro l’importanza della sicurezza. Leggi tutto “Ma chi vuoi che…”