Ti5313500 Tietoturvan Perusteet: Ohjelmistoturvallisuus



Samankaltaiset tiedostot
Tietoturvan Perusteet: Ohjelmistoturvallisuus

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa

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

Tietoturva SenioriPC-palvelussa

Järjestelmän asetukset. Asetustiedostojen muokkaaminen. Pääkäyttäjä eli root. Järjestelmänhallinnan työkalut

Tietoturvan Perusteet Yksittäisen tietokoneen turva

edocker PUBLISH! -paketinhallinnan käyttöohje 9/2015

2. Koetilan palvelin. 4. Varatietokoneet ja -kuulokkeet. 6. Kokelaan tikkuja osallistujille, varapäätelaitteille ja varalle

Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

Yleinen ohjeistus Linux tehtävään

Ti Tietoturvan Perusteet

Ohje kehitysympäristöstä. Dokumentti: Ohje kehitysympäristöstä.doc Päiväys: Projekti : AgileElephant

niissä olevan viallisen zlib-koodin takia. Spectra Linux 1.2:n kerneleissä tämä vika on korjattu. Raimo Koski

Kiipulan ammattiopisto. Liiketalous ja tietojenkäsittely. Mervi Saarinen

Yritysturvallisuuden perusteet. 11. Luento Tietotekninen turvallisuus

Ohjelmistopohjaisen lisenssin käyttö

Tapahtumakalenteri & Jäsentietojärjestelmä Toteutus

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012

Oma verkkokäyttäytyminen myös vaikuttaa olennaisesti tietoturvaan

2013 -merkistä tunnistat uudet ominaisuudet

Siemens Webserver OZW672

Tietoturva ja tietosuoja. Tietotekniikan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen

Tietokoneiden ja mobiililaitteiden tietoturva

ARVO - verkkomateriaalien arviointiin

ESET CYBER SECURITY Mac Pikaopas. Lataa tämän asiakirjan uusin versio napsauttamalla tätä

Miksi ja miten siirtyä käyttämään nykyistä ERP-järjestelmää pilvessä?

Ennen kuin aloitat lataamisen tarkista järjestelmävaatimukset:

1 YLEISKUVAUS Laajakaistaliittymä Palvelun rajoitukset PALVELUKOMPONENTIT Päätelaite Nopeus...

Office ohjelmiston asennusohje

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3

F-Secure Mobile Security. Android

Visma Econet -ohjelmat ActiveX on epävakaa -virheilmoituksen korjausohjeet

Valppaan asennus- ja käyttöohje

ESET NOD32 ANTIVIRUS 6

Ensimmäisessä vaiheessa ladataan KGU tietokanta Hallitse tietokantoja toiminnon avulla.

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

Korkeakoulujen prosessipalvelin: mallintajan palvelinohje Versio 0.2

Asetusten avulla voit säätää tietokoneen suojaustasoja. Suojaustila ilmoittaa tietokoneen senhetkisen tietoturvan ja suojauksen tason.

VERKON ASETUKSET SEKÄ WINDOWSIN PÄIVITTÄMINEN

VERSIO 5.1/5.2 PIKAOHJE WEBACCESS HTML 3

Tuplaturvan tilaus ja asennusohje

POP-UP -IKKUNOIDEN SALLIMINEN

Näin järjestän ohjelmointikurssin, vaikka en ole koskaan ohjelmoinut

Kieliversiointityökalu Java-ohjelmistoon. Ohje

VINKKEJÄ CV-NETIN KÄYTTÖÖN.

Yleinen ohjeistus Windows tehtävään.

1 www-sivujen teko opetuksessa

Case Tietoja varastava haittaohjelma

TW-EAV510AC mallin ohjelmistoversio

Mobiililaitteiden ja sovellusten tietoturvallisuus mihin tulee kiinnittää huomiota?

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

ELM GROUP 04. Teemu Laakso Henrik Talarmo

Tietokoneiden ja mobiililaitteiden suojaus

Ylläpitodokumentti Mooan

Salausmenetelmät (ei käsitellä tällä kurssilla)

Primuksen ja Wilman viestitoiminnot

JWT 2016 luento 11. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari

1 YLEISKUVAUS Kaapelikaistaliittymä Palvelun rajoitukset PALVELUKOMPONENTIT Päätelaite Nopeus...

KYMENLAAKSON AMMATTIKORKEAKOULU. Ubuntu. Yukun Zhou

Muokkaa otsikon perustyyliä napsauttamalla

Peltotuki Pron Lohkotietopankkimoduli tärkkelysperunalle

Visual Basic -sovelluskehitin Juha Vitikka

Selvitysraportti. MySQL serverin asennus Windows ympäristöön

Johdatus rakenteisiin dokumentteihin

TIETOTURVA. Eduberry tietotekniikka marjanviljelijän apuvälineenä Leena Koponen

Tietoturva. opettaja Pasi Ranne Luksia, Länsi-Uudenmaan koulutuskuntayhtymä Pasi Ranne sivu 1

OpenOffice toimisto-ohjelma

Nettiposti. Nettiposti käyttöohje

Kaakkois-Suomen Ammattikorkeakoulu Oy Mikkelin Ammattikorkeakoulu Oy Kymenlaakson Ammattikorkeakoulu Oy

MixW ja Dx-vihjeet (ohje) oh3htu

Vaivattomasti parasta tietoturvaa

päiväys tekijä tarkastaja hyväksyjä Muutoshistoria Julkunen (Marja Julkunen)

Ti Tietoturvan Perusteet : Politiikka

Ohje 1 (12) Maarit Hynninen-Ojala MOODLE PIKAOHJE. Kirjautuminen Moodleen ja työtilan valitseminen

Opi kuvin: By Choice v.1.4 asennus Asennus järjestelmänvalvojan oikeuksin

Maksaminen tulevaisuudessa Turvallisesti kohti murrosta. Talous- ja Palkkahallintopäivät Danske Bank

Siirtyminen Outlook versioon

Tiedostojen jakaminen turvallisesti

Loppukäyttäjän ohje Asennus- ja käyttöohje Mac

4.2 Yhteensopivuus roolimalleihin perustuvassa palvelussa

TW- EAV510: PORTIOHJAUS (VIRTUAL SERVER) ESIMERKISSÄ VALVONTAKAMERAN KYTKEMINEN VERKKOON

Salasanojen turvallinen tallentaminen KeePass ohjelmalla

Kymenlaakson Kyläportaali

ARVO - verkkomateriaalien arviointiin

Taustaa. CGI-ohjelmointi

Tikon Web-sovellukset

Tietoturva ja tietosuoja. Millaisia ovat tietoyhteiskunnan vaarat?

Fronter kotiohje HELSINGIN KAUPUNKI OPETUSVIRASTO MEDIAKESKUS KOTIOHJE

10 parasta vinkkiä tietokoneongelmiin

SÄHKÖPOSTIOHJE. Opiskelijoiden Office 365 for Education -palveluun

Johdatus ohjelmointiin

Windows Server 2012 asentaminen ja käyttöönotto, Serverin pyörittämisen takia tarvitaan

Projektinhallintaa paikkatiedon avulla

ActionTrack-sovellus

Visma Fivaldi selainohjeet Internet Explorer

Automaattinen regressiotestaus ilman testitapauksia. Pekka Aho, VTT Matias Suarez, F-Secure

Transkriptio:

Ti5313500 Tietoturvan Perusteet: Ohjelmistoturvallisuus Pekka Jäppinen 6. marraskuuta 2007 Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007

Yleiset tietoturvaongelmat ohjelmissa ohjelmistoturvallisuus Virheet itse ohjelmassa Ohjelman väärinkäyttö Yhteensopivuus ongelmat Yhteensopiva minkä kanssa? Yhteensopiva millä ehdoilla? Eri versioiden yhteensopivuus Voidaanko luottaa että ohjelman tekijä on rehellinen? Avoin lähdekoodi vs. suljettu ratkaisu Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 1/27

Ilkeämieliset ohjelmat (malicious software, malware) Itsenäisiä ohjelmia tai ohjelmanosia Koostuvat yleensä kahdesta osiosta 1. Leviämiskoodi Varmistaa että ohjelma siirtyy koneelta toiselle 2. Toimintakoodi Ylimääräinen viesti ruudulle Jakaa tietoa salaa muille Tuhoaa tietoa Käytännössä kaikkea mitä käyttäjäkin voi ohjelmallisesti tehdä. Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 2/27

Virukset Tarttuu toisiin ohjelmiin ja muokkaa niiden toimintaa Lisää oman koodin terveeseen ohjelmaan Pitää aktivoida ajamalla ennenkuin alkaa toimia Levyllä oleva virus ei itsestään tee mitään Leviää tartuttamiensa ohjelmien välityksellä Leviäminen geometrisella vauhdilla Jako toimintapaikan mukaan Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 3/27

1. Hetkellinen virus (transient virus) Toimii vain ohjelman ajon aikana 2. Asuva virus (resident virus) Siirtää itsensä koneen muistiin ja toimii sieltä käsin Ohjelmistovirukset 1. Liitetyt viruksen (appended virus) Liittää itsensä isäntäohjelmaan Yksinkertaisimmillaan vain kopioi itsensä toisen ohjelman alkuun ennen ensimmäsitä suoritettavaa käskyä Ajettaessa ohjelma käynnistyy ensin virus ja vasta sitten itse ohjelma Ei tarvita tietoa itse isäntäohjelmasta Isäntäohjelma toimii vain kantajana Tartunta tunnistettavissa isäntäohjelman pituuden kasvamisesta 2. Ympäröivät virukset Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 4/27

Toimivat ennen ohjelman alkua ja uudestaan ohjelman päättyessä Voivat piilottaa jälkensä 3. Sopeutuneet virukset Ovat mukautuneet osaksi isäntäohjelmaa Isäntäohjelman rakenne pitää tuntea 4. Vaihdokki virukset Siirtävät itsensä toisen ohjelman tilalle Muut virukset 1. Boot-sektori virukset Asettuvat koneen bootsketorille ja näin ollen aktivoituvat koneen käynnistyessä 2. Muisti-asukki virukset (memory resident viruses) Asettuvat muistiin jäävän ns. TSR koodiin, esimerkiksi näppäimistön painallusten tunnistus koodi Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 5/27

3. Kirjastovirukset Sijaitsevat jaetuissa ohjelma kirjastoissa, joita useat ohjelmat käyttävät 4. Makrovirukset Asettuvat ajettaviin makroihin Ominaisuuksia Vaikea havaita Vaikea tuhota ja deaktivoida Leviää laajalti Helppo luoda Voi uudelleen tartuttaa Laite ja käyttöjärjestelmä riippumaton Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 6/27

Madot Itsenäisiä ohjelmia Kopioivat itseään verkon yli muihin koneisiin ja näin levittäytyvät joka puolelle Hyödyntävät leviämisessä tunnettuja aukkoja eri ohjelmistoissa Robert Morrisin mato vuonna 1988 kaatoi 6000 konetta (10% internetissä silloin olleista koneista) Madot kuljettavat usein mukanaan myös viruksia Sähköpostimadot hyödyntävät ihmisten heikkouksia Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 7/27

Sähköpostin liitetiedostona Ihmisten hyväuskoisuus ja uteliaisuus kohteena ILOVEYOU, Kournikova, PrettyPark... Ajettaessa etsivät yleensä koneelta sähköposti osoitteita, joihin lähettävät itsensä ja mahdollisesti jotain tiedostoja koneelta Usein sisältävät oman SMTP koodin Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 8/27

Troijalaiset, Troijan hevoset (Trojan Horses) Idea sama kuin alkuperäisessä Kreikkalaisten tekemässä hevosessa Ohjelma, joka tekee normaalin toimintansa lisäksi jotain muuta josta ei kerro käyttäjälle Esimerkiksi login skripti, joka toimii normaalin sisäänkirjautumis ohjelman tapaan, mutta samalla kerää käyttäjien tunnukset ja salasanat ja postittaa ne skriptin tekijälle. Java ohjelma, joka katkaisee modeemi yhteyden ja ottaa uuden yhteyden moldovassa olevaan palvelimeen. war-dialer Luvaton etähallintaohjelmisto Verkkoselain, joka turvattua yhteyttä varten tarkoituksella generoi huonon yhteysavaimen Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 9/27

Rootkit Järjestelmään ytimeen piilotettu joukko ohjelmia, joiden avulla hyökkääjä pitää itsellään oikeuksia Keräävät tietoa kaikesta järjestelmän toiminnasta Muokkaavat järjestelmän ja ohjelmien toimintaa. Vaikeita havaita Poistaminen vaatii usein uudelleen asetuksen Mihinkään järjestelmässä ei voi oikein luottaa Tulevaisuudessa yleistyvät? Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 10/27

Muut Salamihyökkäys Vetää pieniä siivuja välistä esim rahan siirrossa Esim pyöristys huijaus. Salaovi Dokumentoimaton ominaisuus, jonka kautta ohjelmantekijä voi saada ylimääräisiä oikeuksia Joskus tarkoituksella jätetty esimerkiksi huoltotöitä varten Looginen pommi Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 11/27

Kuten troijalainen, mutta joku muu asentaa ohjelman koneellesi, kun troijalaisessa asetat itse ohjelman koneeseesi, luullen sen tekevän jotain hyvää. Aktivoituu jostain tietystä tapahtumasta Esim. työntekijän erottamisen jälkeen Aikapommi aktivoituu tiettynä aikana Usein osa virusta Yhdistelmät Yhdistävät eri tekniikoita maksimi tuhon saamiseksi Nykyään lähes kaikki haittaohjelmat yhdistelevät eri ominaisuuksia Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 12/27

