Säkerhet, eller nått. Tomas Forsman <stric@cs.umu.se> 2014-10-14



Relevanta dokument
Säkerhetsföreläsning. En liten föreläsning om säkerhet. Institutionen för Datavetenskap Tomas Ögren

Modul 6 Webbsäkerhet

Säkerhet. Vad är det vi pratar om??

En syn på säkerhet. Per Lejontand

Avancerade Webbteknologier 2. AD11g Göteborg 2012 Säkerhet

Laboration 4 Rekognosering och nätverksattacker

Sockets. Processkommunikation Sammanfattning. Sockets. Domän, typ och protokoll

Nya webbservern Dvwebb.mah.se

Avancerade Webbteknologier

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

Datakommunika,on på Internet

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

Säkerhet ur ett testperspektiv

Webbteknik II. Föreläsning 4. Watching the river flow. John Häggerud, 2011

Modul 8 Hantering av indata

Heartbleed. Lite smått och gott om heartbleedbuggen. Robert Malmgren

Övningar - Datorkommunikation

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Utförande: I exemplet så kommer vi att utgå från att man gör laborationen i en Virtuell miljö (Virtualbox).

IT för personligt arbete F2

Unix-Säkerhet. Övningsprov. Frågorna skall besvaras på ett sådant sätt att en insatt kollega skall känna sig informerad.

Datakommunika,on på Internet

Innehåll. MySQL Grundkurs

Övning Installation av Gentoo och/eller Arch Linux

Webbprogrammering - 725G54 PHP. Foreläsning II

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

LABORATIONSRAPPORT Säkerhet och Sårbarhet Laboration 1 Brandväggar

TCP/IP och Internetadressering

Din egen webserver med Apache

Win95/98 Nätverks Kompendium. av DRIFTGRUPPEN

Dataintrång hos Dataföreningen. Annica Bergman Dataföreningen i Sverige Internetdagarna 21 oktober 2008

Lagring i molnet. Per Hellqvist Senior Security Specialist Symantec Nordic AB

Denna laboration skapades för elever vid Roslagens Högskola men kan användas av vem som helst. Namnen på servrarna måste i så fall ändras.

OWASP Topp De 10 allvarligaste riskerna i webbapplikationer OWASP East Sweden: Uppstartsmöte

Vilka är vi. Magnus Ahltorp KTHLAN Ragnar Sundblad KTHLAN & NADA

Topologi. Utförande: I exemplet så kommer vi att utgå från att man gör laborationen i en Virtuell miljö (Virtualbox).

Linuxadministration 2 1DV421 - Laborationer Webbservern Apache, Mailtjänster, Klustring, Katalogtjänster

Lite mer om CGI-programmering

Nätverk och Java, grunder Föreläsning 0: 0: Introduktion till Internet

DNSSec. Garanterar ett säkert internet

Installation av Virtualiseringsplattform

Driftsättning av DKIM med DNSSEC. Rickard Bondesson Examensarbete

Webbsidor och webbservrar

Anders Berggren, CTO. Säker, betrodd e-post

SIP och NAT, Brandväggar och STUN

Webbprogrammering. Sahand Sadjadee

Webbservrar, severskript & webbproduktion

Datasäkerhet. Petter Ericson

Avancerad DNS - Laborationer

[SLUTRAPPORT: DRAWPIXLZ (ANDROID-APP)] Slutrapport. Författare: Zlatko Ladan. Program: Utvecklare av Digitala Tjänster 180P

IT-arbetsplatsenheten (ITE) Andreas Lange

E11 "Protection" Föreläsning 11, HT2014 Säkerhet, tillgänglighet. Johan Leitet. Kurs: 1dv403 Webbteknik I

Webbserver och HTML-sidor i E1000 KI

Karlstads universitet Institutionen för Informationsteknologi Datavetenskap

Terminal vad det är vad man kan göra med den

Att bygga VPN. Agenda. Kenneth Löfstrand, IP-Solutions AB. Olika VPN scenarios. IPsec LAN - LAN. IPsec host - host SSH

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php

Gratis support via telefon och e post ingår i tjänsten. Kontaktuppgifterna finns längst ner i dokumentet.

Grundläggande datavetenskap, 4p

open_ports.sh Vet du vad din dator gör på nätet? tisdag den 19 oktober 2010

Christer Scheja TAC AB

Webbsäkerhet för IT-tekniker VT2014 Johan Leitet Nätverkssäkerhet, 1DV425 johan.leitet.se twitter.com/leitet facebook.

Rotadministration och serverroller

Marcus Wilhelmsson 12 april 2013

Swedish Association for Software Testing Inspect it AB

Extern åtkomst Manual för leverantör

Föreläsning 9 Transportprotokoll UDP TCP

Kriswebb och Krisserver ur ett tekniskt perspektiv

Tentamen etjänster och webbprogrammering

Anonym surfning och säkra klienter

Säkerhet i applikationslagret och slaget om webben. John Wilander, Omegapoint, Rätt säkerhet, maj 2010

Spara papper! Skriv inte ut sammanfattning utan ladda ner PDF!

WWW. Exempel på klientsidan. Överföring av en html-fil. Snyggare variant. Verkligt format. Meddelandeformat för begäran HTTP

MySQL - testmiljöer på minuter. Thomas Johansson IT-avdelningen

Att sätta upp trådlöst med Cisco Controller 2100 series och Cisco AP 1200 series

2 Varför är XSS och SQL-injection så vanligt?

Inneh ll. CGI och CGI-programmering. Common Gateway Interface. Common Gateway Interface. Mera dynamisk WWW. Kompletterande l sningar

Sök-Utskottspub Sök till:

DNSSEC. Tester av routrar för hemmabruk. Joakim Åhlund & Patrik Wallström, Februari 2008

Säkerhet. Säker kommunikation - Nivå. Secure . Alice wants to send secret message, m, to Bob.

DD-WRT för trådlös router

Tilläggs dokumentation 4069 Dns

Laboration i Datakommunikation - Introduktion till Sockets och TCP/IP

Datasäkerhet och integritet

JavaScript in SharePoint and not just for Apps. Wictor Wilén

Databaser på webben. Revision Johan Näsholm, johan@nasholm.com

Manual för Fristående system för temperatur och luftfuktighetsmätning

Swedbank Mobile Loadtesting. LoadRunner Mobile App protocol

Grundläggande nätverksteknik. F3: Kapitel 4 och 5

Webbteknik II. Föreläsning 5. Restless farewell. John Häggerud, 2011

Du skall naturligtvis visa körexempel med output där det behövs i din rapport!

Linuxadministration I 1DV417 - Laboration 5 Brandvägg och DNS. Marcus Wilhelmsson marcus.wilhelmsson@lnu.se 19 februari 2013

1. Log on to the system using the user ide and password ide. 2. Copy the file /etc/ca-certificates.conf to the home directory of the user.

Nätverk grunder Föreläsning 1: 1: Introduktion till Internet

Bordermail instruktionsmanual

Norman Endpoint Protection (NPRO) installationsguide

HA Kluster med CoreOS & Docker Magnus Persson

Filbeskrivningar Eller på särskild CD skiva

tillägg till AnvändarmANUAL För LarmSystemet Lansen Home Installera, Använda och Administrera

Säkerhet. Säkerhet. Johan Leitet twitter.com/leitet facebook.com/leitet. Webbteknik II, 1DV449

Transkript:

Säkerhet, eller nått. Tomas Forsman <stric@cs.umu.se> 2014-10-14

Vem är jag? SysAdm på CS sen 1999 SysAdm på ACC sen 1998 Gillar att undersöka saker Mest åt Linux/Unix-hållet med datorer

Programmerings-NM 2014 Lagnamn från KTH Omogen Heap

Programmerings-NM 2014 Lagnamn från NTNU/Trondheim ZALGO

Programmerings-NM 2014 Lagnamn från NTNU/Trondheim ZALGO 5 tecken, 44 bytes i UTF-8. Buffer overflow?

Programmerings-NM 2014 Lagnamn från Umeå <script>alert( :) )</script>

Programmerings-NM 2014 Lagnamn från Umeå <script>alert( :) )</script> Triggade XSS hos registreringssystemet som används för t.ex världsfinalen i programmering. Yay.

Programmerings-NM 2014 Lagnamn från Umeå () { :;}; :(){ : :& };:

Programmerings-NM 2014 Lagnamn från Umeå () { :;}; :(){ : :& };: Forkbombade tidigare nämnda regsystem.

Mer dumheter? SQL används ofta för att hantera data INSERT INTO Students (name) VALUES ($name);

Mer dumheter? SQL används ofta för att hantera data INSERT INTO Students (name) VALUES ('$name');

Mer dumheter? SQL används ofta för att hantera data INSERT INTO Students (name) VALUES ('$name'); INSERT INTO Students (name) VALUES ('Robert'); DROP TABLE Students; --

CGI, Common Gateway Interface CGI-script på webserver, hejmamma.cgi: #!/bin/bash echo "Content-type: text/plain" echo echo "Hej mamma" Ser någorlunda harmlös och säker ut...

Shellshock Buggen bash och liknande i media Expressen och Aftonbladet förvirrade mer än hjälpte Funnits 20+ år Kodar ner interna funktioner via miljövariabler till subprocesser, sen det omvända vid uppstart Verifierar inte att de kommer från rätt ställe, kör eval() på resten av funktionsdefinitionen Typ 6 olika säkerhetshål hittade där, allt eftersom folk lagade hål på fel sätt...

CGI, Common Gateway Interface CGI-script på webserver, hejmamma.cgi: #!/bin/bash echo "Content-type: text/plain" echo echo "Hej mamma" Ser någorlunda harmlös och säker ut... wget user-agent='() { :;};rm -rf /' http://mega-secure-site.se/hejmamma.cgi

DHCP Klient säger hej, jag har nätverkskort xyz, vad ska jag ha för ip-adress å jox?

DHCP Klient säger hej, jag har nätverkskort xyz, vad ska jag ha för ip-adress å jox? Förresten, här är lite ytterligare information '() { :;};rm -rf /'

Heartbleed Hej server, om du är kvar svara kex (3 bokst)

Heartbleed Hej server, om du är kvar svara kex (3 bokst) kex

Heartbleed Hej server, om du är kvar svara kex (3 bokst) kex Hej server, om du är kvar svara kaka (4 bokst)

Heartbleed Hej server, om du är kvar svara kex (3 bokst) kex Hej server, om du är kvar svara kaka (4 bokst) kaka

Heartbleed Hej server, om du är kvar svara kex (3 bokst) kex Hej server, om du är kvar svara kaka (4 bokst) Hej server, om du är kvar svara kaka (64000 bokst) kaka

Heartbleed Hej server, om du är kvar svara kex (3 bokst) kex Hej server, om du är kvar svara kaka (4 bokst) Hej server, om du är kvar svara kaka (64000 bokst) kaka kaka <efterföljande 64k data ur minnet>

Heartbleed Hej server, om du är kvar svara kex (3 bokst) kex Hej server, om du är kvar svara kaka (4 bokst) Hej server, om du är kvar svara kaka (64000 bokst) Ojdå. kaka kaka <efterföljande 64k data ur minnet>

Apple does SSL, OSX + ios... hashout.data = hashes + SSL_MD5_DIGEST_LEN; hashout.length = SSL_SHA1_DIGEST_LEN; if ((err = SSLFreeBuffer(&hashCtx))!= 0) if ((err = ReadyHash(&SSLHashSHA1, &hashctx))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &clientrandom))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &serverrandom))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &signedparams))!= 0) if ((err = SSLHashSHA1.final(&hashCtx, &hashout))!= 0) err = sslrawverify(...);...

