Tietoturvaohjelmistojen toteutus



Samankaltaiset tiedostot
VALVO JA VARAUDU PAHIMPAAN

SMART BUSINESS ARCHITECTURE

Tietoturva-kurssit: kryptografian perusteet IPSec

Kattava tietoturva kerralla

Backup Exec 3600 Appliance

WINE API ja Virtualisointiohjelmistot

Security server v6 installation requirements

Security server v6 installation requirements

Mark Summary Form. Taitaja Skill Number 205 Skill Tietokoneet ja verkot. Competitor Name

Ohjelmistoarkkitehtuuri. Verkotettu multimedia. Multimedian vaikutukset. Mediavirtojen puskurointi. Ohjelmointi. Selain-ohjelmistoarkkitehtuuri

Qt kaikkialla?

AKKREDITOITU TESTAUSLABORATORIO ACCREDITED TESTING LABORATORY WE CERTIFICATION OY OPERATOR LABORATORY

Tutkimus web-palveluista (1996)

GPRS-lisäpalvelu INTERNET-ASETUKSET

Rajattomat tietoverkot ja niiden rooli pilvipalveluissa. Jukka Nurmi Teknologiajohtaja Cisco Finland

Työasemien hallinta Microsoft System Center Configuration Manager Jarno Mäki Head of Training Operations M.Eng, MCT, MCSE:Security, MCTS

IoT-platformien vertailu ja valinta erilaisiin sovelluksiin / Jarkko Paavola

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245

Käyttöjärjestelmät(CT50A2602)

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

SAP. Lasse Metso

Intel Threading Building Blocks

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

OUGF syysseminaari Back to Basics

POWER analytiikka-alustana

Osaa käyttää työvälineohjelmia, tekstinkäsittelyä taulukkolaskentaa ja esitysgrafiikkaa monipuolisesti asiakasviestintään.

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

Ohjelmistojen mallinnus, s2008 HY/TKTL, 28/10/2008. Harri Laine 1. Ohjelmisto

Ohjelmistojen mallinnus (OMa) - Johdatus ohjelmistotuotantoon Harri Laine 1

Choose Finland-Helsinki Valitse Finland-Helsinki

CUDA. Moniydinohjelmointi Mikko Honkonen

Sovellustietoturvallisuus Petteri Arola OWASP Chapter Leader Nixu Oy OWASP The OWASP Foundation

TURVALLISEN TEKNIIKAN SEMINAARI Laitteiden etähallinta tietoverkkojen välityksellä Jani Järvinen, tuotepäällikkö

Aalto-yliopiston sähkötekniikan korkeakoulu Korvaavuusluettelo

Liiketoimintajärjestelmien integrointi

TeliaSonera. Marko Koukka. IT viikon seminaari Identiteetin hallinta palveluna, Sonera Secure IDM

HSMT J2EE & EJB & SOAP &...

Teemu Kerola Orientointi Syksy 2018

ASCII-taidetta. Intro: Python

Copernicus, Sentinels, Finland. Erja Ämmälahti Tekes,

Tiedon salaaminen tallennusverkossa Luottokorttinumeroiden tokenisointi

Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon

POP-UP -IKKUNOIDEN SALLIMINEN

PLA Mobiiliohjelmointi. Mika Saari

SG 105, SG 105w, SG 115, SG 115w. SG 125, SG 125w, SG 135, SG 135w SG 210, SG 230 SG 310, SG 330 SG 430, SG 450 SG 550 SG 650

TeleWell TW-EA711 ADSL modeemi & reititin ja palomuuri. Pikaohje

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

Aalto-yliopiston sähkötekniikan korkeakoulu Korvaavuusluettelo

TKK 100 vuotta -merkki

HP Networking. Martti Saramies, HP Networking, myynti

TUTKI OMAT TIETOTURVA-AUKKOSI. ENNEN KUIN JOKU MUU TEKEE SEN PUOLESTASI. F-Secure Radar Ville Korhonen

Ohjelmoinnin peruskurssien laaja oppimäärä

Vaivattomasti parasta tietoturvaa

Computing Curricula raportin vertailu kolmeen suomalaiseen koulutusohjelmaan

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) TLS:n suojaama sähköposti

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

Javan asennus ja ohjeita ongelmatilanteisiin

Aalto-yliopiston sähkötekniikan korkeakoulu Korvaavuusluettelo

ITK130 Ohjelmistojen luonne

Työelämäyhteydet uudistuvassa korkeakoulutuksessa seminaari Sessio 3. Kirsti Keltikangas, Aalto-yliopiston Sähkötekniikan korkeakoulu

Pilvee, pilvee, pilvee TERVETULOA! Toni Rantanen

Liiketoimintajärjestelmien integrointi

Windows Server 2008 R2, tietojen päivitys

Ohjelmistoarkkitehtuuriin vaikuttavia tekijöitä. Kari Suihkonen

