Seittipalvelimen turvallisuus

Kymmenen yleisintä seittisovellusten turvaongelmaa OWASP:n luetteloissa? vuosilta 2003 ja 2004 ovat lähes samanlaisia (Open Web Appl. Sec. Project). Ainoa ero on kohdassa 9. Tämän luettelon pulmia kannattaa varoa vaikkapa weppikauppaa luotaessa:

  1. parametrien tarkistuksen laiminlyönti: voi päästää hyökkääjän ajamaan koodia palvelimella tai sen takana.
  2. pääsynvalvonnan särkyminen: autentikointi voi tuoda mukanaan liikaa oikeuksia ...
  3. tilien ja istunnon hallinnan särkyminen, kun valtuustietoja ja istuntojen tunnuksia ei suojata asianmukaisesti. Tuloksena mahdollisuus vääränä henkilönä esiintymiseen.
  4. "cross-site scripting"? (XSS): käyttäjä voi saada seittisovelluksen lähettämään haitallista koodia itselleen tai toiselle käyttäjälle, joka saattaa ajaa sen, koska se näyttää tulleen luotettavasta lähteestä. Tällä voidaan pahimmillaan kaapata istunto saamalla haltuun sen tunniste-evästeet. Tietysti tietojen muuttamisella voidaan saada käytännössä vielä pahempia tuloksia. (Ks. YaBB-keskustelualustaa koskeva esim.? tai lyhyt artikkeli MS-sivuilla? , tai pidempi esimerkki hyökkäyksestä? ) )
  5. puskurin ylivuodot: toisenlainen, ja monessa muussa yhteydessä ilmenevä, seuraus siitä ettei syöttötietojen kokoa tarkisteta.
  6. käskyjen välittämisen virheet ('command injection flaws'): usein on tarkoituskin seitin kautta lähettää käskyjä parametreineen muille ohjelmille (esim. sendmail tai SQL). Puutteelliset tarkistukset altistavat kohdeohjelmat hyökkäyksille.
  7. virheen käsittely: virheet ovat normaaleja, mutta jos jotain virhettä ei käsitellä, voi tapahtua jotain arvaamatonta.
  8. kryptografian käyttö voi olla toteutettu tavalla, joka ei tuota aiottua turvallisuutta.
  9. (2003) virheet etähallinnassa: seittipalvelu voi tarjota väylän etäylläpitoa varten ja jos tämä toteutetaan turvattomasti, hyökkääjä voi saada laajan pääsyn järjestelmään. (2004) Palvelun esto: sovelluksen käyttö tai siihen kirjautuminen estyy, tai koko sovellus kaatuu. 10. virheet palvelinten konfiguraatiossa: turvallisuus saavutetaan vasta tarkoilla säädöillä eli ei asennuksen oletusarvoilla.

Dokumentissa on myös tarkkoja selostuksia torjuntamekanismeista. Yleisemmällä tasolla ne ovat samoja kuin turvallisen ohjelmoinnin yhteydessä? (vrt. myös perussäännöt? ). Seittipalvelimen turvaamisessa puolestaan kannattaa noudattaa samoja ohjeita kuin tietoverkon turvaamisessa yleensäkin? . Ohjelmallisuuden aiheuttamien haasteiden lisäksi turvaamiselle muodostuu ominaispiirteitä siitä, että www-palvelin tarjoaa (ja päivittää) tärkeitä tietoaineistoja. Tietokannat ja viralliset kopiot sivustoista on syytä säilyttää turvallisella isäntäkoneella (varmuuskopioinnin lisänä). Muut periaatteet ovat lyhyesti sanottuna seuraavat:

  • palvelimen eristäminen suojausta tarvitsevasta verkosta.
  • tiukat rajat sille, mitä laitteita, tiedostoja ja muita resursseja palvelinohjelmisto voi käyttää -- samoin sovelluksen ohjelmistolle. (Näiden sisältämien turva-aukkojen vaikutuksesta on puhe edellä.)
  • todennus- ja salaustekniikat.
  • lokitietojen keruu.

Lisätietoja palvelinten turvaamisesta saa esim. kirjasta [[ [ Alle02 ] ]]. Abstraktimpi mutta varsinaisiin seittisovelluksiin asti ulottuva on Kienzlen ja Elderin artikkeli (2001)? , joka perustuu malliratkaisuihin ('patterns')? . Melko konkreettisia seittisovellusten turvaohjeita löytyy InfoSecMagazinen sivuilta? .

Jos yritys ei halua sijoittaa seittipalvelunsa turva-auditointiin ja siihen liittyvään tunkeutumistestaukseen, se voi hyödyntää näitä palveluja automatisoimaan pyrkiviä tuotteita. Lisäksi voidaan ottaa käyttöön nimenomaan seittipalvelua varten säädetty palomuuri. Näiden kolmen lähestymistavan vertailua ja tuotteiden esittelyä löytyy Network Magazinen numerosta 2/2005? .

-- JukkaKoskinen?

SivuTiedotLaajennettu edit

Vaativuus Perus
Valmius Valmisteilla
Tyyppi Ydin
Luokitus Uhkat
Mitä Luottamuksellisuus
Miltä Ihmisetön uhka
Missä Organisaatio
Kuka Tite-ammattilainen
Milloin Ennakolta
Miksi Hyvä tapa
Print version |  PDF  | History: r2 < r1 | 
Topic revision: r2 - 26 Sep 2010 - 11:10:36 - MarkoHelenius
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback