Turvalise tarkvara arendamine UMLsec abil
Liina Kamm, Tartu Ülikool 2004
Sisukord:
Tiitel
Sisukord
Sissejuhatus
UML
UMLsec
Näidisülesanne
Kokkuvõte
English summary
Allikad

PDF täisversioon



Tagasi kodulehele

Eelmine: Sisukord

Järgmine: 1. UML

Sissejuhatus

Tänapäeva ühiskond ja majandus sõltuvad üha rohkem võrguinfosüsteemidest. Infosüsteemid on omavahel ühendatud Interneti kaudu, mis on küll väga efektiivne ja kiire ühendustee, kuid kättesaadav ka mitteusaldusväärsetele kasutajatele. Ründeid on võimalik läbi viia ohutust kaugusest ja anonüümselt. Seetõttu on väga oluline, et veebipõhiste infosüsteemide ja serveritarkvara turvalisus oleks tagatud ning et tundlikku informatsiooni hoitaks ja edastataks turvaliselt.

Turvaliste tarkvarasüsteemide korrektne arendamine on keeruline ja veaohtlik. Turvalisusnõuetega peaks arvestama juba süsteemiarenduse varajastel etappidel, sest on tõenäoline, et turvaprotokolli lisamisel peaaegu valmis tootesse jääb mõni turvakriitiline aspekt kahe silma vahele ning muudab süsteemi rünnetele avatuks. Internet, mis on suures osas kontrollimatu, muudab turvaprotokollide kohta käiva ründealase informatsiooni igaühele kättesaadavaks.

Praktikas ei ole probleemiks mitte eelnevalt väljatöötatud turvaprotokollide murdmine vaid pigem nende rakendamisel tehtud vigade ärakasutamine. Seetõttu on murettekitavaks just fakt, et turvakriitiliste süsteemide arendajad ei oma alati tugevat tausta arvutiturvalisuses. Nii võib RSA algoritmi kasutamisel saada süsteemile saatuslikuks just kahe suure suvalise algarvu leidmise viis. Liiatigi on turvakriitilistele süsteemidele iseloomulik, et ühel süsteemi töötamise korral õnnestunud rünne tõstab vea ilmnemise tõenäosust sama turvakomponendiga süsteemi igal järgneval töökorral. Taas on võimalik Interneti kaudu levitada teavet antud süsteemi nõrkadest kohtadest. Lisaks sellele saavad turvalisusega tegelevad arendajad väga vähe tagasisidet, kuna ettevõtted hoiavad firma maine kahjustamishirmus turvalisuse murdmise kohta käivat infot salajasena. Nii on võimalik erinevate süsteemide puhul teha sarnaseid vigu.[3]

Süsteemiarenduses ei piisa usaldusväärsete komponentide ehitamisest, turvalisuse nõuetes tuleb arvestada nii süsteemisiseste kui süsteemidevahelise seostega. Süsteem on täpselt nii turvaline kui tema kõige nõrgem osa.[3]

Suurte multifunktsionaalsete süsteemide arenduseks eksisteerib erinevaid meetodeid, kuid ükski neist ei aseta suurt rõhku turvalisusele. Seetõttu oleks vaja tugevat metoodikat, mis toetaks turvalist tarkvaraarendust. Käesolevas töös tehakse lühike ülevaade keele UML diagrammidest ja laiendusmehhanismidest ning kirjeldatakse selle laiendust UMLsec, mis on arendatud Jan Jürjensi eestvedamisel ning tegeleb turvalisusprobleemiga.