KODAK EIM & RIM VIParchive Ratkaisut

F-SECURE TOTAL. Pysy turvassa verkossa. Suojaa yksityisyytesi. Tietoturva ja VPN kaikille laitteille. f-secure.com/total

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Diplomityöseminaari

LIITE 2 HANKITTAVA KOULUTUS POHJOIS-POHJANMAAN ELY-KESKUS Koulutuksen nimi ja koulutuskuvauksen numero

T Hypermediadokumentin laatiminen. Sisältö. Tavoitteet. Mitä on www-ohjelmointi? Arkkitehtuuri (yleisesti) Interaktiivisuuden keinot

IBM IT Education Services - DB2 YTR - sertifioinnit

.NET ja C# Virtuaalikone. Common Language Infrastructure (CLI) Periaate. Etuja. Haittoja. Mikä on CLI. CLI standardin merkitys (CLS, Ecma)

CERT-FIajankohtaiskatsaus

HITSAUKSEN TUOTTAVUUSRATKAISUT

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?

Mitä Piilaaksossa & globaalisti tapahtuu ja mitä Tekes voi tarjota yrityksille

Oraclen syvin ydin. Pertti Eiskonen Yleisradio Oy Tietokanta-asiantuntija. OUGF syysseminaari 2002 Sivu 1

Interfacing Product Data Management System

Kaikki analogiset järjestelmät digitaalisiksi ja verkkokäyttöisiksi - jo tänään Kustannustekkuutta ja joustavuutta työskentelyyn

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.

PCI DSS 3.0. Merkittävimmät muutokset Seppo Heikkinen, QSA Nixu

Sähkötekniikan tutkintoohjelma. DI-tutkinto ja uranäkymät

HAAVOITTUVUUKSIEN HALLINTA RAJOITA HYÖKKÄYSPINTA-ALAASI

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä?

Mammutti vai elefantti?

Integrointi. Ohjelmistotekniikka kevät 2003

Office 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy

LANSEERAUS LÄHESTYY AIKATAULU OMINAISUUDET. Sähköinen jäsenkortti. Yksinkertainen tapa lähettää viestejä jäsenille

Kustannustehokkuutta tietoturvallisuutta vaarantamatta

Versio 2.1. Käyttäjätunnukset tulee olla muotoa etunimi.sukunimi. Käyttäjätietokannasta tulee löytyä seuraavat käyttäjät ja tiedot:

Web Service torilla tavataan!

Mitä uutta ConfigMgr 2012 SP2 ja 2016? Panu Saukko ProTrainIT Oy

Ubicom tulosseminaari

Uuden sukupolven soteratkaisut

Tietojärjestelmä uusiksi? Toimijaverkostot, niiden haasteet ja ratkaisut

Transkriptio:

Tietoturvaohjelmistojen toteutus Markku Rossi mtr@ssh.com Tietoturvaohjelmistojen toteutus p.1/24

Agenda Tietoturva, mitä se on? SSH Communications Security 1995 2004 Toimintaympäristön vaatimukset ja rajoitteet Ohjelmistotuotanto käytännössä Tietoturvaohjelmistojen toteutus p.2/24

Tietoturva Firewall / SGW Firewall / SGW Internet Tietoturvaohjelmistojen toteutus p.3/24

SSH Communications Security SSH1 IPSec Project Start IPSec EXPRESS 1.0 SSH2 IPSec EXPRESS 2.0 IPSec EXPRESS 3.0 Sentinel Nat Traversal Certifier IPSec EXPRESS 4.0 Certifier Product Family 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 SSH2 3.0 CSM QuickSec SSH Tectia 1.0 Safenet SSH Tectia 1.2 Instasec Tietoturvaohjelmistojen toteutus p.4/24

Sovellus ja käyttöjärjestelmä Application Data XML Encryption/PGP XML-RPC/SOAP/HTTP SSL/TLS/SSH Application / OS Services J2EE/.NET SSL/TLS TCP/IP User-Mode / Kernel-Mode TCP/IP Stack Encrypted IPSec File System NIC Tietoturvaohjelmistojen toteutus p.5/24

Toimintaympäristö Yleiskäyttöiset käyttöjärjestelmät Windows 95,98,Me,NT,2000,2003,XP Solaris, HP/UX, AIX, Tru64 Linux 2.2 Sulautetut järjestelmät VxWorks NetBSD, FreeBSD Nucleus Linux Symbian Tietoturvaohjelmistojen toteutus p.6/24

Käytettävissä olevat resurssit Muisti: 5MB 256MB Pino: 2048B 4096B 128kB Säikeet a : 16 / prosessi CPU cyclet: 0.01% 95% koneen laskentatehosta a Ei tuettu kaikilla alustoilla. Tietoturvaohjelmistojen toteutus p.7/24