Antivirus ohjelmat Etsivät virusten, matojen yms. sormenjälkiä Uusia viruksia päivitetään tietokantaan aktiivisesti Ohjelman virustietokantaa tulee päivittää aktiivisesti Uusi virus tunnistetaan vasta, kun ohjelman tekijät sen tapaavat ja lisäävät sen sormenjäljet 10 miljoonaa tartuntaa tunneissa -> Päivitys voi tulla myöhässä Ennakointi vaikeaa, usein mahdotonta Hyvä lisäturva, ei pidä kuitenkaan tuudittautua turvallisuuden tunteeseen. Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 13/27

Tietoa vuotavat ohjelmat Lähettävät tietoa käyttäjästä muualle Voivat myös olla hyödyllisiä Rajanveto vaikeaa, mikä sallitaan mikä ei Keksit, evästeet (cookies) HTTP palvelin ei tunnista käyttäjää napsautuksesta toiseen Mahdollistavat tilallisen verkkoselauksen Oikealle käyttäjälle oikea ostoskärry Palvelin antaa selaimelle keksin, joka pitää sisällään tietoa käyttäjästä Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 14/27

Palvelin kysyy keksin olemassa oloa ennenkuin lähettää verkkosivun, muokaten sivun käyttäjä kohtaiseksi Hyödyllisiä Elin-ikä voidaan määritellä Eivät voi kerätä tietoa koneelta, ajaa ohjelmia tai muuta aktiivista tuhoa Voidaan käyttää tiedon keräämiseen ja henkilötietokantojen luomiseen Doubleclick maksaa mainostilasta eri verkkosivuille. Keksien avulla se seuraa käyttäjän liikkumista sivuilla, joissa sen laittamia mainoksia on ja sen mukaan määrittelee mitä mainoksia antaa. Jos kerrot sähköpostiosoitteesi tai muuta tietoa jollekin sivulle, jossa on DC:n asettamia mainoksia, voi kyseinen paikka myydä DC:lle sähköposti osoitteesi Sähköpostin liitteenä voi olla keksi joka pitää sisällään sähköposti osoitteen. (mikäli sähköpostiohjelma tukee html viestejä) Myöhemmin suratessa voidaan suraaja, ja osoite liittää yhteen. Keksin myrkyttäminen Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 15/27

Muokataan keksin tietoja, esiinnytään jonain toisena. Selaimissa on erilaisia keksien hallintamekanismeja Automaattiset päivitykset Voivat siirtää tietoa päivityspalvelimelle päivitys operaation helpottamiseksi Laitekokoonpano ohjelmisto versio Kulkeeko tietoa muualle? Käytetäänkö tietoa muuhun tarkoitukseen Millä varmistutaan että päivitys tulee oikeasta osoitteesta? Onko riski suurempi kuin jos käyttäjä itse tekee päivityksen? Tekstinkäsittelyohjelmien aiheuttamat vuodot Dokumenttien tunnistetietojen lisäys Muutoshistoria... Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 16/27

Tilapäistiedostot Vakoojaohjelmat, Spyware Nousseet vakavaksi ongelmaksi viimevuosina Keräävät mahdollisimman paljon tietoa käytäjistä... jota hyödynnetään usein mainostuksesta (adware) Asentuvat usein hyödyllisten ohjelmien osana Mainitaan ohjelman käyttölisenssissä ikävällä lakitekstillä Voivat hyödyntää rookittejä piilottaakseen itsensä Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 17/27

Modulaariset ohjelmat Ohjelmat koostuvat monesta erilaiset moduulista Dynaamiset kirjastot, plug-init, Onko moduuleissa virheitä? Onko moduulia käytetty oikein toteutetussa ohjelmassa? Mitä tapahtuu kun eri moduuleja käytetään yhdessä Kuinka hyvin mikäkin moduuli on testattu Kaikkien moduulien yhteistoimintaa on vaikea testata. Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 18/27

Mitä tapahtuu ohjelman toiminnalle, kun moduli vaihdetaan uuteen? Voiko vanha ja uusi versio moduulista olla käytössä yhtäaikaa? Automaattinen päivitys Sekä luottamus että yhteys muodostetaan oikeaan paikkaan ja päivitettävät moduulit ovat ehjiä Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 19/27

Mobiilikoodi Siirrettävä koodi, verkkoselaimen ajama koodi Onko saatu ohjelma turvallinen? Voiko lähteeseen luottaa Mitä jos ohjelma onkin ilkeämileinen, kuinka reagoida? Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 20/27

Selaimessa ajettava koodi JavaScript Netscapen kehittämä skripti kieli Ei voi suoraan tehdä tuhoa (javaskriptin bugit korjattua) Voidaan käyttää aiheuttamaan harmia (miljoonia aukeavia ikkunoita) Voidaan käyttää huijaamaan käyttäjä tekemään jotain hölmöä ActiveX Kaikessa koodissa allekirjoitus, jonka verkkoselain näyttää kysyessään käyttäjältä ajetaanko ohjelma. Mikäli käyttäjä hyväksyy koodin ajon, voi ohjelma tehdä mitä haluaa. Ohjelman tekijän tietäminen laiha lohtu jos levyllä ollut arvokas tieto on formatoitu. Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 21/27

Ketä syyttää jos kaksi activex pluginia tekee tuhoa ollessaan aktiivisina yhtäaikaa? Crossite scripting (XSS) Saadaan palvelin ajamaan muualta ladattavaa koodia käyttäjn huomaamatta Hyödyntää käyttäjän luottamusta palveluun tai sähköpostiviestiin. Käyttäjän ohjelma saadaan suorittamaan muualta tulevaa koodia Käytetään esimerkiksi haittaohjelmien levityksessä Hyödynnetään esim Phishingissä (tietojen khalastelussa) Haittaohjelmien levityksessä Cross-zone scripting Tapa kiertää ohjelmallisia rajoituksia Alue (Zone) määrittää mitä oikeuksia ohjelmalla on Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 22/27

Ohjelman alkuperä /sijainti määrittää mille alueelle ohjelma kuuluu Hyödyntää XSS:ää, verkkoselaimen haavoittuvuuksia tai Java appletit Ohjelmien toiminta rajoitettu tietylle alueelle (oma hiekkalaatikko), joka on totetutettu 3:lla mekanismilla 1. Byte code verier Tarkistaa java koodin ennen ajoa Varmistaa että koodi on oikeaa eikä siinä ole tunnettuja virheitä 2. Class loader Päättää kuinka ja milloin komponentti saa liittää itsensä java ympäristöön Varmistaa ettei appletti korvaa mitään tärkeää toimintoa, joka on jo käytössä 3. Security manager Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 23/27

Toimii konsulttina, joka päättää mitä eri appletit saavat tehdä (verkosta ladatulla appletilla on vähemmän oikeuksia kuin itse java paketin mukana tulleilla Plug-In PDF lukija, FLASH pätkien näyttäjä Luotetaan automaattisesti Ei mitään turvamekanismeja, asennettaessa on luotettava, että ohjelma tekee mitä sanoo. Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 24/27

Helppokäyttöisyyden tuomat ongelmat Käyttäjää helpottavia toimintoja voidaan käyttää väärin Käytettävyys vs turvallisuus Makrot helpottavat toimintaa, mutta samalla niiden avulla voidaan rakentaa viruksia Oheislaitteiden ohjelmoitavuutta voidaan käyttää väärin. Kännykkävirukset Ubiquitous computing tuo mukanaan uusia riskejä Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 25/27

Palvelinohjelmistoon kohdistuvat uhat Palvelimen kaataminen DoS Palvelimen tukkiminen DDos Seitti skriptit (web scripts, palvelimen skriptit) Palvelimella olevat ohjelmat jotka tekevät erilaisia toimintoja käyttäjän syötteen mukaan. Syötteet kulkevat ohjelmille CGI:n (Common Gateway Interface) kautta Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 26/27

CGI skripti on potentiaalinen turvallisuusaukko Virheitä skripteissä on käytetty paljon hyväkseen Serveriltä on ladattu tiedostoja, katseltu tietokantoja, luettu koneen logeja, myyty toisen osakkeita Syötteenä ajettavaa skripti koodia Buer overow Ohjelmiston sisäisiä cgi-skriptille lähettimiä muuttujia muokkamalla voi muuttaa kaupan olevien tuotteiden hintaa Usein kirjoitettu nopeasti Jaetaan tutuille ja tuntemattomille Palvelin ei kontrolloi skriptien toimintaa Kolmannen osapuolen ohjelmistojen viat Tietokantaohjelmisto, kauppakärry jne. Kenellä vastuu, kuka korjaa Yleensä ohjelmistot tuottaneen yrityksen tulee korjata virheet. Pekka Jäppinen, Lappeenranta University of Technology: 6. marraskuuta 2007 27/27