Säktest á la ET. Dennis Haglund Konsultchef Test Omegapoint AB



Relevanta dokument

Programbeskrivning. Chaos på Web. Version

1.Lär känna MS SQL Observera. Tips. Förberedelse

Support Manual HoistLocatel Electronic Locks

EU:s ministerkonferens för e-förvaltning under det svenska ordförandeskapet

Karlstads Universitet, Datavetenskap 1

(engelska)

Teknisk testning för otekniska testare

Att bygga enkla webbsidor

Vad är molnet? Vad är NAV i molnet? Vem passar NAV i molnet för? Fördelar med NAV i molnet Kom igång snabbt...

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 4 Erik Nilsson, Institutionen för Datavetenskap, LiU

Starta MySQL Query Browser

Lär känna MS SQL 2008 / Övning. Observera. Tips. Förberedelse

Generell säkerhet. Loggning - Hur mycket ska man logga? Inloggningsrutinerna i Unix. Loggning fortsättning

Introduktion till frågespråket SQL (v0.91)

Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document

DDL Kommandon CREATE/DROP Database CREATE /ALTER/DROP Table ALTER/ADD/DROP Column CREATE /ALTER/DROP Index

SQL. Structured Query Language. Frågespråk för att används för. Kommandon. data åtkomst data manipulation

Dag König Developer Tools Specialist Microsoft Corporation

Bra kod luktar inte, den doftar. Data-Tjej, Linköping Daniel Deogun

Instruktioner för uppkoppling mot NyA Open

Databaser och. SQL, utsökningar mot flera tabeller TENTA. # radnr (#) studnr (#) kursnr * tentadatum * betyg

Lathund för statistikuppgifterna i Nyhetsvärderaren tips för lärare

Instruktion för användande av Citrix MetaFrame

E-MÖTESVERKTYG SKAPA ETT RUM I ADOBE CONNECT FÖR LÄRARE

E-posthantering med Novell Groupwise WebAccess

Instruktion för användande av Citrix MetaFrame

Installationsguide för mysql och OLA Server/OLA Klient

samhälle Susanna Öhman

DIVISIONSEXEMPEL RELATIONSALGEBRA OCH SQL. r s använder vi för att uttrycka frågor där ordet alla figurerar:

TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 6 Erik Nilsson, Institutionen för Datavetenskap, LiU

Instruktion för användande av Citrix MetaFrame

Labb LABB 1. Databassagan och en rundtur i databasers märkliga värld. Plushögskolan Frågeutveckling inom MSSQL - SU14

LEX INSTRUKTION - REPLIKERING

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

Uppstart. Agda Drift

Lathund för statistikuppgifterna i Nyhetsvärderaren tips för lärare

Sustainable engineering and design

Sample exam questions. Database exam TIG058

Wimba Pronto i Blackboard

Helping out in the kitchen or how to measure engagement

Introduktion till Jasmine 1.2 ODQL

F Secure Booster är ett verktyg för att snabba upp och städa upp i din pc eller

Arbeta med databas. Översikt. Lektion 1: Arbeta med Entity Data Models. Arbeta med Entity Data Models. LINQ (Language Integrated Query).

Webbregistrering pa kurs och termin

DIGITALA RESURSER MANUAL FÖR. Komma igång med Acrobat Connect

Användarhantering Windows 7 I denna laboration kommer vi att skapa nya användare och grupper och titta på hur man hantera dessa.

1. SQL 2. Utsökningar mot flera tabeller. 4. IN-operatorn 5. Join 6. Kartesisk produkt 7. Tabellalias

Lathund för statistikuppgifterna i Nyhetsvärderaren tips för lärare

Current selection does not contain a unique column. Grid edit, checkbox, Edit, Copy and Delete features are not available.

Innehåll MySQL Intro. Allmänt om Lagrade Procedurer Enkel utformning Skapa en lagrad procedur Använda parameter som indata

WCMS-15, Webbutvecklare CMS