Vaatimukset Wire-speed Guaranteed response (real-time systems) Zero bugs Tuki kaikille käyttöjärjestelmille mitä asiakkaalla on käytössä... Tietoturvaohjelmistojen toteutus p.8/24

Ohjelmat: IPSec QuickSec Access 2.0 Toolkit MODULE LOC Policy Management 46000 Application Gateways 26000 IKE 32000 Certificate Management 55000 Other Libraries 290000 Packet Processing Engine 50000 Total 499000 Tietoturvaohjelmistojen toteutus p.9/24

Ohjelmat: ssh-4.1.5.5 SSH-4.1.5.5-commercial MODULE LOC zlib 6700 Certificate Management 80000 Crypto Library 50000 Math Library 11000 Other Libraries 101000 apps/ssh 99000 Total 347700 Tietoturvaohjelmistojen toteutus p.10/24

Ohjelmistotuotanto Tässä on speksi: RFC 2401, RFC 2402, RFC 2403, RFC 2404, RFC 2405, RFC 2406,... Mikset jo koodaa? $ emacs mokkula.c M-x compile ˆZ [1]+ Stopped emacs $./mokkula Segmentation fault (core dumped) $ fg M-x gdb mokkula mokkula.core Tietoturvaohjelmistojen toteutus p.11/24

Ohjelmistotuotanto Software business as usual Paitsi että Tietoturva on välttämätön paha jos sitäkään Ei business hyötyä sellaisenaan Nykyisin säädökset auttavat: Gramm Leach Bliley Act (GLBA) Health Insurance Portability and Accountability Act (HIPAA) Sarbanes Oxley Act (SOX) Basel II California SB 1386 (Tietoturva)ohjelmistossa on aina varauduttava pahimpaan Tietoturvaohjelmistojen toteutus p.12/24

Mitä tehdään ja kenelle? Requirement engineering Asiakkaalta kannattaa todellakin kysyä......mutta vastuu jää kysyjälle ts. asiakas ei tiedä mitä hän haluaa Tietoturva voi olla vaikea asia selittää ja ymmärtää Tietoturvaohjelmistojen toteutus p.13/24

Arkkitehtuuri Huomioi toimintaympäristön kirjavuus suunnittele järjestelmä joko yhdelle tai n:lle platformille Selkeät rajapinnat käyttöjärjestelmäspecifiselle koodille Varaudu vaatimusten muutoksiin ja laajennuksiin Asiakaslähtöiset muutokset Teknologialähtöiset muutokset algoritmien haavoittuvuudet (DES, MD5) uudet hyökkäykset Tietoturvaohjelmistojen toteutus p.14/24

Varaudu pahimpaan Dirty data Kaikki ulkoa (verkosta, levyltä, yms.) tuleva data on rikkinäistä ja vahingollista. Denial of Service hyökkäykset Tietoliikenneprotokollien rajoitteet ja mahdollisuudet (IKEv1 / IKEv2) Algoritmien valinta, toteutus Rate-limiting connections per host black-listing hosts Tietoturvaohjelmistojen toteutus p.15/24

Millä tehdään? C, C++, Java, Visual-Basic, Perl, Scheme,... Miksi C: Toimii kaikissa käyttöjärjestelmissä Suorituskyky Kernel ohjelmointi Muistinhallinta Rajapinnat muihin järjestelmiin helppoja Miksi ei C: Muistinhallinta Pinon ylivuoto Bufferien ylivuodot Tietoturvaohjelmistojen toteutus p.16/24

Toteutus KISS Tehokkaat algoritmit Yksinkertainen käsiala ja toteutus Ylläpidettävyys Coding style Standard coding idioms Testattavuus Tietoturvaohjelmistojen toteutus p.17/24

Coding Idioms Virheiden käsittely Muistin varaus ja vapautus Tietoturvaohjelmistojen toteutus p.18/24

Code Reviews Self review. Watts S. Humphrey: Code reviews are from three to five times more efficient in finding bugs than unit tests. Peer reviews Tietoturvaohjelmistojen toteutus p.19/24

Optimointi Michael Jackson: The First Rule of Program Optimization: Don t do it. The Second Rule of Program Optimization (for experts only): Don t do it yet. Tietoturvaohjelmistojen toteutus p.20/24

Optimointeja Vältä datan kopiointia cc -pg O(n) vs. O(n 2 ) Tietoturvaohjelmistojen toteutus p.21/24

Jatkuva oppiminen Oppiminen toimintaympäristöstä: malloc, snprintf, memcmp Oppiminen virheistä Ammattitaidon ylläpito Tietoturvaohjelmistojen toteutus p.22/24

Asenne Ei kirjoiteta niitä bugeja! Tietoturvaohjelmistojen toteutus p.23/24

Ammattiylpeys Minä tein tämän! Tietoturvaohjelmistojen toteutus p.24/24