De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Hoe SQL injection werkt Door: Marcel-Jan Krijgsman.

Verwante presentaties


Presentatie over: "Hoe SQL injection werkt Door: Marcel-Jan Krijgsman."— Transcript van de presentatie:

1 Hoe SQL injection werkt Door: Marcel-Jan Krijgsman

2 SQL Injection  Een methode die gebruik maakt van invoer in de applicatie: invoervelden, argumenten in code, etc..  SQL Injection werkt doordat een hacker SQL code toevoegt aan de SQL die de applicatie uitvoert.  Traditionele firewalls en virusscanners kunnen SQL Injection niet tegenhouden. 2 © Copyright Transfer Solutions B.V.

3 SQL injection

4 select * from verzekering where achternaam='Potter'; Normaal gebruik van een applicatie

5 select * from verzekering where achternaam='Potter'; SURNAME FIRSTNAME PACKAGE Potter Harry Care Plus

6 6 © Copyright Transfer Solutions B.V. De kracht van quotes ’

7 select * from verzekering where achternaam='Potter' or 'x'='x'; Een voorbeeld van SQL injection

8 select * from verzekering where achternaam= 'Potter' or 'x'='x'; SURNAME FIRSTNAME PACKAGE Blofeld Ernst Stavr Care Extralux Bond James Care Basic Potter Harry Care Basic Plus Skywalker Luke Care Basic Plus Vader Darth Care VIP etc..

9 select * from verzekering where achternaam='Potter ' ; select * from dba_users where 'x'='x'; Eens kijken of men hier de rechten beperkt heeft…

10 SURNAME FIRSTNAME PACKAGE Potter Harry Care Plus USERNAME PASSWORD ACCOUNT_STATUS SYS DAF52805F OPEN SYSTEM D4DF7931AB130E37 OPEN etc.. select * from verzekering where achternaam='Potter ' ; select * from dba_users where 'x'='x';

11 Creatief met SQL Injection  or 'x'='x : laat mijn conditie zien of alles.  ; gebruiken om een statement voortijdig te beëindigen of andere statements te laten volgen.  UNION: compleet andere tabellen bij resultaat voegen. 11 © Copyright Transfer Solutions B.V.

12

13 Preventie

14 1. Voorkomen dat SQL injection constructies toegestaan zijn in de applicatie.

15 15 © Copyright Transfer Solutions B.V. select * from verzekering where achternaam= :BIND; Bind variables

16 Rechten in de database beperken tot het strikt nodige. 2.

17 17 © Copyright Transfer Solutions B.V. The DBA role DROP DATABASE CREATE SPFILE ALTER DATABASE ALTER ANY CLUSTER CREATE DIRECTORY CREATE DATABASE LINK GRANT ANY PRIVILEGE GRANT ANY OBJECT PRIVILEGE ALTER ANY SQL PROFILE CREATE ANY CONTEXT ALTER SYSTEM AUDIT SYSTEM DEBUG CONNECT SESSION ALTER ANY TABLE CREATE DIMENSION CREATE INDEXTYPE CREATE ANY INDEX ALTER ANY INDEX CREATE LIBRARY CREATE EXTERNAL JOB CREATE ANY MATERIALIZED VIEW GLOBAL QUERY REWRITE FLASHBACK ANY TABLE CREATE ANY OPERATOR CREATE ANY PROCEDURE ALTER ANY PROCEDURE CREATE TABLESPACE UNLIMITED TABLESPACE DROP ANY TRIGGER CREATE USER ALTER USER DROP ANY VIEW FORCE TRANSACTION CREATE DATABASE ANALYZE ANY SELECT ANY DICTIONARY SELECT ANY TRANSACTION FORCE TRANSACTION

18 APP_USER create session APP_OWNER create session create table objects APP_TABLE APP_PCK create procedure execute on app_pck Toepassen minimale rechten

19 SQL injection detectie  Er is software om SQL Injection in webapplicaties te detecteren.  Een aantal daarvan is gratis.  Overzicht: 15-sql-injection-scanner/http://maestro-sec.com/blogs/2008/10/top- 15-sql-injection-scanner/ 19 © Copyright Transfer Solutions B.V.

20 Kortom…  SQL Injection is een methode met veel potentie.  U zult wellicht veel zeilen moeten bijzetten om SQL Injection te voorkomen.  Laat dit u niet overkomen: 20 © Copyright Transfer Solutions B.V.

21 | TRANSFER SOLUTIONS ICT Advisering | Ontwikkeling | Beheer | Opleidingen


Download ppt "Hoe SQL injection werkt Door: Marcel-Jan Krijgsman."

Verwante presentaties


Ads door Google