För att XCOPY i SQL Server Express ska fungera måste data och logg ligga i samma mapp, vilket naturligtvis inte är så bra.

Annonsformat desktop. Startsida / områdesstartsidor. Artikel/nyhets-sidor. 1. Toppbanner, format 1050x180 pxl. Format 1060x180 px + 250x240 pxl.

Problem som kan uppkomma vid registrering av ansökan

07/11/14. Databasteknik och informationssystem DD1370 F2. Allmänna frågor. Är Lab0 svårbegriplig? Nu: Clickers. Är Kurswebben svårbegriplig?

Webbreg öppen: 26/ /

Funktionsbeskrivning

Essential Php Security Författare: Shiflett, Chris Antal sidor: 124 Förlag: O'Reilly

Dokumentation för VLDIT AB. Online classroom

FÖRHINDRA DATORINTRÅNG!

Introduktion till MySQL

Avancerade Webbteknologier

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Innehåll. Dokumentet gäller från och med version

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

MANUAL. B2B orderportal

Instruktion för användande av Citrix MetaFrame

Vad kännetecknar en god klass. Vad kännetecknar en god klass. F12 Nested & Inner Classes

Det finns olika typer av Cookies och pixlar

Example database. Municipalities of Sweden

Filbeskrivningar Eller på särskild CD skiva

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Användarhandledning för SQL- och fönsterfilter

Kom igång med Turnitin (fristående version)

STEG 1 Samla referenser till ditt EndNote-bibliotek

FORT! Installera programmet nu!

ADO.NET Murach Kapitel 17-20

Preschool Kindergarten

LVDB i GEOSECMA. Innehåll. Inledning. Produkt: GEOSECMA Modul: LVDB Skapad för Version: Uppdaterad:

FNTSK SKNNK Fonetisk sökning

Uppstart Agda PS Hosting

INNEHÅLL SQL DEL 2. Funktioner inbyggda Aggregatfunktioner Skalärfunktioner. Chapter 11. Beginning SQL Server 2008 for Developers

Sex enkla steg. Kom igång med itslearning - en lärarhandledning

Fr om version använder vi HogiaID en ny inloggning för dig som använder Hogia einvoice eller Hogia Approval Compact Edition

INTRODUKTION Välkommen till bok-och-webben i Svenska A

Översikt. Skriva och läsa data. Kontrollflöde. Två sorters loopar. For-loop. For-loop

Sex enkla steg. Kom igång med itslearning - en lärarhandledning

Från extern till intern på tre dagar Erfarenheter från externa lärares pedagogiska kompetensutveckling

Verktyg för samarbete mellan lärare. Digitalt mediearkiv Lektionsmixer Personlig mapp

Make a speech. How to make the perfect speech. söndag 6 oktober 13

Structured Query Language (SQL)

Lektion 5 HTML, CSS, PHP och MySQL

FactoryCast HMI. Premium & Quantum PLC. MySQL Server och FactoryCast HMI databastjänst

Ändringar i språkfiler i e-line 3.42A

INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA...

Presentation. Fredrik Runnsjö 1996 Utvecklare 2004 Testare ~2006 Scrum/Canban

ANVÄNDARMANUAL. handdatorer i ängs- och betesmarksinventeringen. för

Inläsning av bokföringsorder via Excelerator

Ett hållbart boende A sustainable living. Mikael Hassel. Handledare/ Supervisor. Examiner. Katarina Lundeberg/Fredric Benesch

Transkript:

Säktest á la ET Dennis Haglund Konsultchef Test Omegapoint AB Omegapoint AB Säkerställer framtagande och införande av affärsdrivna, högkvalitativa och säkra IT-lösningar.

Omegapoint AB Medarbetarägt Ca 180 anställda Kontor: Stockholm, Göteborg, Malmö, Helsingborg, Falun, Umeå och New York Utveckling, arkitektur, projektledning, test Säkert

Omegapoint och Test Traditionell test Test i agila team Kontextdriven test Utforskande/Exploratory test Test med säkerhet Penetrationstest Social Engineering Hur man hackar en människa

