securify hack workshop j-fall 2014
TRANSCRIPT
www.securify.nl
Can you hack the bank?
23/09/14
Samen bouwen aan veilige software
Workshop J-‐Fall 2014 -‐ Yorick Koster & David Vaartjes
www.securify.nl
Bezoek ons ook op
J-‐FALL E-‐crime DroidCon5-‐11-‐2014 27-‐11-‐201423-‐11-‐2014
www.securify.nl
Lekken in web applicaties
• Gebrekkige autorisatie • SQL injectie • Command injectie • Path traversal • Etc.
www.securify.nl
Zwakke autorisatie -‐ intro
• Authenticatie -‐ het proces van het vaststellen van een identiteit !
• Autorisatie -‐ het verlenen van een recht (machtiging)
www.securify.nl
Zwakke autorisatie -‐ de opdracht
• Kun je bij gegevens van andere klanten komen? !
• Kun je geld stelen van andere klanten?
http://mijn.sbank.nl/
www.securify.nl
SQL injectie -‐ intro
Voornaam Achternaam E-mailadres
Henk de Vries [email protected]
Jaap Bakker [email protected]
Marlies Jansen [email protected]
! SELECT * FROM personen WHERE Achternaam = 'Bakker';
Tabelnaam Veldnaam Zoekcriteria
! Data (zoekcriteria) wordt gemixt met het commando (SQL) ! Wat als je zoekt op O'Reilly of ' OR '1' = '1 ?
Alles
www.securify.nl
SQL injectie -‐ intro
SELECT&*&FROM&personen&WHERE&Achternaam&=&''&OR&'1'&=&'1';&&! Geef&alles&terug&waar&de&Achternaam&leeg&is...&! Of&wanneer&1&gelijk&is&aan&1&
www.securify.nl
SQL injectie -‐ de opdracht
Kun je onveilige queries manipuleren en misbruiken ?
http://mijn.sbank.nl/
www.securify.nl
SQL injectie -‐ bevindingen?
• rekeningnummer in de URL • Inloggen met:
• Tester1' -‐-‐ • ' OR 1=1 -‐-‐
www.securify.nl
Command injection -‐ intro
<?php echo shell_exec('cat '.$_GET['command']); ?>
Systeem'commando-
Invoer-
www.securify.nl
Command injection -‐ de opdracht
• Kun je systeem commands uitvoeren? !
• Kun je gegevens van de server achterhalen?
http://mijn.sbank.nl/
www.securify.nl
Command injection -‐ bevindingen?
• Statements via file parameter • ; ls -‐l includes • ; cat includes/config.inc
www.securify.nl
Path traversal -‐ intro
• Bestandsnamen of laden samenstallen met gebruikersinvoer
String path = ‘/home/download/‘ . $filename . ‘.csv’;
www.securify.nl
Path traversal -‐ de opdracht
Kun je file operaties manipuleren en gevoelige bestanden lezen?
http://mijn.sbank.nl/