Apple does SSL, OSX + ios... hashout.data = hashes + SSL_MD5_DIGEST_LEN; hashout.length = SSL_SHA1_DIGEST_LEN; if ((err = SSLFreeBuffer(&hashCtx))!= 0) if ((err = ReadyHash(&SSLHashSHA1, &hashctx))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &clientrandom))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &serverrandom))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &signedparams))!= 0) <----------------------------------------------------- Uh oh. if ((err = SSLHashSHA1.final(&hashCtx, &hashout))!= 0) err = sslrawverify(...);...

Apple does SSL, OSX + ios... hashout.data = hashes + SSL_MD5_DIGEST_LEN; hashout.length = SSL_SHA1_DIGEST_LEN; if ((err = SSLFreeBuffer(&hashCtx))!= 0) if ((err = ReadyHash(&SSLHashSHA1, &hashctx))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &clientrandom))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &serverrandom))!= 0) if ((err = SSLHashSHA1.update(&hashCtx, &signedparams))!= 0) <----------------------------------------------------- Uh oh. if ((err = SSLHashSHA1.final(&hashCtx, &hashout))!= 0) err = sslrawverify(...);...

Cross Site Scripting DNS Diverse key-value för olika slags information, vissa fritext Whois Uppslagning om vem som har hand om olika domäner https://www.youtube.com/watch?v=u4uq0p2yadk

DNS DNS: Skicka UDP-fråga med felaktig avsändare massa svar till offret Skicka svar i förhand från legitimt server DNSSEC Digitala signaturer för att verifiera

UDP/TCP/SSL/TLS UDP samma som vykort Välj mottagare & avsändare, lägg i brevlådan TCP Brevvän till fast brevlåda Måste stå vid brevlådan och loota SSL/TLS utan certifikatkoll Kolla legitimation, men skit i om det är ett svenskt pass eller om personen gjort den själv SSL/TLS med certifikatkoll Rek-brev, klart svårare att förfalska, men går

Göra rätt? Ha inte otur när ni tänker Inte omedelbart säkerhetshål, men: Laptop; gjorde suspend to disk (inkl BIOS), vid start gjorde den resume (inkl BIOS). Byt disk skriver över BIOS med blankt från den nya disken. Duh.

C strcpy strncpy (stack smash) Göra rätt? Hålla sig inom arrayer SQL Håll isär data och kod HTML Håll isär data och kod (svårt, HTML/CSS/JS/...) Allmänt Sanera indata, anta att andra sidan vill göra dumheter Sanera inte för hårt... Your name is invalid %!&*

Anta inte... UDP: Godtycklig avsändare, blockbaserad TCP: Strömbaserad, ej blockbaserad SSL/TLS: Hittepå-cert stoppar vissa, men inte alla Begränsning i HTML-formulär, eller JSverifiering? Client side security

Minska potentiella skador VM:ar med begränsad funktionalitet Jails/chroot / -- bin -- dev -- home `-- kungen -- proc -- usr `-- lib `-- tmpslask -- home `-- svc `-- dev

Minska potentiella skador VM:ar med begränsad funktionalitet Jails/chroot / -- bin -- dev -- home `-- kungen -- proc -- usr `-- lib `-- tmpslask -- home `-- svc Potentiellt farligt `-- dev

Exempel på hack Stoppa in USB-pinne/disk Lägg till ftp-konto med hemkatalog /share/disk/../../../ Brist på validering av indata -> chroot overksam FTP till maskin, lägg till filen /tmp/telnetenable FTP till maskin, modifiera /etc/hosts.allow (skrivbar av alla.. ehum.) Telnet in som root, lösenordet är samma adminlösenord som i webgränssnittet