Säktest Vad är säkerhet? Är det något som är värt att tänka på? Säktest går utmärkt att göra utifrån ETcykeln Säktestning behöver inte vara ostrukturerat hackande, även om det till en början inte går att skripta och förutsäga

Bakgrund Testare Haglund, ivrig och angelägen Testledarens direktiv: Följ samtliga testcase och E2E-scenarion. Allt annat är out of scope ET är lek och bortkastad tid Testare Haglund sätter igång och blir självklart klar i förtid, och trots testledarens direktiv drömmer han sig bort i den utforskande världen

Exploratory Testing ET-cykeln Align yourself with the mission Concieve a question, wich answered will lead closer to the mission Device an experiment Observe the outcome Testare Haglund kommer plötsligt ihåg att han var på kurs i Säker Applikationsutveckling på Omegapoint Säkerhet, kan man kombinera det med ET? Han beslutar sig för att prova. What could possibly go wrong?

Company.com Vilka inputvägar finns det? Användarnamn, lösenord - denhag, verkar funka som förväntat Klicka på länkar till nyheter Observera att id-siffran på urlen ändrar sig Det betyder att adressfältet är ett inputfält hmm!

Testa Prova 1,3 => olika artiklar Prova 4711 => null. Databasen säger något om sin syn på världen Prova skräp * => SQL Exception Lär oss att * tydligen tolkas som del i SQLsträng

Testa mer Prova med något som är valid syntax: ' Lär oss att det som står innan ' tydligen är del av unquoted string Prova att "förlänga strängen" AND 1=1 Lär oss att databasen tolkar vår input Prova att provocera falskt AND 1=0 Lär oss att vi kan ställa binära frågor till databasen

Don t stop now Prova om metadata finns tillgängligt - vet att MSSQL har sysobjects AND (select count(*) from sysobjects)>20 Vi har fått ut en bit information om databasen! AND (select count(*) from sysobjects)>25 AND (select count(*) from sysobjects)=25

Nyfiken? Nu skulle vi kunna fortsätta och fråga om det finns tabell som börjar på 'a' (select count(*) from sysobjects where substring(name,1,1) = 'a') > 0 börjar på 'b' -> nej börjar på 'c' -> ja börjar på 'i' -> ja börjar på aa' -> nej börjar på ab' -> nej (name,1,7 = iwauser )!!!!

Hoppla Kerstin Kan vi månne göra samma sak för kolumnerna i iwauser som börjar på 'a' osv? JA! Vi kan faktiskt ta reda på hela databasens struktur! Vi kan hitta hur många rader finns det i respektive tabell, vi kan hitta värden i respektive rad! Vi kan till slut hitta väldigt användbar information. Men det tar ju en enorm tid Fast, nu när vi använt oss av lite tanke så kan vi köra ett verktyg som hjälper oss att skripta detta. T ex Absinthe (Absinthe does not aid in the discovery of SQL Injection holes. This tool will only speed up the process of data recovery).

Kan/får det verkligen vara så här? Ja det kan det nej det får det inte! Om det är så här illa i adressfältet, hur fungerar Loginfälten? Vi testar! Vi vet ju från tidigare test att vi kan använda SQL i adressfältet Slutsats SQL Injection är möjligt på flera ställen Går vi vidare nu så är det inte längre säkerhetstest utan exploit!

Now what? Testare Haglund meddelar självklart testledaren att vi har använt utforskande testning för att utreda brister i applikationens säkerhet. Brister som utgör kritiska verksamhetsrisker! Varvid testledaren svarar: Out of Scope, no action needed (do not stray from the scripted path)! Testare Haglund blir en smula upprörd över att inte bli hörsammad och gör något man inte får göra. Gissa vad? Hade vi kunnat använt något allvarligare kommando?

Omegapoint AB Säkerställer framtagande och införande av affärsdrivna, högkvalitativa och säkra IT-lösningar.