Az Európai Szociális Alap támogatásával A kétciklusú képzés bevezetése a magyar felsıoktatásban a természettudományi szakokon. Alkalmazkodás a munkaerıpiac igényeihez.
Nyelvi lektor: Zsák Judit
Tartalomjegyzék 1. 2.
Bevezetés .....................................................................................................................................4 Az Internet története.....................................................................................................................5 Kronológia .......................................................................................................................................5 Az Internet születése ......................................................................................................................14 A magyarországi Internet története................................................................................................17 3. A jelenlegi szolgáltatásokról röviden.........................................................................................18 A szolgáltatások felépítése.............................................................................................................19 Kliens-szerver alapú hálózatok ......................................................................................................21 Egyenrangú hálózatok....................................................................................................................21 A gyakrabban használt internetes szolgáltatások rövid áttekintése ...............................................22 World Wide Web ...........................................................................................................................26 Elektronikus levelezés....................................................................................................................27 Biztonságos levelezés ................................................................................................................28 IRC, Talk, webchat ....................................................................................................................36 4. Jelszavak ....................................................................................................................................36 5. Kommunikáció az Interneten .....................................................................................................42 Kapcsolódás az Internetre ..............................................................................................................42 IP-címek, domain nevek ................................................................................................................43 Az Internet címek.......................................................................................................................43 IP címek és domain nevek használata........................................................................................45 Domain Name szerverek (DNS) ................................................................................................46 A TCP/IP protokoll és az Internet..................................................................................................47 A protokollok kapcsolata ...........................................................................................................47 A TCP rétege..............................................................................................................................48 Az IP rétege................................................................................................................................49 Néhány szó az UDP és ICMP protokollokról ............................................................................49 TCP/IP szintek ...........................................................................................................................50 Mik a portok? .............................................................................................................................52 6. Tőzfalak .....................................................................................................................................54 7. Ki és/vagy mi ellen kell védekeznünk?......................................................................................55 Véletlenek, (a)vagy hozzá nem értés .............................................................................................55 Ártó szándékú programok..............................................................................................................55 Ártó szándékú emberek..................................................................................................................56 Megjegyzés: ne felejtsük el, ellenfeleink java azok közül az emberek közül kerül ki, akik tudnak olvasni, így nem lehetetlen hogy ezeket a sorokat is olvassák.A támadások fajtái .......................57 Biztonsági rendszerezések .............................................................................................................57 Számítógépes és hálózati támadások egy lehetséges rendszerezése ..............................................62 8. Titkosítás, Cenzúra, Anonimitás................................................................................................66 A titkosítás alapfogalmai ...............................................................................................................66 Mire használható a titkosítás? ....................................................................................................66 Titkosítási modell.......................................................................................................................67 Klasszikus rejtjelezések .................................................................................................................67 Egyábécés rejtjelezések..............................................................................................................67 Caesar-féle rejtjelezés ................................................................................................................67 k-eltolás......................................................................................................................................67 Általános egyábécés rejtjelezés..................................................................................................67 Vigenére-féle rejtjelezés ............................................................................................................68 Felcseréléses rejtjelezés .............................................................................................................68 Számítógépes titkosítási módszerek...............................................................................................68
2/102
Adattitkosítási szabványok ........................................................................................................68 DES ............................................................................................................................................69 Tripple DES (3DES) ..................................................................................................................69 Blowfish .....................................................................................................................................69 A kulcs-szétosztás problémája ...................................................................................................69 Nyilvános kulcsú titkosítás ............................................................................................................70 Alapelvek ...................................................................................................................................70 Diffie-Hellman kulcs-csere ........................................................................................................70 RSA algoritmus..........................................................................................................................70 Bizalmi háló ...............................................................................................................................71 Kulcs-aláírási összejövetel.........................................................................................................71 Kulcs szerverek, kulcshitelesítı autoritás ..................................................................................71 A kétkulcsos titkosítás helyzete a világban....................................................................................72 Digitális aláírás (Digital Signature) ...........................................................................................72 Üzenet kivonat (Message Digest) ..............................................................................................72 Titkosítási algoritmusok összehasonlítása .....................................................................................72 Szteganográfia................................................................................................................................73 9. Problémás webezés ....................................................................................................................73 Sütik ...............................................................................................................................................73 A https-rıl röviden .........................................................................................................................75 Jelszavak és a web..........................................................................................................................78 Elıugró és blokkolt ablakok ..........................................................................................................79 10. Alternatív védelem: a TCPA................................................................................................82 Miért jött létre a TCPA?.................................................................................................................87 Hogyan mőködik a TPM? ..............................................................................................................96 Jövıképek...................................................................................................................................97 11. Hová forduljunk? Felügyeleti szervek, címek ...................................................................100 Irodalomjegyzék...............................................................................................................................101
3/102
1. Bevezetés Az internetes biztonságot nagyon sokféle aspektusból vizsgálták, vizsgálják már hosszú ideje. A probléma azért oly népszerő napjainkban, különösen Magyarországon, mivel az Internet-használók, „internetezık” tábora egyre szélesebbé válik. A szakmai felhasználók, informatikai guruk mellett más tudományterületek mővelıi is megjelennek a „netezık” között, sıt, egyszerően csak információt keresı felhasználók, vagy csak a kikapcsolódni, szórakozni vágyók csoportja is megjelent a hálózat használóinak körében. Megfigyelhetı, hogy az Internetet mint eszközt használók átlagéletkora egyre alacsonyabb, sıt, a fiatalabb korú népesség körében messze népszerőbb az Internet, és sokkal nagyobb arányban használják is, mint az idısebb generációk körében. Sokkal gyakrabban találkozni az Interneten böngészı tizenévessel, mint olyan nyugdíjassal, aki éppen netbanki tranzakciókat, átutalásokat bonyolít nyugdíját kezelı pénzintézeténél. Érdekes a korfa a szolgáltatások népszerőségének viszonylatában is. Összegezve és durván leegyszerősítve: minél fiatalabb a Net-et használó, annál többféle szolgáltatást használ. Ebben persze sok kockázat is rejlik. Minél fiatalabb, vagy minél kevésbé kötıdik az informatikához a „netezı”, annál inkább ki van téve a legtöbb esetben az ismerethiányból adódó veszélyeknek. Ennek következtében maga az Internet használata számos elıvigyázatosságot követel. Végsı soron mégiscsak arról van szó, hogy saját adataink, számunkra fontos információk veszélynek lehetnek kitéve, illetve sok bosszúság forrása lehet a nem körültekintı hálózatos jelenlétünk. Ebben a jegyzetben ezeket a kérdéseket igyekszünk körüljárni, - a hálózati világ folyamatos változása és terjedelmi korlátok miatt, - a teljesség lehetısége nélkül. Igyekszünk felhívni a figyelmet azokra az alapvetı veszélyekre, amelyek hálózati környezetben felmerülhetnek. Próbálunk rávilágítani olyan, talán sokak számára nem teljesen nyilvánvaló veszélyforrásokra is, amelyek ránk leselkednek, amint kilépünk a Világhálóra. Az információ hatalma eszerint azt is jelenti, hogy a veszélyekkel tisztában lenni annyi, mint elkerülni és kivédeni tudni a biztonsági rizikókat.
4/102
2. Az Internet története Kronológia Nézzük meg röviden évszámok alapján, hogyan is indult világhódító útjára az Internet! A Szputnyik-1
A szovjet Szputnyik-1 volt a Föld elsı mőholdja, és az a elsı őreszköz, melyet a világőrbe juttattak. 1957. október 4én állították pályára Bajkonurból az R7-es hordozórakétával (egyébként ezt a rakétát nyugaton SS-6-ként ismerték, különössége abban rejlett, hogy ez volt az elsı szovjet interkontinentális rakéta). Alacsony pályája miatt már egy hónap után megsemmisült a légkörben. A Szputnyik-1 indításával kezdıdött az őrkorszak. 1958. január 31 'Explorer-1' négy fokozatú Jupiter rakétával átmérıjét mindössze 16 cm-re tervezték 1958. október 11. Atlas hordozórakéta – az USA elsı interkontinentális rakétája. A mőholdakkal, és interkontinentális rakétákkal lehetségessé válik a föld tetszıleges pontjára eljuttatni egy atomtöltetet. Ez azzal a kockázattal jár, hogy a jól megválasztott célpontok megsemmisülése után a katonai erık közti kommunikációs vonalakat megbénítva, néhány bázist megsemmisítve, az egész hadsereg ütıképességében zavart lehet okozni.
5/102
Ezzel kapcsolatban két projektet támogatott a katonai költségvetés. Az elsı volt a SAGE, amely fıként a radaros megfigyelıpontok, illetve idıjárásfigyelı központok összeköttetését célozta meg, és az ARPANET, amely egy hibatőrı országos mérető hálózatnak indult, amit a katonaság vész esetén használatba vehet. ’60-as évek A Truman adminisztráció a hidegháború idején létrehozza a DEW (Defence Early Warning) -ot. Védelmi célra kerül kidolgozásra az ARPANET (Advanced Research Project Agency) koncepciója. 1969. szeptember 1. Az ARPANET-en bekötésre került az elsı node (csomópont). UCLA (University of California Los Angeles) 1969. október 1. A második ARPANET node a Stanford Kutatóintézetben.
1969. december
6/102
1971 Az ARPANET-en 15 node található. Köztük neves amerikai egyetemek és a NASA.
1972 Az ARPANET-en egyszerő e-mail (levelezı) programok mőködnek, majd megjelenik az FTP szolgáltatás fájlok továbbküldésére. Az ARPANET elsı nyilvános bemutatója ez év októberében, Washingtonban történt meg. 29 node kapcsolódott.
7/102
1973 Az ARPANET elsı nemzetközi kapcsolatai. Angliában és Norvégiában.
1974 Az Intel cég 8080-as mikroprocesszorának megjelenése.
8/102
1975 Az elsı Personal Computer MITS Altair 8800. A számítógép 256 byte memóriával rendelkezett, de billentyőzettel nem. Gary Kildall és Torodes megírja az Altair gépekhez a CP/M operációs rendszert, a késıbbi DOS elıdjét.
9/102
1976. Július
10/102
1977. március 111 hoszt az ARPANET-en.
11/102
Hogy érzékeltessük, mit is jelentett – és milyen volt – a számítástechnika akkor, lássunk néhány géptípust a fenti ábráról:
1978. március Az Internet Protokoll születése: az NCP protokoll szétválik TCP-re és IP-re. 1983 Az Internet születése: Az ARPANET és a Defense Data Networks megkezdi a TCP/IP használatát. A MILNET katonai hálózat leválik az ARPANET-rıl. (Az ARPANET-en a szétválást követıen 68 node maradt, de ez év szeptemberére már 562 node csatlakozott.) Ez év júniusában a NOVELL NetWare elsı bemutatóját tartotta Houstonban.
12/102
1987 1990 Tim Berners-Lee, angol atomfizikus Svájcban, a CERN kutatóközpontjában létrehozta az elsı World Wide Web-et (WWW). 1991 A CERN publikálja a WWW definícióit az Interneten. 1992. június 1000000 hoszt az Interneten. Mint számos fontos technikai újítás, az Internet is lényegében hadi fejlesztésként indult. A rendszert jó harminc éve megálmodó és kikísérletezı amerikai szakemberek aligha sejtették, hogy mővük még az évezred vége elıtt - globális hálózattá duzzadva - forradalmasítja az információkezelés és a felhasználás módját. Mintegy harminc évvel ezelıtt a RAND Corporation, az Egyesült Államok elsı számú hidegháborús agytrösztje, különös stratégiai problémával találta magát szemben. Hogyan tudják majd az amerikai kormányszervek egy esetleges nukleáris háború után is fenntartani a kommunikációt? A RAND felismerte, hogy egy esetleges atomháború utáni Amerikának egy olyan vezérlı-szabályzó hálózatra volna szüksége, amely összeköti egymással a városokat, az államokat és a bázisokat. De bármilyen erıteljesen védelmezik is a hálózatot, a kábeleket és a kapcsoló-berendezéseket nem lehet megóvni az atombombától. Egy esetleges nukleáris támadás a legtökéletesebb hálózatot is darabokra zúzná. Hogyan lehet megoldani a hálózat vezérlését és ellenırzését? Bármilyen felügyeleti központ vagy hálózati fellegvár egyértelmő és közvetlen célpontot jelentene az ellenséges rakéták számára. Legelıször éppen a hálózat központja semmisülne meg. A RAND hosszasan töprengett e fogas kérdéseken, természetesen a legnagyobb katonai titoktartással kezelve az ügyet, majd egy merész megoldással állt elı. A javaslatot - mely Paul Baran vezérkari tiszt agyából pattant ki - 1964-ben hozták nyilvánosságra. Az elsı és legfontosabb alapelv, hogy a hálózatnak semmiféle központja nem lehet. Továbbá, a kezdetektıl fogva úgy kell mőködtetni, mintha darabokból állna. Az elvek egyszerőek voltak. A hálózatot mindenkor megbízhatatlannak kell feltételezni, és az elejétıl fogva úgy tervezni, hogy felülmúlja saját megbízhatatlanságát. A hálózat minden egyes csomópontja a többivel egyenlı értékő, így önálló jogon alkothat, küldhet és fogadhat üzeneteket. Maguk az üzenetek csomagokra oszlanak, és minden egyes
13/102
csomagnak külön címe van. Minden csomag egy adott forráscsomópontnál indul, és egy adott célcsomópontnál ér véget az útja, máskülönben teljesen egyéni utakon haladhat végig a hálózaton. Az, hogy egy üzenetcsomag milyen pályát jár be, lényegtelen, csak a végeredmény számít. Alapjában véve a csomagok, akárcsak a gumilabdák, csomópontról csomópontra lökıdnek, többé-kevésbé célirányosan, mígnem elérkeznek rendeltetési helyükre. Így az sem számít, ha a hálózat nagy része megsemmisül, hiszen a csomagok továbbra is mozgásban maradnak a még ép csomópontok között. Ez a véletlenszerő kommunikációs rendszer a hagyományos értelemben talán “nem tőnik hatékonynak” - például a telefonnal összehasonlítva -, ám annál megbízhatóbb. A hatvanas években ennek a decentralizált, bombabiztos, csomagkapcsolt hálózatnak a tervével foglalkozott a RANDen kívül a MIT (Massachusets Institute of Technology) és az UCLA (University of California Los Angeles) is. Az elsı ilyen elvek alapján mőködı kísérleti hálózatot a nagy-britanniai Országos Fizikai Laboratórium (National Physical Laboratory) állította fel 1968-ban. Röviddel ezután a Pentagon Magasszintő Kutatásokat Támogató Szervezete, az ARPA (Advanced Research Projects Agency) egy nagyobb szabású projektet kezdeményezett az Egyesült Államokban. Elképzeléseik szerint a hálózati csomópontokat - akkori mércével mérve - nagy sebességő szuperszámítógépek alkották. Ezeknek a ritka és értékes gépeknek egy olyan masszív hálózatra volt szükségük, amelyen hatékonyan lehetett bonyolítani az országos kutatási és fejlesztési terveket. Az elsı ilyen csomópontot 1969 ıszén állították föl az UCLA-n. Ugyanezen év decemberében már négy csomópont mőködött az alhálózaton, melyet fı támogatója, a Pentagon után ARPANET-nek kereszteltek. A négy számítógép külön e célra létesített, nagy sebességő közvetítıvonalakon át továbbította az adatokat. A számítógépeket távirányítással, más csomópontokról is lehetett programozni. Az ARPANET-nek köszönhetıen a tudósok és kutatók a távolból is megoszthatták egymással számítógépes eredményeiket. Nagyon hasznos szolgáltatás volt ez, mivel a hetvenes évek elején igen drága volt a gépidı. 1971-ben tizenöt csomópont mőködött az ARPANET-en, 1972-re pedig harminchétre nıtt a csomópontok száma. A hálózat mőködésének második évében azonban egy különös dologra derült fény. Az ARPANET használói az elvileg csupán számítógépes kommunikációra szolgáló hálózatot idıközben egy közhasználatú, nagy sebességő, a szövetségi kormány által támogatott elektronikus postává alakították. Az ARPANET-en többé nem számítógépes információcsere zajlott. Ehelyett hírek és személyes üzenetek árasztották el a hálózatot. A kutatók közös projektek kiépítésére használták, elküldözgették egymásnak kutatási eredményeiket, vagy egyszerően csak egymással beszélgettek. Az emberek saját account-ot és személyre szóló e-mail címet szereztek az ARPANET számítógépekhez. Mindenki nagy elıszeretettel használta privát kommunikációra az ARPANET-et, jóval nagyobb lelkesedéssel fogadva ezt a szolgáltatást, mint a többit. Nem sokkal késıbb megszületett az ARPANET levelezési listája is, az az új információszóró technika, amelynek segítségével ugyanazt az üzenetet egyszerre több hálózati felhasználónak is el lehetett küldeni. Érdekes módon az elsı jelentısebb levelezési lista az SF-LOVERS volt, amelyet a tudományos fantasztikus irodalom rajongói hoztak létre. A hetvenes évek folyamán az ARP-hálózat egyre gyarapodott. Decentralizált felépítése nagyban elısegítette terjedését. Az addigi hagyományos vállalati számítógép-hálózatokkal ellentétben az ARPANET-be bármilyen számítógépet be lehetett kötni. A lényeg csak az volt, hogy a gép ismerje az új, anarchikus, csomagkapcsolt hálózat közvetítınyelvét, és ettıl kezdve a márkája, a tartalma, sıt, még tulajdonosának a kiléte sem számított. Az ARPA eredeti kommunikációs szabványrendszere az úgynevezett NCP, avagy Network Control Protocol volt, de a technikai fejlıdés elırehaladtával az NCP-t felváltotta egy magasabb szintő, kifinomultabb modell, a TCP/IP. A TCP, avagy Transmission Control Protocol az üzeneteket keletkezési helyükön csomagfolyamokká alakítja, majd újra üzenetté rendezi ıket a célállomáson. Az IP, avagy Internet Protocol a címzésért felel, vagyis azért, hogy a csomagok többféle csomóponton és többféle hálózaton haladjanak keresztül, melyek a legkülönfélébb szabványrendszerek alapján mőködnek - az ARPA kezdeti NCP szabványa mellett például ott van az Ethernet, az FDDI vagy az X.25. 1977-tıl kezdve a különbözı hálózatok a TCP/IP segítségével csatlakoztak az ARPANET-hez. Maga az ARPANET viszonylag szigorú ellenırzés alatt állt, egészen 1983-ig, amikor levált róla a MILNET elnevezéső katonai alhálózat. Ám a TCP/IP az összes hálózatot összekötötte. Végül az ARPANET fokozott terjeszkedése ellenére egyre kisebb területté vált az összekapcsolt számítógéprendszerek rohamosan növekvı galaxisában. Az Internet születése A hetvenes és nyolcvanas években egyre több társadalmi csoportban terjedt el a számítógépek használata, és ezeket a gépeket könnyőszerrel lehetett csatlakoztatni a hálózatok hálózatához, az Internethez. A TCP/IP széles körő alkalmazásának eredményeként az Internet egész hálózatokat kebelezett be, amelyek meglehetıs összevisszaságban kapcsolódtak a digitális hálózatkomplexumhoz. Mivel a TCP/IP-hez bárki hozzájuthatott, ráadásul az alapfelépítés decentralizált és természetébıl adódóan eléggé anarchikus volt, nem lehetett megakadályozni, hogy az emberek valamilyen úton-módon be ne furakodjanak a rendszerbe. Igazság szerint azonban senki nem akarta korlátok közé szorítani ezt a burjánzó hálózatrendszert, amelyet összefoglalóan Internetként ismerünk.
14/102
Az Internethez való csatlakozás az egyéni csatlakozónak meglehetısen olcsó volt, hiszen minden csomópont függetlenül mőködött, önálló költségvetéssel és technikai feltételekkel. Minél több, annál jobb: a telefonhálózathoz hasonlóan a számítógép-hálózat is annál értékesebbé vált, minél több felhasználót és forrást olvasztott magába. 1984-ben az amerikai Nemzeti Tudományos Alap, az NSF (National Science Foundation) a tettek mezejére lépett. Az új NSFNET hihetetlen léptékő technikai fejlesztésbe kezdett: modernebb, hatékonyabb szuperszámítógépeket csatlakoztatott egymáshoz, masszívabb és gyorsabb vonalakkal, melyeket újra meg újra fejlesztettek és bıvítettek, elıször 1986-ban, majd 1988-ban és 1990-ben. Hamarosan más amerikai kormányhivatalok is megjelentek a színen: a NASA, a Nemzeti Közegészségügyi Hivatal (National Institutes of Health) és az Energiaügyi Minisztérium (Energy Department), és mind egy-egy digitális alrendszert hozott létre az Internet birodalmán belül. A hálózatok hálózatának egyre szaporodó csomópontjait különbözı alcsoportokra osztották hierarchikusan. A külföldi számítógépeket - és néhány amerikait is - a használók kérésére földrajzi elhelyezkedésük alapján jelölték meg. A többit a hat fı Internet-ágazat szerint csoportosították: gov, mil, edu, com, org és net. A “gov” a kormányzati, a “mil” a katonai, az “edu” pedig az oktatási intézményeket jelölte, melyek természetesen elsıként születtek meg, mivel az ARPANET eredetileg a nemzetvédelmi kutatások technikai fejlesztésére jött létre. A “com” ezzel szemben a “kommerciális”, kereskedelmi intézményeket jelölte, melyek viharos erıvel törtek be a hálózatba, a nonprofit szervezetekhez (“org”) hasonlóan. A “net” domain-be tartozó számítógépek pedig (kezdetben) a hálózatok közti átjárást biztosították. Az ARPANET 1989-ben formálisan megszőnt: áldozatul esett saját szenzációs sikerének. A felhasználók szinte észre sem vették a változást, hiszen az ARPANET funkciói nemcsak tovább éltek, de jelentısen javultak is. A TCP/IP szabványrendszerét ma már globálisan alkalmazzák a számítógépes hálózatokban. Manapság több millió ember használja ezt a mindent felölelı, gigantikus anyahálózatot. A tudósok körében különösen népszerő az Internet, amely a XX. század végének egyik legjelentısebb tudományos eszköze. Az Interneten keresztül könnyedén lehet szakmai kapcsolatokat létesíteni, és elérhetık a legspeciálisabb adatok is, ami hihetetlenül meggyorsította a tudományos kutatások fejlıdését. A kilencvenes években az Internet látványosan tovább növekszik. Gyorsabban terjed, mint a mobiltelefon vagy a fax. 1991-ben az Internet havonta húsz százalékkal bıvült. A TCP/IP-vel közvetlen összeköttetésben álló gépek (hosztok) száma 1988 óta minden évben megduplázódott. Az Internet fokozatosan kivonult eredeti bázisáról, a hadászati és kutatóintézményekbıl, hogy meghódítsa az általános iskolákat és a gimnáziumokat, valamint a közkönyvtárakat és a kereskedelmi szektort. A kilencvenes évek végén már az eredeti kommunikációs szabvány, az IP megújításán munkálkodtak az egyre inkább megnövekedett igények, és a sávszélesség minél jobb kihasználása végett. Szinte évrıl évre módosították az egyik legismertebb és legtöbbet használt szolgáltatás, a WWW által használt leíró nyelvet, a HTML-szabványt a folyamatosan bıvülı igények miatt. A fejlıdés tehát napjainkban is töretlen, bár úgy tőnik, a hangsúly áttevıdik a technikai megvalósítások szintjérıl a szolgáltatásokra, ahogyan az Internet is egyre több embernek jelenti már a hétköznapok valóságát, s ez még inkább így lesz az elkövetkezendı idıkben. Az Internetet két fontos jellemzıje emeli ki az átlagos hálózatok közül. 1. A hibatőrés. Az Internet csomópontokból és végpontokból áll. A csomópontokat általában intelligens eszközök alkotják, e célra beállított számítógépek, vagy célhardverek, az ún. routerek. A csomópont lényege, hogy több kapcsolattal rendelkezik, és így egy-egy kapcsolat kiesésekor képes a forgalmat másfelé irányítani, illetve átmenı forgalmat is képes átvenni a kiesett kapcsolatok áthidalására. A számítógép hálózatok legegyszerőbb összeköttetése lineárisan lehetséges. Ebben az esetben a két végpontnak egy kapcsolata van, a köztes hálózatoknak pedig kettı. Ekkor azonban a hálózat nem hibatőrı, ha pl. a 2. hálózat kiesik, nem csak a 2-es nem tud kommunikálni a hálózat többi részével, de az 1-est is elválasztja a hálózat többi részétıl.
Persze a nagyobb hálózatok topológiailag nem írhatóak le tisztán egy modellel. A következı példánkon jól látszik, hogy az egyes hálózatok más-más szinten állnak, az 1,3,6,7,8,9,10,12,13 végpontok, míg a 2,4,5,11 csomópontok.
15/102
A teljes hálózatról elmondható, hogy bár nem lineáris, nem hibatőrı, hiszen bármelyik csomópont kiesésével két részre esik szét a hálózat.
Itt már egy olyan hálózatot látunk, amely hibatőrı, ugyanakkor topológiailag változatos felépítéső. Egyes hálózati kapcsolatok kiesésekor - jó esetben - egy hálózat sem veszti el a kapcsolatot a többivel.
A nagyobb útvonalválasztási kérdéseket az Interneten célhardverrel, és ennek megfelelıen célszoftverekkel oldják meg, de a kisebb csomópontokon sikeresen alkalmazhatóak a PC-s megoldások is. Hibás útvonalválasztás esetén egy ilyen bonyolultsági modellben lehetséges a csomagok végtelen hurokba kerülése, ami azt jelentené, hogy a csomagok örökké ott keringenek az eszközök között. Hogy ez ne forduljon elı, az IP csomagok fejléce tartalmaz egy TTL mezıt (time to live), ami alapértelmezésben 64. Ez a szám minden csomóponton történı áthaladás után csökken. Így a 64. eszköz eldobja a csomagot és nem küldi tovább (tehát hiba nélkül is elıfordulhat, hogy nem érnek el a csomagjaink egy géphez, ha az 64 csomópontnál távolabb esik.) Tehát az Internet útvonalválasztási mechanizmusát (routing) a csomópontok beállításai reprezentálják. Nincs olyan központi router, amely minden információt tartalmaz. Saját útvonalváasztási tábláinkat (routing table) elvileg persze a végtelenségig bıvíthetjük, ebben az esetben azonban követnünk kell a változásokat is. A dinamikus útvonalválasztásnak saját protokollja és programjai vannak. A két legelterjedtebb protokoll a RIP és az OSPF.
16/102
Linuxon általában a routed (route daemon) programot használják. Ezen programok lényege, hogy kommunikálnak a többi csomóponttal. Átveszik tılük az útvonalválasztási információkat és hirdetik sajátjaikat is. A másodlagos elérések plusz pénzösszegeket jelentenek, és gyakran gazdasági okok miatt nem valósulnak meg. Olyan szituációk is adódhatnak viszont, amikor kötelezik az üzemeltetıket a több kapcsolatra. A magyarországi internetes pontos idı központ pl. (a KFKI-ban – Központi Fizikai Kutató Intézet) ntp date, time, daytime szolgáltatásaival kötelezett a 3 különbözı átviteli közegen zajló kapcsolatra. Ezek esetünkben egy T1-es LAN kapcsolat (Ethernet), egy ADSL kapcsolat (ppp, vagyis point-to-point) és egy mőholdas kapcsolat. Sajnos, az országban az a gyakori, hogy a cégek vagy nem rendelkeznek másodlagos kapcsolattal, vagy a másodlagos kapcsolat egy telefonos betárcsázásos rendszer. Így nem részesülnek a terheléseloszlás elınyeibıl, illetve a telefonos kapcsolat felépítési ideje miatt a kapcsolatváltáskor rövid kiesések jelentkeznek. Ez kivédhetı LAN-os módszerekkel. Az Ethernet timeout ugyanis 5 perc. LAN-os megoldásokkal tehát ennyi idı biztosítható az átállásra (azaz a kliensek ez alatt az 5 perc alatt nem kapnak hibaüzenetet, csak várakoznak). (Az Ethernet timeout a korábbi Arcnet szabványból került átvételre, felkészülve a túlterhelt és lassú hálózatokra, illetve az akkori technika TPD (Time Propagation Delay) -ire. Az útválasztás korrekt megvalósítása tehát döntı fontosságú lehet egy hálózat számára. 2. Szabványosság Nem véletlen, hogy a fenti ábrákon nem számítógépeket, hanem hálózatokat látunk. Az Internetet elsısorban hálózatok összeköttetésére találták ki. Bár jelenleg az IP (Internet Protokoll) igen elterjedt a helyi hálózatokon is, nem minden hálózatban ezt (vagy nem csak ezt) használjuk. Ilyenkor pl. protokoll fordítót alkalmaznak a hálózat internetes átjáróján. Az átjáró (gateway) olyan számítógép, amelyen keresztül egy helyi hálózat az Internettel kommunikál. Ebbıl a szempontból nézve az Internet tulajdonképpen pont-pont összeköttetések sokasága, amelyek a helyi hálózatokat kötik össze. A jelenlegi internetes szabvány protokoll az IPv4 (Internet Protokoll 4. verzió), de ezzel párhuzamosan már használható az IPv6 (Internet Protokoll 6. verzió) is. Mivel az IPv6 modelljében az útválasztás és néhány egyéb apróság jobban megoldott, igyekeznek kedvezni elterjedésének. Ingyen juthatunk például IPv6-os IP címekhez, ami az IPv4-es címekre sajnos már régen nem igaz (szintén az IPv6-os protokoll mellett szól, hogy lassan elfogynak az IPv4-es protokoll címek). Sajnos, IPv6 kizárólagos, alapértelmezett protokollként csak ott használható, ahol újabb, erre felkészített hálózati eszközök találhatók, egyébként tunnelt (alagutat - az IPv6-ot más protokoll fölött, pl. IPv4 fölött) kell használnunk. A fı célkitőzések Az Internet tehát egy katonai finanszírozású, és a katonai vagy civil katasztrófák esetén használatba vehetı hálózati tervezetként indult, az amerikai egyetemek bevonásával. Természetesen ahogy egyre több egyetem kapcsolódott a kísérleti jelleggel mőködı hálózatba, egyre inkább bebizonyosodott, milyen hasznos egy gyors és viszonylag olcsó kommunikációs lehetıség a kutatásban, az oktatásban. Így vált az Internet a katonai kommunikáció helyett egyre inkább egy kutatói hálózattá (késıbb a MILNET – a katonai hálózat – ki is vált az Internetbıl ). De már a kezdet kezdetén is bekapcsolódtak a hálózatba egyes cégek, fıként a számítógép gyártók, illetve céges érdekeltségő kutató laboratóriumok. Hasznosnak bizonyult a hálózat a nagyobb cégek részegységei közötti kapcsolattartásra is. Az egyetemek, kutatóintézetek, könyvtárak után így sorra kezdtek bekapcsolódni a különféle világcégek is a hálózatba. Az Internet kezdett üzleti hálózattá válni. Egyre több és több hálózat kapcsolódott össze egyetlen hatalmas hálózatba, az Internetbe. Megjelentek az Internet szolgáltatók, és az Internet betört a magánszférába is. Így vált az Internet azzá, ami ma is, egy globális hálózattá. Az internetes biztonság kérdése az Internet fejlıdésével párhuzamosan változott. A legelsı idıkben a biztonság csak a megbízhatóságot, a hibatőrést jelentette, a kódolási és eredetiséget igazoló eljárások nem képezték a modell részét, azon kívül kerültek megvalósításra, és a hálózat csupa “megbízható” pontból állt. A kutatói hálózat szempontjából még mindig elég megbízható pontokról beszélhetünk, és az információk titkossága sem volt olyan fokú, mint a katonai alkalmazásnál. Az üzleti szféra betörésével és a széleskörő elterjedéssel kezdett megváltozni a helyzet. A magyarországi Internet története A magyar kutatók a rendszerváltás utáni második évben, 1991 decemberében jutottak hozzá szélesebb körben az Internethez. A kultusztárca is bekapcsolódott a hálózatfejlesztés finanszírozásába, és 1994-ig az Informatikai
17/102
Infrastruktúra Fejlesztési bizottság (IIF) közel 1 milliárd forintos költségvetési támogatása mellett a project komoly külföldi pénzeket is kapott: a Világbank 6,5 millió dollárt, a PHARE 1,3 millió ECU-t szánt az elsısorban a tudományos szférát felölelı magyarországi Internet-hálózat létrehozására. Az IIF a közel 1 milliárd forintos hazai költségvetési támogatásból 137 milliót fizetett vonalbérletre, 70 milliót adatbázis-építésre és "gopher"-fejlesztésre, 250 milliót az Internet-gerinchálózat fejlesztésére, 600 milliót router-ek (útválasztó berendezések) és szerverek vásárlására, 130 milliót a regionális központok mőködtetésére. 1994 végéig 420-ra nıtt a hálózathoz csatlakozó magyar intézmények köre (közülük 320 volt az akadémiai, 40 a nonprofit intézmény, a többi gazdálkodó szervezet), a végpontok száma elérte a 6800-at. A területi központok mellett létrejöttek az ágazatiak is, együttes számuk 23-ra bıvült. Ekkoriban naponta már közel ezer elektronikus levelet továbbítottak a magyar elektronikus hálózaton. Az IIF központi gépén mőködı 60 adatbázis szolgáltatásait több mint 300 bejelentett felhasználó vette igénybe, ık évente együttesen tízezerszer kutakodtak az információs tárakban. 1995-re az IIF pénzforrásainak jó része elapadt, majd a "nemzeti" jelzı felvétele után (NIIF) új szponzorokat talált: a Felzárkózás az Európai Felsıoktatáshoz Alapot (FEFA), valamint a Népjóléti Minisztériumot. A kilencvenes évek végén az akadémiai hálózat fejlesztése mellett elindult a közoktatás internetes csatlakoztatásának programja, a Sulinet is. Számos általános és középiskola, gimnázium kapott eszközt és lehetıséget arra, hogy csatlakozhasson az Internethez. Eközben az üzleti szférában is egyre jobban elterjedt az Internet használata. A MATÁV koncessziójának lejártával lassan megindulhatott a verseny a szolgáltatók között is, adatvonalak kiépítése, fejlesztése és bérbeadása tekintetében. A lakosság folyamatosan szélesedı körében, fıleg a fiatalabb korosztályban egyre természetesebb és népszerőbb az internetes szolgáltatások használata, fıként az elektronikus levelezés és a WWW. Ebben nem kis szerepe van az oktatásnak és a kereskedelmi cégek, médiumok azon felismerésének, hogy az Internet alkalmas reklámközeg, amelyen a potenciális vásárlók egyre népesebb tábora érhetı el. Magyarországon is megfigyelhetıvé vált, hogy az eszköz, az elérhetıség fejlesztése mellett egyre nagyobb hangsúlyt kapott és kap a tartalomfejlesztés. Az érdekes tartalom, az információkhoz való könnyő hozzáférés, keresés az a vonzerı, amelynek révén az adott portálokhoz az Interneten barangolókat oda lehet csalogatni. Napjainkban ez az irány, amit kormányzati szinten is támogatni kell és érdemes a továbbfejlıdés érdekében. 3. A jelenlegi szolgáltatásokról röviden Mint a bevezetıben már említettük, sok veszély leselkedik ránk, ahogy megjelenünk az Interneten, s elkezdünk használni néhány szolgáltatást. Hogy a késıbbiekben használható megfelelı óvintézkedéseket megtegyük, érdemes tudni, hogyan is mőködik az a szolgáltatás, amit igénybe szeretnénk venni, legalább nagyvonalakban. Másféle veszélyeket rejt ugyanis egy olyan szolgáltatás, ahol felhasználói nevünket, jelszavunkat kell használnunk az adott szolgáltatás igénybevételéhez, mint egy olyan, ahol saját magunk azonosítása nélkül, csak számítógépünket kell vagy lehet azonosítani egy hálózati kommunikációban. Ebben a fejezetben a jelenleg használt legnépszerőbb szolgáltatások mőködésével, leírásával foglalkozunk, és igyekszünk bemutatni felépítésüket, valamint néhány közkelető félreértést, tévhitet is szeretnénk tisztázni velük kapcsolatban. Vegyünk rögtön egy sokak számára talán meglepı kijelentést ízelítıül: E-mailt az is tud küldeni, aki nem rendelkezik e-mail címmel. Vagy azt, hogy feladóként bármilyen e-mail címet meg lehet adni. Mindezekhez nem kell semmiféle különösebb informatikai szaktudás, nem kell az embernek számítástechnikai gurunak lennie, elég csupán ismerni az elektronikus levelezés felépítését, mert ez magában hordozza a felvetett állításokra a választ. A rosszindulatú programokat összefoglalóan malware programoknak hívjuk. A gyakorlatban az alábbi malwarekategóriákat különböztetjük meg: Program típusú malware: ● számítógépvírusok és programférgek ● vírusfejlesztı kitek ● trójai és backdoor programok ● dialerek ● dropperek ● kémprogramok ● keyloggerek ● egyéb kártékony programok Szöveg típusú malware:
18/102
● spam ● hoax ● külföldi lottónyeremény levelek (tipikusan holland és spanyol) ● phishing, pharming ● egyéb, szöveges típusú kártékony tartalmak
A szolgáltatások felépítése Az elsı olyan probléma, amivel mindenképpen foglalkoznunk kell, hogy mit is jelent az „internetezés”. Tapasztalataink szerint a legtöbb felhasználó számára az internetezés egyszerően azt jelenti, hogy elindítja kedvenc böngészıprogramját, esetleg intézi elektronikus levelezését. Tapasztaltabb „netezık” néha másféle hálózatos tevékenységeket is őznek, csevegnek, vagy akár telefonszerő beszélgetéseket kezdeményeznek, fogadnak, élı rádióvagy videóadásokat hallgatnak, néznek Internetre kötött számítógépük segítségével. Joggal vetıdik fel a kérdés, akkor mi is az Internet? Látszólag mindenki tudja, használja, de tisztában vagyunk-e valójában azzal, mi is történik olyankor, amikor „internetezünk”? A kérdés sokszor úgy vetıdik fel, hogy miért is érdekelne, tudom használni. Kicsit olyan ez, mint az autóvezetés. „Nem kell tudnom azt, hogyan mőködik az autóm, anélkül is tudok vezetni.”- szokták hangoztatni. Hogy ez mennyire nem így van, arra csak a következı egyszerő hasonlatot tudjuk felhozni. Ha valóban nem kellene tudni, hogyan mőködik az autó, nagyvonalakban milyen problémák merülhetnek fel, és erre milyen megoldási lehetıségeink vannak, mire kell odafigyelnünk a használata során, igen komoly problémákba ütköznénk (vagy már ütköztünk is?) az elsı tankolásnál vagy az elsı hóesés esetén. Amíg az autóvezetés jogosítvány megszerzéséhez kötött, amihez hosszú elméleti és gyakorlati képzés párosul, addig az Internet használatát bárki, bármikor, akár saját próbálkozásai alapján, autodidakta módon is elsajátíthatja. Félreértés ne essék, ez jó így, de ha valaki meg akarja magát kímélni a rá váró sok-sok kellemetlen meglepetéstıl, bosszúságtól, adatvesztéstıl, nem árt, ha a használat során fellépı veszélyekrıl, a mőködés alapvetı elveinek elsajátításáról sem feledkezik meg. A hasonlatnál maradva, nem az a cél, hogy mindenki profi autószerelı legyen, de tudjon kereket cserélni, tankolni és tudja, ha az úton közlekedik, a veszélyeket hogyan kerülje el, hogyan tudja a leghatékonyabban az irányítása alatt álló eszközt kezelni és használni. Érdemes tehát néhány gondolat erejéig áttekinteni a használt fogalmakat, azok tisztázása, korrekt használata érdekében. Az Internet szó maga az internetwork, azaz a hálózatok közötti jelentéstartalomból nıtte ki magát mindenki által ismert fogalommá. Az Internet tehát szőkebb értelemben azokat a megoldásokat jelenti, ahogyan a különbözı helyi hálózatokba kötött, vagy akár egyedi számítógépek egymással kommunikálni képesek, egymást egyértelmően azonosítani tudják, kapcsolatot képesek kiépíteni vagy adatcserét végeznek egy másik számítógéppel. Leegyszerősítve az Internet a hálózatok közötti kommunikáció fizikai és logikai eszköze. Az elıbbi jelenti a különbözı kábeleket, eszközöket, a kommunikációs folyam irányítását végzı útvonalválasztók világmérető kapcsolatrendszerét. Az utóbbi – a logikai eszköz – pedig azokat a szabályokat és szabványgyőjteményeket jelenti, amelyek a fizikai kapcsolatokra építve ezeket szabályozzák, leírják. Olyan szabványok, szabályok és protokollok együttesét érthetjük ezalatt, amelyek az adatfolyam áramlásában, kapcsolatfelvételben, a másik kommunikáló fél azonosításában játszanak nélkülözhetetlen szerepet. Ez utóbbi legismertebb részérıl, a TCP/IP protokollveremrıl a késıbbiekben még valamivel részletesebben is szót ejtünk majd. Amikor „internetezünk”, valójában felhasználjuk ezt a fizikai és logikai infrastruktúrát arra, hogy valamilyen általunk igényelt szolgáltatást használjunk. Az internetezés tehát azt jelenti, hogy szolgáltatásokat veszünk igénybe az Internet segítségével. Alapjában véve ez határozza meg a viszonyunkat a különbözı, Interneten zajló kommunikációs folyamatokban. A másik kérdés, amit érdemes tisztáznunk, hogy számítógép-hálózat vagy számítógépes hálózat, amirıl beszélünk. A két fogalom gyakran egymás szinonimájaként használatos, de vajon van-e különbség a két kifejezés között? Igen, van. A számítógép-hálózat olyan hálózatot jelent, melyben (döntı többségében) számítógépek és a köztük a kommunikációt biztosító eszközök találhatók. A számítógépes hálózatok ezzel szemben más eszközöket is tartalmaznak, például hálózati nyomtatók, a hálózatba kötött mérıeszközök, kijelzık, kamerák és más eszközök együttesét. Ad absurdum, számítógépes hálózat esetében elképzelhetı az is, hogy a hálózatba kötött eszközöknek csak kis része a hagyományos értelemben vett általános célú számítógép. A hétköznapokban azonban nem mindig fogalmazunk ilyen pontosan, így elképzelhetı, hogy amikor számítógép-hálózatokról hallunk, valójában számítógépes hálózatokról van szó. Úgy is mondhatnánk, hogy a számítógép-hálózatok a számítógépes hálózatok egy szőkebb halmazát jelentik. Napjaink Internete tehát leginkább számítógépes hálózatként aposztrofálható.
19/102
A történeti áttekintés során megismerhettük az adatok távolba juttatásával kapcsolatos elızményeket, annak problémáit és a kiküszöbölésükre keresett megoldásokat. Ugyan a mai kor emberei ezekre már a mai kor tudományos, mőszaki megoldásainak megfelelıen válaszolnak, az alapproblémák ugyanazok maradtak: minél gyorsabban, minél megbízhatóbban, minél biztonságosabban eljuttatni az üzenetet. Az Internet, illetve a rajta megjelenı szolgáltatások köre egyre szélesebb. Amellett, hogy a mindenki által ismert és használt szolgáltatások elérhetıek, például a WWW, elektronikus levelezés, egyre több olyan szolgáltatás is megjelenik, elérhetıvé válik, amely régebben csak kisebb, helyi hálózatok esetében volt jellemzı. Erıforrás-megosztás, kihasználás Abban a pillanatban, hogy egynél több számítógép létezik a világon, felmerülhet, hogy a két számítógépnek különbözıek a képességeik. Az egyiknek a processzora gyorsabb, ami gyorsabb számításokat tesz lehetıvé, a másiknak a háttértárolója nagyobb kapacitású, a drága végberendezésekbıl is más készlet áll rendelkezésre. Egyszóval, különféle erıforrások állnak rendelkezésre. De akkor is érdekelhet bennünket a másik gép, ha a hardver történetesen azonos: a tárolt adatbázisok, mőködı rendszerek legalább olyan értékes erıforrások lehetnek, amelyeket esetleg meg kell osztaniuk egymással a feladatok elvégzése céljából. Ez pedig csakis a megfelelı adatátviteli technológiákkal oldható meg. A másik fontos szempont az erıforrások közös kihasználása. Ilyenkor a processzorok, háttértárak egy hálózaton belül közös egységként kezelhetıek, azaz a hálózatba kötött számítógépek számára egy nagy egészként jelenhetnek meg. Ezt a megoldást fürtözésnek (cluster) nevezik. A megbízhatóság növelése Ipari folyamatirányítás, kórházi életfenntartó rendszerek, banki rendszerek, katonai, őrkutatási rendszerek: csupa olyan terület, ahol megengedhetetlen a számítógép-rendszerek leállása. A megbízhatóságot jelentısen lehet növelni a kritikus számítógépek megkettızésével. Az ilyen megoldásokban a két gép szinkronban végzi ugyanazt a feladatot. Ezt a technológiát nevezik tükrözésnek (mirroring) is. Fokozza a biztonságot, ha a párhuzamosan mőködı berendezések külön épületben, de legalábbis külön tőzszakaszban vannak. Ilyenkor tőz esetén is biztonságban maradnak az értékes adatok. Bármelyik fél meghibásodása esetén a másik fennakadás nélkül végzi tovább feladatát. A szinkron feladatvégzés csak nagy sávszélességő, jó minıségő hálózati kapcsolaton keresztül biztosítható. Gazdaságosság Bár a tömegtárolók ára napjainkban minden korábbi elképzelést alulmúl, korábban fontos szempont volt a tárolási kapacitással történı takarékoskodás. Olcsóbb volt winchesterek nélküli számítógépekkel felépíteni egy 20 fıs oktatótermet, és a mőködtetı programokat, alkalmazásokat és egyéb adatokat egy központi fájl szerver számítógépen tárolni, ahonnét a helyi (lokális) hálózat segítségével jutottak el az adatok a kliens számítógépekhez. Ma az ehhez hasonló indokok sokadrendőek, de megjelentek már olyan megoldási kísérletek, amelyek az InternetPC, Network Terminal elnevezés alatt hasonló megoldásokat feszegetnek, csak az Internet elérése, a szolgáltatások használata kapcsán. Kommunikáció Napjainkban a számítógép - éppen a hálózatok globális elterjedése folytán - kommunikációs eszközzé vált. Egyéni és tömegkommunikáció: éppen olyan magától értetıdıen, mint a telefon vagy a televízió. Erre a folyamatra utal a technológiák fokozatos összeolvadása is (pl. multimédia folyamok megjelenése, web casting, Internet phone, stb.). Osztott rendszerek Hol is van az Internet központja? Hol van a World Wide Web? Hogyan lehet megfejteni a DES titkosítást? Ilyen és hasonló kérdések sokaságára csak a számítógép-hálózatok magától értetıdı sajátossága adja meg a választ: az egész több mint a részek összessége (pl. „multirenderelés” filmes animációk esetében). Bizonyos feladatokat részekre lehet bontani és a számítógépes hálózat segítségével egyszerre több számítógépen párhuzamosan futtatni. Ily módon viszonylag kisebb teljesítményő gépek együttesen olyan feladatokat is képesek megoldani, amilyeneket esetleg eleddig csak nagygépes rendszerekkel, drága berendezésekkel lehetett volna elvégezni. Az Interneten is egyre több ilyen példa akad, például a SETI@home. Ez a distributed computing. A számítógép-hálózatok ısét többek között a hajdani terminál-hálózatokban találjuk. Ott az egyetlen cél a központi számítógéphez való hozzáférés volt. Az adatátviteli vonalak egyszerő soros interfészen keresztül kapcsolódó, pont-pont
20/102
kapcsolatok voltak, amelynek a felhasználó felıli végén egy egyszerő karakteres terminál volt: intelligenciája az érkezı karakterek megjelenítésére és a billentyőzeten leütött jelek továbbítására terjedt ki. Általában a számítógép szomszédságában levı terminálszobáig, esetleg az épületen belül kisebb-nagyobb távolságra vezettek. Késıbb modemek és telefonvonal segítségével nagyobb távolságról is lehetıvé tették a számítógép használatát. Ez az elsı és máig is a legalapvetıbbek között számon tartott alkalmazási módja a számítógép-hálózatoknak (bár az átvitt adatok mennyiségét, vagy a használati gyakoriságot tekintve háttérbe szorul más felhasználási módokhoz képest). Kliens-szerver alapú hálózatok
A tipikus felhasználó egy kliens számítógép elıtt ül, és a hálózaton keresztül elérhetı szolgáltatásokat vesz igénybe. Ehhez semmit nem kell tudnia a hálózat mőködésérıl, csak az igénybe venni kívánt szolgáltatás szabályait, sajátosságait kell ismernie. A szolgáltatásokat a szerver számítógépek nyújtják. A szerver azoktól a szolgáltatást nyújtó alkalmazásoktól válik szerverré, amelyet a kliensek az alkalmazás során igénybe vesznek. Vannak tehát kliens-alkalmazások, és szerveralkalmazások. A kliens- és szerver-alkalmazások egy adott protokollban rögzített üzenetekkel kommunikálnak egymással. A kommunikációt a kliens kezdeményezi. A szerver egyidejőleg nagyszámú kliens kérését képes feldolgozni, oly módon, hogy a végfelhasználók mindegyike teljes értékő szolgáltatást kap, adott esetben az a benyomása, mintha egyedül használná a szerver szolgáltatását. Egy szerver számítógépen több szolgáltató alkalmazás is futhat egyidejőleg, továbbá egy kliens több, akár különbözı szerveren megvalósított szolgáltatást is igénybe vehet. Egy számítógépen akár kliens- és szerver-alkalmazások is futhatnak egyidıben. A kommunikáció megértése érdekében azonban egyszerre csak egy kliens-szerver alkalmazáspárt vizsgálunk. Ez a megközelítés a kliens-szerver elv. Egyenrangú hálózatok Ilyen hálózati szolgáltatások esetében a felhasználók által használt számítógépek egyszerre végezhetnek kliens- és szerver-jellegő feladatokat. A számítógépek között tehát nincs egy kitüntetett kiszolgáló gép, amely az összes hálózati kommunikációt és szolgáltatást felügyelné, hanem ezek akár a hálózatba kapcsolt összes gép között külön-külön megoszthatóak. Ilyenkor is szükség van természetesen egy protokollra, amelynek segítségével az alkalmazások kommunikálni tudnak egymással. Ezt jellemzı módon kisebb hálózatok esetében használták, de mára egyre több internetes szolgáltatás is ilyen elveken mőködik. Hoszt A hálózatba kapcsolt gépeket gazdagépeknek , vagy hosztoknak (host= vendéglátó, házigazda) nevezzük. A hoszt elnevezés egyaránt jelölhet kliens és szerver számítógépet.
21/102
Sávszélesség A felhasználó számára ez a legégetıbb kérdés. Ezen múlik, mennyire lassú vagy gyors az adatátvitel. Vigyázzunk: a tényleges adatátvitel általában több, különbözı sávszélességő vonalat is igénybe vehet a két végpont között, továbbá nem egyedül használjuk a hálózatot, ráadásul a közeghozzáférés szabályozása is tartogathat meglepetéseket. A tapasztalt adatátviteli sebesség és a sávszélesség tehát nem feleltethetı meg egymásnak közvetlenül. Egy adott adatvonal, hálózati kapcsolat sávszélessége azoknak a biteknek a száma, amelyet az adatvonal idıegység alatt maximálisan továbbítani képes. A különféle protokollok járulékos információi, az adatcsomagok közötti idırések és egyéb hatások miatt a felhasználó számára hasznos információátviteli kapacitás a névlegesnél mindig valamivel alacsonyabb. A sávszélesség mértékegysége az 1 bit/s, és ez a térbeli távolságtól független. Ennek a mértéknek semmi köze az adatok (az egyes bitek) áramlási sebességéhez. Az információt hordozó fizikai hatások rendszerint a fény nagyságrendjébe esı sebességgel terjednek a közegben. Az adathordozó fizikai szállításával végrehajtott adatátvitel, például egy kerékpáros futár esetén azonban a szállítás sebessége (m/s) és a megtett távolság a döntı, függetlenül az adatok mennyiségétıl. Arra a kérdésre tehát, hogy melyik a gyorsabb: egy 28,8 kbit/s-os modem vagy a bicikli, a helyes választ csak az átvitt adatok és a távolság együttes ismeretében adhatjuk meg. Legyen az átvinni kívánt adatmennyiség 1,44 MByte (egy floppy), ami 11,52 Mbit. Ennyi adat átvitele a 28,8 kbit/sos modemmel 410 s, vagyis 6,8 perc. Legyen a biciklista sebessége 30 km/óra (8,33 m/s). Ennyi idı alatt 3415 m-re jut el, vagyis ennél rövidebb távolságon elvileg a biciklivel lehet hamarabb átjuttatni a kívánt adatmennyiséget.
A gyakrabban használt internetes szolgáltatások rövid áttekintése Telnet/ssh
Telnet: Szöveges módú szolgáltatás, ami az account birtokában szinte mindig használható. A kliens oldalnak olyan terminálemulációt kell használnia, amit a szerver oldal is felismer, ellenkezı esetben a szolgáltatás nem, vagy elég nehézkesen használható. Az egyik leggyakoribb terminálemuláció, amit szinte minden UNIX-os gép ismer a VT-100-as, vagy VT-102-es, amit néhány esetben DEC VT100-asként is ismernek. A különbözı terminálemulációk lényegében a billentyőzetkezelésben és a színhasználatban különböznek egymástól. Az ssh (secure shell) szolgáltatás lényegében a Telnet titkosított változatának tekinthetı.
22/102
X Window kliens/szerver:
X Window kliens/szerver: Az X Window architektúra nem tévesztendı össze a Microsoft Windows operációs rendszer sorozattal, noha valóban grafikus megjelenítést lehetıvé tevı, ablakokat használó felületrıl van szó. Az X Window szabványa a Telnet logikáját vitte tovább és olyan grafikus megjelenéső terminált ír le, mely képes programok futása során keletkezett felhasználói felületet grafikusan egy távoli gépen megjeleníteni. Terminológiai szempontból érdekesség, hogy ebben az esetben X Window szervernek azt a logikai kapcsolatban a felhasználó felé esı klienst nevezik, amely a távoli gépen futó programok számára grafikus megjelenési felületet szolgáltat.
Hálózati hírek (Usenet News), hírcsoportok
Az Internetet sokan kapcsolattartásra használják hasonló érdeklıdésőekkel, vagy azért, hogy meghatározott témákról tájékozódjanak a vitakörökben vagy szakkörökben. Az ilyen jellegő tevékenység fı fóruma a Usenet (hálózati hírek), melyben bıséggel vannak különbözı szakterületeket tartalmazó hírcsoportok. A Usenetre úgy mehetünk el, hogy a kívánt hírcsoport nevét begépeljük a számítógépünkön indított hírolvasó (news) kliens megfelelı mezıjébe. A hírcsoportok tárgyuk, témakörük vagy témájuk szerint kapják az elnevezésüket. A Usenet egy nyitott levelezési rendszer, amelyen a felhasználók híreket és véleményeket tehetnek közzé. Tehát egy általános levélládaként mőködik, amelynek tartalmát minden felhasználó olvashatja. A felhasználók üzenetei Usenet fájlokba töltıdnek és minden helyre (site-ra) eljutnak, amelyik fogad Usenet üzeneteket. Hálózati hírek (Usenet News): a Useneten keresztül kapható információk. Gerinchelyek: szervezési és elosztási mőveleteket hajtanak végre. A hozzájuk beérkezett üzeneteket csoportokba szervezik, s továbbítják. Hírszolgáltató (news server): a hírszerver fogadja a Usenet híranyagokat és elérhetıvé teszi azokat más rendszerek számára. A mi alhálózatunkhoz legközelebbi hírolvasó: news.jpte.hu Hírolvasó: olyan kliensprogram, amely egy hírszerverhez kapcsolódik és hozzáfér a cikkekhez. Ilyen pl. a trn, vagy a tin programok, ezek csak hírolvasásra szolgálnak; cikkek közzétételére pedig a Pnews program alkalmazható. NNTP (Network News Transport Protocol): Az interneten és a TCP/IP hálózatokon használt hírtovábbítási szabvány. Ezért a hírszolgáltatókat nntp-szervereknek is hívják. Hírtovábbító program (New Transport Agent): segítségével saját hírszerver is létrehozható, ezzel helyi hírszolgáltatás lehetséges. Pl: Hírcsoportok témamegjelölései: comp: számítógépek és szoftvereik; misc: vegyes témák, amelyeket máshogy nem lehet osztályozni; news: a hírrendszer maga és mőködése; rec: a kikapcsolódást szolgáló (recreation), szórakozási tevékenységek, hobbik; sci: tudományos témák; soc társadalmi, mőveltségi témák; talk: vitatott kérdések; alt: alternatív csoportok, amelyek nem férnek egyik elızı kategóriába sem. Például: news.iif.hu - hírcsoportok, weben keresztül: news://news.iif.hu
23/102
FTP
Az állománytovábbítási protokoll (File Transfer Protocol, azaz FTP) segítségével bármely számítógépen lévı felhasználó bármelyik másik gépre küldhet és onnan beszerezhet állományokat. (Amennyiben az adott gépek rendelkeznek a megfelelı kiszolgáló és kliensalkalmazásokkal.) A biztonságot a felhasználónak a másik gépen érvényes azonosítója és a hozzátartozó jelszava jelenti. Gondoskodtak arról is, hogy a különbözı karakterkészlettel, sorvégjellel stb... rendelkezı számítógépek közötti állománytovábbítás is zavartalan legyen. Az FTP egy olyan segédprogram, amelyet bármely idıpontban futtatva, a hálózatba kapcsolt más számítógépeken lévı állományok elérhetıvé válnak. Arra használják, hogy az adatállományt a saját rendszerre átmásolják. Egyike a legrégebbi, mégis legszélesebb körben használt protokolloknak. Az FTP elkülönülı parancs és adattovábbító kapcsolatokat használ. A PI (protokoll interpreter) jelenti az FTP-t, mint protokollt, míg a DTP (data transfer process - adatátviteli eljárás) végzi a tényleges adatátvitelt. Az FTP protokoll és az adatátvitel két teljesen különálló TCP viszonyt használ. Az FTP szerverek a 21-es portot figyelik, és várják a kapcsolódási kérelmeket. Ha a kapcsolat a kliens és a szerver között létrejött (az authentikáció sikeres). A szerver 20-as portjáról indul az adatátviteli kapcsolat, egy a kliens által meghatározott portra. (lásd TCP/UDP portok az elızıekben).
NFS
Hálózati állományrendszer (Network File System - NFS) Ezen szolgáltatás segítségével a hálózaton lévı állományokat az FTP módszerénél kevésbé körülményesen, a beépített háttértárolókhoz hasonlóan lehet kezelni. A hálózati állományrendszer azt az illúziót kelti, hogy az egyik rendszer lemezei vagy más egységei közvetlenül más rendszerekhez tartoznak. Nincs szükség külön hálózati alkalmazásra ahhoz, hogy az állományokhoz hozzá lehessen férni. Az adott számítógép egyszerően úgy viselkedik, mintha plusz egységeket kapott volna. Ezek a "virtuális" meghajtók a másik rendszer lemezeit fogják jelenteni. Több hasznos oldala is van ennek a megközelítésnek. Egyfelıl nagykapacitású meghajtókat lehet megosztani több számítógép között. Ennek nyilvánvaló takarékossági elınyei vannak. Másfelıl egy csapásra megvalósul a közös állomány-hozzáférés. Könnyebbé válik a rendszer karbantartása, archiválása, mivel nem kell a különbözı gépeken lévı másolatok idıszerősítésével és tartalékolásával foglalkozni. Sok cég kínál nagyteljesítményő, meghajtó nélküli számítógépeket. Ezeknek a gépeknek a mőködése nagy mértékben a különbözı állomány-kiszolgálókhoz kapcsolt meghajtóktól függ. (A munkaállomások és a kisszámítógépek körében a Sun Network File System az irányadó.) Az NFS-t megvalósító protokoll az RPC (Remote Procedure Call). Mivel az RPC egy tipikus kérés-válasz protokoll, ezért nagykiterjedéső hálózatokon elég gyenge teljesítményt mutat. Ezért az NFS teljesítménye LAN-okban a legjobb. Az NFS kapcsolat nem egyezik meg a file-server szolgáltatásával. Például az NFS-nek nincs file megnyitó mővelete, mivel ez megkövetelné a szervertıl, hogy állapotinformációkat tároljon (a file nyitva van, mi a file leírója, mi a következı olvasandó byte, stb.) Tehát az NFS csak egy keresési eljárást támogat, amely a file-nevet átkonvertálja egy file azonosítóvá, amely egy egyedi, állandó azonosító, amely lehet például egy diszk blokkjának száma is.
Interaktív szolgáltatások IRC
IRC: Internet Relay Chat. Egy adott irc szerverre való bejelentkezés után kapcsolódhatunk egy már létezı “beszélgetı” csatornához (a beszélgetés a begépelt hozzászólások, idıben folyamatosan áramló listája), esetleg újat nyithatunk. Egy ilyen csatornára bejelentkezett felhasználók által begépelt szövegek azonnal mindenkinél megjelennek, aki a csatornára bejelentkezett. Kicsit hasonló a levelezési listákhoz azzal a lényeges különbséggel, hogy az üzenetváltások on-line módon történnek, és csak addig, amíg a felhasználók ugyanazon a csatornán vannak. Az irc szerverek többnyire szintén összeköttetésben vannak egymással, és a legtöbb beszélgetı-csatornát egymás között tükrözik, így lehetıség van akár a világ másik felén élı emberekkel beszélgetni.
24/102
ICQ
Ezt a programot csak az ICQ rendszerben regisztrált tagok használhatják. A www.mirabilis.com címrıl lehet letölteni. Rendszerbeállítás közben ad egy azonosítót (UIN), ezt kell majd megadni azoknak, akikkel késıbb beszélgetni akar a felhasználó. Az ICQ különleges tulajdonsága, hogy a hálózatra kapcsolódásnál a program külön ablakban jelzi, hogy a listába vett ismerısök közül éppen ki van ''vonalban''
Talk
Talk: Hasonló az irchez, azzal a különbséggel, hogy többnyire csak két ember közt folytatható így beszélgetés. Az on-line beszélgetés ezen formája a UNIX operációs rendszereken az alapszolgáltatások közé tartozik. Ha valaki nem UNIX rendszeren használja, a beszélgetık által használt talk programok egymást a gépek IP címe és virtuális felhasználói név alapján azonosítják, míg UNIX operációs rendszer alatt a gép címén kívül kötelezıen a bejelentkezett felhasználói nevet is meg kell adni, hogy felépüljön a kapcsolat.
Videó-konferencia
Videó-konferencia: nem kifejezetten internetes szolgáltatás, bár IP-n keresztüli megvalósítására is vannak példák. A gyakorlatban leginkább ISDN vonalakon keresztül történik a hang és a mozgókép továbbítása, mivel nagy sávszélességet igényel. A sávszélesség behatárolja az átvihetı adtok mennyiségét. A képi információ folyamatos átvitele még nagy tömörítés mellett is rendkívül nagy feladat. Az átvitel szempontjából fontos, hogy a videokonferencia gyakran kétirányú és több egymással párhuzamosan áramló adatfolyam alkotja. Biztosítani kell a kép a hang vagy és esetleg valami demonstrációs alkalmazás képernyı állapotaira vonatkozó információ átvitelét. Ezek az átviteli folyamatok eltérı követelményekkel lépnek fel az átviteli szolgáltatás minıségével szemben. A sávszélesség növekedésével és a szolgáltatási minıségek szelektív biztosításával a jövıben jelentısen emelkedhet e terület kihasználtsága.
Internet phone/Skype
Az internetes telefónia legfontosabb elınye, hogy nem igényel fennálló folyamatos vonalat. Az Internet telefon a csendet nem szállítja. Mivel az Interneten a csomagokra darabolt információ képes sorbanállásra ezért kisebb sávszélesség elegendı ugyakkora beszélgetés átvitelének megszervezésére. Ez azt jelenti, hogy a jelenlegi sávszélességek mellett a használhatóság határán lehetséges az Interneten keresztül hangátvitelt megszervezni, de ez egyelıre nem érinti a vonalkapcsolt telefonhálózat fölényét a beszédátvitelben. (Az átviteli technológiai fejlıdése eltünteteti ezt a szembenállást, hiszen közös egységes digitális irányba tolódik el az átviteltechnika legyen szó telefonról vagy akár adathálózatokról.)
gopher
gopher: Kezdetben a hypertext valójában csak szöveges információk hierarchikus rendszerben történı megjelenítésére, felhasználására szolgált. A szövegek közben nem volt mód más típusú anyagot (képet, hangot, stb.) megjeleníteni, csak a végállapotban juthatunk el nem szöveges file-okhoz, amelyeket viszont elıbb le kellett tölteni, és egy másik program segítségével tudtuk csak megtekinteni és használni. Ez a szolgáltatási mód egyre inkább háttérbe szorul a www elıretörésével. Manapság leginkább könyvtári keresırendszereknél, egy-egy nagyobb, csak szöveges adatokat tároló szolgáltató szerveren találkozhatunk vele. Önálló gopher klienst ezért nem is nagyon találhatunk, általában telneten, vagy www-n keresztül férhetünk hozzá. A gopher szerverek által nyújtott szolgáltatás URL-je gopher://-rel kezdıdik, így ismerhetünk rá.
keresési, azonosítási lehetıségek
Gyakran van szükség olyan információkra, programokra, adatokra, amelyek elérési helyét nem ismerjük. Hasonló problémák merülnek fel, amikor egy adott felhasználóról szeretnénk kideríteni, hogy mi az e-mail címe, esetleg éppen használja-e az Internetet, vagy egyszerően csak kíváncsiak vagyunk, hogy egy adott gép rá van-e kapcsolódva az Internetre, esetleg mi az IP címe, vagy fordítva, mi a neve, ha csak az IP címét ismerjük. Ezen kérdések megválaszolásában segíthetnek az alábbiakban felsorolt programok/szolgáltatások, amelyeket röviden leírunk a következıkben.
ping
ping: Ez tulajdonképpen egy kis program, és egy adott számítógép IP-n való elérhetıségét lehet vele megnézni. Ha nem jelez hibát, akkor a számítógép be van kapcsolva, rajta fut a TCP/IP-t kezelı programcsomag, de ennél többet nem tudhatunk meg. Windows 95, 98, NT és UNIX rendszereken is megtalálható. Tipikus használati példa: ping ttk.pte.hu
25/102
finger
finger: Alkalmas arra, hogy egy adott szerveren accounttal rendelkezı felhasználóról információkat szerezzünk. Minimálisan legalább annyit, hogy a keresett felhasználó be van-e jelentkezve az adott szerverre, ill. kik azok a felhasználók, akik be vannak jelentkezve. Nem minden szerveren engedélyezi a rendszeradminisztrátor a szolgáltatást. Létezik Novell Netware, és UNIX-os rendszereken is. Tipikus használati példák: finger [email protected] finger @btk.pte.hu finger –l chubby (a chubby felhasználóról kérünk információt azon a szerveren, ahová éppen be vagyunk jelentkezve, ilyen formában általában csak UNIX rendszereken használható)
nslookup
nslookup: Egy IP címhez megkeresi a nevet, amellyel szintén hivatkozhatunk az adott számítógépre. UNIX-os környezetben használható. Tipikus használati példa: nslookup 193.6.50.110 (aminek eredményeképpen megkapjuk a www.pte.hu nevet)
archie
archie: speciálisan ftp archívumokban való keresésre szolgál. Hátránya, hogy a keresendı file nevét, vagy teljesen, vagy közelítıleg ismernünk kell. Ez bizony nem is mindig olyan egyszerő feladat figyelembe véve, hogy az archívumokban jórészt 8+3-as névkonvencióval, ún. DOS formátumban található a legtöbb (javarészt tömörített) file, aminek következtében a legváltozatosabb rövidítések fordulhatnak elı.
World Wide Web Miért oly népszerő a web? WWW: World Wide Web (világmérető háló(zat)). A http-vel (hyper text transfer protocol) elérhetı szolgáltatás a gopher egyfajta továbbfejlesztésének tekinthetı. Itt már nemcsak szövegek, hanem egyéb audió- és videó anyagok, képek is továbbíthatók olyan módon, hogy a kliens oldali program rögtön meg is tudja jeleníteni, le tudja játszani azokat. A szövegek is formázottak, tartalmazhatnak táblázatokat, különféle bető és bekezdés formázási lehetıségeket, színeket. Ezek a szövegek már közelebb állnak a nyomtatott szövegek formájához, emiatt könnyebben is olvashatóak az esetek többségében. Ezeket a lapokat sokféle névvel illetik. Leginkább a home page, weblap, html oldal elnevezések fordulnak elı. Amikor az Internetrıl esik szó, az emberek többségében egy html oldal képe sejlik fel, mivel ez az egyik legnépszerőbb szolgáltatás manapság. Ez többnyire azt a tévhitet eredményezi, hogy az Internet egyenlı a WWW-vel. Az URL fogalma is ennél a szolgáltatásnál jelenik meg, hiszen maguk a hypertext browser (böngészı) programok -, amik valójában már hypermédia böngészık– integrálni tudják a különbözı szolgáltatásokat, mivel a http-n kívül sok más protokollt is értelmezni tudnak. webes keresırendszerek: olyan keresı programok, melyek egy-egy régió, ill. a világ különbözı pontjain elszórva megjelenı információk közül kikeresik a számunkra megfelelıt, ill. útmutatást adnak az adott szempontoknak megfelelı anyagok megtalálásában. Egy ilyen keresıprogram általában külön szerveren fut, és többnyire automatikusan böngészi a saját megadott szempontjainak megfelelı webhelyeket. Az ott található szöveges információkból saját magának indexállományokat hoz létre, és folyamatosan frissíti, bıvíti ezeket. Amikor valahonnan keresési kérelem érkezik a programhoz, akkor ezeket az állományokat kutatja végig, és a megtalált, a keresési szempontoknak megfelelı URL-eket jeleníti meg a klienseknek. Természetesen ez azt is jelenti egyben, hogy az ily módon kapott eredmény nem feltétlenül tükrözi a pillanatnyi állapotot, hiszen az indexállományokban található bejegyzések a legritkább esetben naprakészek. A másik probléma abban rejlik, hogy nyilván nem lehetséges az Interneten elérhetı minden anyagról teljes indexelést végezni, ezért egy eredménytelen keresés után érdemes újra, más szempontok szerint is megismételni a mőveletet. Ha még így sem érünk el megfelelı eredményt, akkor több különbözı keresıszerveren is próbálkozzunk. A legbiztosabban akkor tudjuk megtalálni az általunk keresett dolgokat, ha ismerünk az adott témában elérhetı, ún. tematikus keresıket. Alapvetıen kétféle keresı létezik. Az egyik a fent már említett tematikus keresı, a másik az általános, vagy más néven kulcsszavas keresı. A tematikus keresık jellemzıje az, hogy egy, vagy néhány adott szempont szerint vannak csak indexelve, csoportosítva a file-ok és egyéb anyagok, így egy szőkebb témakörben részletesebb információkhoz juthatunk. A másik elınye ezeknek a keresıknek az, hogy a hierarchikus rendszer segítségével folyamatosan
26/102
szőkíthetjük keresési szempontjainkat, emiatt viszonylag gyorsan megtalálhatjuk az általunk keresett dolgokat. Ha azonban nem ismerünk ilyen keresıt, vagy ily módon nem jutunk eredményre, akkor marad a másik lehetıség, az általános keresıszerverek használata. Itt szövegesen, kulcsszavak alapján kereshetünk, és a keresı megadja az általa talált URL-eket. Ennek a módszernek az a hátránya, hogy adott esetben sok olyan találatunk is lesz, amelyeknek semmi köze nincs az általunk keresettekhez, csak valamilyen formában szerepelnek a szövegben a megadott kulcsszavaink. Nagyobb körültekintéssel kell tehát eljárnunk a kulcsszavak megadásánál, hogy valóban csak azok az információk, URL-ek jelenjenek meg, amikre szükségünk van. Elektronikus levelezés E-mail: Elektronikus posta ill. levél a hálózat két felhasználója között. Nemcsak olcsóbb a rendes postánál, de három másik elınye is van. Egyrészt a gép mellıl elküldhetı, nem kell borítékkal és feladással bajlódni. Másrészt elképzelhetetlenül gyors, a körülményektıl függıen néhány másodperc, vagy rossz esetben néhány perc alatt jut el a címzetthez. A harmadik elıny az, hogy a levél mellé a szövegen kívül mást is csatolhatunk, file-okat, képeket, hangot, táblázatot, egyéb digitalizált információt. Az elektronikus levelezéshez is szükséges természetesen egy cím, hasonlóan a hagyományos levelezésben megszokotthoz. Itt is meg kell adni a címzett nevét, és címét. Az Interneten a cím nem más, mint annak a számítógépnek (szervernek) a neve, ahol a címzettnek egy úgynevezett elektronikus postafiókja van, míg a címzettet ezen a gépen található accountjával azonosítják. pl.: [email protected] e-mail cím a következıket jelenti: A címzettnek a .hu domain (Magyarország) alatti .pte domain (Pécsi Tudományegyetem) ttk nevő számítógépén van egy elektronikus postaládája, melynek elnevezése chubby. Másképp fogalmazva a felhasználó ezen a számítógépen egy “chubby” karaktersorozattal van azonosítva. Mindenfajta elektronikus üzenetet csak úgy tud megkapni, ha a küldı pontosan ismeri ezt a címet. Ellentétben a hagyományos levelezéssel, a számítógépek világában nagyon fontos a korrekt címmegadás, azaz már egy bető eltérés is azt jelentheti, hogy a címzetthez nem érkezik meg az üzenet. Ez többnyire azt is jelenti egyben, hogy a postafiók tulajdonosának neve nem feltétlenül egyezik meg a “civil” nevével, így egy ismeretlen e-mail cím megtalálása nem mindig egyszerő feladat az Interneten. Az e-mail az egyik legalapvetıbb hálózati szolgáltatás, így általában ahol számítógépes hálózat létezik, ott ez is használható. Általában kétféle protokollt használunk az Internetes levelezésben. Az egyik a kimenı levelek küldésére használt SMTP (Simple Mail Transfer Protocol), a másik a távoli gépen lévı postaládánkba érkezı levelek olvasására szolgáló POP (Post Office Protocol). Emellett manapság lehet találkozni az IMAP-pal (Internet Message Access Protocol) is. Kényelmes és egyszerő kezelhetısége miatt valószínőleg sokak számára vonzóbb mint a POP. Manapság egyre népszerőbbek az úgynevezett webes levelezırendszerek is. Ilyenkor nincs szükség külön e-mail kliens programra ahhoz, hogy levelezésünket bonyolítsuk, csak egy böngészıre. Ebben az esetben ezek a weben keresztül levelezési szolgáltatást nyújtó számítógépek tulajdonképpen egy átjáró (gateway) funkciót valósítanak meg, mert elfedik a felhasználók elıl a levelezés során használt protokollokat, levelezési rendszereket. Ez a másik nagy elınyük, aminek a népszerőségüket köszönhetik. Hátrányuk viszont, hogy titkosítási szempontból jelenleg nem mindegyikük elég megbízható. Levelezési listák: A levelezési listák nem jelenítenek meg önálló kapcsolati protokollt, és nem igényelnek önálló kliens programot. Egy, a levelezés szintje fölött mőködı második logikai alkalmazásról, egy metarendszerrıl van szó. Levelezési listákat egy adott téma iránt érdeklıdık számára állítanak fel a világon szinte mindenfelé. Ezen levelezési listák lényege, hogy az egy bizonyos témában küldött levelet nemcsak egy címzett kapja meg, hanem a levelezési listára feljelentkezett összes. Egy olyan szerveren, ahol levelezési listát találunk, általában több ilyen is létezik. Ilyenkor természetesen csak egy levelezési listát kezelı program fut, melynek címe többnyire a maiser@szervernév, listproc@szervernév vagy majordomo@szervernév alakú. Ahhoz, hogy valamelyik konkrét levelezési listára feliratkozhassunk, esetleg információt szerezzünk az adott szerveren létezı listákról, elıbb erre a címre kell küldenünk egy levelet. Ilyenkor rövid (és többnyire angol nyelvő) ismertetıt kapunk válaszként a saját postafiókunkba. Ha már feliratkoztunk egy listára, akkor már a lista címére kell küldenünk a leveleinket, ami általában listanév@szervernév alakú. A fentiekbıl látszik, hogy ilyenkor is ugyanúgy használhatjuk kedvenc levelezıprogramunkat, mintha valakivel leveleznénk, hiszen a listakezelı program és a listák is úgy érhetık el, mint egy másik felhasználó az Interneten.
27/102
Biztonságos levelezés Spam A spam, mint napjaink egyik hétköznapi bosszúsága, azaz mit érdemes tudni a kéretlen reklámlevelekrıl. Honnan kapjuk ezeket, honnan tudják az e-mail címünket? Alapvetıen kétféle forrásból lehetséges. Az egyik, hogy nyilvános címlistákból automatikusan kiemelnek címeket, és egy hasonlóan automatizált módszerrel küldik ki. A legnagyobb probléma a spam-ekkel kapcsolatban a hiányos nemzetközi szabályozás és persze a felhasználók jóhiszemősége. A weben igen elterjedt, hogy „ingyenes” szolgáltatásokat email címünk megadásával érhetünk el. Pl. tipikusan ide küldik el jelszavunkat, legtöbbször egy rövid, egyszerő regisztráció után. Eleve feltőnı ilyen esetben, ha pl. a regisztrációs form-ban hobbijainkról, érdeklıdési körünkrıl faggatnak minket. Ha ugyanis ilyen információk is rendelkezésre állnak, a cég által létrehozott email cím adatbázisnak nagyobb értéke van a (fekete) piacon, hiszen célzott reklámlevelek küldhetıek, kinek-kinek olyasmi, ami érdekelheti. A legegyszerőbb ilyen kiválasztás a nem megjelölése, melynek alapján a spam írók eldöntik, hogy viagra vagy mellnövesztı reklámokat küldjenek-e számunkra. Elrettentı példa a spammerek számára: Vardan Kusnir úgy vélte, az elektronikus levelezés reklámlevelek küldésére való. Vasárnap lakásában holtan találták Vardan Kusnirt, Oroszország legnagyobb spammerét. Az Interfax jelentése szerint Kusnir halálát több, a fejére mért ütés okozta. A 35 esztendıs férfi három angol nyelviskola vezetıje volt, amelyek szervereirıl agresszív internetes reklámlevelek millióit küldözte világszerte. A spamen feldühödött internetezık korábban akciót szerveztek Kusnir amerikai-angol nyelviskolája ellen, amelynek telefonszámait közzétették a weben. A számokat olcsó szexszolgáltatások és jutányos ingatlanakciók telefonszámaiként tüntették fel. Egy másik alkalommal a netezık telefonon és emailben zaklatták a nyelviskolát. Vardan Kusnar elvein ez sem változtatott. Közölte: szerinte az elektronikus levelezés reklámozásra való. Oroszországban kéretlen reklámlevelek küldését jelenleg nem tiltja törvény.
28/102
forrás : index.hu A legtöbb esetben, ha kicsit is legális akar lenni a cég, amelynek weblapján regisztráltunk, apróbetővel, esetleg két link után „elrejtve”, de tesz adatvédelmi nyilatkozatot, amit végigböngészve láthatjuk, jogot formál-e arra, hogy 1. reklámleveleket küldjön, 2. mások reklámleveleit is elküldje, 3. más cégek felé értékesítse adatbázisait. Jobb esetben a spam levelek tartalmaznak egy linket, esetleg egy válaszcímet a leiratkozáshoz, azonban sokszor ez sem az, aminek látszik, és használatával csak azt bizonyítjuk a feladók felé, hogy olvassák az általuk küldött leveleket, így biztosak lehetünk a spam mennyiség megduplázódásában. A modern levelezı szerverek és egyes kliensek is képesek spam szőrésre, illetve a beérkezı levelek szétválogatására. Ezek mőködése azonban, sajnos, nem 100%-os. Tipikus trükkök a mindig más-más feladó használata, a változatos Téma megjelölések (subject) és persze a szándékosan generált elírások a kulcsszavakban, illetve a képként történı elküldésük, amelyeken a szöveg felismerése számítógépes módszerekkel nagyságrendekkel nehezebb feladat. Manapság azok bizonyulnak a leghatékonyabb spam szőrıknek, amelyek központi adatbázisokhoz kapcsolódnak, és onnan informálódnak arról, spamnek számít-e egy adott levél, illetve egy új spam-et képesek is lejelenteni a központ felé. Scam Ha kapunk egy levelet egy délafrikai gyémántbánya golfkulbjának vezetıjétıl, amelyben részletezi, hogy politikai okok miatt feltétlenül el kell tüntetnie magánvagyonát, ami pl. : „5.000.000 USD”, és téged szeretne megkérni, hogy segíts neki ebben, amiért kapsz 10%-ot a teljes összegbıl, csak válaszolj a kishuga leánykori papagájának az email címére, akkor biztos lehetsz benne, hogy a scam téged is elért. Hasonlóan lehet, hogy nyertél a spanyol lottón, vagy a bingón, autót sorsoltak ki az xy weblapot meglátogatók között stb. Az ilyen levelek íróinak célja, hogy adatokat, de általában közvetlenül pénzt szerezzenek tılünk. Pl. kiderül hogy az átutaláshoz szükséges egy 5$-os összeg, amit nekünk kell állnunk, és ami nevetségesen kis összegnek tőnik a hatalmas nyeremény/haszon stb. ellenében. Persze, ha elküldtük a pénzt, bottal üthetjük a nyomukat. Pl.: Dátum: Mon, 03 Oct 2005 17:30:08 +0100 Küldı: "Mr Douglas Morris" <[email protected]> Válaszcím (ha más): [email protected] Címzett: [email protected] Tárgy: Cooperation Hello, I am contacting you to partner with me in respect of transfer of certain funds, which is being held in a floating account in my organization, Fountain Securities , in Madrid Spain. I am privileged to have full knowledge of the availability of this fund due to my function and position in the organization at present. I have to contact you because it is imperative for me have the cooperation of a foreigner to be able to transfer the fund out of my country. This fund, was deposited by Mr. George Martins, who died in 1994 without leaving any information of any next of kin to inherit the fund. The account therefore has not been operated since his death. The total amount involved is Fifteen Million American Dollars. My name is Douglas Morris. I would give the details of the transfer process if I receive your response and am convinced that you are willing and dependable to carry out the transaction with me in absolute confidentiality. We have to establish mutual trust such that it will be glaring to both parties that we could work with open mind. On transfer of the fund into your account,your share would be 25% of the total sum while the rest part would be for me and I intend to invest the major part of my share in your country with your assistance. I would appreciate if you could respond to me on my more private email:[email protected] state your telephone number so that I could call you too. I await your response.
29/102
Sincerely. Douglas Morris. Reply to:[email protected] A fenti levélben egyébként nem csak a tartalom gyanús, hanem az is, hogy az saját email címünk helyett a címzettnél szintén egy angliai cím szerepel. Lássuk a (legtöbb levelezı kliensben lekérhetı) teljes fejlécet: From [email protected] Mon Oct 3 18:31:31 2005 Return-Path: <[email protected]> Received: from alfa.pte.hu ([email protected] [193.6.50.105]) by gamma.ttk.pte.hu (8.13.3/8.13.3/szszk-8) with ESMTP id j93GVUeh017502 for ; Mon, 3 Oct 2005 18:31:31 +0200 Received: from localhost (localhost [127.0.0.1]) by alfa.pte.hu (Postfix) with ESMTP id D55891A0170 for ; Mon, 3 Oct 2005 18:31:31 +0200 (CEST) Received: from alfa.pte.hu ([127.0.0.1]) by localhost (alfa [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 24988-02 for ; Mon, 3 Oct 2005 18:31:30 +0200 (CEST) Received: from relay.freeuk.net (relay.freeuk.net [212.126.144.54]) by alfa.pte.hu (Postfix) with ESMTP id 3C4F91A00F9 for ; Mon, 3 Oct 2005 18:31:30 +0200 (CEST) Received: from ludo.freeuk.net ([212.126.144.9]) by relay.freeuk.net with esmtp (Exim 4.34) id 1EMTCd-000Jr3-7V; Mon, 03 Oct 2005 17:30:11 +0100 Received: from ludo.freeuk.net (localhost [127.0.0.1]) by ludo.freeuk.net (8.13.3/8.12.11) with ESMTP id j93GUBeV018640; Mon, 3 Oct 2005 17:30:11 +0100 (BST) (envelope-from [email protected]) Received: (from claranet@localhost) by ludo.freeuk.net (8.13.3/8.12.11/Submit) id j93GU8Ra018626; Mon, 3 Oct 2005 17:30:08 +0100 (BST) (envelope-from [email protected]) Message-Id: <[email protected]> X-Authentication-Warning: ludo.freeuk.net: claranet set sender to [email protected] using -f From: "Mr Douglas Morris" <[email protected]> To: [email protected] Reply-To: [email protected] Subject: Cooperation Date: Mon, 03 Oct 2005 17:30:08 +0100 Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Remote_Addr: 80.231.4.10 X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at pte.hu Status: R Láthatjuk, hogy bizony a címzett saját maga, azonban azt is látjuk az X-authentication-Warning sorban, hogy valójában nem onnan adta fel. Azt is láthatjuk, hogy a ludo.freeuk.com 2x kezelte a levelet. Mire következhetünk ebbıl? Nos, tipikus módszer, hogy készítünk egy ingyenes e-mail címet és beállítjuk, hogy továbbítsa a leveleket egy másik címre, a fenti példában ez az én email címem volt. Ezek után feladunk egy emailt magunktól magunknak és máris elküldtük. Persze bárhonnan feladhatjuk közvetlenül is az email-t arra a szerverre, hiszen ott helyi felhasználók vagyunk, így a levelezı szerver átveszi a levelet, majd továbbküldi az általunk megadott címre. Ez tulajdonképpen a relay tiltásának megkerülése. Az eredeti SMTP modell szerint, az internet „hıskorában” kidolgozott levelezési szabályokban minden levelezı szerver átvett leveleket, bárkitıl, bárkinek, és továbbküldte a megfelelı címzett felé, ennek a viselkedésnek a mai neve „open relay”. Ez manapság már csak konfigurációs hibákból eredıen történhet meg egy-egy levelezı szerveren, és ezeket a hibákat a spammerek (a spam leveleket küldık) ki is használják, és rövid idı alatt hatalmas mennyiségő levelet adnak
30/102
fel, amíg a hibát ki nem küszöbölik. A levelezı szerverek mai normális mőködése abban merül ki, hogy 1. átvesznek minden levelet, amelynek a címzettje náluk található, 2. azokat a leveleket, amelyeknek a címzettje nem nekik szól, megvizsgálják, és ezek alapján döntenek a levél sorsáról. A második esetben a beállításokon múlik, hogy honnan és kitıl vesznek át levelet. Erre korlátozások vonatkozhatnak IP cím, DNS név, illetve felhasználói azonosítás alapján. Tipikusan minden levelezı szerver továbbküldi a helyben feladott leveleket (zaz a loop back 127.0.0.1 címrıl érkezıket), ilyennek minısülnek egyébként a felhasználói átirányítások is. Sok levelezı szerver más leveleket egyáltalán nem továbbít, ezek klasszikus értelemben nem is végeznek relay szolgáltatást. Gyakran a szerverhez tartozó hálózat gépeirıl érkezı leveleket is továbbküldik, általában az azonos IP tartomány, vagy az azonos domain alapján. Sok helyen lehetséges a felhasználói azonosítás is, melynek lényege, hogy a levelezı szerver jogosult felhasználói felhasználónevük és jelszavuk megadásával bárhonnan képesek az adott szerveren keresztül levelet küldeni. Sajnos, az összes felsorolt szőrési módszernek van gyenge pontja. Az IP címszőrést könnyedén át lehet lépni IP spoofing-al, proxy-k igénybevételével. Így persze az általunk bitorolt IP cím DNS bejegyzését is használjuk, a felhasználói jelszavak pedig gyakran gyengék, könnyen megfejthetık, illetve gyenge titkosítás esetén a hálózati forgalomból lehallgathatók. A spam egyébként már nem csak az emailekhez kötıdı fogalom, spam-ek jelennek meg már a google keresési eredményei közt is. Az alábbi oldalon ezeket jelenthetjük be:
http://www.google.com/contact/spamreport.html Hoax A Hoax ugratást, átverést jelent, és az ilyen leveleknek sok típusa létezik, a veszélyesebbek általában jelszavainkat próbálják megszerezni, ami korántsem olyan vicces, mint egy átlagos beugratás. Íme egy klasszikus példa:
31/102
A levél jól követi az eBay nemzetközi internetes árveréssel foglalkozó cég stílusát, és egy hihetı linket is tartalmaz. A linket azonban természetesen nem a linkként megjelenı szöveg vezérli, hanem a HTML forrás A elemének értéke. Lássuk ennek a html típusú levél forrásának egy részletét: ... https://signin.ebay.com/ws/eBayISAPI.dll?SignInFPP&UsingSSL=1&email=
32/102
Jól látható hogy a https://signin.ebay.com.... tehát egy eBay-es cím helyett valójában a http://82.104.216.141 címre jutunk a hivatkozásra kattintva. Ez az IP cím egyébként a host141-216.pool82104.interbusiness.it gépnévhez tartozik, ami láthatóan nem egy céges gépet takar. Itt egy az eBay-hez kísértetiesen hasonló oldal vár ránk, és amint megadjuk jelszavunkat, máris beugrottunk, átvertek minket, és visszaélhetnek adatainkkal a késıbbiekben. Egyébként a levél teljes fejlécét megtekintve is láthatunk egy furcsaságot: From [email protected] Fri Nov 4 17:43:20 2005 Return-Path: Received: from alfa.pte.hu ([email protected] [193.6.50.105]) by gamma.ttk.pte.hu (8.13.5/8.13.3/szszk-8) with ESMTP id jA4GhF79019695 for ; Fri, 4 Nov 2005 17:43:20 +0100 Received: from localhost (localhost [127.0.0.1]) by alfa.pte.hu (Postfix) with ESMTP id 44E604A85E1 for ; Fri, 4 Nov 2005 17:43:14 +0100 (CET) Received: from alfa.pte.hu ([127.0.0.1]) by localhost (alfa [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 22666-03 for ; Fri, 4 Nov 2005 17:43:12 +0100 (CET) Received: from qube3.po.sanukimate.com (unknown [221.186.122.228]) by alfa.pte.hu (Postfix) with ESMTP id EBA8B4A85AF for ; Fri, 4 Nov 2005 17:43:11 +0100 (CET) Received: from qube3.po.sanukimate.com (localhost [127.0.0.1]) by qube3.po.sanukimate.com (8.12.10/8.12.10) with ESMTP id jA4Gib7G011808 for ; Sat, 5 Nov 2005 01:44:37 +0900 Received: (from admin@localhost) by qube3.po.sanukimate.com (8.12.10/8.12.10/Submit) id jA4GiapX011806; Sat, 5 Nov 2005 01:44:36 +0900 Date: Sat, 5 Nov 2005 01:44:36 +0900 Message-Id: <[email protected]> To: [email protected] Subject: you are required to verify your eBay account From: eBay Content-Type: text/html X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at pte.hu Status: R Tehát a levél a qube3.po.sanukimate.com címrıl érkezett, és köze sincs a feltüntetett eBay.com-hoz. Ne gondoljuk, hogy ezek a levelek nem képviselnek komoly veszélyt, szép számmal akadnak bankokat utánzó levelek is:
33/102
Külön csemege, hogy ebben a hamisított levélben felszólítanak, hogy ne válaszoljunk a levélre (mert ebben az esetben az odahamisított feladó, ez esetben a bank valódi ügyfélszolgálata kapná meg válaszunkat, akik lehet, hogy lépéseket is tennének az ügyben ). Lánclevelek A lánclevelek kártékony hatása legtöbbször kimerül a rendszer és a postafiókok túlterhelésében, ez azonban, ha nem is közvetve, de további károkat okozhat, leveleink késhetnek, és pl. egy kvóta túllépés miatt el is veszhetnek. A lánclevelek feladóinak és továbbküldıinek egyik fı és téves gondolata abból fakad, hogy az email „ingyen van”. Valóban nincs külön díjazás, de internetes elıfizetésünkben megfizetjük ennek az árát is. Példa az államigazgatástól: Egy állítólag rákos kisfiú - aki "évek óta egy osztrák kisváros kórházában fekszik" - zsákszámra kap postán leveleket a magyar államigazgatás hivatalaitól, kis és nagy cégektıl, állami vállalatoktól, egyetemektıl, csupa "komoly helyrıl". A
34/102
kisfiú nem pénzt kér, csupán Guinness-rekordot szeretne dönteni, ezért levelét minél több helyre szeretné eljuttatni a világban. A baj csak az, hogy a levél átverés, a kisfiú nem létezik, levele mégis évek óta kering Magyarország, Svájc, Németország, Ausztria, Spanyolország és még ki tudja, hány ország postáin. A lánclevél teljesen ártalmatlan, nem kérnek benne például pénzt, a címzettnek csak annyit kell tennie, hogy tíz további címre elküldi a levelet, és küld egy példányt a kisfiúnak - akinek még a nevét sem tartalmazza a felkérés - az alsóausztriai tullni kórházba. A továbbított leveleknek tartalmazniuk kell a láncban szereplı címek listáját. Billiárdszor billiárd levelesláda "Mellékelten megküldjük egy rákos kisfiú kérését, amely szerint egy levelezési lánccal szeretne bekerülni a Guiness Rekordok Könyvébe. Kérjük, hogy a célja elérése érdekében szíveskedjen ezt a levelet és mellékleteit 10 munkahelyre vagy civil szervezetnek továbbítani, ezzel hozzájárulva a kisfiú álmának megvalósulásához. Kérjük, ügyeljen arra, hogy a lánc ne szakadjon meg! Az Ön által írt levélbıl küldjön egy példát a kisfiúnak is!" - áll például az Országos Rendırfıkapitányság által továbbított levélben. Az ORFK elküldte a levelet többek között a Rendırtiszti Fıiskolának, a Nemzetbiztonsági Hivatalnak, az Igazságügyi Minisztériumnak. Garamvölgyi László szóvivı az Indexnek azt mondta, rendkívüli módon gusztustalannak tartja, hogy valaki ilyennel képes viccelni. Nem gondolta, hogy ellenırizni kellene a levél valódiságát, hiszen a megkeresés nem magánembertıl érkezett, hanem a Vám- és Pénzügyırségtıl. A rendırségi szóvivı azt a tanulságot vonta le, hogy a jövıben ellenırizni kell az ilyen jellegő megkereséseket. Ha a birtokunkba került harminc levél valóban láncot képez (egymás utáni lépcsıkbıl valók), és minden levelezıtárs tíz újabb címzettnek továbbküldte - ami azért nehezen képzelhetı el -, akkor összesen több mint tíz a harmincadikon darab levelet kézbesített (volna) a posta belföldre vagy külföldre, ezenkívül tizedennyit az ausztriai kórházba. (Ha minden láncszem továbbküld tíz levelet, a levelek száma láncszemenként hatványozódik. Az elsı tíz címre küld levelet, ez a tíz már összesen száz újabb címre postáz (110 elküldött levél), a száz cím további ezerre (1110 levél). Az osztrák kórház, amely csak egy levelet kap minden egyes továbbküldés alkalmával, elsı lépésben csak egyet, másodikban tízet, harmadikban száz (összesen 111) levelet kap.) A lánclevéllel az állami tulajdonban álló Magyar Posta kétségkívül nagyon jól jár, még akkor is, ha a levél terjesztıi között sok az állami intézmény, vagyis a postaköltség visszaforog a büdzsébe. Természetesen valószínőbb, hogy nem mindenki továbbítja a levelet, billiárdszor billiárd darab levelesláda talán az egész Univerzumban nincsen. (Ha a Földön kellene elintézni ezt a forgalmat, a hatmilliárd embernek úgy kétszáztrillió postacímmel kellene rendelkeznie fejenként.) Komoly helyrıl jött Az általunk megkérdezett levelezık meglehetısen jóhiszemőnek tőntek. Az Altus Rt.-nél például azt közölték, fel sem merült bennük, hogy a lánclevél átverés, hiszen olyan komoly címeket láttak a listán, mint számos minisztériumé, állami hivatalé és cégé. Az Oktatási Minisztériumban egy titkárnı intézte a levélküldést: Mint az Indexnek elmondta, megbízhatónak találta a feladót, a Semmelweis Egyetem Humánmorfológiai Intézetét. Az intézet ugyancsak megbízott a levél feladójában, az Igazságügyi Minisztériumban, és mint mondták, egészségügyi intézet lévén érzékenyebbek az ilyen dolgokra. A BKV Rt. protokollosztályán elmondták, hogy idén még nem kaptak ilyen levelet, de korábban többet is. "Az a kisfiú már nyugdíjas lehet" - panaszolta a levél továbbításával megbízott munkatárs. A többi megkérdezett hivatalban is hasonló indokkal továbbították a levelet, általában az "XY továbbította felénk egy rákos kisfiú kérését..." kezdető szöveggel. A feladók megbízhatósága mellett az is közrejátszott a levél gyors terjedésében, hogy bár emailen az utóbbi idıben virágkorukat élik a hasonló átverések, a klasszikus postai lánclevelek kimentek a divatból, a tullni kisfiú levelén kívül egy-két ilyen levéllel találkoztak még. A Vám- és Pénzügyırség például közölte, ezt a levelet ugyan továbbküldték, de a határırségtıl kapott legutóbbit - amirıl kiderült, hogy hamis már ık is a szemétbe dobták. Az Indexnél lévı láncdarab elsı szeme egyébként egy dunakeszi illetıségő kereskedelmi-szolgáltató kft., amely még 2003-ban továbbította a leveleket. A cégnél elmondták, hogy a levél Dunakeszin és környékén lévı cégek között keringett tavaly tavasszal, áprilisban ık is továbbküldték, de több mint egy év múlva, három hete ismét kaptak belıle. Forrás: index.hu Anti -lánclevél Ez a levél elıször 1762. május 4-én jelent meg az interneten. A feladója teljesen ismeretlen. A tartalma is az volt, akkor még. Ma már tudjuk. Ez a levél egy balsors-kreáló e-mail. Aki megkapja és továbbküldi, garantáltan rosszul fogja érezni magát. 1762. május 4-én, rögtön megjelenése után Jean-Pierre Belmont francia szakács továbbküldte, mert nem értette a magyar szöveget.
35/102
Azonnal meghalt. A tolmács szerencsére megértette, ezért nem is küldte tovább. Másnap talált egy elsüllyedt kincseshajót a kerti medencéjében. 1848. március 15-én, miután felkelt, egy Petıfi Sándor nevezető magyar költı továbbküldte egy barátjának. Ezután már csak találgatások vannak hollétérıl. 1933. január elsején Philip Grant amerikai tızsdemágnás újévi üdvözlet gyanánt elküldte az anyósának. Pár hónappal késıbb kitört a gazdasági világválság, ezért öngyilkos lett. 1947. november 27-én Peng Xiao szerzetes a végsı megvilágosodás elıtti utolsó üzenetéhez a világnak csatolta ezt a levelet. Ezután meghalt, és örökre kizáródott a reinkarnációs körforgásból. Na, ezek után, ha el mered küldeni bárkinek ezt a levelet, tutira rád zuhan egy zongora. Tehát ne tedd! Az efféle kéretlen és ártó leveleken kívül van még néhány hiányosság, amivel szembe kell néznünk. 1. A levelek az interneten kódolatlanul kerülnek átvitelre, azaz tartalmuk könnyedén lehallgatható a hálózaton (ennyit az e-mailben elküldött jelszavakról). 2. Mint láttuk, feladót könnyő hamisítani, így az e-mail nem hiteles. 3. A jelenleg elterjedt ingyenes webes levelezı szolgáltatások sem alkalmaznak titkosítást (vagy csak a fizetı ügyfelek számára), így a hálózat lehallgatásával ezen rendszerekben érvényes azonosítóinkat illetve jelszavainkat is lehallgathatják. IRC, Talk, webchat Ezen szolgáltatások klasszikus értelemben nem tartoznak a legveszélyesebbek közé. Természetesen minden programban és modellben akadhat hiba. Mégis, az interaktív beszélgetések esetében a legtöbb probléma a felhasználóktól ered. Ilyen hibaforrás - a régebben a rádiózásban elterjedt elnevezéssel élve - az „üres szoba effektus”. A legtöbben néhány mondatnyi beszélgetés után hajlandóak kölcsönadni telepítı kódjaikat, elmesélik, mivel foglalkoznak, mi fut a gépükön, milyen színő papucs van rajtuk, stb. egyszóval lényegtelen és lényeges adatokat. Egy támadás sikere például nagyban múlik azon, hogy tudja-e a támadó, milyen operációs rendszert használunk, szoktunk-e frissíteni, milyen tőzfalat használunk vagy nem használunk, stb. Nem beszélve a tipikus átverésekrıl, mint pl. 19 éves vagyok szıke, stb. küldök egy képet, de kapcsold ki a tőzfalat addig, mert nem akar menni a DCC* .... • A DCC Direct client to client communication, eltérıen a legtöbb beszélgetıs rendszer alapvetı viselkedésétıl, amely a kliens-szerver modellen alapul, közvetlen kapcsolatot valósít meg a kliensek között. Sokszor már puszta belépésünkkel megadjuk sok-sok embernek az IP címünket. Sok ilyen szolgáltatás kínál csatornákat (szobákat) is. Léteznek elvakult beszélgetés-függık, akik égnek a vágytól, hogy különbözı csatornákat „elfoglaljanak”. Erre az egyik lehetıség a csatornán beszélgetık gépeinek támadása. Így válhat az „ártatlan” beszélgetés okká a támadó számára. FTP – file transfer protocol A legkomolyabb probléma, hogy a jelszavas azonosítás kódolatlanul történik, így a jelszavak a hálózaton könnyedén lehallgathatók. 4. Jelszavak A jelszavakról Miért is fontosak a jelszavak? Ahhoz, hogy az Interneten vagy az intraneten igénybe vehessünk bizonyos szolgáltatásokat, sok esetben van szükség valamilyen formában való azonosításunkra. Ennek a legegyszerőbb példája, hogy a gépünket azonosítjuk valamilyen egyedi azonosítóval, például IP címmel. Ez teszi lehetıvé az Interneten a kommunikációt. Az azonosítás azonban sok szolgáltatás esetében nem elég. Ilyen esetekben legtöbbször az azonosítás mellett azt is egyértelmővé kell tennünk, hogy rendelkezünk-e megfelelı jogosultságokkal egy adott szolgáltatás
36/102
használatához, illetve elképzelhetı az is, hogy különbözı jogosultságokkal is rendelkezhetnek a szolgáltatást használók. Amikor számítógépünk elindul, majdnem minden esetben egy felhasználó nevet (login name/ user name) és egy hozzá tartozó jelszót (password) is meg kell adnunk, hogy azonosítsuk és hitelesítsük magunkat. Hasonló a helyzet, amikor egy lokális hálózatba jelentkezünk be, hogy a rajta keresztül elérhetı szolgáltatásokat – jogosítványaink függvényében – elérhessük, tudjuk használni. Nincs ez másként sok internetes szolgáltatás esetében sem. Legjobb példa a talán mindenki számára ismert és használt elektronikus levelezéshez kötıdı postafiókunk, amihez való hozzáférésünk esetén azonosítani és hitelesíteni kell magunkat, vagy a mobil/internetes banki szolgáltatások igénybevételéhez használt felhasználói név/jelszó párosok, de sorolhatnánk még a jelszavas hitelesítéshez kapcsolódó szolgáltatásokat is. Talán a fenti példákból is látszik, és érdemes megjegyeznünk: a jelszavas hitelesítés minket szolgál, minket véd, nem pedig valamilyen direkt a bosszantásunkra kitalált dolog! A hétköznapi életben is használunk jelszavakat, legfeljebb nem mindég tudatosul bennünk ez. Ilyen jelszó a bankkártyáink, vagy mobiltelefonjaink SIM kártyáinak használatához kapcsolódó PIN (Personal Identification Number), lakásunk, irodánk riasztó kódjai, sıt, az autónk riasztója által küldött jelsorozat is. Ez utóbbi ráadásul olyan automatizált kódküldı-fogadó-ellenırzı rendszer, ahol többnyire nem nekünk kell a kódokat (jelszavakat) megjegyeznünk, karbantartanunk. Ezért -
ne áruljuk el, mert kinek jutna eszébe a PIN kódját közkinccsé tenni legyen nehezen kitalálható, ha erre módunk van. Bevett szokás, hogy legalább nyolc karakter hosszú, kis- és nagybetőket, valamint számokat is tartalmazó jelszavakat használnak. Ennek megjegyzése persze kissé nehezebb, de a biztonság érdekében megéri. olyan jelszót (jelszavakat) válasszunk, amit meg is tudunk jegyezni. Nem sokat ér az a jelszó, amit aztán felírva egy papírra a számítógépünk monitorára kiragasztunk. cseréljük rendszeresen, ha erre módunk van szüntessük meg az accountunkat, ha már nincs rá szükségünk különbözı jogosultsági szinteken használt szolgáltatások esetében külön-külön accountot és jelszavakat használjunk ha több jelszót is kénytelenek vagyunk használni, akkor ezek legyenek különbözıek, így nem fordulhat elı az, hogy egyik jelszavunk kiszivárgásakor az összes általunk elért szolgáltatást más is tudja használni.
Szokták volt mondani, hogy az elektronikus levelezés egyfajta állatorvosi ló olyan értelemben, hogy amilyen tipikus hibákat el szoktak követni jelszóhasználattal kapcsolatban, azt ennél a szolgáltatásnál el is követik. Az egyik nagyon veszélyes, és kevéssé átgondolt hozzáállás a „Mi baj lehet belıle, ha valaki megtudja az elektronikus postafiókom jelszavát? Legfeljebb elolvassa a leveleimet. Nem írok e-mailben semmi olyat, amit adott esetben ne olvashatna el más.” Ez a fajta gondolatsor azonban nem veszi figyelembe, hogy aki megtudja a jelszavunkat, ugyanolyan jogosultságokkal használhatja az adott szolgáltatást, mint amilyenekkel mi rendelkezünk. Ez pedig a postafiókunkkal kapcsolatban nemcsak azt jelenti, hogy olvashatja a leveleinket, hanem azt is, hogy küldhet is a nevünkben levelet. Okulásképpen álljon itt egy példa, egy valódi eset tanulsága: << Tisztelt Tanár Úr! A múlt héten valaki feltörte a postafiókomat, és a nevemben obszcén leveleket küldött ki sok embernek. Ha a Tanár Úr is kapott volna ilyet, elnézést kérek, nem én voltam! >> Dátum, aláírás Érdemes tehát megfontolni, vajon mennyire is állja meg a helyét az iménti gondolat, hogy nem is olyan fontos a jelszó titokban tartása. Nem lehet eléggé hangsúlyozni, hogy a jelszó kényes pontja a biztonságnak. Semmiképpen se használjunk értelmes szavakat, és fıként semmi olyasmit, ami hobbinkhoz, munkánkhoz, vagy bármiféleképpen hozzánk köthetı.
37/102
Ne használjuk mindenhová ugyanazt a jelszót! A sok szolgáltatás közt szinte biztosan akad kódolatlan, vagy gyengén kódolt, esetleg olyan, amit néha „kölcsönadunk” valakinek. Mindig figyeljünk arra, mikor kell megadnunk jelszavunkat és mikor nem. Ne hagyjuk magunkat átverni felugró ablakokkal, e-mailekkel stb. http://ebizlab.hit.bme.hu/pub/lrpasswd.html) Közlemény az Elender jelszavakról, 2000. február 3. A napvilágra került Elender jelszavakról A Budapesti Mőszaki Egyetem Híradástechnikai Tanszék Üzleti Adatbiztonság Laboratórium nyomatékosan felhívja az Elender ügyfelek figyelmét arra, hogy változtassanak jelszót! A kódolt jelszavak analízise során a labor 7643 felhasználói azonosító/jelszó párost sorolt a könnyen feltörhetı kategóriába, melyeket a kódolt jelszavak nyilvánosságra kerülése után egy nem túl képzett feltörı is viszonylag kis munkával "visszafejthet". Ez a jelszavak 23%-át jelenti. A jelszavak jelentıs része sorolható feltörhetınek bárki által, akinek birtokába kerültek a kódolt információk. Felhívjuk a figyelmet arra is, hogy még a legjobb, teljesen véletlenszerő jelszót használó ügyfeleknek is célszerő lecserélniük jelszavukat, mert a feltörı minden valószínőség szerint a rendszerprogramokat vagy bizonyos beléptetéseket naplózott, így még a feltörésnek legjobban ellenálló jelszavak is ismertek lehetnek az ismeretlen elkövetıknek, akik ezzel bármikor visszaélhetnek. A jelszóváltoztatás nemcsak az ügyfelek magánügye, mert egy kikerült felhasználói azonosító-jelszó páros újabb támadásokra használható fel, így a felhasználóknak nem csak joga és lehetısége, hanem kötelessége is a megfelelı jelszó használata! • • • • •
Statisztikai adatok a legkönnyebben feltörhetı jelszavakról Jelszavak cseréje, frissessége Tanácsok jelszavak választásához, kezeléséhez Vélemény a nyilatkozatokról A feltörés etikai vonzata
Statisztikai adatok a legkönnyebben feltörhetı jelszavakról Amint az nyilvánosságra került, ismeretlen tettes ezév január 28-án illetéktelenül lecserélte az Elender Informatikai Rt. Internetes nyitó oldalát, és azon egyebek mellett gyakorlatilag az összes ügyfél, azaz több mint 30000 kódolt jelszót helyezett el. A jelszavakat az Elender rendszere is, mint a világ számos számítógépe, titkosított formában tárolja. Ezt a titkosított formát közvetlenül nem lehet dekódolni, viszont próbálkozással kideríthetı a jelszó. Ezt szótárfájlok és szabályok segítségével lehet elvégezni. Az Üzleti Adatbiztonság Laboratórium, ugyanazt a módszert használva, mint bármelyik feltörı, ellenırizte le ezeket a jelszavakat feltörhetıség szempontjából. Az általános tapasztalat szerint a jelszavak 25% mondható könnyen feltörhetınek. A laboratórium néhány napi munkával a jelszavak 23,3%-át, 7643 db-ot tudott megfejteni. Hasonló módszert alkalmazva bárki hasonló eredményt kaphat. Jelszótörési statisztika Visszafejtett jelszavak: 7643 Teljes jelszóbázis: 32796 Még nem megfejtett: 25153 Jelszavak statisztikája Csak számból álló jelszó: A 25 leggyakoribb jelszó elıfordulása: 0-3 karakteres jelszavak száma: 4 karakteres jelszavak száma: 5 karakteres jelszavak száma: 6 karakteres jelszavak száma: 7 karakteres jelszavak száma:
Az Elender felhasználóinak jelentıs része - mint sok más számítógépes rendszer felhasználói - sajnos nagyon rossz jelszavakat használ. Statisztikai adatainkat csak a megfejtett jelszavakra építjük, a nem megfejtett jelszavak természetesen módosíthatják a statisztikát. Megállapítható: a legtöbbet használt 25 jelszó között 174-szer fordult elı magyar keresztnév vagy becenév, további 385 esetben pedig valamilyen egyszerő szó (fınév vagy cégnév) vagy jelszópróbálkozás (mint például "titok", ami meglepıen egyszer sem szerepelt). Az elsı 100 leggyakoribb jelszó pedig mintegy 1100 felhasználói azonosítót fed le! A leggyakoribb jelszavak listáját vizsgálva feltőnik pár igen különös jelszó, ami azt tükrözi, hogy a felhasználók nincsenek tisztában a jelszavak jelentıségével: egy-egy cég összes felhasználójának egyszerő, könnyen kitalálható alapértelmezett jelszó volt beállítva melyet nem - vagy csak igen kevesen - módosítottak. Igen sajnálatos természetesen az ilyen biztonsági politika, mert ez mind a felhasználó cég adatait, mind a szolgáltató hálózatát veszélyezteti. A leggyakoribb jelszavakat a feltörık listákban tárolják, így ez alapján a pár száz legismertebb jelszó feltörését egy közepes PC segítségével és a kódolt jelszavak ismeretében kb. egy perc alatt végezhetik el. Közismert, hogy évekkel ezelıtt a híres Internet Worm is részben úgy terjedt, hogy a magában hordozott 432 db legegyszerőbb jelszót próbálgatta ki a különbözı rendszerekben. Megvizsgáltuk az Elender jelszófájlját is ezzel a 432 db angol jelszóval, és ebbıl összesen 64 db felhasználói azonosító/jelszó párost találtunk. Ezeknek a jelszavaknak a használata lehet talán a leggyengébbnek nevezhetı, mert ezeket nemzetközi szinten sorolhatjuk a leggyengébbek közé. Az átlagos jelszóhossz 5,66 karakter, ami nem túl jó arány, mert biztonságosnak csak a 6-7, de leginkább 8 karakter hosszú jelszavakat tekinthetjük. Az Elender esetén is használt DES jelszókezelés esetén a rendszer csak a jelszavak elsı 8 karakterét azonosítja, így ennél hosszabb jelszavak használata a biztonságot nem befolyásolja. Négy karakteres, vagy rövidebb jelszavak nagyon könnyen feltörhetık: ha egy jelszóról sejtjük, hogy 4 karakteres vagy rövidebb, egy közepes sebességő számítógépen körülbelül egy nap alatt a jelszó biztosan meghatározható a kódolt jelszó ismeretében az összes lehetıség kipróbálásával. A jelszavak hosszairól adott statisztikához megjegyezzük, hogy noha 8 karakteres jelszóból a listában csak 816 szerepel, ez nem azt jelenti, hogy kevesen használnak biztonságos, 8 karakteres jelszót, hanem azt, hogy ezeket sokkal nehezebb megfejteni általában, így kevesebb vált számunka is ismertté. A jelszavak cserélése, frissessége A napvilágra került titkosított jelszófájlokban feljegyzésre került, hogy melyik felhasználó mikor cserélt utoljára jelszót. Jelszó cserélési statisztika 1996-ban lett lecserélve utoljára: 1997-ben lett lecserélve utoljára: 1998-ban lett lecserélve utoljára: 1999-ben lett lecserélve utoljára: 2000-ben lett lecserélve utoljára: A jelszavak átlagos életkora:
39/102
457 db 2142 db 4956 db 21256 db 4333 db 333 nap
Összeadva a számokat feltőnhet, hogy az összeg nem egyezik a jelszavak számával. Ennek az az oka, hogy néhány valószínőleg nem valós - adatot nem vettünk figyelembe: egyes jelszócserélı megoldások valószínőleg nem megfelelıen tartják karban a megfelelı mezıt a jelszófájlban. A legfrissebben lecserélt jelszavak a fájl alapján 2000. január 27-én cserélıdtek, ami alátámasztja a hacker állítását, hogy a fálj friss. Ezen a napon 141 ember cserélt jelszót. A jelszavak cseréje akár havonta indokolt lehet, de a két évnél régebben módosított jelszavakat mindenképpen érdemes lecserélni. Miután a január 8-i feltörés után az Elender kb. 3000 felhasználójának cserélte le jelszavát, idén, saját akaratából csak kb. 1500 ember cserélte le jelszavát. Ennek oka lehet, hogy az Elender korábban nem hozta köztudomásra, hogy biztonsági rendszerében nem sikerült kideríteni azt sem, hogy mely gépek voltak érintettek. A felhasználók ezek után a maguk védelmének megerısítésére nem módosítottak jelszót, csak igen kis számban. Az Elender az újabb feltörés alkalmával felhívta a figyelmet arra, hogy mindenkinek célszerő lecserélnie jelszavát, azonban a fenti számok tanúsága szerint a felhasználók maguktól nem fogják hamar lecserélni jelszavaikat. Természetesen nincs jó módszer, mert egy esetleges teljes jelszócsere, amely minden ügyfélre kötelezıen kiterjed igen bonyolult és nehezen szervezhetı meg. Az átgondolt biztonságpolitika már a szerzıdések megkötésekor közölt és kapott információkkal segíthette volna a szervezett jelszócserét, pl. a mobiltelefontársaságoknál alkalmazott többszintő titkos kódok alkalmazásával (lezárt borítékban átadott PUK,PIN1,PIN2). A jelszócsere kikényszerítésére vonatkozó elfogadható, biztonságos és kényelmes megoldást sajnos mi sem tudjuk. A fenti igen könnyen megfejthetı jelszavak tömeges internetes elterjedése aligha gátolható meg, és a szinte bárki által elérhetı azonosítók használata etikailag már sokkal kevésbé kérdıjelezhetı meg, mint ha azok nincsenek a nagy nyilvánosság elé tárva. Tanácsok jelszavak választásához, kezeléséhez A "jó" jelszó választáshoz ismerni kell, hogy mi ellen kell védekezni. A Unix alapú rendszerekben használt jelszókezelés bemutatására szorítkozunk (azt is általánosságokban), hiszen az Internet szolgáltatók nagy része ilyen rendszert használ. Azonosítás és a jelszavak tárolása Minden felhasználónak van egy jelszava. A rendszer akkor engedi a felhasználót belépni, ha az általa megadott jelszó egyezik a rendszerben nyilvántartott jelszóval. Mivel a jelszavak nyílt formában történı tárolása alapvetı biztonsági kérdéseket vet fel, a rendszer a jelszavakat kódoltan tárolja. A kódolt tárolás a következıt jelenti: a rendszer a jelszót úgy kódolja, hogy azt ne lehessen dekódolni. Azaz a kódolt jelszóból nem lehet megkapni a jelszót. (** általános esetben a kódolás visszafordítható mőveletként értelmezendı: a kódolt szövegbıl visszaállítható az eredeti). Kódolt jelszótárolás esetén az azonosítás menete a következı: a felhasználó megad egy jelszót, a rendszer kódolja, majd ezt a kódolt jelszót hasonlítja össze a rendszerben tárolt kódolt jelszóval. Amennyiben a két kódolt jelszó egyezik, a rendszer elfogadja az azonosítást. Jelszavak támadása töréssel és a védekezés Az Unix rendszerek alatt legfeljebb nyolc karakter hosszú jelszavak használhatók (** DES alapú jelszótárolás esetén, azonban egyre több rendszerben választható az MD5 alapú jelszótárolás: ez esetben tetszıleges hosszúságú jelszavak használhatók). A jelszavakban kis- és nagybetők, számok, valamint speciális karakterek használhatók, összesen 96 féle karakter. Kis szorzással látható, hogy "elég sok" jelszó lehetséges. A lehetıségek nagy számát figyelembevéve kizártnak tőnik egy jelszó kitalálása: a Lotto 5-sel vetekszik a találati esély. A fenti statisztikák alapján azonban látszik, hogy a jelszavak jelentıs része nem a teljes halmazból kerül ki, hanem egy töredékébıl: nevekbıl, azoknak kis mértékő módosításából stb. A támadó ebbıl a megfontolásból nem úgy támad, hogy minden lehetséges variációt kipróbál (az túl lassú és viszonylag eredménytelen lenne), hanem vesz egy szójegyzéket a leggyakoribb jelszavakkal, s azokat kezdi próbálgatni: minden lehetıséget lekódol a rendszer algoritmusával, majd ellenırzi az eredményt. Amennyiben a kipróbált jelszó kódolt formája egyik kódolt jelszóval sem egyezik, ismét próbálkozik. Ezt nevezik szótár alapú támadásnak (fontos megjegyezni, hogy egy támadó szótárában nemcsak igazi szótárban elıforduló szavak szerepelhetnek, hanem bármely nyilvános fórumon, lapon megjelent szavak is!). A fenti megfontolásból következik, hogy minden publikus helyen elıforduló és ismert szavakat illetve származékaikat kerülni kell a jelszavakban. A legjobb jelszavak a véletlen jelszavak: a jelszóban szereplı karakterek között semmilyen összefüggés nincs (mintha "96 oldalú dobókockát" dobálnánk, lapjain az elıfordulható karakterekkel). Általános felhasználónak a véletlen jelszavak nem feltétlenül megfelelıek:
40/102
nincs hozzá megfelelı eszköze: boltban nem lehet jelszógeneráló kockát kapni - internet lázban égve a felhasználónak valószínőleg nem lesz kedve házilag készíteni egyet, valamint az erre alkalmas programok sincsenek elterjedve (és általános személyi számítógéppel eleve lehetetlen valódi véletlent generálni) • nehezen megjegyezhetı: a felhasználó felírja valahova, ami újabb veszélyeket hordoz magában Jelszógenerálásra sok helyen ajánlják a következı módszert: kedvenc versünk, mondatunk szavainak kezdıbetőinek választása. Például: - Talpra magyar, hí a haza! - - Itt az idı, most vagy soha! - esetén a jelszó: "Tmhah!Ia". Látszólag elég véletlennek tőnik az így keletkezett jelszó, de azért van néhány szembetőnı hiányossága: • valószínőleg nagy betővel fog kezdıdni • kicsi a valószínősége számjegy elıfordulásának • speciális karakterek sem várhatók • megfelelı módszerrel ez a megoldás is támadható • Egyéb veszélyek Fontos észrevenni, hogy az azonosítás során a rendszer a nyílt jelszót kapja meg, azaz a jelszavak alapesetben nyíltan mennek át a hálózaton, azaz bárki lehallgathatja ıket! Ez az eset áll fenn például a levelek letöltésekor, ftp-telnet szolgáltatások során. Ezek ellen nem mindig triviális a védekezés, bár egyes szolgáltatások esetén (mint például az SSH) ez a gond nem merül fel. •
Vélemény a nyilatkozatokról Több cikkben említésre kerültek a következı dolgok, melyekrıl a laboratórium nyilatkozik: A szolgáltató bérelt vonalas üzleti ügyfeleit, akik saját mailszerverrel rendelkeznek, semmilyen formában nem érintette a betörés. Ha a bérelt vonali ügyfelek rendelkeztek más Elender-eléréssel, például egyes munkatársak otthonról történı telefonos bejelentkezéséhez, akkor ezek a jelszavak, még ha nagyon bonyolult, véletlenszerő jelszavak is voltak, a feltörık kezére juthattak. A kijutott "root" jelszavak is igen bonyolult, erıs jelszavak voltak, mégis sikerült a feltörıknek kideríteni azokat. A felhasználók gyakorta használnak azonos jelszót különbözı rendszereken, így aki saját béreltvonali mailszervert üzemeltet, vagy bárhol máshol szervert üzemeltet és vannak Elenderes felhasználói, annak célszerő a jelszócserét kérni az adott felhasználótól. Noha a lapon lévı felhasználói jelszavak kódolva voltak és így nem használhatók, megfelelı kódtörı szoftverrel rendelkezı hackerek hozzájuthatnak a könnyebben visszafejthetı (pl. a felhasználói névbıl levezethetı, vagy egyszerőbb értelmes szavakból álló) jelszavakhoz. Mint láttuk, a jelszavak igen nagy százalékát, kb. a negyedét jelentik a feltörhetı jelszavak. Sokkal nyomatékosabban hívjuk fel a felhasználók figyelmét: jelszócsere nélkül gyakorlatilag senki adatai nincsenek biztonságban! Az ilyen kódfeltörés kísérlete annak ellenére nem zárható ki, hogy a honlapra került adatok ilyen továbbhasznosítása (tehát feltörése és felhasználása) önmagában is bőncselekmény. A kódok feltörését véleményünk szerint önmagában nem minısíthetjük bőncselekmények, hiszen itt gyakorlatilag egy adatfájlon végzett matematikai mőveletrıl van szó. Azonban a jelszavak felhasználása bármilyen módon már felveti a bőncselekmény lehetıségét, de a kategórikus kijelentés ma inkább csak fenyegetésnek minısül. (És jogi szempontból nem csak a feltörık és próbálkozók jogállásának kérdése merül fel, de a szolgáltató felelıssége is kérdéses az ügyben) Az ott bizonyítékként bemutatott jelszófájl alapján Kóka János, az Elender Rt. vezérigazgatója úgy nyilatkozott: Minden valószínőség szerint az elsı betörés elkövetıje volt a chatroom vendége. Miután az Elender a betörı tevékenységét nem tudta felfedni, ezért elépzelhetı az is, hogy nem egy, hanem több betörı tevékenykedett már régóta az Elenderes gépeken. A jelszófájl alapján valószínősíthetıen csak annyi bizonyítható, hogy az illetı az elmúlt idıszakban képes volt jogosan vagy jogtalanul rendszergazdai jogosultságokat szerezni. Több helyen szerepelt, hogy a feltörés elkövetıje miután korlátlan jogosultságokat szerzett a rendszeren, eltőntette az összes terhelı bizonyítéknak felhasználható naplófájl bejegyzést. Ezek a naplófájl bejegyzések segítenék a tettes kilétének felderítését, és pontosan tudható lenne, merre járt, mit csinált, és valóban kereskedett, kereskedhetett-e az Elendernél tárolt információkkal. Az Üzleti Adatbiztonság labor ehhez azt a kiegészítést főzi, hogy átgondolt biztonságpolitikával, a modern, immár néha szabványos eszközök felhasználásával, vagy a mérnöki ész használata segítségével már kis befektetések mellett is elérhetı az, hogy egy esetleges feltörı ne tudja egyszerre több szerver jogosultságait megszerezni. Ilyen módszerek használatával elérhetı, hogy egy támadó ne tudja maradék nélkül törölni a bizonyító naplófájl bejegyzéseket, és kiindulópontot adhat a támadó felderítéséhez. Ezen módszerek egy része igen triviális, egy mintapélda a naplófájlok fizikai, papíralapú rögzítése (nyomtatása). Természetesen ezek a módszerek is kijátszhatók és megbolondíthatók, de az, hogy például a naplófájlok törlése ellen nem lehet védekezni, nem igaz.
41/102
A feltörés etikai vonzata A BME Híradástechnikai Tanszék Üzleti Adatbiztonság Laboratórium elhatárolódik az Elender ellen végrehajtott támadástól. A betörést akkor is elfogadhatatlannak tartjuk, ha ezáltal hívja fel a figyelmet arra, hogy a cégek és felhasználók nem tesznek meg mindent a biztonság érdekében. Sajnáljuk, hogy az Internet piac fejlıdésének elırehaládását is akadályozhatják az ilyen és hasonló esetek. Elfogadhatatlan és etikátlan hozzáállás egy biztonsági hibát lejáratás céljára felhasználni. Véleményünk szerint minden feltárt hiba feltárójának haladéktalanul tájékoztatnia kell a megfelelı személyeket a hiba lehetıségérıl, és esetleges kísérleteinek eredményérıl. A másik oldalról ugyanakkor elvárható a hibás rendszer tulajdonosának jóhiszemő, javító szándékú hozzáállása, azaz a jelentkezett hibákat ilyen esetben haladéktalanul ki kell küszöbölni, és az ügyfelek valamint az Internet egészének védelme érdekében ezután a védelem megerısítése várható el minden, az Internetre csatlakozott számítógép felelıs üzemeltetıjétol. Napjainkban sok támadás éri a felhasználókat különféle trójai programok által is, melyet egyes egyének direkt, célzatosan próbálnak más számítógépére juttatni. Fel kívánjuk hívni az elkövetık figyelmét arra, hogy noha maguk tevékenységüket többnyire csínytevésnek tekintik, valójában könnyen lehetnek különösen nagy értékben elkövetett bőncselekmények tettestársai. Egy bejuttatott, ám nem megfelelıen kezelt trójai program célpontot jelenthet más feltörıknek, akik már esetleg nem csak az elemi csínytevést célozzák meg, hanem egy cég belsı adatait próbálják ellenırzésükbe vonni. Ebben a tekintetben tehát nem lehet kis és nagy bőnrıl beszélni, a legkisebb csínyért is igen komoly felelısségre vonásra számíthatnak az elkövetık!
(Vajda István, Bencsáth Boldizsár, Bognár Attila Jelen cikk elızetes hozzájárulás nélkül, a forrás megjelölésével szabadon felhasználható. A megismert jelszavakat a cikk megírása után maradéktalanul töröltük. )
5. Kommunikáció az Interneten Kapcsolódás az Internetre Az elsı kérdés, ami felmerül az emberben, hogy hogyan is tudja kihasználni azokat a lehetıségeket, amelyeket az Internet nyújt. Ehhez elıször is ki kell alakítani egy kommunikációs kapcsolatot, ami alkalmas arra, hogy az Interneten található többi számítógéppel meg tudjuk magunkat értetni. Ez közel sem olyan egyszerő, mint amilyennek elsı látásra tőnik. Kell egy protokoll, ami mindenki számára biztosítja az egyértelmő szabályokat, a kapcsolatfelvétel módját, az azonosítást a küldı és fogadó között, és az üzeneteink, adataink célba juttatását. Ez az Internet protokollja, a TCP/IP (Transmission Control Protocol/Internet Protocol). Ez valójában nem egy protokoll, hanem több, egymásra épülı protokoll együttese, úgynevezett protokollcsalád. Ez azonban még nem elég, hiszen hiába rendelkezünk megfelelı protokollal, ha fizikailag nem csatlakozunk a hálózatok hálózatához, nem megyünk vele sokra. A másik fontos dolog, hogy valamilyen módon teremtsük meg a fizikai kapcsolatot egy olyan másik számítógéppel, ami már rendelkezik Internet kapcsolattal, vagy olyan számítógép-hálózatokban használt eszközzel, amin keresztül mi magunk is az Internet „részévé” válhatunk. Ez utóbbi feltétel teljesülése esetén aztán már csak annyi dolgunk van, hogy a megfelelı fizikai eszközhöz telepítsük a TCP/IP protokollcsaládot, hogy rajta keresztül képes legyen a számítógépünk az Interneten kommunikálni. Felmerül a kérdés azonban, hogy milyen módon tudjuk megteremteni a fizikai kapcsolatot. Ennek sok különbözı módja lehetséges. A legegyszerőbb talán az, ha a számítógépünk egy egyetemi hálózat része. Ilyenkor általában a helyi hálózat (LAN) egyúttal kapcsolódik az egyetemi nagy hálózathoz is, ami szinte minden egyben azt is jelenti, hogy adott a fizikai összeköttetés az internetes szolgáltatások igénybevételéhez is. Az egyetemi hálózatokban a számítógépeket karban tartó operátorok, rendszergazdák gondoskodnak arról, hogy a megfelelı programok a számítógépeken telepítve legyenek, és a helyi hálózatra való csatlakozást biztosító hálózati kártyák megfelelıen legyenek konfigurálva, beállítva akármilyen operációs rendszert is használunk az adott számítógépeken. Nekünk, felhasználóknak tehát nem kell, sıt nem is ajánlatos ezeket megváltoztatnunk, egyszerően csak használnunk kell az általunk óhajtott internetes szolgáltatást. Hasonlóan kényelmes helyzetben vagyunk akkor, ha beülünk egy internetes kávézóba (NetCaffee). A helyzet hasonló az elızıhöz, azaz a gépek „netre készen” várnak bennünket. Ilyenkor azonban elıfordulhat, hogy nem minden internetes szolgáltatás használható, csak azok, amelyeket az üzemeltetık elıre telepítettek a felhasználók számára. Ha mi mégis valami olyan programot szeretnénk használni, ami nincs elıre telepítve, a legritkább esetben van lehetıségünk és elegendı jogosultságunk ahhoz, hogy ezt magunk el tudjuk intézni. Ilyenkor a helyi hálózatot üzemeltetı operátorhoz vagy rendszergazdához kell fordulnunk a problémánkkal és igényeinkkel. De mi a helyzet akkor, ha otthonról szeretnénk internetezni?
42/102
Ahhoz, hogy otthoni számítógépünkrıl megteremtsük a kapcsolatot az internetezéshez, szükségünk van egy Internet szolgáltató cégre (ISP Internet Service Provider). Ez a cég lehetıséget biztosít (hasonlóan az egyetemi hálózatokhoz) arra, hogy valamilyen (általában telefon-) vonalon keresztül az ı Internetre csatlakoztatott szolgáltató gépével felvegyük a kapcsolatot, és ezen keresztül mi is használni tudjuk az internetes szolgáltatásokat. Ez a kapcsolat legtöbbször egy speciális pont-pont (point-to-point) kapcsolaton keresztül valósul meg, a mi számítógépünk és a szolgáltató számítógépe, speciális hálózati eszköze között. Ilyen esetben tehát egy újabb speciális protokollt kell használnunk csak emiatt, a csatlakozás kezelése érdekében, ez legtöbbször a PPP (Point-to-Point Protocol). Az egyik legelterjedtebb megoldás a hagyományos (analóg) telefonvonalon keresztül történı csatlakozás. A számítógép számára azonban ez problémás, hiszen a számítógépeink digitális jelekkel dolgoznak. Szükség van tehát egy eszközre, ami a számítógépbıl érkezı kimenı jeleket átalakítja analóg jelekké, és a bejövı analóg jeleket pedig digitális jelekké a számítógépünk számára. Ez az eszköz a modem (modulátor-demodulátor). Ilyen esetben a felhasználó számítógépéhez kapcsolt modem (ami lehet belsı vagy külsı eszköz) és a szolgáltató számítógépénél található modem között elıször fel kell építeni a kapcsolatot PPP segítségével. Ezután ezen a kapcsolaton keresztül (mint egy csıvezetéken) lehet használni az internetes szolgáltatások eléréséhez szükséges TCP/IP-t, amivel szintén rendelkeznie kell a kliens számítógépünknek. Ehhez a szolgáltatónál rendelkeznünk kell egy felhasználói névvel és jelszóval, ami alapján a bejelentkezés után a szükséges internetes beállításokat a számítógépünkre a szolgáltatótól automatikusan megkapjuk. A késıbbiekben errıl bıvebben ejtünk szót, de mindenképpen érdemes néhány dolgot már most megjegyeznünk. Minimálisan egy minket azonosító, úgynevezett IPcímet, egy internetes átjáró címét, és általában egy DNS szerver címét megkapjuk. Ezek után már kezdhetjük is az „internetezést”. Hasonló a helyzet, ha nem analóg telefonvonalon keresztül szeretnénk kapcsolódni, hanem a sokak által használt, és az analóg vonalhoz képest jóval gyorsabb ISDN, ADSL, vagy a kábeltelevíziós szolgáltatók által felkínált CableNet segítségével. Bár itt nem mindegyik igényel analóg-digitális átalakítást, de egy modemhez hasonló speciális eszközt igen. IP-címek, domain nevek Hogyan azonosíthatjuk a számítógépek millióit az Interneten? Az Interneten egyetlen, mindenki által ismert tulajdonság létezik: az Internet cím. Ennek szerkezete rangsorolt, elsı része egy hálózati azonosító, a második pedig egy gazdagép-azonosító címe. A hálózatok közötti kapcsolatot az útválasztók (router-ek) biztosítják. Az Internet címek Az IP cím négy részbıl áll, négy db. max. 255 nagyságú szám pontokkal elválasztva (1-1 bájt értéke). Pl. a contedu szerver címe: 193.6.54.24. A Conteduval azonos hálózatban lévı gépek címtartománya csak az utolsó számban különbözik egymástól. Ebbıl a 193.6.54 a hálózat azonosítója, az utolsó számjegy pedig a gépé. IP-címet az internetet felügyelı NIC (Network Information Center) adhat, illetve alhálózatokon az adott rendszergazda. IP címosztályok Az 1970-es években fejlesztett Internet útvonalválasztó séma szerint három címosztályt különböztettek meg: A, B és C. Ezek méretében és számában volt eltérés. Az A és B osztályú címek ölelik fel a legnagyobb hálózatokat, de ezekbıl kevés van. A C osztályú címzéssel kis hálózatokat illettek, melyek száma viszont jelentıs. D és E címosztályokat szintén definiáltak, de ezeket nem használják a mindennapos gyakorlatban. Az egyes címosztályok a rendelkezésre álló 32 biten belül másként definiálják a lokális és globális címjelölések arányát.
43/102
A osztályú cím ''A'' hálózat Elsı bit: 0, utána 7 bites hálózat azonosító (netid) van, majd 24 bites gazdagép azonosító hosztid. Így az IPcím: hálózati rész: 0-126, gazdagép rész: 0.0.1 - 255.255.254. Ebben az esetben 128 hálózaton hálózatonként 16 millió gazdagép lehet. B osztályú cím ''B'' hálózat Elsı két bit: 10, utána 14 bites hálózat azonosító van, majd 16 bites gazdagép azonosító. Így az IP-cím: hálózati rész: 128.0-191.255, gazdagép rész: 0.1 - 255.254. Ebben az esetben 16 384 hálózaton hálózatonként 65 536 gazdagép lehet. C osztályú cím ''C'' hálózat Elsı három bit: 110, utána 21 bites hálózat azonosító van, majd 8 bites gazdagép azonosító. Így az IP-cím: hálózati rész: 0-126, gazdagép rész: 1 - 254. Ebben az esetben 2 millió hálózaton hálózatonként 254 gazdagép lehet. Ezek általában helyi hálózatok (LAN-ok) D osztályú cím ''D'' hálózat (címforma) Elsı négy bit: 1110, utána 28 bites többszörös cím van. Így az IP-cím: 224.0.0.0239.255.255.254 A D osztályú címforma többszörös címek (multicast address) megadását engedélyezi, amellyel egy datagram egy gazdagép-csoporthoz irányítható. E osztályú cím ''E'' hálózat (címforma) Elsı négy bit: 1111, utána 28 bites fenntartott cím van. 255.255.255.254 Ez a címforma fenntartott.
Így az IP-cím: 240.0.0.0-
Fenntartott címtartományok A 127-tel kezdıdı címek a ''loopback'' ( = visszairányítás) címek, nem használhatók a hálózaton kívül, hanem a hálózatok belsı tesztelésére szolgálnak. A 127.0.0.1 általános esetben a hoszt saját maga felé irányuló belsı forgalmát hivatott jelezni. Ez akkor is mőködik, ha a TCP/IP protokollverem implementációja telepítve van, de nincs tényleges hálózati kapcsolat. Emellett az A, B, C címosztályokban léteznek fenntartott címtartományok, amelyeket (elméletileg) az útvonalválasztók internetes kapcsolatban nem engednek át, és helyi használatra vannak fenntartva. Ezek a következık: A osztály esetén 10.x.x.x B osztály esetén 172.16.x.x –tól 172.31.x.x –ig és 169.254.x.x C osztály esetén 192.168.x.x Ezeket használhatjuk például az otthoni TCP/IP hálózatunkban problémamentesen.
44/102
A gazdagép címrészbe 1-eseket írva lehetséges az adott hálózatban levı összes gazdagépnek üzeneteket küldeni. Ezt hívják broadcastnak. Pl. a 192.66.72.255 IP-címre küldött üzenetet a 192.66.72 címő hálózatban lévı összes gép megkapja. . Ha a gazdagép címrésze 0, az az aktuális gépet jelöli. Ha a hálózati cím 0, akkor az az aktuális hálózatot jelöli. Pl. a saját géprıl a 0.0.0.0 címre küldött üzenet a saját gépre érkezik meg.
Az IP-címek jövıje: Címhiánnyal küzd az Internet. Egyes tartományokban kevés az IP-cím, másokban pedig kihasználatlan. Fıleg a B és C osztályú hálózatok terjedtek el. Az új címzés, az IPv6 nevő lesz, amelyben a címmezı 128 bites lesz (négyszerese a mainak). A címkiosztás logikája Dinamikus címzés: Rengeteg munkaállomás van, amelynek nincs szüksége állandóan egy bizonyos IP-címre, és dinamikusan is címezhetı. Az ilyen hosztoknak mindegy, hogy milyen IP-címet használnak (egy adott címtartományon belül kaphatnak címeket), viszont vannak olyan hosztok, akiknek mindenképpen statikus címeket kell használni (pl. szerverek), hiszen más eszközök mindig csak egy bizonyos IP címen hivatkoznak rájuk. Dinamikus IP-címe van például általában az otthoni számítógépeinknek, amelyek a szolgáltatótól kapják ezt. A dinamikusan címzett hosztok menedzsment protokollokon keresztül jutnak az IP-címeikhez a szerverektıl, míg a statikus IP-címeket használó hosztoknál manuálisan kell konfigurálni a címet. A dinamikus címkiosztás nagy elınye, hogy csak az éppen bekapcsolt, a kommunikációban résztvevı gépek számára szükséges külön cím, így kevesebb IP-cím elegendı nagyszámú kliens kiszolgálásához. Az internet címek finomszerkezete: A címzés logikája Az egyik legfontosabb döntés az Internet tervezı számára az IP-címek kijelölése. Az IP-cím 32 bites szám, melynek feladata a hosztok, illetve a hozzájuk kapcsolódó kommunikációs interfészek azonosítása. Ez a szám az IP csomag fejlécében helyezkedik el, és arra szolgál, hogy a csomagot elirányítsa a rendeltetési helyére. A következı szempontokat kell figyelembe venni IP-címek kijelölésekor: Elıtagon alapuló címzés: Pl.: Jelöljön a 32 bites IP-cím elsı 16 bitje egy szervezetet, az elsı 20 ennek egy szervezeti egységét. Az elsı 26 azonosítson egy bizonyos hálózatot ezen a szervezeten belül, és végül a teljes 32 bites szám azonosítson egyetlen hosztot ezen a bizonyos hálózaton belül. Ez a címzési logika az alapja az IP címzésnek. Csatolónkénti címzés: Ha egy hoszt több hálózati csatolóval rendelkezik, akkor mindegyik külön IP-címet kap. Tehát nagyon fontos, hogy az IP-cím nem feltétlenül a hosztot azonosítja, hanem annak egy interfészét. A hálózat nem megfelelıen átgondolt tervezése miatt elıfordulhat, hogy nem érhetı el ugyanaz a hoszt minden IP-címmel, ami hozzá tartozik. Ebben az esetben célszerő a legmegbízhatóbb interfész címét megadni, mint a hoszt elsıdleges IP-címét. Virtuális címzés: Némely esetben hasznos lehet egy hosztot több IP-címmel konfigurálni, általában olyankor, ha egy szerveren akarunk Web szolgáltatást kínálni több IP-címhez. Habár nincs szabvány arra, hogy hogyan kezeljük ezeket a virtuális címeket, az általános eljárás az, hogy egy fizikai címhez több IP-címet rendelünk, és a virtuális címekkel válaszoljuk meg az ARP kéréseit. Ezt a címzési módot külön kell támogatnia mind a szerver operációs rendszerének, mind pedig a szerver programnak. IP címek és domain nevek használata Ahhoz, hogy egy számítógép egy másik hálózaton lévı gépet el tudjon érni, a helyi hálózatban kell lennie egy alapértelmezés szerinti átjárónak (default gateway). Ez küldi a megfelelı helyre a külsı hálózatoknak szóló csomagokat. A teljes domain nevet FQDN-nek hívják (Fully Qualified Domain Name). Ez az, ami egyenértékő az IPcímmel, feltéve persze, hogy egy DNS-szerver a rendelkezésre áll, ami azt visszafejti. Az IP cím - gazdagépcím átalakítást a TCP/IP automatikusan végzi, de a gazdagép operációs rendszerének-parancsai segítségével mi is lekérdezhetjük egy ismert hoszt IP-címét. A szolgáltatások eléréséhez azonban nemcsak az IP-címet kell ismerni, hanem az egyes szolgáltatásokhoz tartozó portcímet is (Application Selection Address). Ezért a címeket ki kell egészíteni az adott szolgáltatást nyújtó (szerver) alkalmazás elérésére szolgáló portcímmel is:
45/102
gazdagépcím:portcím. Például: www.pte.hu:80 jelenti a www.pte.hu számítógépen, - melynek IP címe 193.6.50.105 lévı 80-as portszámú szolgáltatást, ami többnyire a WWW szolgáltatást jelenti. Errıl a késıbbiekben kicsit részletesebben is szó esik a szállításhoz, továbbításhoz használt protokollok, a TCP (Transmission Control Protocol) és az UDP (User Datagram Protocol) rövid áttekintése során. A domain nevek használata és ennek leginkább látható komponense a DNS (A DNS rövidítés jelentheti a szolgáltatást - Domain Name Service, a névkiszolgálót - Domain Name Server, ill. a protokollt, amivel a szolgáltatás operál), nélkülözhetetlen az Internet megfelelı mőködése szempontjából. Az IP-címek 32 bitesek, tehát pontosan 4 294 967 296 IP-cím lehetséges. Emberi erıforrásokkal rendkívül nehéz lenne menedzselni egy akkora címtárat, amekkorát ilyen nagy számú cím megkívánna. Ennek megkönnyítésére szolgálnak a domain nevek. Pl.: mennyivel könnyebb megjegyezni azt, hogy www.pte.hu, mint azt, hogy 193.6.50.105 Sokan azt gondolják, hogy a pontok a domain névben ugyanazt jelentik, mint a pontok az IP címben. Nos ez nem igaz. Az IP-cím mindig 4 részre van osztva, míg egy domain név állhat ennél több, vagy kevesebb részbıl is. Egyezést mutat viszont az a tény, hogy a domain nevek is hierarchikus felépítésőek, akár az IP címek. Pl.: hoszt.aldomain.domain - www.pte.hu ahol www a kiszolgáló gép, pte egy hálózati altartomány, hu pedig az ország globális hálózati tartománya. Az al-domain (subdomain) több tagot is tartalmazhat, de hiányozhat is. Az összetartozó IP-címek és hosztok keresése elıször a helyi címtáblázatban folyik, majd a name (= név) szerveren, a DNS-en. Ezért létezik egy adatbázis, amelybıl a hálózati szoftver kikeresheti a névnek megfelelı címet, és fordítva. Amikor az Internet még nem volt ilyen kiterjedt, akkor ez viszonylag könnyen megoldódott: minden gépnek volt egy adatállománya, amelyben az összes többi rendszer nevét és címét felsorolták. Ma már túl sok rendszer létezik ahhoz, hogy az ilyen megközelítés praktikus legyen. Emiatt ezeket az állományokat olyan névkiszolgálók váltották fel, amelyek a gépek neveit és a megfelelı címeket tartják nyilván. (A sokfajta információ közül ez csak egy. Valójában ezek a kiszolgálók sokkal általánosabb feladatot látnak el.) A valóságban egyetlen központi gép helyett az ilyen kiszolgálók egymással összekapcsolt halmaza használatos. Manapság már olyan sok különbözı intézmény kapcsolódik az Internethez, hogy nem lenne praktikus, ha egy központi hatóságot kellene értesíteniük minden olyan esetben, amikor egy gépet a hálózatba be- vagy abból kikapcsolnak. Éppen ezért a névadásra az egyes intézmények a rendszerükön belül saját maguk jogosultak. Az így kialakított névkiszolgálók közösen egy fa struktúrát alkotnak, amely az intézmények hálózati szerkezetének felel meg. Ezt a szerkezetet a nevek is tükrözik. A tartományrendszer feladata nem merül ki az Internet címek megtalálásában. Minden egyes tartománynév csomópontként szerepel egy adatbázisban. A csomópontnak különbözı tulajdonságokat jellemzı rekordjai lehetnek. Ilyen az Internet cím, a számítógép típusa, és a számítógép által biztosított szolgáltatások felsorolása. Egy program egy adott névvel kapcsolatban kérheti ezen információk valamelyikét, vagy az összeset. Megoldható az is, hogy egy adatbázisbeli csomópont egy másik csomópont álneveként (alias) szerepeljen. Az is lehetséges, hogy a tartományrendszerben felhasználókról, levelezési listákról, vagy más objektumokról tároljunk adatokat. A fenti adatbázisok mőködését, illetve az azok lekérdezését megvalósító protokollokat is Internet szabvány írja le. A normál lekérdezések az UDP protokoll segítségével történnek. A lekérdezéshez szükséges minden információt egyetlen üzenet tartalmaz. Minden hálózati alkalmazásnak meg kell tudnia valósítani ezeket a lekérdezéseket, mivel hivatalosan így történik a hosztnevek kiértékelése. Az alkalmazások általában saját tartományukon (domain) belül keresnek egy névkiszolgálót. Ez a kiszolgáló aztán a felsıbb szinten (az ı tartományán) lévı kiszolgálókkal veszi fel a kapcsolatot. Ezzel a módszerrel az alkalmazásokban lévı kód mennyiségét lehet lecsökkenteni. A tartományrendszer fontos szerepet tölt be az elektronikus levelezésben is. Domain Name szerverek (DNS) A domain name server, vagy röviden szokták névkiszolgálóként is emlegetni, egy internetes hoszt, amelyen egy olyan program fut, mely válaszolni tud a kliensek kéréseire. Általában elsıdleges és másodlagos névkiszolgálókat definiálnak. Tipikusan egy névkiszolgálót konfigurálnak, hogy elsıdleges névkiszolgálóként mőködjön és több másodlagos névkiszolgáló szolgál az elsıdleges helyettesítésére. Ha az elsıdleges meghibásodik, minden további lekérdezés a másodlagos domain name szerverekre hárul. A kliens nézıpontjából nincs különbség az elsıdleges és másodlagos névkiszolgálók között. Általában elıször az elsıdleges kiszolgálóhoz fordul, és csak azután egy másodlagoshoz, de ez nem törvényszerő. Ha a domain-ek egy csoportját több névkiszolgáló szolgálja ki, akkor a kiszolgálók sorrendje keveredhet a domain-ek között, a kiegyensúlyozottabb szolgáltatás érdekében. Azok a névkiszolgálók, amelyek egy adott tartományon belül található hosztokról minden információt tartalmaznak, és a tartomány számára mérvadóak, mester-névkiszolgálónak nevezzük. Egy adott zónan belül, minden hosztra vonatkozó lekérdezés ehhez a kiszolgálóhoz fog érkezni. Az elsıdleges névkiszolgáló szerverek egy adatállományt (adatbázist) tárolnak, amelyben az összes információ megvan, ami a DNS szolgáltatáshoz szükséges a tartományon belül. A másodlagos névkiszolgálók nem feltétlenül ismertek az elsıdleges számára.
46/102
A TCP/IP protokoll és az Internet A TCP/IP protokollkészlet vagy protokollverem tartalmazza az összes internetes protokollt. Ebbe a protokollkészletbe tartozik a TCP (Transmission Control Protocol), az IP (Internet Protocol) ill. az UDP (User Datagram Protocol) is. A protokollverem tagjai közül a TCP és az IP protokoll a legismertebb, ezért ezekkel, valamivel részletesebben is megismerkedünk. A TCP és az IP protokollokhoz hasonló szolgáltatásokat nyújtó protokollokat a TCP/IP protokollcsaládba tartozónak vesszük. Ezek közt vannak olyanok, melyek más alkalmazások számára biztosítanak alacsony szintő szolgáltatásokat, de vannak olyanok is melyek feladata lehet állománytovábbítás, távoli bejelentkezés, esetleg üzenetküldés. (Pl.: TELNET, FTP, MAIL; ezek mindegyikét tartalmaznia kell a TCP/IP szolgáltatásnak.) Vannak olyan protokollok, melyek hivatalosan ugyan nem tagjai az internet protokollveremnek, mégis megvalósításukban TCP/IP protokollt használnak. Célszerő ezeket is internet protokolloknak tekinteni. Ilyenek pl.: NFS - hálózati állományrendszer ( Network File System), távoli nyomtatás, távoli futtatás, névkiszolgálók (name servers), terminálszerverek, hálózat alapú ablakos rendszerek. A protokollok kapcsolata
A TCP/IP protokollkészlet egymásra épülı rétegekbıl áll. Tehát a TCP felelıs azért, hogy a parancsok és üzenetek biztosan eljussanak a címzetthez, és ehhez az IP szolgáltatásait is felhasználja. Mind a TCP, mind az IP protokoll valójában egy rutingyőjtemény. A TCP feladata, hogy az adathalmazokat “emészthetı" méretővé tördelje. Az így keletkezett részeket datagramoknak nevezzük.
A TCP feladata továbbá, hogy a datagramokat biztonságosan célba juttassa. A TCP-t sok alkalmazás használja, de nem mindegyiknek van szüksége rá. Bár a TCP használja az IP protokollt, azok az alkalmazások ,melyek nem használnak
47/102
TCP-t, szintén elérhetik és használhatják az IP-t. A TCP és az IP tehát külön rétegekbe rendezıdtek és használják az alattuk levı rétegek szolgáltatásait. Általában a következı négy réteget veszik igénybe a TCP/IP alkalmazások: • • • •
Alkalmazási protokollok (pl: FTP, HTTP) ; Szállítási, host-to-host protokollok (TCP-hez hasonló protokollok) Hálózatok közötti, Internetwork protokollok (IP, a datagramok célba juttatásának biztosítására) Helyi hálózat, fizikai réteg, a fizikai eszközök kezeléséhez szükséges protokollok (pl.:Ethernet)
A TCP/IP kidolgozásának alapjául az a feltevés szolgált, hogy rengeteg hálózat áll egymással összeköttetésben. Ezek a hálózatok többnyire úgynevezett átjárókon, vagy gateway-eken keresztül kapcsolódnak össze. A felhasználónak úgy kell tudnia elérnie egy távoli gépet erıforrás-megosztás céljából, hogy annak tulajdonképpen csak a címét ismeri. A TCP/IP valójában összeköttetésmentes protokoll, ahol az információ datagramok útján terjed. A datagram, amely adatok együttese, egyszerő üzenetként kerül továbbításra. Ezek egyesével, egymástól függetlenül indulnak útjukra. Ez azt jelenti, hogy egy nagyobb adathalmaz, mellyel már a legtöbb hálózat nem tud mit kezdeni, kismérető datagramokra tagolódik, majd így kerül elküldésre. Az egyes datagramok küldésének sorrendje nem feltétlenül azonos azzal a sorrenddel, amellyel végül az adathalmazt újra felépítik. Amennyiben egy datagram küldése közben hiba következik be, újra kell adni azt. A datagram nem azonos a csomag kifejezéssel. A csomag valójában megjelenik a kábeleken, míg a datagram az, amivel a protokollok operálnak. Általában egy csomag egy datagramot tartalmaz. Vannak azonban olyan esetek, amikor egyetlen datagramot több különbözı csomag szállít. A TCP rétege A datagram-kezelésben két különbözı protokoll játszik szerepet. A TCP feladata az üzenetek széttördelése, összeállítása, a helyes sorrend visszaállítása, elveszett datagramok újraadása. Az IP feladata, az útvonalmeghatározás a célállomásig. A TCP lényeges tulajdonsága, hogy az IP-t használja. Lényegében fullduplex kapcsolat, két gép összeköttetése esetén mindkét gépen futó (és TCP-t használó) folyamat olvashatja és írhatja. Az ilyen kapcsolat végpontjait a két hoszt IP címe és az egyes hosztokon lévı portok száma alapján azonosítja. A TCP egy datagramot ad át az IP-nek a rendeltetési címmel együtt. Az IP protokoll semmit sem tud az egyes datagramok egymáshoz való viszonyáról. Azonban nem elég csak a helyes címre továbbítani egy datagramot, a TCP protokollnak mindig tisztában kell lennie azzal, hogy az egyes datagramok, mely kapcsolathoz tartoznak. Az ehhez szükséges információt a datagramok fejlécében lehet megtalálni. A fejléc a következıképpen áll össze: cél portszám: Az egy IP rétegbıl jövı adatok beáramlási kapui a portok. forrás portszám: a célállomásnak is tudnia kell, hogy hová küldje vissza az adatokat. sorszám: Az egymás után jövı datagramok sorrendje a célállomásra érve összekeveredhet, a helyes sorrend visszaállítása ezen mezı segítségével történik. A TCP valójában nem a datagramokat sorszámozza, hanem az oktet-eket (20 bájtos egységeket). Ha egy datagram 500 oktetbıl áll, akkor az elsı datagram sorszáma 0, a másodiké 500, a harmadiké 1000. ellenırzı összeg: Ennek segítségével történik az átvitel során keletkezett hibák megállapítása. Ha hiba történt, a datagramot újra kell adni. Pl.: Egy adatfolyamot szeretnénk elküldeni egy másik számítógépnek. Ezt elıször a TCP-nek mindkét fél számára feldolgozható méretővé kell darabolnia. Hogy mekkora ez a méret azt a két TCP a végpontokon kideríti, majd a kisebbiket veszik a tényleges adatközvetítéshez. Minden datagram elé fejléc kerül, mely legalább 20 oktet (bájt) hosszú. Ez a fent ismertetett információkat tartalmazza. A fejlécben vannak olyan mezık, amelyekrıl még nem esett szó. A legtöbbjük az összeköttetés menedzselésével kapcsolatos információkat hordozza. A datagramnak a rendeltetési helyre való megérkezését a vevı egy nyugtával hozza a küldı oldal tudomására. Ez a szám a datagram TCP fejlécében a nyugta mezıben jelenik meg. Például egy olyan csomag elküldése, amelynek nyugtamezıjében 1500 szerepel, azt jelenti, hogy az 1500-as oktetig bezárólag minden datagram eljutott a rendeltetési helyre. Amennyiben a küldı oldal egy adott idın belül nem kap nyugtát, akkor újból elküldi az adatot. Az Ablak mezıben lévı érték az összeköttetés alatt forgalomban lévı adatok mennyiségét határozza meg. Nem lenne szerencsés, ha minden egyes datagram elküldése elıtt meg kellene várni az elızı nyugtáját, mert így a forgalom rendkívüli mértékben lelassulna. Másrészt viszont nem lehet folytonosan küldeni az adatokat, hiszen például egy gyorsabb számítógép adatárama elárasztaná a lassúbb gépeket. Ennek megoldására mindkét oldal az Ablak
48/102
mezıben elhelyezett oktetek számával közli, hogy éppen mekkora adatmennyiséget képes még befogadni. Az adatok vételével ez a szám, azaz az ablak mérete, folyamatosan csökken. Amikor eléri a nullát, a küldınek szüneteltetnie kell az adatok továbbítását. A vevı ablakmérete az adatok feldolgozása során nı, ami jelzi, hogy kész további adatok fogadására. Gyakran ugyanaz a datagram használható az újabb adatok engedélyezésére és nyugtázásra is (aktualizált ablak segítségével). A Sürgısségi mutató mezıben lévı érték beállításával bármelyik oldal utasíthatja a másikat arra, hogy a feldolgozást egy adott oktettel folytassa. A gyakorlatban többek között ez az aszinkron eseményekkel kapcsolatban használatos, például amikor vezérlıkarakter vagy más, a kimenetet megszakító parancs kerül továbbításra. A többi mezırıl ez a dokumentum nem hivatott szólni. Az IP rétege A TCP az általa feldolgozott datagramokat átadja az IP-nek. Ezzel együtt közölnie kell a rendeltetési hely Internet címét is. Az IP-tukezeken kívül nem érdekli más: nem számít, hogy mi található a datagramban vagy, hogy hogyan néz ki a TCP fejléc. Az IP feladata abban áll, hogy a datagram számára megkeresse a megfelelı útvonalat és azt a másik oldalhoz eljuttassa. Az útközben fellelhetı átjárók és egyéb közbülsı rendszereken való átjutás megkönnyítésére az IP a datagramhoz hozzáteszi a saját fejlécét. A fejléc fı részei a forrás, és a rendeltetési hely Internet címe (32 bites címek, pl. 195.199.30.50), a protokollszám és egy ellenırzı összeg. A forrás címe a küldı gép címét tartalmazza. (Ez azért szükséges, hogy a vevı oldal tudja honnan érkezett az adat.) A rendeltetési hely címe a vevı oldali gép címét jelenti. (Ez pedig azért szükséges, hogy a közbensı átjárók továbbítani tudják az adatot.) A protokollszám kijelöli, hogy a datagram a különbözı szállítási folyamatok közül melyikhez tartozik. A TCP egy biztos választási lehetıség, de léteznek egyebek is (pl. UDP). Végül az ellenırzıösszeg segítségével bizonyosodik meg a vevı oldali IP arról, hogy a fejléc az átvitel során nem sérült-e meg. A TCP és az IP különbözı ellenırzıösszegeket használ. Az IP-nek meg kell tudnia gyızıdni a fejléc sértetlenségérıl, különben rossz helyre küldhet el adatot. A TCP és az IP a biztonság és a hatékonyság növelése miatt tehát külön ellenırzıösszegeket használ. Az IP fejléc többek között a következı információkat tartalmazza: Protokollszám: Melyik protokoll használja éppen az IP-t? Forráscím, Célcím: A küldı gép és a megcélzott gép IP címe Élettartam: Az Élettartam mezıben lévı szám mindig csökken, amikor a datagram egy rendszeren halad keresztül. Amikor eléri a nullát, a datagram megsemmisül. Ezt az eljárást a rendszerben esetleg felépülı végtelen ciklusok miatt építették a protokollba. Persze ezek felléptének valószínősége az ideális esetben nulla, de a jól megtervezett hálózatoknak a bekövetkezhetetlen eseményekkel is el kell tudniuk bánni. Amikor a hálózati réteg összerak egy teljes datagramot, tudnia kell, hogy mit tegyen vele. Azonosítás: Az Azonosítás mezı ahhoz kell, hogy a célhoszt meg tudja állapítani, hogy egy újonnan érkezett csomag melyik datagramhoz tartozik. Egy datagram minden egyes darabja ugyanazzal az Azonosítás mezı értékkel rendelkezik. A TCP protokollt arra használják, hogy nagyobb mennyiségő adatot kisebb részekre osztva eljuttassa egy másik számítógéphez. Azonban sok esetben vannak olyan üzenetek is, mikor az üzenet egyetlen datagramba is belefér, és nincs szükség a TCP teljes bonyolultságára ahhoz, hogy ezt eljuttassuk a címzetthez. (Pl.: Névlekérdezés, amikor a domain névbıl az IP-címet akarjuk megtudni.) Az ilyen alkalmazásokra létezik a TCP mellett más lehetıség is. Néhány szó az UDP és ICMP protokollokról UDP A legszélesebb körben használt ilyen protokoll az UDP (User Datagram Protocol – felhasználói datagram protokoll), amelyet olyan alkalmazásokhoz találtak ki, ahol nincs szükség datagramok sorozatba állítására. Hasonlóképpen illeszkedik a rendszerbe, mint a TCP. A hálózati szoftver az adatok elejére ráilleszti az UDP fejlécet ugyanúgy, ahogy a TCP a maga fejlécével esetében teszi. Az UDP ezek után az IP-nek továbbítja az adatot. Az IP hozzáteszi a saját fejlécét, amibe a TCP helyett az UDP protokollszámát helyezi el a Protokoll mezıben (lásd IP fejléc). Az UDP nem végez annyi feladatot, mint a TCP: nem tördeli szét az üzenetet datagramokra, nem figyeli a már elküldött adatokat, hogy majd esetleg újraadja ıket. Az UDP csak portszámokat biztosít, hogy egyszerre több program is használhassa a protokollt. Az UDP portszámok ugyanúgy használatosak, mint a TCP portszámok. Az UDP-t használó kiszolgálókhoz is léteznek jól ismert portszámok. Megjegyezzük még, hogy az UDP fejléc sokkal rövidebb, mint a TCP fejléce. Ebben is szerepel a forrás- és a célport száma, valamint egy ellenırzı összeg, de ennyi az egész. Nincs benne sorszám, mert nincs szükség rá. Az UDP fejléc így néz ki: forrásport célport hossz ellenırzı összeg
49/102
Az UDP-t például a nevek kikeresését végzı, illetve az ezekhez hasonlóan mőködı protokollok használják. ICMP Egy másik alternatív protokoll az ICMP (Internet Control Message Protocol - internet vezérlıüzenet protokoll) nevet viseli. Az ICMP a hibaüzenetek és a TCP/IP-t megvalósító szoftvernek szánt üzenetek kezelésére használatos. Kapcsolat kérésekor a kezdeményezı rendszer kaphat például olyan ICMP üzenetet, hogy "host unreachable" (elérhetetlen gép). Az ICMP-t használják még arra is, hogy magáról a hálózatról információkat győjtsenek. Az ICMP abban hasonlít az UDP-hez, hogy mindketten olyan üzenetekkel foglalkoznak, amelyek egyetlen datagramban elférnek. Az ICMP azonban annál is egyszerőbb. Még csak portszámok sincsenek a fejlécében. Mivel minden egyes ICMP üzenetet maga a hálózati szoftver értelmez, ezért nincs szükség olyan portszámokra, amelyek megmondják, hogy egy adott ICMP üzenet hova menjen. Az ICMP beágyazási szerkezete a következı:
Az ICMP fejléc szerkezete:
Az ICMP üzenetei: Elérhetetlen cím: Ha célhálózat nem érhetı el, mert a távolság bejegyzés végtelen, vagy a cél-hoszton nem mőködik az internet modul. Idıtúllépés: Ha a gateway 0 értéket talál az IP fejléc élettartam mezıjében, vagy ha a fragmensek összegyőjtése nem valósul meg egy adott idı belül. Paraméter probléma: Ha a gateway vagy a hoszt a datagram fejlécében olyan paramétert talál, amelynek hatására nem tudja befejezni a feldolgozást. Forrás lassítás: A gateway eldobja a datagramot, mert túl gyors az adás és nincs elég puffermemóriája. Átirányítás: A gateway küldi, azért, hogy a feladó egy másik gateway-en próbálkozzon, mert arra rövidebb útvonalat találhat. TCP/IP szintek A TCP/IP protokollrendszernek négy szintje van A TCP és UDP protokollok által meghatározott adatfragmentáció megnevezése a különbözı szinteken:
50/102
Ennek megfelelıen adminisztrációs fejlécek kerülnek az adatokhoz.
Alkalmazási szint: Itt vannak a felhasználói és a hálózati kapcsolatot biztosító programok. Gazdagép-gazdagép réteg, Átviteli szint: A létesített és fennálló kapcsolat fenntartását biztosítja. Két rétegprotokollból áll: TCP (Transmission Control Protocol) = továbbítást szabályozó eljárás UDP (User Datagram Protocol) = összeköttetés-mentes szállítási protokoll Hálózatok közötti (internet) réteg, Hálózati szint: Ez a réteg végzi a csomagok útvonal kijelölését a hálózatok között. Protokollja az IP (Internet Protocol), amely az üzenetvezérlı protokoll cím meghatározó eljárása, a foglalt címet meghatározó eljárás. A rétegben elıforduló események és hibák jelzésére szolgál az ICMP (Internet Control Message Protocol) = Internet Vezérlıüzenet Protokoll. A hálózati réteg (útvonalválasztás - IP) és az átviteli réteg (TCP) egymással az ún. portokon keresztül kapcsolódik. Hálózati elérés (Network Interface), Fizikai szint: Ez biztosítja a kapcsolatot a csomópontok között. Ilyenek:
51/102
. Ethernet (legelterjedtebb); . Token-Ring; . Token-Bus. Mik a portok? Mivel a TCP és az IP kezelik a hálózati vonatkozásokat, ezért az alkalmazási protokollok a hálózatot egyszerő bytefolyamnak tekintik, mint például egy terminál- vagy telefonvonalat. Mielıtt az alkalmazói programokkal kapcsolatban további részletekbe bocsátkoznánk, meg kell vizsgálnunk, hogy hogyan lehet egy alkalmazást, szolgáltatást megtalálni. Tegyük fel, hogy egy állományt szeretnénk küldeni a hálózaton keresztül a 124.6.4.7 IP címő gépnek. A folyamat elindításához azonban az Internet címnél többre lesz szükség. A célállomás oldalán az FTP kiszolgálóval fel kell venni a kapcsolatot. A hálózati programokat általában külön feladatok elvégzésére programozzák. A különbözı feladatokat (állományátvitel, bejelentkezés távoli terminálról, levelezés stb.) a legtöbb rendszerben más-más programok végzik. Amikor a fenti példában a 124.6.4.7 címő géppel kapcsolatot építünk ki, akkor azt is meg kell mondanunk, hogy az ottani FTP kiszolgálóval szeretnénk kommunikálni. Ennek megvalósítására minden kiszolgáló jól ismert socket-ekkel ( foglalatok, szolgálatelérési pontok) rendelkezik. Ennek magyarázataképpen tekintsük a következıket. A TCP és UDP a különbözı kommunikációk kézben tartására különbözı portokat használ. A felhasználói programok többé-kevésbé véletlenszerően választanak portot, de egyes portok eleve olyan programoknak felelnek meg, amelyek valamilyen kérés kiszolgálására várnak (ezek lennének a kiszolgálók). Állományátvitel esetén például egy "ftp" nevő programot indítunk el, amely a kapcsolat felépítéséhez a saját oldalán véletlenszerően kijelöl egy portot, mondjuk az 1234-t. A céloldalon viszont a 21-es portot jelöli meg, amely az FTP kiszolgáló hivatalos portjának felel meg. Az FTP protokollon megvalósuló kapcsolatban tehát egy szerver oldali FTP program (FTP szerver) és egy FTP kliens vesz részt.
A kapcsolódás a fentieknél sokkal összetettebb is lehet. Különbözı protokollokon megvalósuló szolgáltatások hálója keletkezhet egy valódi esetben kiszolgálók (szerverek) és klienseik között.
52/102
A fentiek után nyilvánvaló, hogy egy kapcsolatot négy szám jellemez: a két Internet cím, és a két TCP vagy UDP port száma (ahová az adatokat szállítani kell). Ez a négy szám minden egyes datagramban megtalálható. (Az Internet címek az IP fejlécben, a TCP/UDP portok száma pedig a TCP/UDP fejlécben van mint azt már láttuk) Az egyediség megkövetelése miatt semelyik két kapcsolat esetén sem lehet ugyanaz mind a négy szám. Ugyanakkor elég, ha csak egy szám tér el a másik négytıl. Semmi nem tiltja például azt, hogy ugyanazon a gépen lévı két különbözı felhasználó állományokat vigyen át ugyanarra a távoli gépre. Ennek a megvalósítása például az alábbi paraméterekkel lehetséges: 1. Kapcsolat 2. kapcsolat
Internet cím 128.6.4.194, 128.6.4.7 128.6.4.194, 128.6.4.7
TCP port száma 1234, 21 1235, 21
Mivel ugyanazokról a gépekrıl van szó, az Internet címek ugyanazok. Továbbá, mivel mind a két kapcsolatban állományátvitelrıl van szó, ezért a kapcsolatok egyik végén az FTP port jól ismert száma (21) található. Az egyetlen dolog, ami különbözik: a felhasználók által futtatott programok portszáma. Ez tökéletesen elegendı. A kapcsolatok felépítésében az az általános gyakorlat, hogy legalább az egyik oldal utasítja a hálózati szoftvert arra, hogy számára egyedi port-ot allokáljon. A legtöbb esetben ezt a felhasználó felıli oldal teszi meg, mivel a kiszolgálónak egy mindenki által jól ismert számot kell használnia. Néhány ismertebb protokoll által használt portszám: 20, 21 - FTP. A 21-es porton folyik a kapcsolatépítési dialógus, míg passzív módban a 20-as porton a tényleges adatátvitel ( aktív módban egy tetszıleges magas porton ). 23 TELNET 25 SMTP 53 Domain Name Server 70 gopher 79 finger 80 WWW World Wide Web - http 110 pop3 - Post Office Protocol version 3 119 nntp - network news transfer protocol 161 snmp - Single Network Management Protocol A 0-1023-ig terjedı intervallumban lévı portszámokat TCP és az UDP általában használja a rendszeralkalmazásokban. Az e feletti portszámokat a legtöbb felhasználói alkalmazás szabadon használja.
53/102
(Akit esetleg részletesebben érdekelnek a protokollok, portok és a hozzájuk tartozó szolgáltatások, az érdekesség kedvéért megkeresheti és megnézheti a services nevő egyszerő szöveges adatállományt a számítógépükön. Ez az állomány különbözı operációs rendszerek alatt máshol és máshol található, de ott van valahol a merevlemezen!)
6. Tőzfalak A tőzfal a számítógépes hálózatokon zajló forgalom szőrésére használható. A laikus szóhasználatban tőzfalként értelmezik a tőzfal(gép)-et, illetve a tőzfal szoftvereket is. A tőzfal(gép) egy LAN, vagy annak egy logikai vagy fizikai szegmense számára végez forgalomszőrést, így biztosítva a belsı szegmens esetleges érzékeny szolgáltatásait, illetve a belsı gépek védelmét a külsı támadásoktól. Az ilyen gépek általában egyben átjárók (gateway), illetve sokszor címfordítást, cím hamisítást (a masquerading ) is végeznek. A tőzfal szoftver maga az a program amely a szőrést végzi (természetesen a tőzfalgépeken is ilyen fut ). Ez tipikusan jelen lehet kliens gépeken is. Három alapvetı tőzfal típus létezik. 1. Klasszikus csomagszőrı tőzfal Az ilyen tőzfalak csak a cél és forrás címek, valamint a portszámok alapján képesek azonosítani a csomagokat, így ezek alapján vezethetünk be korlátozásokat. Másszóval megadhatjuk hogy A.B.C.D IP címő gép Z portjáról a mi gépünk, vagy akár, ha más gépeknek átjáróként szolgálunk egy másik E.F.G.H IP címő gép X portjára irányuló tcp/udp/icmp forgalom engedélyezésre kerüljön vagy sem. Olyan alapvetı információk is rendelkezésünkre állnak, minthogy egy csomagot a gépünknek küldtek, vagy a gépünk küldte, illetve tőzfalgép esetén lehetséges eshetıség hogy rajtunk keresztül küldik. 2. Állapot szintő tőzfal Az állapot szintő tőzfal annyiban tud többet a klasszikus verzióknál, hogy a TCP csomagokról el tudja dönteni hogy egy kapcsolat már felépült, vagy éppen a felépítésére érkezik kérés. Ez azért praktikus, mert pl. ha mi bárhová szeretnénk tudni kapcsolódni, külsı kapcsolódásokat viszont nem szeretnénk gépünkhöz, vagy annak egy portjához, elegendı a kivülrıl érkezı kapcsolat felépítését kérı csomagokat szőrni. 3. Protokoll szintő tőzfal A protokoll szintő tőzfalak egy sokkal kifinomultabb módon képesek a forgalom szőrésére. A hagyományos tőzfalak a kommunikáció tartalmáról mit sem tudnak, azt hogy milyen szolgáltatásról van szó a portszámok alapján adhatjuk meg. De mint ismeretes egy szolgáltatás mőködhet a szabványtól eltérı porton is. A protokoll szintő tőzfalak beleolvasnak a csomag tartalmába is, nem csak a fejlécbe. Így sokkal nagyobb biztonsággal szőrhetı a forgalom, és flexibilisebb, letisztultabb szabályok hozhatók. Miért nem használ mindenki protokoll szintő tőzfalat? Az installálás nem olyan egyszerő, mint a hagyományos tőzfalaknál, és a csomagok olvasgatásából sebesség csökkenés is adódik. Így protokoll szintő tőzfalakat szinte kivétel nélkül csak a dedikált tőzfalgépeken alkalmaznak, és ott is csak akkor, ha ezt valami megköveteli, tekintve a magasabb hardware igényeket. A hagyományos tőzfalak tipikusan az adott operációs rendszer részét képezik és a külön letölthetı, megvásárolható programok általában csak egy könnyebben használható, rugalmasabb felületet biztosítanak hozzá.
54/102
7. Ki és/vagy mi ellen kell védekeznünk? Véletlenek, (a)vagy hozzá nem értés Még abban az esetben is szóba kerülne a biztonság (security) fogalma, ha egyáltalán nem lennének ártó szándékú programok, emberek, akikkel szemben manapság a biztonság kérdése elsıdlegesen felmerül. Ugyanis mindenféle ártó szándék nélkül, pusztán véletlenül, vagy a megfelelı ismeretek hiánya miatt is elıfordulhatnak problémák. Gondoljunk az olyan (manapság már kevéssé használt) operációs rendszerekre, amelyek tipikusan egyfelhasználósak voltak, de mégis több felhasználó dolgozott velük. Ilyen esetekben egy egyszerő véletlen vagy hozzá nem értés miatt is elıfordulhatott (elıfordulhat), hogy adatot vesztünk (például véletlen állomány-törlés), elhibázott program installáció, ami miatt esetleg egy elızıleg jól mőködı szoftverkomponens már nem használható (szolgáltatás megtagadás, rendelkezésre állási problémák) vagy akár egy rossz hardver-csere vagy beállítás is végzetes következménnyel járhat. A biztonsági kérdések - ahogy a biztonsági minısítéseknél is láthattuk - ezekre az esetkre is vonatkoznak. Végsı soron egy hibás, bár nem szándékos hálózati beállítás, vagy egy eszköz hibája (például egy hálózati kártya hibája miatti folyamatos adatszórás) is okozhat szolgáltatás-megtagadást hálózati környezetben. Manapság azonban, elsısorban az Internethez való hozzáférés, csatlakozás, a hálózati technika alkalmazásának növekedésével más okok kerültek elıtérbe. Alapvetıen kétféle ellenséggel állunk szemben ilyen értelemben, de mindkettı mögött ártó szándékú emberek állnak. Az egyik ilyen az ártó szándékú programok kategóriája, amelyeket leginkább vírusok összefoglaló névvel szokás említeni. Valójában maguk a vírusok – a klasszikus felosztás szerint csak egy részét képezik ennek a kategóriának. A másik kategóriába pedig az ártó szándékú emberek más irányú próbálkozásait lehet sorolni. Ártó szándékú programok Már az 1950-es években foglalkoztak olyan programokkal, amelyek az önreprodukcióra képesek. Ekkor még csak elméletben. Aztán tíz éven belül, ahogy a számítógépek elterjedése a katonai alkalmazások terén egyre jelentısebb lett, megjelent az elmélet gyakorlati hasznosításának gondolata is. Nevezetesen, hogy az ellenség számítógépeibe hogyan lehetne olyan programokat bejuttatni, amelyek aztán használhatatlanná teszik azokat. (Érdekes, hogy ez a manapság egyre markánsabb probléma is katonai fejlesztési ötlet volt.) 1983-ban Fred Cohen vezetésével egy kísérletet végeztek egy VAX 11/750 típusú számítógépen, amelyen olyan programot sikerült írni, ami a futó programokat képes volt megfertızni. Polgári „alkalmazásuk” azonban a személyi számítógépek (PC-k) segítségével tudott igazán elterjedni. A ’90-es évek elején-közepén a programok másolása is segítette a terjedésüket. Elég volt csak a fertızött lemez tartalmát beolvasni, és máris a memóriában volt a kórokozó. Az Internet térhódításával, és a makrókat használó programok terjedésével megváltoztak a fertızések célpontjai és a terjedés módszerei is. A legtöbb esetben a fenyegetés nem annyira komoly, mint azt a sajtóban és egyes fórumokon hangoztatják. A legjobb példa erre egy 1992-es eset, amikor is véletlenül a Leading Edge nevő cég több száz, Michelangelo1 vírussal fertızött számítógépet értékesített. A bejelentés másnapján már arról tudósított a média, hogy a Michelangelo gépek százezrein fogja az adatokat megsemmisíteni. Ezt számítástechnikai szakemberek is megerısítették, leginkább üzleti érdekbıl (elég csak McAfee2 nevét említeni). A sajtó egy hónappal késıbb már milliós fertızésekrıl beszélt, sıt a világon állítólag mindenhol megjelent a kór. Március 6.-án (a vírus aktivizálódásának napja) azonban pesszimista becslések szerint is „csak” 10000 számítógép károsodott. Ettıl az idıszaktól fogva képviselnek jelentıs réteget a vírusirtók a szoftverpiacon. A vírusok (és társaik) igazi aranykora azonban a személyi számítógépek elterjedésével következett be, és tart a mai napig. Bár ez alatt az idı alatt is jelentıs átstrukturálódás, ha úgy tetszik, evolúció fedezhetı fel ezek változatai, hatásmechanizmusa terén. Csak egy példa erejéig érdemes belegondolni, hogy az ilyen ártó szándékú programok/programkódok közül gyakorlatilag majdnem kivesztek például a boot-vírusok. Sajnos, helyettük viszont megjelentek új típusúak is. 1
Michelangelo korabeli vírus, ami Michelangelo születésnapján aktivizálódott és indításkor a gép merevlemezének teljes tartalmát törölte. 2 McAffe A McAffe antivírus corp. (mely ma is a piacvetı vírusirtó cégek közt van) alapítója.
55/102
A teljesség igénye nélkül ezek rövid, felsorolás szintő ismertetésére szorítkozunk csak. Akiket mélyebben megérintett a téma, azok számára az irodalomjegyzékben található ilyen jellegő hivatkozások adhatnak további támpontot. Vírus (virus): Önmagát reprodukáló, de önmagában nem „életképes” apró programrészlet. Szüksége van egy gazdaprogramra, amelynek megfertızésével, használatával terjed. Jellemzıen operációs rendszer-függı. Makró-vírus (macro virus): Egy speciális vírus, abban az értelemben, ahogy a vírusokat fentebb meghatároztuk. A specialitását az adja, hogy nem közvetlenül fertızi meg a célrendszert, hanem ehhez segédállományokat használ terjedési célból. A célszoftver által használt szolgáltatásokat, futtatható és szerkeszthetı makrókat használ. (Azaz a neve nem a mérete miatt lett makró.) Mivel nem az operációs rendszertıl függ, hanem az adott szoftvertıl, szoftverrendszertıl, így igazán platformfüggetlen „lehetıségeket” rejt magában. Manapság egyik legismertebb ilyen kategória a Microsoft Office programcsomag szoftvereit támadó család. Ez azt is jelenti egyben, hogy nemcsak a MS Word, MS Excel, MS Outlook, hanem például a Powerpoint és az MS Access is ki van téve ilyen jellegő támadási lehetıségeknek. A makró-vírusokat szokták még (helytelenül és emiatt félreérthetıen) dokumentum-vírusoknak is nevezni. Trójai programok (Trojan program): Ellentétben a vírusokkal nem szaporodnak és valódi, önálló programok, illetve ezek ártó részei. Nevük találóan a Trójai faló analógiájából származik. (Javasolt olvasmány a témában az Odüsszeia és az Iliász Homérosztól). Terjesztésüket – mint sok más hasonló esetben – maguk a felhasználók végzik, gyanútlanul, nem ismerve a program készítıinek és magának a programnak rejtett, mögöttes szándékát, tulajdonságait. Férgek (worm): Önálló programok, melyek nem feltétlenül sokszorozódnak, bár ez utóbbi változatai jóval ismertebbek (pl. Blaster worm) Általánosan megfogalmazva kívülrıl a rendszeren belülre kerülés a feladatuk, hogy aztán megvalósíthassák ártó szándékú küldetésüket. Csak érdekességként megjegyzendı, hogy létezik olyan féreg is, amely a rendszerbe hatolva kijavítja azokat a biztonsági réseket, amelyen keresztül bejutott. Erre akár lehetne azt is mondani, hogy „jószándékú”. Sajnos nem ez a legjellemzıbb kategória a worm-okon belül. Mindentıl függetlenül az ilyen féreg is törvényt sért. Kiskapu (Backdoor): Ez a kategória nem terjedés, hanem mőködési mechanizmus alapján van meghatározva. Elméletileg vírus, trójai program vagy féreg is mőködhet így. Ami miatt külön megemlítjük itt, az az, hogy manapság egy igen „népszerő” és a támadók által kedvelt megoldás. Ekkor ugyanis az ártó szándékú program, esetleg egy behatoló, akinek sikerült bejutnia a rendszerbe, létrehoz egy kiskaput, melynek segítségével késıbb, immár távolról is képes bejutni a rendszerbe, ezen a kiskapun keresztül információt szerezni jogosulatlanul, tönkretenni vagy más módon kompromittálni adatokat, esetleg hirtelenjében illegális anyagok szolgáltatójává „elıléptetni” a számítógépet anélkül, hogy arról a rendszer használója, üzemeltetıje tudna. Ilyen esetben esetleg csodálkozva vagy kínos feszengéssel fogadhatjuk a rendırség, nemzetbiztonsági hivatal, illetve más, hasonló szervezetek embereit, amint számon kérik rajtunk az általunk el sem követett cselekményeket.
Ártó szándékú emberek Kikkel állunk szemben? Léteznek kis tudású, csupán szórakozásra, vagy éppen hírnévre vágyó (tipikusan fiatal) egyének, akik többnyire már hivatalosan publikált exploit-okat (kihasználható hiányosság) használnak ki. İk a rendszerben általában kevés kárt okozva, inkább erkölcsiekben ártva, pl. a weblapjaink helyére a "Hacked by XP" feliratot varázsolva tevékenykednek. Vannak komolyabb ellenfelek, nagyobb tudásbázissal, szervezettebb fellépéssel, bandákba (scene-ekbe) tömörülve, akik általában valamilyen céllal kereshetik fel rendszerünket (pl. ugródeszka további célok felé, a cégnél tárolt bizalmas vagy személyi adatok, könyvelés, esetleg elektronikus kifizetések bonyolítása, stb.) Néha persze elöfırdul, hogy ilyen komolyabb ellenfelek is komolytalan célokat kergetnek, pl. az olyan versenyek, hogy ki tud egy nap alatt több weblapot "megtörni" . A számítástechnikán kívül több információs rendszert is felhasználhatnak ellenfeleink a céljaik elérésére (pl. social hacking), telefonálgathatnak, személyesen is ellátogathatnak hozzánk, feljelenthetnek, nyakunkra hozhatják az adóhatóságot, hivatalos leveleket írhatnak stb.
56/102
Alapvetıen tehát vannak képzettebb és kevésbé képzett ellenfeleink. Vannak, akik pénzért dolgoznak (pl. a konkurenciának), és vannak, akik sportból, szórakozásból. Van, aki besétál és szélesen mosolyog, vagy jelentkezik takarítónak. Van, aki email flood-ot (elárasztást) bocsát ránk, van aki netbus-t telepít gépeinkre, és akad, aki beadványokkal bombázza a fınökséget, hogy például miért kell mindenkinek havonta új jelszót megjegyezni. Ismernünk kell a problémákat, hogy védekezhessünk ellenük, és persze legalább olyan sokrétő védelmi stratégiára lesz szükségünk, mint amilyen széles ellenségeink eszközeinek skálája. Az FBI 1999-es idevágó sajtóanyagai alapján az átlag hackerre igaz jellemzık az alábbiak: -
A C,C++,CGI vagy a Perl programozási nyelvek magasszintő ismerete.
-
A TCP/IP mélyreható ismerete.
-
Átlagosan heti több mint 50 órát tölt az Interneten.
-
Legalább két operációs rendszert ismer közelebbrıl, melyek közül az egyik tipikusan UNIX alapú.
-
Informatikával foglalkozik vagy foglalkozott.
-
Régi számítógépek és vagy programok megszállott győjtıje.
Megjegyzés: ne felejtsük el, ellenfeleink java azok közül az emberek közül kerül ki, akik tudnak olvasni, így nem lehetetlen hogy ezeket a sorokat is olvassák.A támadások fajtái 1) Megszakítás (Interruption) – A rendszer vagy egy része, megrongálódik, elérhetetlenné vagy használhatatlanná válik.
2) Elfogás (Interception) – Egy jogosulatlan támadó a rendszer egy részéhez , információkhoz, adatokhoz szerez hozzáférést.
3) Módosítás (Modification) – Egy jogosulatlan támadó nemcsak hozzáféréshez jut, hanem átalakíthat vagy el is ronthat adatokat, rendszerelemeket.
4) Gyártás (Fabrication) – Egy jogosulatlan felhasználó hamis adatokat, rendszerelemeket helyez a rendszerbe. Az elfogást passzív támadásként lehet értelmezni, míg a megszakítást, módosítást és a gyártást aktív támadásként. Ezt a négy kategóriát (Stallings alapján) a mellékelt ábra szemlélteti.
Biztonsági rendszerezések Miért is jó, ha rendelkezünk egy átfogó biztonsági rendszerezéssel? Az egyik ok, hogy a témakörben használatos fogalmak nem mindenki számára jelentik pontosan ugyanazt. Egy rendszerezés azonban magával hozza a fogalmak egységesítését, azok pontos definícióját. A másik ok az, hogy probléma esetén egyértelmően körülhatárolható, mi is történt, mivel is
57/102
történt, és nem kell például azzal tölteni a szakembereknek sem az idıt, hogy munkájukat hosszú értelmezési problémák megvitatásával kezdjék. Egy ilyen jellegő rendszerezéstıl tehát elvárható, hogy egyértelmő legyen, lefedje a teljes érintett területet, emellett a benne foglalt kategóriák között ne legyenek átfedések, azaz egy osztályozást (taxonómiát) hozzon létre. Sajnos, ez a feladat meglehetısen bonyolult, és nem is mindig sikerül. A következıkben erre vonatkozóan nézünk meg néhány lehetséges megoldást. A számítógépes és hálózati biztonsági rendszerezések, osztályozások nem szükségszerően összpontosítanak a támadásokra (attack) Példának okáért néhány szerzı kevésbé fókuszál a biztonsági hiányosságokra vagy a sebezhetıségekre, amiket a támadásokra lehet használni. Ha figyelmen kívül hagyjuk azt, hogy a rendszerezés a támadásokra összpontosít avagy sem, általánosságban elmondható, hogy mind megkísérlik osztályozni a támadásokat, ami ezen biztonsági rendszerezések közös eleme. Szakszavak listája alapján – Egy népszerő és egyszerő rendszerezési ötlet a számítógépes és hálózati biztonsági támadásokkal kapcsolatban az, ha egyszerően listába foglaljuk az elfogadott terminusokat. Nézzünk erre két példát, fordítás nélkül, meghagyva az eredeti angol kifejezéseket, amiket a szakirodalomban is megtalálunk, mivel jónéhány terminusnak egyáltalán nincs, vagy nincs általánosan elfogadott magyar megfelelıje. Ebbıl fakadóan a táblázatban szereplı kifejezések gyakran több mondatos értelmezést, illetve meghatározást igényelnének Itt csak az a célunk ezzel a felsorolással, hogy átfogó képet kapjunk ezen terminológiákról, és az olvasó számára segítséget adjunk, ha késıbb szakirodalmi hivatkozásokban találkozik ezekkel, a megfelelı összefüggésben tudja azokat értelmezni. Cohen így foglalja össze ezeket a terminusokat:
Trojan horses
Toll fraud networks
Fictitious people
Infrastructure observation
E-mail overflow
Time bombs
Get a job
Protection limit poking
Infrastructure interference
Human engineering
Bribes
Dumpster diving
Sympathetic vibration
Password guessing
Packet insertion
Data diddling
Computer viruses
Invalid values on calls
Van Eck bugging
Packet watching
PBX bugging
Shoulder surfing
Open microphone listening
Old disk information
Video viewing
Backup theft
Data aggregation
Use or condition bombs
Process bypassing
False update disks
Input overflow
Hang-up hooking
Call forwarding fakery
Illegal value insertion
E-mail spoofing
Login spoofing
Induced stress failures
Network services attacks
Combined attacks
58/102
Egy másik lista, Icove és társai rendszerezése:
Wiretapping
Dumpster diving
Eavesdropping on Emanations
Denial-of-service
Harassment
Masquerading
Software piracy
Unauthorized data copying
Degradation of service
Traffic analysis
Trap doors
Covert channels
Viruses and worms
Session hijacking
Timing attacks
Tunneling
Trojan horses
IP spoofing
Logic bombs
Data diddling
Salamis
Password sniffing
Excess privileges
Scanning
A szakszavak egyszerő listája azonban általában nem alkalmas arra, hogy kielégítı képet kaphassunk. Elıször is, a szakszavak hajlamosak arra, hogy kölcsönösen kizáróak legyenek. Példának okáért a vírus (virus) és az idızített bomba (time bomb) kifejezések rendszerint megtalálhatók ezeken a listákon, bár egy vírus esetlegesen tartalmazhat egy idızített bombát, és így a kategóriák átfedik egymást. Hasonlóra láthattunk példát a vírusok csoportosítása esetén ugyanennek a fejezetnek egy korábbi részében, ahol is a kiskapu (backdoor) terminológiával kapcsolatban tettünk hasonló megállapítást. A valóságos támadók általában szintén összetett módszereket használnak. Ennek következményeként, támadásra irányuló módszerek átfogó listájának kifejlesztése nem biztosítana egy olyan osztályozási táblázatot, amely kölcsönösen kizáró kategóriákat szolgáltatna még akkor sem, ha az egyes szakkifejezések kölcsönösen kizáróak lennének is. Ez azért van, mert a tényleges támadókat is összetett kategóriákba kellene sorolni. Egy másik probléma az ilyen megoldással kapcsolatban az, – feltételezve, hogy egy kimerítı, teljes listát össze lehetne állítani– hogy a rendszerezés kezelhetetlenül hosszú, valamint nehéz alkalmazni. Támadási mechanizmusok alapján: Szakszavak definíciókkal ellátott listájának egyik variációja az, hogy a kategóriákat listázzuk. Ezen kategóriák alapján is be lehet sorolni a különbözı biztonsággal kapcsolatos fogalmakat. Nézzünk erre egy példát, ami a támadások mechanizmusa alapján határozza meg a kategóriákat: 1.
Jelszó ellopása (stealing passwords) – módszerek, melyek arra irányulnak, hogy más felhasználók jelszavát megszerezzék,
2.
Szociális technika (social engineering/social hacking) – annak kihasználása, hogy az emberek szociális kapcsolataikban nem tartanak be mindég minden biztonsági szabályt. Ezt a kémkedés területén is alkalmazták/alkalmazzák, ahol esetleg nem is az információt birtokló, hanem annak beosztottja, titkárnıje volt az információszerzésnél a célszemély.
3.
Hibák és kiskapuk (bugs and backdoors) – szoftverrendszerek hibáinak kihasználása, vagy egy adott szoftver lecserélése kompromittált verzióra, vagy olyan szolgáltatás indítása, ami eredetileg nem volt engedélyezve.
4.
Hitelesítési hibák (authentication failures)– hitelesítésre használt mechanizmusok legyızése.
59/102
5.
Protokoll hibák (protocol failures)– maguk a protokollok nem megfelelıen vannak tervezve vagy kivitelezve,
6.
Információ szivárgása (information leakage)– olyan rendszerek használata, mint pl. a finger vagy a DNS azért, hogy megszerezzenek olyan információkat, amik szükségesek a hálózat menedzseléséhez vagy mőködéséhez, de a támadók szintén tudják használni,
7.
Szolgáltatás megtagadása (denial-of-service- DoS) – erıfeszítések, hogy a felhasználókat megakadályozzuk, hogy a saját rendszerüket képesek legyenek használni, vagy valamely szolgáltatást a hálózaton. Ilyen értelemben az elárasztás (flood) ennek egyik fajtája.
Fenyegetés-típusok alapján: A kategorizálás másik formája az, hogy csoportosítsuk az összes támadást olyan alapkategóriákba, amelyek egy támadás eredményeit írják le. Példa erre egy olyan lista, mint a korrupció (corruption), szivárgás (leakage) és tagadás (denial) Ezek után határozzuk meg mit értünk az egyes eredmény-kategóriák alatt, mi a fenyegetés. Ezt szokás fenyegetés-típus szerinti kategorizálásnak is hívni. •
Korrupció: az információ engedély nélküli megváltoztatása
•
Szivárgás: amikor az információ oda jut, ahol nem kellene lennie,
•
Tagadás: amikor a számítógépen lévı vagy a hálózati szolgáltatások nem érhetıek el.
Változások, eredmények alapján: Egy másik, hasonlóan az eredmény alapján történı kategorizálás is lehetséges, ha azt rendszerezzük, hogy mi változott meg. •
A titkosság és bizalmasság (secrecy és confidentiality) terén bekövetkezett változás
•
A pontosság (accuracy) terén bekövetkezett változás
•
Az integritás (integrity) területén bekövetkezett változás
•
A hitelesség (authenticity) terén bekövetkezett változás
•
Az elérhetıség (availability) terén bekövetkezett változás
Látható, hogy ebben az esetben is többféle nézıpontból közelíthetünk. Ez a fajta osztályozás azért hasznos, mert a legegyénibb támadásokat is be lehet sorolni ezek valamelyikébe, emellett az összetett támadások jó részét is eredményeik alapján részenként vizsgálhatjuk. Megjegyzendı azonban, hogy még így is elképzelhetı olyan speciális eset, amelynél a besorolás komoly fejtöréseket okozhat. Módszerek alapján: Az elméleti, azaz lehetségesen elıforduló kategorizálás mellett olyan megoldások is vannak, amelyek az empirikus adatok osztályozásán alapulnak. Ilyenkor a gyakorlatban alkalmazott (és fel is ismert) támadási módszerek alapján csoportosíthatunk. •
Információ lopás- (pl.: valaki más termináljának megtekintése)
•
Rongálás (pl.: lemez tartalmának megsemmisítése)
•
Álcázás, színlelés (masquerading) (pl.:hálózati átvitel rögzítése és visszajátszása)
•
Kártevı programok (pl.: rosszindulatú program telepítése)
60/102
•
Hitelesítés vagy engedély megkerülése (pl.:jelszó feltörése)
Tétlenség kihasználása (pl.:szándékosan rossz adminisztráció)
•
Indirekt kihasználás (egy másik rendszer használata károkozásra)
Támadási mátrixok: Amint az elızıekbıl is kiderült, sokféle szempont lehetséges, ami alapján kategorizálni lehet a biztonsági kérdéseket. Gyakran azonban több szempont szerint is célszerő egyszerre vizsgálódni. Ebben segítenek a különbözı mátrix elrendezéső kategorizálások Nézzünk meg egy olyan táblázatot, ami két dimenzión alapul, lehetıvé téve az incidensek kategorizálását egy egyszerő mátrixba. A táblázat sorai és oszlopai a lehetséges elkövetık kombinációit jelenítik meg: operátorok, programozók, adatbeviteli hivatalnokok, belsı felhasználók, külsı felhasználók és betolakodók, valamint a lehetséges hatásokat: fizikai rombolás, információ rombolás, adat megmásítás, szolgáltatások lopása, böngészés, információlopás, azaz a sebezhetıségek (vulnerabilities) kihasználásából származó eredményeket. A táblázat cellái pedig hogy hogyan, min keresztül valósul meg a támadás
Operátor
Fizikai rombolás
Rongálás, Rövidzárlat
Információ rombolás
Lemezek törlése
Programozó
Belsı
Károsító szoftver
Külsı
Károsító szoftver
Adatmegmásítás
Károsító szoftver
Szolgáltatások lopása
Lopás felhasználóként
Böngészés
Adat-bemenet
Hamis adatbevitel
Média lopása
Információ lopása
61/102
Nem engedélyezett cselekvés
Modemen keresztül
Nem engedélyezett hozzáférés
Modemen keresztül
Nem engedélyezett hozzáférés
Modemen keresztül
Egy külsı felhasználó azonban sokféle módszert tud használni arra, hogy támadjon. A probléma ebben a mátrixban az, hogy a két szempont közötti kapcsolat további finomításra szorul.
Számítógépes és hálózati támadások egy lehetséges rendszerezése Mőködési nézıpontból egy számítógépeken vagy hálózatokon támadó kísérletet tesz arra, hogy elérjen vagy kapcsolódjon egy végsı célhoz vagy motivációhoz. Ez a kapcsolat „eszközök, hozzáférés és eredmények” mőködési sorozatán keresztül jön létre. Ezek kapcsolják össze a támadókat és a célokat a számítógépes és hálózati támadások folyamatában. Howard a következı rendszerezést ajánlja. Támadó k
Eszközök
Hozzáfér és
Eredménye k
Célok
A támadókat a következı hat kategóriába lehet besorolni: 1. Hackerek – elsıdlegesen a kihívás és a hozzáférési státusz megszerzéséért törnek be a számítógépekbe 2. Kémek – elsıdlegesen olyan információért törnek be a számítógépbe, amit politikai elınyként tudnak használni 3. Terroristák - elsıdlegesen azért törnek be a számítógépbe, hogy félelmet keltsenek, ami segítségükre lesz abban, hogy politikai haszonra tegyenek szert 4. Ipari fosztogatók – egy cég alkalmazottai betörnek a versenytársak számítógépeibe azért, hogy anyagi haszonra tegyenek szert 5. Hivatásos bőnözık – személyes anyagi haszon miatt törnek be számítógépekbe (nem mint az ipari fosztogatók) Vandálok – elsıdlegesen azért törnek be a számítógépekbe, hogy kárt okozzanakTámadók és elsıdleges motivációik
Támadók
Hackerek
Célok
Kémek
Kihívás, státusz
Terroristák
eszközök
hozzáférés
eredmények
Politikai haszon
Ipari fosztogatók
Anyagi haszon
Hivatásos bőnözık
Károkozás
Vandálok
62/102
A támadók és a célok ezen kategóriái úgy szolgálnak, mint a számítógépes és a hálózati támadások mőködési folyamatának két végpontja. Köztük találhatók az „eszközök, hozzáférés és az eredmények”, amik összekapcsolják a támadókat végsı céljukhoz avagy motivációjukhoz. A támadáshoz használt eszközök •
Parancsok (user command) - a támadó felhasználók által is kiadható parancsokat használ, amelyeket parancssorból (command line) vagy grafikus felhasználói felületen keresztül (graphical user interface) tesz meg.
•
Script vagy program – a támadó olyan szkripteket és/vagy programokat futtat, amelyek kihasználják a sebezhetıségeket (vulnerabilities).
•
Autonóm ügynökprogram (Autonomous Agent) - a támadó olyan programokat, programrészeket, szkripteket futtat, amelyek aztán függetlenül a felhasználótól, automatikusan mőködnek tovább kihasználva a sebezhetıségeket
•
Toolkit a támadó olyan szoftvercsomagokat programokat, ügynökprogramokat tartalmaznak a támadáshoz
•
Elosztott eszközök (Distributed Tool) – a támadó olyan eszközöket használ, amelyek alkalmasak egy késıbbi összehangolt támadás indításához a célgép ellen, szimultán módon, esetleg idızítetten
•
Adatmegcsapolás (Data tap) - olyan eszközök használata, ahol a támadó az eszközök, kábelek, átvitel elektromágneses sugárzása alapján jut információhoz, vagy avatkozik be.
Eszközök
Parancsok
Script vagy program
Autonóm ügynök
Toolkit
Elosztott eszközök
Adatmegcsapolás
Az elızıek alapján különösebb magyarázat nélkül értelmezhetı a következı táblázat.
63/102
használ,
amelyek
szkripteket,
Milyen hozzáférési lehetıségeken keresztül valósulhat meg a támadás Hozzáférés Kivitelezési sebezhetıség
Jogosulatlan hozzáférés
Tervezési sebezhetıség
Jogosulatlan használat
Fájlok Folyamatok
Adatok az átvitelben
Konfigurációs sebezhetıség
A támadások eredményei a következık lehetnek : •
Információ elrontása (corruption) – bármilyen jogosulatlan megváltoztatása a tárolt fájloknak vagy a hálózaton átmenı adatoknak
•
Információ elárulása (leaking, disclosure) – az információ felfedése olyanok elıtt, akik nem jogosultak arra
•
Szolgáltatás ellopása (theft of service) – a számítógép szolgáltatásainak vagy hálózati szolgáltatásoknak a jogosulatlan használata
•
Szolgáltatás megtagadása (denial-of-service)– bármilyen számítógépes minıségének degradálása, blokkolása illetve használhatatlanná tétele
Mit eredményezhet a támadás Eredmények Információ elrontása Információ elárulása Szolgáltatás ellopása Szolgáltatás megtagadása
64/102
vagy
hálózati
szolgáltatás
Profession al Criminals
Data Tap
Distributed Tool
Corporate Raiders
Terrorists
Spies
Hackers
Toolkit
Autonomous Agent
Script or Program
User Command
Configuration Vulnerability
Design Vulnerability
Implementation Vulnerability
Unauthorized Use
Unauthorized Access
Attackers
Tools
65/102
Access Processes
Data in Transit
Files
Denial-ofservice
Theft of Service
Disclosure of Information
Corruption of Information
Results
Damage
Financial Gain
Political Gain
Challenge, Status
Objectives
Összefoglalásként álljon itt a teljes táblázat az angol szakkifejezésekkel
Vandals
8. Titkosítás, Cenzúra, Anonimitás Kriptográfia (cryptography) = Titkosítás (crypt=titkos, gráfia=írás) Ez egy régi tudományterülete a matematikának. Eredetileg a katonai kommunikációból fejlıdött ki azzal a céllal, hogy az ellenség a fontos üzeneteket akkor se tudja értelmezni, ha esetleg megszerezné azokat. Napjainkban a kriptográfia alkalmazásának egyik legfontosabb területe, hogy a különbözı rendszerekben, például számítógépes hálózatokban a felhasználók authentikációját/azonosítását, az átvitt adatok integritását, az információk védelmét az illetéktelenektıl minél hatékonyabb módon megoldja. A titkosítás alapfogalmai Mire használható a titkosítás? Rejtjelzés (Encryption, decryption) Az üzenetet úgy kell kódolni, hogy a kódolás után az üzenet tartalmát a kódot nem ismerı, a szükséges kulcs hiányában ne tudja visszafejteni. A cél az, hogy a kódoláshoz használt kulcsot minél nehezebben (ideális esetben egyáltalán ne) lehessen megfejteni. Titokmegosztás (Secret sharing) Jelszót, titkosításra használt kulcsot, stb. meg kell osztani a résztvevık között, mert késıbb ezt mindegyiküknek használnia kell. Mindezt olyan módon, hogy közben ne derüljön ki a titokban tartandó információ. Hitelesítés (Certification) Védelmet biztosít annak érdekében, hogy az adatokat ne lehessen hamisítani semmilyen módon. Feladata bizonyítani, hogy a hitelesített adatok keletkezésük óta nem változtak meg, és a kapott információ minden eleme (tartalma, feladója, feladás ideje, stb.) hitelesnek tekinthetı. Partnerazonosítás (Identification) A kommunikáló feleknek meg kell gyızıdniük partnerük személyazonosságáról. Hozzáférésvédelem, jogosultság vizsgálat (Access control, Authentication) Feladata biztosítani azt, hogy egy adott erıforráshoz vagy adatokhoz csak a megfelelı jogosultsággal rendelkezı felhasználók férjenek hozzá. Az erıforráshoz kötıdı mőveleteket csak jogosult felhasználók végezhessék. Az authentikáció azon alapszik, hogy valaki tud valamit (melyik kulcsot kell használnia vagy jelszót, PIN kódot) és rendelkezik valamivel (kulccsal vagy felhasználói névvel, kártyával), így gyakran kapcsolódik a partnerazonosításhoz (identification). Digitális aláírások, idıpecsétek (Digital signature, time stamp) A hagyományos aláírás digitális megfelelıje. A digitális aláírás egy olyan üzenet összeállítását jelenti, ami általában tartalmazza az "aláírt" adat jellemzıit, hitelesítı ellenırzı összegét és az aláírás idejét esetleg helyét és az aláíró nevét. Így nemcsak az aláírót azonosítja, hanem hitelesítı eljárásokkal kiegészítve az adatokat is védi a hamisítás ellen. További feladata a "letagadhatatlanság" (nonrepudation) biztosítása is. Ugyanis az aláírást csak az hozhatta létre, akié az aláíráshoz szükséges kulcs.
66/102
Titkosítási modell Az elküldeni kívánt eredeti szöveg a nyílt szöveg (plaintext). Ebbıl a titkosítási eljárás létrehozza a titkosított szöveget (ciphertext) vagy más néven kriptogramot . A titkosítási eljárás paramétere a kulcs (key). Ennek ismerete nélkül a megfejtés nem lehetséges (vagy legalábbis nehéz). A ciphertext-et egy nyílt csatornán továbbítjuk, ahol a betolakodó hozzáférhet ahhoz. A vevı a megfejtési módszert alkalmazza a ciphertext-re, a kulccsal paraméterezve. A titkosítási kulcs és a megfejtési kulcs nem feltétlenül azonos, de ebben az esetben összetartoznak. A megfejtési eljárás eredményeképpen az eredeti nyílt szöveg áll elı. Alapvetıen kétféle titkosítási módszert használunk, a szimmetrikus és aszimmetrikus titkosítást. Amint a nevébıl sejthetı, a szimmetrikus esetben a titkosító, kódoló és a dekódoló, visszafejtı eljárás alapvetıen a küldı és a fogadó oldalon ugyanaz. Ezzel szemben a nyilvános kulcsú titkosítás alapötlete az, hogy olyan algoritmust használ, ahol a titkosításra használt kulcs nem azonos a dekódolásra használt kulccsal. Nyilván ez csak akkor használható, ha egy szöveget (plain text) így titkosítva majd dekódolva visszakapjuk az eredetit. Errıl a fejezetben valamivel késıbb részletesebben is szó lesz. A betolakodónak (intruder) két fajtája ismert: az egyik csak hallgat, és tudomást kíván szerezni az eredeti szövegrıl (passzív), a másik meg akarja az üzenetet hamisítani, vagy hamis üzeneteket próbál elıállítani a feladó nevében (aktív). A fenti megkülönböztetés szerint szokás a lehallgatás (listening), illetve a megszemélyesítés (impersonate) elleni védelemrıl beszélni. A jó titkosításnak mindkét próbálkozást ki kell védenie. Az üzenet, vagy a módszerek és kulcs(ok) megfejtésére irányuló eljárás a kriptoanalízis. A fenti eljárásokkal foglalkozó tudomány a titkosítástan vagy kriptológia. Igazi biztonságot csak az a titkosítás nyújt, amely tetszıleges mennyiségő választott nyílt szöveg esetén is feltörhetetlen. Klasszikus rejtjelezések Egyábécés rejtjelezések Caesar-féle rejtjelezés A rejtjelezés azon alapult, hogy az ABC betőit egy-egy másik betővel helyettesítették. Hogy a rejtjelezés egyszerőségét, könnyő visszafejtését biztosítsák, minden betőt ugyanannyi (jelen esetben három) bető eltolással helyettesítettek. a=>d,
b=>e,
c=>f, stb.
A rejtjelezés a karthágóiakat becsapta, de azóta se senkit. A példában a rövid ékezetes magyar ábécét alkalmaztuk, ennek megfelelıen a Caesar-rejtjelzés táblázata az alábbi: plaintext: aábcdeéfghijklmnoöpqrstuüvwxyz ciphertext: deéfghijklmnoöpqrstuüvwxyzaábc Az egyszerőség kedvéért az írásjelek és a szóközök változatlanul mennek át. k-eltolás Általánosított formája: az ábécét nem három, hanem tetszıleges k betővel eltolva alkalmazzuk. Itt k a rejtjelezés kulcsa. Legfeljebb annyiféle kulcs lehet, amennyi betője van az adott ábécének. Ezek közül persze a 0 eltolás helyben hagyást jelent, azaz nem használható titkosításra. Ilyen esetben a szöveget próbálkozással sem nehéz megfejteni. Általános egyábécés rejtjelezés Tovább általánosítva: A kulcs az a táblázat, hogy melyik szimbólumot melyikre cseréljük. Összesen 4*1026 féle kulcs lehet. Az összes eset végigpróbálása: 1µs / kulcs esetén is 1013 év lenne.
67/102
A megfejtés valódi módszere a nyelvi statisztika alkalmazása. Ez azt jelenti, hogy amennyiben tudni lehet, hogy a kódolt üzenet milyen természetes nyelven íródott, úgy az adott nyelvre jellemzı betők, betőpárok és szavak gyakorisága alapján ezek kódjai megfejthetık. Ha pedig egy adott szóból néhány betőt már sikerült meghatározni, úgy a többit (és vele együtt a kódjaikat is) viszonylag egyszerően meg lehet már határozni. A módszer másik hátránya az, hogy a kulcs nehezen megjegyezhetı, így a kódoláshoz és a dekódoláshoz is szükséges a teljes kulcstáblázat. Vigenére-féle rejtjelezés Az ötlete a következıképpen néz ki: Az egymást követı betőkre különbözı egyábécés kulcsot alkalmazzunk. Ennek elınye abban rejlik, hogy könnyen megjegyezhetı a kulcsszó, amivel a kódolás és a dekódolás elvégezhetı. Hátránya, hogy a kulcs hosszának megsejtésekor a probléma visszavezethetı az egyábécés titkosításra és elegendı titkos szöveg rendelkezésre állásakor statisztikai módszerrel ismét elemezhetı és könnyen megfejthetı. Számítógéppel mindez természetesen nem jelent gondot. Áthidalható ez a probléma, ha a kulcs hosszabb, mint a szöveg, de ennek a gyakorlati alkalmazása erısen korlátozott, mivel ilyenkor ismét felmerül az a probléma, hogy a hosszú kulcsot nehéz megjegyezni, így azt tárolni kell, ami ismét csak csökkenti a biztonságot. Az ilyen megoldások esetén egy másik lehetséges kódolási mód az, hogy betők helyett nagyobb egységeket kódolunk, például betőpárokat vagy szavakat. Ilyenkor nehezebb ugyan a megfejtés, de a nyelvi statisztikai módszerek alkalmazása szintén alkalmazható a feltörésben. Felcseréléses rejtjelezés A nyelvi gyakorisági statisztika ebben az esetben is elárulja a tisztán felcseréléses rejtjelezést. A kulcs ilyenkor a felcserélés algoritmusa. Számítógépes titkosítási módszerek A titkosítással kapcsolatban éppen úgy, mint minden más területen, az Interneten is két jól elkülönülı irányzat figyelhetı meg: a kereskedelmi és az akadémiai-kutatói szemlélet. A vállalkozások, kisebb és nagyobb cégek sok hasznos termékkel jelentkeznek, de az ı információs forrásaik rendszerint a reklámnak vannak alárendelve. Az akadémiai/kutatói szemléletre és a lelkes magánemberekre jellemzı a pártatlanabb látásmód, az ingyen rendelkezésre bocsátott termékek, írásos anyagok, szellemi tıke stb. Az Internet hagyományos értékei a demokratizmus, segítıkészség, önzetlenség és nyílt kommunikáció - ha élünk ezekkel - sokat segítenek abban, hogy egy-egy konkrét esetben megfelelı megoldást találjunk. A biztonsági kérdések esetén különösen fontos például, hogy tudomást szerezzünk arról, ha a kívánt titkosítási eljárást feltörték. Az Interneten sok kereskedelmi termék titkosításának gyengeségérıl szerezhetünk tudomást. Például a Word, az Excel, a Wordperfect, az Unix crypt, a PKZIP, a Microsoft Money, a Lotus 1-2-3 és még egy sor más termék titkosítása feltörhetı. Az ehhez szükséges eszközök az Internet segítségével könnyen hozzáférhetıek. Fontos, hogy a naiv szemlélı számára a jó és a rossz titkosítás nem különböztethetı meg egymástól. Ezért ellenırizetlen titkosítási módszer alkalmazása esetén fennáll a hamis biztonság illúziójának veszélye.
Adattitkosítási szabványok A régebben alkalmazott „minél hosszabb kulcs annál biztonságosabb” elvvel ellentétben manapság a helyettesítés és felcserélés (keverés) mellett a hangsúly a bonyolultabb algoritmusokra, és a rövidebb, de megfelelıen biztonságos kulcsokra tevıdött át. Manapság ezért népszerőek a helyettesítés-felcseréléses (szorzat típusú) blokk-kódoló algoritmusok. Az alapelv abból áll, hogyha ezeket egymás után alkalmazzuk, megfelelı erısségő titkosításhoz juthatunk. A felcserélésre úgynevezett Pdobozt (permutáció), a helyettesítésre S-dobozt (substitution) alkalmaznak, a végeredmény pedig maga a titkosított szorzat lesz.
68/102
DES USA kormányának 1977-ben elfogadott szabványa a DES (Digital Encryption Standard). 56 bites kulcs parametrizálja, 64 bites blokkokat titkosít 64 bites blokkokká. Ez valójában egy egyábécés rejtjelezés, amely 64 bites jeleket használ. A DES szimmetrikus kulcsú titkosító. A DES nemcsak blokkos, hanem folyamatos módszerrel is alkalmazható (pl. terminálok). Elınye, hogy a titkosított szöveg a szöveg teljes történetétıl függ. Kezdettıl fogva gyanították, hogy az 56 bites kulcs túl rövid, könnyő feltörni. Az IBM eredeti tervében 128 bit szerepelt, amit az USA Nemzetbiztonsági Hivatalának (NSA) kérésére csökkentettek 56 bitre. Okát nem tették közzé, de nyilvánvalóan sejthetı. Sikerült is egy konkrét példát feltörni, igaz, a mai viszonyokhoz képest rendkívül nagy számítási kapacitást alkalmaztak hozzá, az Interneten sok ezer számítógép között szétosztva a feladatot (Ezt a Distributed Computing egyik iskolapéldájának szokták felhozni napjainkban) Tripple DES (3DES) Ha a DES-t többszörösen alkalmazzuk egymás után, nagyobb biztonságot kaphatunk. Ennek egy jól használható változata, amikor két, 56 bites kulcsot használunk, de a DES-t háromszor alkalmazzuk. Elıször egy kódolást végzünk az egyik kulccsal, majd dekódolást a másik kulccsal, majd a végén ismét kódolást az elsı kulccsal. Ennek a módszernek több elınye is van a három különbözı kulccsal való DES kódolással szemben. Az egyik, hogy 2*56=112 bites kulcsokkal elegendı kódolni a 168 bites helyett, ami azért jó, mert kisebb kulcshossz használata hatékonyabb. Emellett azonban a 112 bites kulcshossz megfelelıen erıs jelenleg (és amennyiben nem lesz radikális számítási teljesítménynövekedés az elkövetkezendı idıkben, még hosszú ideig elég is lesz). A másik elınye az, hogy ez a megoldás kompatibilitást ad a régi egykulcsos rendszerekkel, hiszen ha a két kulcs megegyezik, azaz gyakorlatilag egy 56 bites kulcs van, akkor a DES ilyen módon történı alkalmazása egyenértékő az egyszeres DES-sel az eredményt tekintve. A DES ezen változata a triple DES, vagy más néven 3DES. Blowfish A Blowfish egy változó kulcshosszúsággal dolgozó blokk kódoló. A változó kulcshosszúság azt jelenti, hogy ellentétben például a DES-sel, ami fix, 56 bites kulcsokkal dolgozik, ez az algoritmus képes maximum 448 bites kulcsokkal is kódolni. Olyan helyeken célszerő az alkalmazása, ahol a kulcs nem változik gyakran, mint például egy kommunikációs kapcsolat, vagy egy automatikus állománykódolás esetén. Jelentısen gyorsabb megoldást nyújtott, mint a DES 32 bites mikroprocesszoros környezetben mőködı implementációkban. A DES-hez hasonlóan 64 bites blokkokat titkosít. Az alapvetı algoritmusa két részbıl áll. Az egyik a kulcs kiterjesztési fázis, aminek során az eredeti kulcs mellett néhány alkulcsot használva elıállít egy 4168 byte-os kulcstömböt. A másik része maga az adat titkosítás, ami ezen kulcstömb alapján történik, egy egyszerő kriptográfiai algoritmus 16-szor egymás után történı alkalmazásával. (Feistel network)
A kulcs-szétosztás problémája Minden olyan titkosítási módszernél jelentkezik a kulcs szétosztásának, megosztásának problémája, ahol a titkosítási és a megfejtési kulcs azonos (szimmetrikus kulcs). A kulcsban az adónak és a vevınek meg kell állapodnia, erre a célra rendszerint ugyanaz a nem biztonságos csatorna áll rendelkezésre, mint a további kommunikációra. Ráadásul a kompromittálódott kulcsot rendszeresen újra kell cserélni. Az egyik megoldás az, ha minden kulcsot titkos csatornán keresztül viszünk át. Ilyennek minısül például személyes találkozás. Ez azonban megnehezíti az azonnali és a globális kommunikációt. Egy másik megoldás a kulcshierarchia alkalmazása, azaz a kulcs továbbítása egy magasabb szintő szuperkulccsal, amelynek a cseréjére ritkán kerül sor. Ez elsısorban szervezeteken belül járható út. Idegen szervezetek között szintén csak megnehezíti a kommunikációt.
69/102
Nyilvános kulcsú titkosítás Alapelvek Nyilvános kulcsú titkosításnál minden egyes felhasználóhoz két kulcs tartozik: egy titkos és egy nyilvános. A titkos és a nyilvános kulcs szerepe szimmetrikus. Ha N jelöli a nyilvános kulcs alkalmazását, T a titkos kulcsét, és x egy kódolandó információ, akkor N(T(x)) = x és T(N(x) )= x A módszer lényege, hogy rendkívül nehéz T-bıl N-et meghatározni, továbbá T nem törhetı fel választott nyílt szöveggel. Ezeket a követelményeket teljesíti például az MIT-en kidolgozott RSA algoritmus. Minden felhasználónak generálnia kell a maga részére egy nyilvános/titkos kulcs párt. Ezután a nyilvános kulcsot minél szélesebb körben ismertté kell tenni, a titkos kulcsra értelemszerően vigyázni kell. Bárki, aki titkosított üzenetet akar küldeni, nem kell mást tegyen, mint a fogadó nyilvános kulcsával kódolnia kell az üzenetet. A nyilvános kulcs ismerete nem segít abban, hogy a titkos kulcsot megfejtsük, ezért ha egy üzenetet valaki nyilvános kulcsával kódoltunk, akkor már magunk sem tudjuk azt visszafejteni, csakis a fogadó. Ha hitelesíteni akarunk egy üzenetet, akkor pedig a saját titkos kulcsunkat használjuk. Az üzenetbıl képezünk egy az üzenetnél jóval rövidebb számot, amit az üzenet ellenırzı összegének, "ujjlenyomatának" is nevezhetünk. Ezt a számot kódoljuk azután a saját titkos kulcsunkkal. A fogadó ezt csakis a mi nyilvános kulcsunkkal tudja "kinyitni" és így biztos lehet abban, hogy az üzenetet valóban mi küldtük. Az üzenet ilyen esetben nincs feltétlenül kódolva, de mivel az egész üzenet ujjlenyomatát tartalmazza az aláírásunk, az üzeneten végrehajtott minden változtatás, egyetlen vesszıcske beszúrása vagy elhagyása is kiderül a fogadó oldalon. Ilyen módon - hasonlóan ahhoz, mint amikor aláírunk valamit - a hitelesítéssel nem csak azt garantálhatjuk, hogy kitıl származik az üzenet, hanem azt is, hogy az pontosan ugyan az. Ez alkalomadtán - akár csak az aláírás - arra is alkalmas, hogy valamit a fejünkre olvassanak, mint általunk elismert, vállalt dolgot. Következésképpen a titkos kulcsunkra nem csak azért kell vigyáznunk, hogy a nekünk küldött üzeneteket ne fejtsék meg illetéktelenek, hanem azért is, hogy mások ne tudjanak "okirathamisítást" végrehajtani a kárunkra. Diffie-Hellman kulcs-csere 1976-ban Diffie, Hellman és Merkle tett közzé elıször olyan kriptográfiai eljárást, ami a nyilvános kulcsú elméleten alapult. Megmutatták, hogyan tud két titkos kommunikációt kezdeményezni szándékozó a kommunikációhoz szükséges közös kulcsban megegyezni miközben az egész „megbeszélés” nyilvános, azaz nem biztonságos csatornán folyik. Nevezzük a két kommunikálni szándékozót az angol nyelvő szakirodalomban oly gyakran használt nevekkel Alicenak és Bobnak! Az eljárás a következı. Alice választ két nagy prímszámot, n-t és g-t, melyek tipikusan legalább 100 bit hosszúak. Ezután mindketten elıállítanak maguknak egy-egy hasonló mérető pozitív számot véletlenszerően, amik kisebbek (n-1)-nél. Jelöljük ezeket x-szel (Alice száma) és y-nal (Bob választott száma). Elıször Alice elküldi Bobnak (g^x mod n)-t és (n,g)-t. Bob válaszában (g^y mod n)-t küld vissza. Alice a kapott válasz alapján kiszámolja a K=(g^y mod n)^x mod n értékét, Bob pedig az elsı üzenet alapján K= (g^x mod n )^y mod n értékét. Mindkét K-val jelölt kifejezés egyenlı g^xy mod n -nel, ami a közös, titkos kulcsként a további kommunikációjukban használható. Ha valaki figyelte a kommunikációt, ismerheti g^x és g^y értékeit, valamint a nyilvános n és g értékeit. A g^x-bıl elméletileg ki tudja számolni x-et és Bob válaszüzenetébıl y-t is. Azonban a módszer pontosan azon alapul, hogy nem ismert jelenleg olyan gyakorlatban használható algoritmus, amely nagy prímszám modulus mellett a kívánt logaritmust gyorsan elıállítaná. Ezt a módszert használják például az SSL (Secure Socket Layer) esetében is. RSA algoritmus A szerzık nevének kezdıbetőibıl: RSA (Rivest-Shamir-Adleman) egy nyilvános kulcsú titkosítási eljárás.
70/102
Biztonság alapelve: nagy számok tényezıkre bontásának nehézsége. Példa: 200 jegyő szám felbontása a mai számítógépekkel 4 milliárd évig tart. Válasszunk két nagy prímszámot, amelyek > 10100 n = p*q és z = (p-1)*(q-1). Legyen d z-hez képest relatív prím. Keressünk egy olyan e-t, amelyre e*d mod z = 1. A titkos kulcs a (d, n) pár, a nyilvános kulcs az (e, n) pár. C a chipertext, P plaintext jelsorozatai szám alakban értelmezve. Kódolás C = Pe mod n Dekódolás: P = Cd mod n Példa: p=101, q=113; n=11413; z=11200 => e=3533; d=6597 (A fenti példa valójában persze a gyakorlatban nem használható, mivel p,q túl kicsi, de az elvet jól mutatja.) A kódolás fix mérető blokkokra tördelve történik, a kódolandó blokkok log2 n-nél kevesebb bites egységek. A kód feltöréséhez n-et fel kellene bontani p-re és q-ra hogy z és ebbıl d meghatározható legyen. Ez azonban a jelenlegi számítási teljesítményeket figyelembe véve, belátható idın belül gyakorlatilag nem megvalósítható (nagy számok faktorizációja). Az RSA ajánlása szerint a napjainkban generált kulcsoknak legalább 1024-2048 bitesnek célszerő lenniük Hogyan gyızıdhetünk meg arról, hogy egy nyilvános kulcs érvényes-e? Igen fontos, hogy ha valakinek a nyilvános kulcsát használjuk, akkor biztosak legyünk abban, hogy nem hamis, lejárt, vagy érvénytelen a kulcs. Ha rossz kulcsot használunk, akkor nekünk küldött hamisított üzenetet hitelesnek hihetünk vagy illetéktelenek is olvashatják titkosnak szánt üzenetünket A legegyszerőbb, és legbiztonságosabb, ha személyesen cserélünk kulcsot. Megfelelı megoldás, ha valaki a névjegyén közli, na nem a nyilvános kulcsát, de annak egy ujjlenyomatát. Szokás elektronikus levélben, (vagy régebben a finger szolgáltatás segítségével) közölni nyilvános kulcsot minél szélesebb körben. Mint bármi más információt, nyilvános kulcsokat is alá lehet digitálisan írni, akár több embernek is. Ez az ötletet kétféleképpen is ki szokták használni. Bizalmi háló Ha olyan aláírással kapunk egy nyilvános kulcsot, amit hitelesnek tekintünk, akkor magát ezt a nyilvános kulcsot is elfogadhatjuk. Az ilyen bemutatott kulcs aztán újabb kulcsokat hitelesíthet. Ez a “bizalmi háló” a PGP (Pretty Good Privacy) nevő népszerő, szabadon terjeszthetı titkosítási programcsomagra jellemzı, melynek kidolgozója Phil Zimmerman. Ennél azt is szabályozhatjuk, hogy milyen mélységben fogadunk el “bemutatott által bemutatottakat”, és hogy hány hitelesnek ismert bemutató bemutatása kell ahhoz, hogy egy nyilvános kulcsot hitelesnek ismerjünk el. Kulcs-aláírási összejövetel Kulcs hitelesítés egyik módja a kulcs aláírási összejövetel (key signing party). Ez azonban meglehetısen nehézkes megoldás, ugyanis személyes kontaktust feltételez. Hogyan lehet enélkül ugyanezt a problémát megoldani? Kulcs szerverek, kulcshitelesítı autoritás Ha egy közjegyzı vagy valamilyen hivatal hitelesíti digitális aláírásával valakinek a nyilvános kulcsát, akkor ezt nem csak a polgári életben, hanem az államigazgatásban és a jogban is használhatjuk. Több ilyen szervezet, cég van már, amelyik nyilvános kulcsok hitelesítésével foglalkozik. Ilyenek a Verisgn, a Four11 vagy Európában a Deutsche Telekomm egy leányvállalata. A hálózaton ezeken kívül is számos kulcs szerver érhetı el, ahonnan személyek, szerverek, intézmények nyilvános kulcsát tölthetjük le. A PGP kulcs szerverek a világon elszórtan, de szinkronban mőködnek.
71/102
A kétkulcsos titkosítás helyzete a világban Sürgetı igény Manapság az Interneten legtöbbször még mindig olyan módon zajlik a kommunikáció, ahogy a “közönséges" életben elfogadhatatlannak tartanánk: nincs garancia arra, hogy onnan jön az információ, ahonnan hisszük. Ha valóban onnan is jön, nincs garancia arra, hogy - akár rosszindulatúan - nem olvasták-e el, részben vagy egészben nem változtatták-e meg illetéktelenek. Technikailag viszonylag egyszerő és régen ismert ezeknek a problémáknak a megoldása. Ez a nyilvános kulcsú titkosítás, mely a digitálisan tárolt, illetve továbbított információk titkosságát, hitelességét, épségét, letagadhatatlanságát egyaránt garantálja.
Digitális aláírás (Digital Signature) A digitális aláírás (digital signature) arra szolgál, hogy egy ilyen módon aláírt üzenet esetében garantálni lehessen a hitelességet. Ez azt jelenti, hogy az üzenet és a hozzá tartozó aláírás ismeretében egyértelmően meghatározható legyen az aláíró, az aláírás ideje, és emellett biztosítani lehessen a meghamisíthatatlanságot. Ilyen esetben nem merül fel alapvetı igényként a teljes szöveg titkosítása. Jól használható ebben az esetben a nyilvános kulcsú titkosítás, hiszen ennek segítségével – az aláíró nyilvános kulcsának ismeretében – az azonosíthatóság kérdését könnyő megoldani. Ha ehhez egy idıbélyegzıvel ellátott üzenet kivonatot is hozzáveszünk, és ezt kódoljuk el a privát kulccsal, gyakorlatilag használható megoldást kapunk a digitális aláírás megvalósítására. Üzenet kivonat (Message Digest) Az üzenet kivonat (message digest) jól használható digitális aláírásokhoz. Ennek lényege, hogy az üzenet teljes szövege alapján egy olyan pecsétet hozunk létre, amely egyedileg, csak az adott üzenethez tarozhat. Minden szöveghez ez a pecsét más és más lesz, így az eredeti szövegen ismételten végrehajtva az algoritmust a kapott egyedi pecsétet össze lehet hasonlítani az üzenethez rendelt pecséttel. Ezek alapján eldönthetı, hogy az üzenet megegyezik-e az eredetivel. Ehhez úgynevezett egyirányú, hash algoritmust használnak. Ennek lényege, hogy a pecsét állandó hosszúságú bitsorozat tetszıleges szöveg esetén, a pecsét ismeretében az eredeti üzenetet gyakorlatilag nem lehet elıállítani, illetve nem tudunk két különbözı üzenetet létrehozni, amihez ugyanaz a pecsét tartozik. Ilyen üzenet kivonat függvénybıl több is használatos manapság. Ezek közül a legismertebbek az SHA (Secure Hash Algorithm), DSA (Digital Signature Algorithm) és - az RSA „R” betője - Ron Rivest által fémjelzett MD4, MD5 (Message Digest version 4,5). Titkosítási algoritmusok összehasonlítása A szimmetrikus algoritmusok elınyei • A szimmetrikus algoritmusok gyorsak, így jól használhatók olyan alkalmazásokban, melyek nagy adatátviteli sebességet igényelnek. Néhány hardver megvalósítás sebessége a 10-100 Mbit/s sebességet is eléri. A szoftver megvalósítások lassabbak, általában csak 1-2 Mbit/s sebességőek. • Az alkalmazott kulcsok viszonylag rövidek (56-256 bit), így csak kevés tárhelyet foglalnak (Smart Card alkalmazások). • A szimmetrikus algoritmusok nem csak titkosításra alkalmasak, hanem többféle kriptográfiai feladatban is alkalmazhatók. Ál-véletlen számok generálásához, hash függvények tömörítı-függvényeiként, stb. használatosak. • A különbözı elvő szimmetrikus kódolók kombinálásával igen erıs titkosító egységek hozhatók létre (produkciós kódolók, vagy más néven szorzat-kódolók). Például az olyan egyszerő transzformációk, mint a helyettesítés vagy a keverés könnyen elemezhetık, de az ezek öszszekapcsolásával keletkezı S-P (szorzat produktum) kódolók igen összetett (és erıs kriptográfiai) mőködést eredményezhetnek. A szimmetrikus algoritmusok hátrányai • Egy kommunikációban a kulcsnak mind a feladó, mint a címzett oldalán titokban kell maradnia, legalább a kommunikációs folyamat végéig.
72/102
• •
•
Nagy hálózatokban vagy olyan szervezetekben, ahol sok ember kíván egymással érintkezésbe lépni, a kezelendı és megosztandó kulcsok száma a résztvevık számával négyzetesen arányos. A feleknek a kommunikációs folyamatok megkezdése elıtt kulcsot kell cserélniük egymással egy biztonságos csatorna használatával. Ha a kulcsokat valamilyen oknál fogva meg kell változtatni, akkor a kulcscserét meg kell ismételni. A rövid kulcsok kedveznek a brute-force támadásnak, ezért azokat minél sőrőbben cserélni kell (legalább a feltételezett feltörési idın belül). Sok partner esetén a gyakori kulcscsere nehézkes lehet, pontosan a kapcsolatok nagy száma miatt.
Az aszimmetrikus algoritmusok elınyei • Minden résztvevınek csak a saját titkos kulcsát kell titokban tartania. • A nagy létszámú résztvevıvel rendelkezı kommunikációs hálózatokban sem jelent különösebb nehézséget a kulcsok megosztása. Ugyanannyi darab nyilvános kulcsot kell kezelni, mint ahány résztvevı van. • Az aszimmetrikus algoritmusok jól definiált, de nehéz matematikai problémákon alapulnak és kulcsaik sokkal hosszabbak, mint a szimmetrikus kulcsok. Ebbıl következıen a kulcsokat nem szükséges gyakran cserélni, egy-egy kulcs akár évekig is használható marad, hacsak el nem lopják, vagy más módon kompromittálódik. • A titkosító és a megoldó folyamatok a legtöbb aszimmetrikus rendszerben logikailag felcserélhetıek, ezért ezek az algoritmusok hatékonyan használhatók digitális aláírást alkalmazó rendszerekben. Az egyediséget biztosító titkos kulcs lehetıvé teszi a jó digitális aláírás elvárásainak teljesítését. • Az igen hosszú kulcsok gyakorlatilag lehetetlenné teszik a brute-force típusú támadást. Az aszimmetrikus algoritmusok hátrányai • Az algoritmusok általában lassúak. Emiatt gyakran a szimmetrikus algoritmusokkal együtt használják ıket. • A kulcsok mérete sokkal hosszabb, mint a szimmetrikus algoritmusok 56-128 bites kulcsa. A kulcsmenedzsment nagyobb adatmennyiség mozgatását és tárolását igénylik, mint a szimmetrikus algoritmusok esetében. • Szükség van egy megbízható harmadik félre (TTP Trusted Third Party- CA Certificate Authority), aki garantálja és tanúsítja, hogy a nyilvántartásában szereplı felhasználónév és a hozzá tartozó nyilvános kulcs valóban összetartozik. • Egyetlen algoritmus sem nyújt teljesen feltörhetetlen elméleti titkosítást, mivel a legtöbb megoldás valamilyen nehezen megoldható matematikai problémán alapszik. Ez egyben azt is jelenti, hogy az algoritmusok az alkalmazott matematikai mőveletek inverzeivel dekódolhatóak. Ha születik egy új, eddiginél hatékonyabb matematikai/technikai megoldás, az összes kulcs egyszerre kompromittálódik amit érint. Szteganográfia Érdemes megemlíteni a titkosítás kapcsán még egy érdekes metódust, a szteganográfiát. Ennek lényege, hogy nem csak az üzenet tartalma, hanem annak léte is rejtett. Azaz az üzenetet valamilyen más, az üzenet szempontjából lényegtelen adat közé keverjük, így az üzenet a külsı szemlélı számára rejtve marad. Az üzenetváltást figyelı észre sem veszi adott esetben, hogy az átvitt adatok között valamilyen egyéb jelentéssel bíró tartalom is van. Szokták ezt a módszert még beágyazásnak is nevezni. Ide tartozik a láthatatlan tinta, de a nyelvi megoldások is. A szteganográfia napjainkban is tovább él. A számítógépes eljárások közül kedvelt megoldás például képekbe rejteni az információt az LSB (Least Significant Bits) tartalmát változtatva, ami a képen magán nem észrevehetı. Legalább ilyen kedveltek a hang típusú állományok, wav, mp3 file-ok hallható tartományon kívül esı, vagy dummy szakaszai. Az egyik legnagyobb hátrány épp az elrejtésbıl adódik, mivel sok felesleges információt is át kell vinnünk egy viszonylag rövidebb üzenet esetében is. Ezért a rejtett üzenetet, amellett hogy hagyományosan kódoljuk is, tömöríteni is szokás, még az elrejtés elıtt. 9. Problémás webezés Anonimitás az interneten. Sütik
73/102
A cookie-k vagy más néven sütik eredetileg a Netscape kiterjesztései voltak, késıbb átvették ıket az Explorerbe is . A cookie-k segítségével a felhasználót megkíméljük attól, hogy az oldalon mindent be kelljen állítania pl. Tegyük fel, hogy valaki képeket szokott nézegetni portálunkon. Mindig ki kell keresnie a megfelelı stílusú, neki tetszı képeket, ha az URL-t pl. mert php-s vagy egyéb generált oldalról van szó nem tudja könyvjelzızni. Az oldal viszont meg is jegyezhetné ezt. Tehát elsı esetben a weblap megjegyzi az adatokat a sütiben, így a második alkalommal a sütibıl a webszerver tudja, hova kell irányítania a felhasználót.
A sütik használatára kétféle lehetıség kínálkozik. Az egyik megoldás: amikor elıször járunk egy oldalon, mondjuk egy portál-oldalon, ahol témákból választhatunk, a téma kiválasztása után a szerver átad a böngészınek egy sütit (ami a választott téma megnevezését tartalmazza). Amikor legközelebb az oldalra tévedünk, a böngészı az oldal letöltési kérelmével együtt ezt is visszaadja azt a szervernek. A szerver a visszakapott sütit értelmezi és ennek függvényében ad a böngészınek valamilyen oldalt (a fenti portálos példával: ilyenkor nem a témaválasztós oldalt kapjuk vissza, hanem a legutóbb választott téma tartalomjegyzékét). Sokszor azonban a kliens és a szerver között proxik vannak, amik szőrhetik a sütiket, vagyis jól keresztbetesznek a fent levezetett elgondolásnak. A másik megoldás, hogy a szervert teljesen kihagyjuk a sütikbıl és megpróbáljuk magunk megoldani a problémánkat. A szerver kihagyása a dologból azt jelenti, hogy amikor a szervernek küldenénk adatokat, akkor azokat helyben értelmezzük, és nem bízzuk a szerver szkriptjeire. Amikor a szerver adna vissza a böngészınek sütit, akkor az oldal ( azaz a generált oldal ) küld sütiket a böngészınek, és amikor a böngészı a szervernek küldene sütit, akkor azt nem a szerver, hanem az oldalt generáló program értelmezi. A probléma csak az, hogy elıfordul, hogy egy egy süti adatait más oldalak is elérhetik, mint az az oldal, ahol kitöltöttük ıket. A sütikben tárolt adatokat, amelyek lehetnek személyes, ránk vonatkozó adatok, érdeklıdési körünk, lakcímünk, azonosítónk az oldalon, stb. így ezek automatikus elfogadása egy sor biztonsági problémát vet fel. Automatikus elutasításuk viszont kényelmetlenségeket okozhatnak. Bár kevés az olyan oldal, amely nem használható sütik nélkül, sokhelyütt a különbözı reklám bannerek, felugró ablakok és hasonlók sütivel ellenırzik, megkaptuk-e már a mai spam/reklám adagunkat böngészınkön keresztül, így a sütik híján az oldalon minden egyes link követése után újabb reklámok zúdulnak a nyakunkba. A legtöbb modern böngészı szerencsére támogatja a sütik felhasználói kezelését, azaz egy süti elfogadása elıtt dialógus ablakot kaphatunk ha ennek megfelelıen állítottuk be a www klienst.
A fenti dialógus ablakon jól látható, hogy tájékozatást kapunk a süti tartalmáról, a küldı szerver nevérıl, hogy meddig tároljuk a sütit, mi a neve a sütinek, és a szerveren belül melyik oldaltól kaptuk azt. A kis kijelelölt jelölı négyzettel megadhatjuk, hogy mostani választásunk az egész gépre vonatkozzék az összes további aloldallal és sütivel együtt. A választási lehetıségeink pedig ( a részletek elrejtésén kívül ) az engedélyezés, a tiltás, és az engedélyezés a böngészı következı kikapcsolásáig ( ezután újfent rákérdez ).
74/102
A https-rıl röviden A https a http titkosított formája, a http forgalom SSL-be ágyazott implementációja. Az egész rendszer mőködéséhez fontos az SSL certificate, ami egy-egy weboldal sajátja. Vannak globális (root) certificate-ek, amelyek kibocsátóit a www kliensek biztonságosnak minısítik. Ez az alapja egy biztonságos kapcsolatnak. Lássuk, mit látunk, ha egy SSL kulcs gyanúsnak tőnik a böngészınk számára :
A dialógus ablak arról tájékoztat, hogy valami probléma van a kulccsal, azt azonban nem adja meg, hogy konkrétan mi az. Ezért érdemes az Examine Certificate gombra kattintani mielıtt továbblépnénk:
75/102
Ez az általános információ az adott SSL kulcsról. Ami lényeges, hogy látjuk, melyik szerver számára generálták (Issued to ), ki volt a kibocsátó ( Issued by ), és hogy mettıl meddig érvényes. A leggyakoribb ok, amely a hackerek hamisításain kívül elrontja egy certificate hitelességét az ún. self-signed certificate, vagy a dátum lejárta. A self-signed azt jelenti, hogy önaláírt, azaz az adott weblap üzemeltetıi nem fizettek pénzt egyik olyan szervezetnek sem, amely root certificate-eket ad ki, csak azért, hogy hitelesítsék ıket ( kölcséghatékonysági szempontok miatt hazánkra sajnos ez igen jellemzı ). A lejárt dátum általában csak az adminisztrátorok lustaságáról árulkodik. Ha bármilyen gyanúnk merülne fel, vagy csak idegesíteni akarjuk a szerver üzemeltetıit, amiért lejárt dátumú certificate-et használnak, kattintsunk a Details ( részletek ) fülre :
76/102
Itt a subject mezı tartalmában láthatjuk az elsı sorban a certificate-ért felelıs személy e-mail címét. A fenti példában egyébként az adminisztrátorok el akarták kerülni az ilyen leveleket, ezért a kulcs érvényességét 2030-ra állították, ami azért nem a legjobb megoldás, bár kétségkívül kényelmes. Ezek után a Close ( Zár gomb) után visszakapjuk az elızı dialógus ablakot, és választhatunk, hogy véglegesen elfogadjuk a kulcsot, a böngészı futási idejére fogadjuk el, vagy nem fogadjuk el ( ez esetben a kapcsolat nem jön létre ). A korábban említett banki és egyéb szolgáltatóknak álcázott levelekben található fals linkeket egyébként errıl is kiszúrhatjuk, mivel vagy nem használnak https-t ( ezt a címsorban láthatjuk ), vagy hamisított kulccsal dolgoznak. Lássunk egy hasonló példát, ahol a kulcs ugyan érvényes, ráadásul a Microsoft hiteles root CA-ja adta ki, mégsincs rendben, hiszen nem azon az oldalon találkoztunk vele, ahová az szól:
77/102
A fenti példában a cb1.msn.com oldalra szóló kulcsot a login.passport.net-hez találtuk kapcsolva. Az oldal vagy hamisított, vagy az adott cég csak egy certificate-et vásárolt a Microsofttól, de mindenesetre éljünk a gyanúval, hogy valami nincs rendjén. Egy másik új szolgáltatás a böngészıkben a jelszavak helyi tárolása is. Bár ez inkább csak a programokhoz kapcsolódik és nem magához az internethez mégis fontosnak tartjuk megjegyezni, hogy alapértelmezésben a rendszer titkosítás nélkül ( vagy igen gyenge titkosítással ) tartja a jelszavakat a lemezen, amiket egy vírus, vagy egy féreg, esetleg egy helyben támadó kolléga, féltékeny barát/barátnı könnyedén megszerezhet. Ezekben az esetekben a tárolt oldalon vagy beírva látjuk a felhasználói nevet és jelszót, vagy listát látunk ezekbıl ha több is eltárolásra került:
Jelszavak és a web Sok alapbeállítású www kliens rákérdez az oldalon elsı látogatáskor, hogy eltárolja-e jelszavunkat.
78/102
Azaz szeretnénk-e hogy a beírt jelszavunkat és felhasználói nevünket megjegyezze a rendszer. Yes ( Igen ), azaz szeretnénk, Never for this site ( Ezen az oldalon soha ) vagy No ( Nem ). Sokan, ha a böngészı kérdez valamit, automatikusan az igen-re kattintanak. Semmiképp se engedjük, hogy jelszavunkat megjegyezze a gép amennyiben 1. nem a saját gépünk elıtt ülünk, 2. a gép fokozott veszélynek van kitéve ( pl. nincs tőzfal, nincs vírus/féreg irtó installálva ), 3. közismerten nem biztonságos, esetleg frissítések nélküli operációs rendszert használunk, 4. fogalmunk sincs arról, mit jelentenek az elızı pontokban felsorolt dolgok.
Elıugró és blokkolt ablakok Sok estben kényelmi szempontból böngészınk egy-egy új ablakban jelenítené meg az új információkat, hogy aztán könnyedén visszatalálhassunk az eredetileg böngészgetett helyre. Ezt a kényelmi szolgáltatást is utolérte azonban a kevéssé vicces, annál bosszantóbb rosszándék. Ha valaki találkozott már olyan webhellyel, esetleg ártó szándékú programmal, aminek áldásos hatásai az egyre-másra nyíló böngészıablakok kavalkádja, az különösen tudja értékelni a böngészıprogramok újabb generációinak azon beállítását, ami tiltja ezeknek a felnyíló ablakoknak az elszaporodását. Sajnos azonban ez a jószándékú ablaknyitások esetében kifejezetten akadályozhatja a használatot, sıt akár az általunk igénybe venni óhajtott szolgáltatásokat használhatatlanná is teheti. Figyeljünk tehát oda, ha ilyen blokkolás történik, a böngészınk általában jelzi is ezt. Ilyenkor megfelelı óvatossággal, jól átgondolva mit is teszünk, a megjelenı információs sávra kattintva mi magunk engedélyezhetjük ennek a tiltásnak a feloldását.
79/102
A fenti ábrán épp egy ilyenre láthatunk példát, amikor a kényelmes fájlletöltés érdekében az automatikusan elinduló letöltés blokkolása miatt nekünk kell kézzel beavatkoznunk a folyamatba. Ha állományokat tltünk le, mindég olvassuk el figyelmesen a megjelenı feliratokat. A legritkább esetben célszerő csak azon nyomban telepíteni, futtatni az állományt. Jobb megoldás elıbb letölteni, eközben általában a víruskeresınk és a kémprogramkeresınk automatikusan meg is vizsgálja az állományt, és csak utána, a már letöltött és helyben található állományt elindítani.
Soha ne indítsunk olyan telepítıt, aminek az eredetében nem vagyunk teljesen biztosak!
80/102
Ha bizonytalanok vagyunk, inkább olvassuk el az ezzel kapcsolatos súgót, és kérjünk segítséget. Érdemes ezeket az apró szabályokat betartani, hiszen mégiscsak a saját adataink, állományaink védelmérıl van szó!
81/102
10. Alternatív védelem: a TCPA A számítástechnika sokat változott hıskorától kezdve. A korai nagygépes idıszakot felváltotta a PC-k túlsúlya, és az informatika befurakodása szürke hétköznapjainkba. Ott van az idıjárásjelentésben, az autónkban, a kvarcóránkban, az italautomatákban. Ez a helyzet egyre növeli a vágyat arra, hogy információinkat biztonságban tudjuk. Persze, miért is akadályozzunk meg valakit abban, hogy megtuja mennyi az idı? Hogy hány kóla és mennyi narancslé fogy egy automatából egy napszakban, vagy hogy milyen idı lesz, és mennyi az olajszintünk. Elsıre talán nem is gondolunk bele, mennyit fizetne nekünk egy italárusító világcég, hogy a konkurens termékek fogyasztóiról információkat kapjon ( mikor melyik termékük fogy jobban, milyen hımérséklető körülmények között, stb. ) vagy mekkora vagyont kereshetünk a tızsdén, ha egy hosszabb távú elırejelzésre teszünk szert, amibıl következtethetünk pl. a gyümölcs vagy takarmány mennyiségekre. Az információ értéke ezesetben a mennyiségeken múlik. Ha saját italfogyasztási szokásainkat áruljuk el valakinek, jóesetben pár pólót meg emblémás sapkát nyerhetünk ( ilyen kédıívhez kötött nyereményekkel, vagy garantált ajándékokkal már biztosan mindenki találkozott ), de ha több ezer emberét. Nos, egyre több ponton egyre több ember adatai kerülnek a rendszerbe, miközben az Internet is egyre inkább behálózza a világot. Ha egy adat nem is államtitok, gazdaságilag értékes lehet, és mint ilyen, védelemre szorul. Lássunk egy másik megközelítést is. Az adatok kiszivárgása mellett azok megsemmisülése sem kívánatos. Mennyit ér egy floppy, ha szakdolgozatunk egyetlen példányát tároljuk rajta? Ha a fınökünknek szánt bérszámfejtési listát (egy heti munka eredményét) hozzuk be rajta munkahelyünkre?3 Ugyanez egy operációs rendszer forráskódjánál már nem csak közvetlen anyagi veszteségeket okozhat, biztonsági szempontból is veszélyes. Erre is volt példa a közelmúltban, az egyik szoftveróriás együttmőködı partnerétıl jutottak kódrészletek a világhálóra. A forráskód birtokában a vírusok írói, a kiskapukat keresı hackerek képesek lesznek kihasználni rendszerünk hibáit, és ha kárt nem is okoznak, de szabad hozzáférésük lesz minden, a számítógépen tárolt adatunkhoz. A biztonság mellett fontos még a felhasználó védelme a kéretlen adatokkal szemben. Egy figyelmetlenül elvégzett telepítés után olyan adatok kerülhetnek a gépre, amelyek a késıbbiekben akadályozhatják a munkát, pl. megjelenı reklámok, kéretlen pop-up ablakok, stb. A kéretlen e-mailek is napról napra gyarapodnak, ami nem csak a hálózatokat lassítja, de olvasóinak is kellemetlen pillanatokat okoz. Megjelentek a hétköznapi adatokkal kereskedı cégek is, például az emberek jóhiszemően kitöltött őrlapjait, amiket a freemail, hotmail, vagy más valamilyen „ingyenes” szolgáltatást nyújtó cég töltet ki velük a hobbijukról, kitőnıen el lehet adni a reklámozni szándékozó cégeknek. A cég megvásárolja az adatbázist, és máris a hobbijainkkal kapcsolatos levelekkel bombázhatja postafiókunkat (tehát célzott reklámot végez). A küldı azonosítása ilyen esetekben igen nehézkes, nem is beszélve annak esélyérıl, hogy valaha is sikerülne töröltetni magunkat az összes efféle adatbázisból, ha már egyszer bekerültünk az egyikbe. Ezekre a problémákra eddig inkább csak szoftveres védelem létezett, a hardveres megoldások nem terjedtek el, mivel csak a mid/mainframe piacra fejlesztették ıket. A korai PC-k piacán nem volt igény biztonságra, mivel hálózati, adatbázisbeli alkalmazásuk nem volt tömeges. A másik indok az lehetett, hogy a PC-ket ne lehessen komoly célokra használni, ezáltal a mid- és mainframek továbbra is eladhatóak legyenek (A PC és a fürtözés fejlıdése sebességben és kapacitásban fenyegette a nagyszámítógépes rendszereket. ). A TCG4 alapítói fıként amerikai cégek, amelyek célja egy olyan platform létrehozása, ami a fenti problémák megoldása. A szervezetnek gazdasági súlya is van, amivel igyekszik a piacra bevezetni a még meg sem született platformot. Kísérletek történnek a TCPA elemek jelenlegi konfigurációkban történı elterjesztésére. Ez nem csak az átállást könnyíti meg, de a felhasználókat is könnyebb lesz kényszeríteni az átállásra ( például az alaplap gyártók egyszercsak elkezdik „lespórolni” az adott jumpert5, amivel jelenleg a TCPA konformitás ki- és bekapcsolható ). Bár nem tervszerően, de ilyen megoldásokkal már az IHM6 e-Magyarország programjában is találkozhatunk (valószínőleg a nagy gyártók stratégiája szivárog be államigazgatásunkhoz ). A PTE Természettudományi Karára (Ifjúság útja 6. „A” porta) a projekt keretében kihelyezett Compaq EVO PC emberi jelenlét érzékelıvel volt felszerelve (ahogy a TCPA ezt megköveteli). Azóta a gépet technikai okok miatt másikra cserélték. Ezen érzékelı már nincs, de beépített webkamerával rendelkezik, ami az érzékelıt helyettesíteni képes.
3
Munkám során találkoztam ezzel a két példával (persze teljesen eltőntek az adatok a diszkekrıl). TCG:Trusted Computing Group, régi nevén TCPA (mivel azóta is szándékosan váltogatva használja maga a szövetség is a két nevet, én is ezt a hagyományt követem) 5 Jumper: két fém kivezetés, amelyek rövidre zárásával illetve „nyitva hagyásával” befolyásolhatjuk a hardware konfiguráció viselkedését. 6 IHM: Informatikai és Hírközlési Minisztérium 4
82/102
A világhálót használó gépek csak szoftveresen voltak/vannak védve a támadásoktól. Az Internetet napjainkban használó gépeket számtalan módon támadhatják, ezek közül a három legjellemzıbb: • • •
Nem biztonságos programok Rosszul beállított programok Programhibák ( buffer túlcsordulások és elemzési hibák)
Nem biztonságos programok azok a programok, melyek nem rendelkeznek titkosítási képességekkel. Például az olyan ftp, Telnet alkalmazások, ahol a felhasználói neveket és jelszavakat titkosítás nélkül továbbítják. Ezeket felhasználva a támadó hozzáférhet egyébkent titkos adatokhoz is. Rosszul beállított programokról beszélünk, ha a program megfelel minden biztonsági elıírásnak, de ezek nincsenek helyesen beállítva. Például az ssh7-t is rá lehet venni „plain text” kódolás használatára ( amivel kikapcsoljuk a titkosítást ). A Windows képes titkosított jelszót használni Microsoft network megosztásaihoz, de a registry-ben ez kikapcsolható. Puffer túlcsordulás történik akkor, ha egy adott program a munkájához lefoglal egy fix mérető puffert, de íráskor nem ellenırzi, hogy az éppen írásra kerülı adat elfér-e ebben a bufferben. Ezt kihasználva a támadó személy vagy program olyan adatokat küld, amik nem férnek el a pufferben, és így a program felülírja az azt követı memóriaterületet. Erre a felülírt területre így olyan futatható kódot írhat, amivel akár távolról hozzá tud férni a számítógéphez, más jogosultságokat szerezhet, stb. Ahhoz képest, hogy ezt a hibatípust már jó harminc éve felfedezték, még mindig ez okozza a legtöbb gondot, pedig megfelelı programozással és teszteléssel kivédhetı lenne. Alternatívaként lehetıség van pl. fordításkor úgy létrehozni a programot, hogy a buffer végén a fordító elhelyezzen egy fix karaktersort. Majd figyelve azt, módosítása, eltőnése esetén azonnal megszakítja a program futását (canary védelem). Mivel az újrafordítás sok esetben körülményes lehet, ezért kialakultak valósidejő függvénykönyvtárak is. Lényegük: a programok funkció hívásainak helyére állnak (pl.: libsafe). Érdekességként említést érdemel az Xbox, aminél elvileg a gyári programokon kívül más nem futhatna, azonban egy rosszul megírt program eredményeként - ami buffer túlcsordulást okoz - akár Linuxot is futtathatunk rajta (ahogy ezt elmés hackerek egy játék hibáját kihasználva meg is tették). Elemzési hiba akkor történik, ha az érkezı adatok vizsgálata nem teljes. Például amikor a webszerveren megnéznek egy html lapot, akkor ellenırzi, hogy az adott fájl hozzáférhetı-e. Azonban megfelelı ellenırzés, elemzés nélkül a szerver megengedi más adatokhoz is a hozzáférést. Egy ilyen hiba például, ahol a szerver a ’../../../etc/passwd’ fájl hozzáféréséhez megadja az engedélyt ( ez a példa meglehetısen elméleti ). Az unikódra való átállásnál is jelentkeztek hasonló hibák, például: 7
ssh secure shell, távoli parancssori elérést boztosít, a telnet kódolt verziója
83/102
„/scripts/..%5c%5c../winnt/system32/cmd.exe”. ahol így a Windows egyes verziói esetén a parancsértelmezıvel tetszıleges parancsot futathatunk az IIS webszerver nevében, amelynek kimenetét a böngészınkben láthatjuk. Ha már megemlítettük a World Wide Web témakörét, a kliensek egy hibájára is lássunk egy példát:
A fenti diagramm a különbözı programokban felfedezett hibákat mutatja évenkénti bontásban. 2001-ben átlagosan 7 hibát fedeztek fel naponta, ez a szám 2002-ben tovább növekedett, megközelítıleg 14 hiba került nyilvánosságra napi átlagban. Ennek egyik oka az lehet, hogy napjaink rendszerei egyre összetettebbek. Unix és Windows alapú rendszerek a többnyire használt alkalmazásokkal együtt 100 millió sornyi forráskódot tesznek ki. Tanulmányok megállapították, hogy a forráskód minden ezredik sorára jut egy biztonsági hiba. Ezek alapján könnyen kiszámolható, hogy egy általános rendszerben százezer biztonsági hiba fordulhat elı. ( Természetesen a grafikon meredeksége a programok számának növekedésébıl is adódik ) Ellenpéldaként említést érdemel a MULTICS8, ami 1985-ben operációs rendszerként elsıként és sokáig az egyetlenként érdemelte ki a NCSC(National Computer Security Center) ’Narancs’ könyvében9 leírt B2-es biztonsági minısítést. Nem volt nehéz megfelelni a követelményeknek, ugyanis itt alkalmazták elıször a ’karcsú’ kernel ötletét. Csak 56000 kódsor hosszú volt, így a rendszermag könnyen ellenırizhetı és biztonságosan használható volt. A General Electric/Honeywell Bull architektúrájának hála hardveresen biztosított volt a memória szegmens védelem, így az alkalmazások is nagyobb biztonságban voltak. Ezek alapján hogy lehet napjainkban egy biztonságosnak mondható rendszert úgy fejleszteni, hogy hetente jelennek meg új eszközmeghajtók? Szinte sehogy. Foltozásokkal, biztonsági frissitésekkel ugyan orvosolhatóak a felismert biztonsági rések, de általában csak a hiba felszínre kerülése után. Sokan nem is frissítik rendszerüket, sok cég háttérbe szorítja az efféle kiadásokat ( a biztonság nem hoz közvetlen profitot ). Szoftverek erkölcsi és biztonsági elavulása Biztonsági problémákat okoz továbbá az, hogy a vállalatok olyan szoftvereket használnak még mindig, amelyeknek támogatását már befejezte a gyártója. Ezáltal már nem jelennek meg a bennük felismert hibákhoz biztonsági javítások. Az AssetMetrix Research Labs "Elavult rendszerek használati elemzése és kockázatai" címő tanulmányából az derül ki, hogy a vizsgált 670 cég több mint 370ezer gépének van problémája a biztonsággal. E cégek 80 százalékában még mindig Windows 95 vagy Windows 98 rendszert futtatnak, ami ezen operációs rendszerek ’gyenge’ biztonsági képességeit és a közeljövıben megszőnı terméktámogatást figyelembe véve komoly kockázatokat hordoz magában. 8
Multics MULTiplexed Information and Computing Service – az elsı magasszintő nyelven írt többfelhasználós, többfeladatos idıosztásos operációs rendszer 9 NSCS Orange Book
84/102
További szomorú tény, hogy ezen gépek 27 százalékán a már támogatás nélküli Windows 95, míg 13 százalékán a szintén támogatással nem rendelkezı Windows NT 4.0-as verziója fut. És ezen adatok nem csak a vállalatokra jellemzıek. A biztonságosabb operációs rendszer általában jobb teljesítménnyel rendelkezı gépeket igényel, amit az iskolák, cégek nem minden esetben tudnak megengedni maguknak, amúgyis szőkös anyagi forrásaik miatt. Ismeretlen ellenfelek Biztonsági gondokat okoz még a crackerek tevékenysége is, akik a védelmeket megkerülve átírják oldalaink tartalmát, rosszabb esetben bizalmas adatainkat lopják el. Vannak köztük, akikre az ’alapszintő’ ismeretek jellemzıek, ismert hibákat kihasználva ismertség reményében cselekednek és csak kisebb károkat okoznak, de akadnak köztük, akik mélyebb ismeretekkel rendelkeznek, csoportokba (scene) tömörülve fejlesztik tudásukat. Nekik már komolyabb céljaik vannak. Bizalmas adatokat akarnak megszerezni, vagy átjárónak használják a rendszert a nyomaik eltüntetésére, komolyabb rendszerekhez történı bejutáshoz. A közelmúlt egyik ilyen nagy betörése volt, amikor a levelezést figyelve, egyéb naplózó programokat futtatva, egy a kiadáshoz közelálló, program forráskódját szerezte meg a behatoló hónapokig tartó ’munkája’ során, majd az Interneten nyilvánosságra hozta. Meg kell említeni még a hackereket, akik a crackerekhez hasonló tevékenységet folytatnak, a hálózatra kapcsolt számítógépek gyenge pontjait keresik. Azonban ık 'jóindulatú' betörık, megkeresik a hibákat, publikálják ıket és megpróbálják javítani. Megszállott szakértık. Elektronikus kereskedelem Az elektronikus kereskedelem térnyerése napjainkban egyre jobban megfigyelhetı, egyre több terméket rendelnek meg az Interneten keresztül. A piac e szegmense ugyan gazdaságilag nálunk még nem jelentıs, a felmerülı problémák már most körvonalazódni látszanak. Ennek a területnek a biztonsága is többnyire szoftveres alapokon nyugszik, ez által itt is jelen vannak a számítógépes bőnözök, akik megpróbálják megszerezni adatainkat ( az eBusiness-ben részt vevı cégek jogilag is nehéz helyzetben vannak, ezért erıs lobbit folytatnak a DRM10 nemzetközi elfogadása mellett). Az elektronikus tranzakciók közben történı visszaélések leggyakoribb módja a felhasználó forgalmának figyelése (és a forgalomból a jelszavak kiszőrése illetve visszakódolása), vagy például megszemélyesítve bankunk vagy egyéb nagy fontossággal bíró oldal tartalmát megszerzik jelszavunkat, vagy egyéb bizalmas adatainkat. Aminek még a következményeire is rossz gondolni. A megszemélyesítés lényege, hogy egy olyan szervernek, oldalnak adjak ki magukat, – és nyitnak meg ablakokat, küldenek adatokat a nevében – amiben megbízik a felhasználó és ezáltal kételkedés nélkül megadja személyes felhasználó nevét, jelszavát ( ilyen esetben természetesen tökéletesen lemásolják az oldal tartalmát, sıt akár tovább is küldik loginnevünket és jelszavunkat, és ezáltal valóban használhatjuk az eredeti szolgáltatást is). A mi szoftverlopásaink Szintén nagy probléma még a szoftverekkel történı visszaélések, illegális programok használata, a szerzıi jogi problémák. A világban használt szoftverek nagy része még manapság is másolt. Magyarországon ez az arány 50 százalék körüli, ami más Európai államokhoz viszonyítva elégé rossz eredmény. Ennek valószínőleg nagy szerepe lehet abban, hogy ’80as évek elején a személyi számítógépek elterjedésével nem jelentek meg hozzájuk a megfelelı szoftverek, többnyire külföldrıl behozott, másolt programokat használtak, ami a PC-k elterjedésével sem változott 10
DRM Digital Rights Management
85/102
sokat. Azonban a korábbi évekhez képest javulás tapasztalható, köszönhetıen a bevezetett törvényeknek és a vállalatoknál egyre gyakoribb szoftver ellenırzéseknek, valamint az egyre nagyobb népszerőségnek örvendı szabad szoftver felhasználás. Jó példa erre, hogy Németország kormányzata a közelmúltban a Linux mellett tette le voksát. A szoftverek másolását megnehezíteni szándékoztak a fejlesztık az aktiválás bevezetésével. A programokhoz tartozó szoftver-kulcsok azonban könnyedén jártak kézrıl kézre. Ugyan akadtak szoftverek, amelyek a már másolt kulcsok ismeretében a rendszer frissítésekor nemcsak nem települtek fel, hanem a késıbbi javításokat elérhetetlenné tették a felhasználó számára, ’rosszabb’ esetben a másolt programot is használhatatlanná tették. Frissítés elıtti termékkulcs módosítással kikerülhetı volt ez a védelem. A termék aktiválásával némileg javult a helyzet és így akár a szoftver útja is követhetı lett a felhasználóig. Azonban ez sem váltotta be igazán a hozzá főzött reményeket, a warez11 oldalakon ezek kikerülésére speciális „javítások” jelentek meg. Letöltések - „szabadon” Az MP3-ak Interneten való terjedésével a számok szerzıi és a lemezkiadók is károsultak. A zene és file cserélı programok jelentıs bevételkieséseket okoztak. Ennek legjelentısebb képviselıje a Napster volt, ahol a felhasználó központi szerverek használatával és zeneszámok megosztásával tudott válogatni az éppen csatlakozó felhasználók számai közül. A kiadók hosszú pereskedésben elérték hogy a Napster korszak véget érjen. Ám ekkor következett az Internet alvilágának válasza. Új fájlcserélı szoftverek jelentek meg. A Napsterrel ellentétben ezek már megfoghatatlanabbak, ugyanis nem szervereken keresztül történik a kapcsolat kialakítása, hanem a gépek közvetlenül kommunikálnak, ami sokkal átláthatatlanabbá teszi a rendszert ( peer to peer ). A fájlcserélés itt is hasonló stratégiát követ, bizonyos mérető adatot megosztva hozzáfér a felhasználó az összes csatlakozó számítógép megosztott tartalmához. Az Internet átviteli sebességének növekedésével megjelentek a nagyobb fájlok, tömörített filmek, stb. Hol dıl el a biztonság? Az informatika hıskorában többnyire az operációs rendszer biztonsága határozta meg egy adott rendszer biztonságát. Csak igen kis mértékben használtak gépet olyan felhasználók, akik ne lettek volna tisztában döntéseik következményeivel és az így létrejövı biztonsági kockázatokkal. Manapság azonban ez a folyamat megfordulni látszik. Az operációs rendszerek eljutottak egy olyan szintre, ahol megfelelı beállításokkal a fennálló veszélyek jelentıs mértékben lecsökkenthetık lennének. Azonban az operációs rendszerek telepítéskor úgynevezett „default”, vagyis alapértelmezett beállításokkal települnek, amit a támadók ki is használnak. Annak, hogy ezek nem kerülnek megváltoztatásra több oka is lehet. Az egyik ilyen a hozzá nem értés. Elmegy a felhasználó a tanfolyamra (szövegszerkesztés, táblázatkezelés) közben/után egy számítástechnikai boltba és vesz egy gépet, amin gyakorol/dolgozik. Jobb esetben már található rajta valamilyen rendszer az eladó által telepítve, rosszabb esetben nem. Elıreláthatólag nem fog ezek beállításával foglalatoskodni, csak használni szeretné. A másik ok a nemtörıdömség. A felhasználó jól beállította a rendszerét, szinte sebezhetetlen. Azonban nem figyeli a programfrissítéseket és az ezek által nyilvánosságra hozott problémákat, így azt ezt kihasználó vírusok, férgek támadásának teszi ki magát. Esetleg olyan programot futtat, ami ajtókat nyit ki mások számára. Ilyen programok lehetnek a fentebb említett fájlcserélı programok, amik adott összméretben fájlok megosztását kívánják a mások által elérhetıvé tett fájlokhoz való hozzáféréshez. Nem lehetünk biztosak benne, hogy csak azokat látják-e, amit meg szerettünk volna osztani. Érdemes még említést tenni az át nem olvasott licensz szerzıdésekrıl, amit a felhasználók többsége már rutinszerően elfogad, ezáltal nemkívánt programok, úgynevezett adverek kerülnek a gépére. Ezek a felhasználótól függetlenül indulnak el, és nemkívánatos tevékenységet végeznek a gépén. (Pl.: ACE Mega Codecs Pack) Lehetséges megoldások Látható tehát, hogy az Internet és a hálózatok gyorsulásával megjelent elég sok probléma, amik fıként jogi és pénzügyi oldalról okoznak gondokat a károsultaknak. Szükség lenne tehát a gépek biztonságának és nyomon követésének megvalósítására. Valamilyen hardverre, ami nem másítható meg a külsı támadó által, és a szoftvernek egyértelmően azonosítaná a számítógépeket. Ezáltal segítené megvalósítani a biztonságosabb elektronikus kereskedelem alapjait is.
11
warez oldal – Illegális szoftverek, zenék, dokumentációk gyüjtıhelye
86/102
Ha a számítógép egyértelmően azonosítható lenne ( ellentmond az Internetes filozófia szerinti anonimitásnak12, amire szerverek is létesültek, segítve a felhasználót kényes esetekben inkognitója megırzésében ), akkor megbízhatóbban lehetne a fájlok cseréjét, a betörések azonosítását, a kéretlen levelek címzettjeinek kiszőrését megvalósítani, nem is szólva a belsı támadások elleni védelemrıl, amit a számítógép elıtt ülı belsı alkalmazott tesz. Az Intelnek létezett egy megoldása már a Pentium 3-as processzorokban, ami egy egyszerő sorozatszám volt. Egyértelmően azonosította a processzort, a felhasználók tiltakozására többnyire nem került bekapcsolásra, sıt a Pentium 4-es processzorokból már ki is maradt. Léteznek a piacon más megoldások, ezek azonban nem szabványosak, gyakran elıfordul, hogy az egyik módszerrel biztonságba helyezett adatainkat más rendszerben nem tudjuk olvasni vagy írni. Ez fıként az eBusiness résztvevıinek elfogadhatatlan, de sok más helyen is gátat szab alkalmazásuknak. Egy biztonságos és megbízhatóságot garantáló módszer kidolgozására jött létre a Trusted Computing Platform Alliance A szövetség A Trusted Computing Platform Alliance, vagyis a TCPA 1999 októberében alakult. A Compaq, HP, IBM, Intel és Microsoft által létrejött egyesülés célja az volt, hogy a fejlett hardverelemekre és operációs rendszerre építve egy megbízható számítógépes rendszert hozzanak létre, ami magában foglalja a kliens, szerver, hálózati és kommunikációs platformok iránti megbízhatóságot. 2003 áprilisától Trusted Computing Group (TCG) néven, a TCPA utódjaként hozza nyilvánosságra ajánlásait. Ez idı alatt további tagok csatlakoztak az egyesüléshez, ami mára már több száz tagot számlál. Az újonnan csatlakzók között megtalálhatóak a legnagyobb laptop és komplett számítógépgyártók: Acer, Compaq, Dell, Fujitsu-Simens, Toshiba; a processzor és alaplapgyártók: AMD, Intel, Motorola, SIS, Ali, nVidia, valamint a Transmeta már forgalmaz is TCPA specifikációban leírtaknak megfelelı processzort, ami szükségtelenné teszi más mellékáramkörök alkalmazását (TPM)13. A chipgyártók közül az Atmel, az Infineon és a National Semiconductor cégeket érdemes kiemelni, akik már a követelményeknek megfelelı Trusted Platform Modul-t gyártanak és forgalmaznak. Ezek képesek együttmőködni az alaplapi BIOS-sal. Természetesen BIOS gyártókat is fel tud mutatni a társulás a soraiban, úgymint American Megatrends (AMIBIOS), Pheonix Technologies. Hardveres oldalról érdemes még kiemelni a hálózati termékeirıl ismert 3Com-ot. Szoftveres oldalról is kiemelkedı neveket tudhat maga mellett a szervezet: a hálózati megoldásairól ismert Novell-t, a vírusirtó-, rendszerkarbantartó- és hálózati biztonságot fokozó programjaival jeleskedı Symantec-et, valamint az asztali gépek operációs rendszer piacát uraló Microsoft-ot. Míg a titkosítással foglalkozó cégek oldaláról RSA Security, SSH Communications Security, valamint az internetes szabványokkal foglalkozó World Wide Web Consortium (W3C) érdemes még említésre. Vannak viszont olyan gyártók, akiknek a nevét nem láthatjuk a támogatók között. Ilyen például az NEC, a Cray, az SGI, az Apple. Miért jött létre a TCPA? A TCPA ipari szövetség a PC-t egy plusz hardverrel akarja biztonságosabbá tenni. Egy integrált chip vigyáz arra, hogy a hardvert ne módosíthassák, ne használjanak licensz nélküli szoftvert, vagy egy dokumentumot ne nyissanak meg engedély nélkül. Ennek alapjaira épít a Microsoft. A következı Windows verzióba integrált, központilag irányított palládiumnak kell a kalózmásolatokat, és a reprodukált illegális multimédia adatokat letiltania. Eddig csak kevés eljárást tudtak a digitális tartalom védelmére alkalmazni – a számos védelmi mechanizmus röviddel a megjelenése után fel lett törve, például a DVD-Video CSS-védelmi mechanizmusa, vagy az Adobe E-Book védelme. Sıt, néhány megoldást már a piaci megjelenés elıtt megfejtettek, úgymint a Microsoft Windows Média 7 multimédia formátumának DRM elemeit (Digital Rights Management). A mai PC-k biztonságtechnikailag képtelenek a szoftvereket a támadásoktól védeni. Amíg egy hibakeresı a futó szoftver viselkedését figyelni tudja, addig semmi sem változik. Ezt a problémát a PC-ipar is felismerte. A TCPA-modell célja ezt a visszásságot megszüntetni, a biztonsági rendszert a PC-hardverbe integrálni. Belátható idın belül titkosító koprocesszor kerül a CPU-ba, ezzel a PC-t egy megbízható környezetté alakítva. A chip nem csak a felhasználót authentikálja, hanem a ki- és bekódolás feladatát is átveszi. Ezen felül asszimmetrikus kulcsokat hoz létre, és ellenırzi a fogadott tanusítványok érvényességét. A chip felismeri a telepített szoftver és hardver módosításait, és erre lekapcsol- és ezzel együtt az egész TCPA-PC is. Egy ilyen számítógép hagyja ugyan magát TCPA nélkül elindítani- ebben a módban 12 13
anonimitás – névtelenség, megakadályozandó hogy az Interneten bárki adatokat győjthessen rólunk TPM Trusted Platform Modul a TCPA konformitáshoz feltétlenül szükséges hardver
87/102
azonban a felhasználó nem tudja a TCPA-alkalmazásokat használni és elzárt dokumentumaihoz hozzáférni. Elsı pillanatban sokat igérı útnak látszik a PC-architektúra ezirányú bıvítése. Néhány példa: Egy megfelelıen kitüntetett levelezıprogram ellenırizni tudja, vajon az e-mailek ténylegesen a megadott feladótól származnak-e, illetve a nyilvános kulcsok alapján hitelesíti a feladót és a címzettet - tehát vége a spamnak, vírusoknak és trójai vírusoknak. Ha véletlenül egy privát Word-dokumentum idegen kezekbe kerülne, illetéktelenek nem tudják megnyitni az adatokat a kulcsok nélkül. Látszólag itt a felhasználók és biztonsági szakemberek kérései és követelései válnak valóra.A TCPA hardveres és szoftveres oldala Megvalósított TPM modulok TCPA/TCG követelményeinek alapeleme a specifikációban meghatározott Trusted Platform Modul (TPM). A TPM valójában egy titkosítást végzı processzorra épül, ami ellátja a rendszert digitális aláírásokkal, elvégezi a véletlenszám generálást, és védi a tárolt kulcsokat biztonságos környezetben (tipikusan a tokozáson belül). A TCPA/TCG 1.1b specifikációjában a TPM-re vonatkozó követelményeket több cég is megvalósította termékeiben. Atmel AT97SC3201 A chip teljes mértékben megfelel a TCPA/TCG 1.1b által támasztott követelményeknek. A modul egy 8/16 bites RISC microprocesszorra épül, belsı EEPROM-mal rendelkezik a RSA kulcsok tárolására, amelyekbıl több mint tizet képes eltárolni. LPC(Low Pin Count) segítségével kommunikál a PC-vel, a kapcsolat 33 MHz-es órajellel valósul meg. Tartalmaz továbbá egy RNG-t(Random Number Generator), ami valódi véletlen számok elıállítását teszi lehetıvé, és ami a PC számára is hozzáférhetı „igazi” véletlen számok generálásához. Ezen adottságokkal a TPM egy 2048 bites RSA jelet 500 ms, a 1024 bites RSA jelet 100 ms alatt számol a CRTM14 (a rendszer megbízhatósága erre épít) használatával. Szabotázs védelemre is lehetıség van, ugyanis a chip képes figyelni a külsı elem és kristály meglétét vagy a szabotázsát.
Infineon SLD 9630 TT 1.1 A chip 64kB ROM-mal és 8 kB RAM-mal rendelkezik, 16 kB EEPROM-mal a kulcsok tárolásához, valamint 48 kB EEPROM-mal a késıbbi firmware frissítésekhez. Hardveres RSA gyorsítás akár 2048 bites kulcsok esetén is CRTM 14
CRTM – Core Root of Trust for Measurement
88/102
használatával. A rendszerrel az Intel által definiált LPC-n keresztül kommunikál, aminek a sávszélessége hozzávetılegesen 4 MB.
National PC21100 A chip fı jellemzıi: TCPA 1.1 szabványnak megfelelı, optimalizált LPC-re épülı kommunikáció és mobil rendszer támogatás(gyors BIOS hash mód, BIOS mód, OS mód alacsony kommunikációs költségekkel(low overhead). 16 bites RISC maggal, 2 MB címterülettel, és 20 MHz-es ciklusidıvel. Az adatok tárolására 128 kB védett flash memóriát és 8 kB RAM-ot használ. Ezek által több mint harminc 2048 bites RSA kulcs tárolására képes. A SHA-1 és RSA kulcsok gyors kódolásához kriptografikus gyorsítással rendelkezik. Biztonságos GPIO port, hardveres „igazi”15 véletlen szám generátor és alacsony nyugalmi áram jellemzi. Teljes TCPA Software Stack megvalósítás (eszközvezérlık (BIOS és OS), TDDL szőrı, TSS (TCS és TSP). A biztonságos és rejtett futáshoz a belsı memóriáját használja (Flash és RAM).
Transmeta TM 5800
15
„Nem igazi” véletlen számok generálhatók pl. az egérmozgásból, hálózati terhelésbıl, billentyőleütésekbıl is.
89/102
A Transmeta a TCPA funkciókat a Crusoe processzorba integrálja, rejtjelezési-gyorsítás és védett memória a processzormagban. A TCPA képességekkel rendelkezı Crusoe TM 5800-as más processzorokkal ellentétben nem igényel további külsı biztonsági-chipet, hanem ezen funkciókat a saját belsı Code-Morphing-Software-e tartalmazza. Ehhez tartozik még egy rejtett, védett memóriaterület a bizalmas információknak, a szoftverek hitelesítési- és titkosítási kulcsainak, ami a jövıben akár egész algoritmusokat vagy szoftver-komponenseket is tartalmazhat. Ezen túlmenıen tartalmaz még titkosításgyorsítást a DES, DES-X és Tripla-DES kódoláshoz, valamint a fejlesztés lehetıségét, amennyiben az AES-titkosítás a késıbbi TCPA-specifikációkban helyet kap. A Transmeta bejelentette továbbá, hogy nyilvánosságra hozza a hardveres titkosítási rutinok szoftveres elemeit, amelyek elérhetıvé teszik a Transmeta Security Extensions (TSX) névre keresztelt x86-os utasításbıvítéseket ( így bárki könnyedén használhatja a TPM-et saját programjában is). Titkosítás a TPM-ben A TPM-en belül az adatok titkosítására, dekódolására kétféle módszert alkalmaznak. Az egyik ilyen titkosítási eljárás a szimmetrikus kódolás/dekódolás. Itt alapjaiban a titkosítást és a visszafejtést végzı eljárás is ugyanazt az algoritmust használja az üzenet titkosítására és visszafejtésére. A TPM ez esetben a DES és a 3DES titkosítási technikákat használja. A másik eljárás az aszimmetrikus kódolás, amelynek az alap koncepciója az, hogy létezik egy nyilvános kulcs, ami bárki számára könnyen hozzáférhetı. Ezt használva a titkosítást végzı elküldi a titkosított üzenetét a címzettnek, amit ı visszafejt a saját kulcsával (ami csakis rá jellemzı). Tehát az eljárás során a titkosítást végzı kulcs nem azonos a visszafejtésre használt kulccsal. A modulban RSA aszimmetrikus titkosítást alkalmazzak. DES,Triple DES(3DES) A DES ( Digital Encryption Standard) titkosítási eljárást az IBM fejlesztette ki, amit az USA kormánya is elfogadott az 1970-es évek végén. Az IBM terveiben 128 bites kulcs szerepelt, amit az NSA16(az USA nemzetbiztonsági Hivatala) kérésének megfelelıen 56 bitesre csökkentettek17, így az eljárás 64 bites blokkokból állít elı, az 56 bites kulcs segítségével, titkosított 64 bites blokkokat. A titkosítás alapjait az egyábécés titkosítás adja. Az egyábécés titkosításnál az egyes szimbólumokat felcseréljük egy táblázat alapján egy másik szimbólumra. A táblázat a rejtjelezés kulcsa. A teljes ábécét felhasználva 4*10^26 féle lehetséges kulcs létezik, 56 bites kulcsok esetén ez a szám jelentısen csökken, hozzávetılegesen 7.2*10^16 féle kulcsot alkalmazhatunk a titkosítás során. Már az alkalmazásának a kezdeten sejtették, hogy az 56 bites kulcs a hossza miatt aránylag könnyen feltörhetı lesz a számítási kapacitás növekedésével. Ez be is következett ’97 végén – ’98 elején. Egy 56 bites kulccsal titkosított szöveget pár hónap alatt sikerült feltörni a feladat Interneten keresztüli szétosztásával, több ezer számítógép segítségével. Egy 64 biten titkosított szöveg feltöréséhez több százezer számítógép segítségével négy évre volt szükség. Jelenleg egy 72 biten kódlt szöveg törése folyik 2002 óta. Bıvebb információ a Distributed Computing honlapján olvasható a projektrıl. Triple DES-rıl akkor beszélünk, ha a DES algoritmusát háromszor hajtjuk végre a titkosítandó adaton. A titkosítást két 56 bites kulccsal végezzük, elsı lépésben az elsı kulccsal titkosítjuk az adatokat, ezután a második kulccsal visszafejtjük, majd az elsı kulccsal ismét titkosítunk. Az így létrejött titkosítás egy 112 bites kulcs használatának felel meg, ami ugyan ’könnyebben’ feltörhetı, mint 3 különbözı kulcs esetén (168 bit), viszont a titkosítás gyorsabb és a jelenlegi számítási teljesítmény mellett is évtizedek kellenének a visszafejtéséhez. További elınye, hogy akár egykulcsos DES rendszerekhez is alkalmazható, ha az elsı és a második kulcs megegyezik. Itt kell meg megjegyezni, hogy a szimmetrikus titkosításnál szükség van a felek közötti kulcsok cseréjére. Erre a célra azonban nem használható az amúgy titkosított adatok továbbítására használt csatorna, amin valószínőleg a megbízhatatlanság miatt használunk titkosítást. Vagy megbízható átviteli formát kell alkalmazni, a kulcsot fizikailag eljutatva a partnerhez, vagy a kulcsokat titkosítani kell csak erre a célra használt kulcsokkal, úgynevezett szuperkulcsokkal, vagy egyéb titkosítási metódust alkalmazni. RSA Ez a nyilvános kulcsú titkosítási eljárás a szerzık nevének kezdıbetőibıl kapta az elnevezését, így lett RSA (RivestShamir-Adleman). A titkosítás biztonságát a nagyobb számok tényezıkre bontásának nehézsége adja. A titkos és 16
National Security Agency ( Nemzetbiztonsági Hivatal) a számítástechnikai ügyekkel ma már külön szerv, az NCSA foglalkozik. 17 A nemzetbiztonsági hivatal szükségesnek érezte, hogy szükség esetén képes legyen elfogadható idın belül feltörni a kódolt adatokat.
90/102
nyilvános kulcs meghatározásához elıször is két, viszonylag nagy prímszámot kell meghatároznunk, amelyek kielégítik a következı feltételt: 10^100
Cray – Egyesült Államokbeli székhelyő, élvonalbeli szuperszámítógép gyártó cég
91/102
Fizikai kapcsoló, jumper vagy nyomógomb, amit ha aktiválunk, akkor a TPM-nek Physical Presence jelet állít elı. Ennek a jelnek az elıállítása szükségtelen szoftveres úton. Ez a kapcsoló, jumper, vagy gomb olyan helyen kerül elhelyezésre, ahol a normál használat közben a felhasználó számára hozzáférhetetlen. Például: Egy DIP kapcsoló van az alaplapra kötve, ami a rendszer házán belül található. BIOS követelmények a TCPA számára A BIOS tölti be a gyártóra jellemzı TPM meghajtó programot, rekord információkat, amik ellenırzik a BIOS integritását a pre-boot folyamat közben, és futási környezetet biztosít a TPM számára. Ezekkel az ellenırzı lépésekkel kis mértékben megnı a rendszer indulási ideje (hozzávetılegesen 5 másodperccel) a TPM-mel történı kommunikáció miatt. (pedig a gyors rendszerindítási igények miatt került mára a legtöbb BIOS-ba Fast POST19 opció ) A TCPA által elıirt tevékenységek az egyes energia állapotokban Az energia állapotok rövid leirása Energia állapot
leirás
S0 Active state
bekapcsolt állapot
S1 Stand-by-low wakeup latency sleeping state
egyszerő energiakímélı mód
S2 Stand-by with CPU context lost
CPU lekapcsolása
S3 Suspend to RAM
RAM-ba mentés, CPU lekapcsolva
S4 Suspend to Disk (os)
hibernáció az operációs rendszer által
S4 Suspend to Disk (BioS)
hibernáció a BIOS által
S5 Off state
kikapcsolt állapot
S1: TPM állapot: Bekapcsolva, a TPM az S1 ’alvási’ fázis alatt még mindig üzemben van. Belépés S1-be: Nincs feladat. S1 közben: Nincs feladat. Kilépés S1-bıl: Nincs feladat. S2: TPM állapot: Bekapcsolva, a TPM az S2 ’alvási’ fázis alatt még mindig üzemben van. Belépés S2-be: Nincs feladat. S2 közben: Nincs feladat. Kilépés S2-bıl: Nincs feladat. S3: TPM állapot: Az S3 a legösszetettebben kezelhetı mód, mert a PCR20 értékeket megvédi a rendszer ez alatt a mód alatt. A mechanizmus, ahogy az értékeket megırizzük, nem lehet elérhetı a TPM-en kivől. Az S3 alatt a TPMnek meg kell tiltania minden TPM funkciót. Belépés S3-ba: A post-boot driver „TPM_SaveState”-et (TPM állapot mentést) eredményezhet. S3 közben: Lehet energiája, de ez a hardver definíciótól függ. Abban az esetben, ha a TPM képes megırizni a PCR-ek tartalmát, nem szükséges energia a TPM számára. Azonban, ha a TPM energia nélkül nem tudja fenntartani a PCR-ek tartalmát, az alaplapnak kell biztosítani ezt a TPM számára. Kilépés S3-ból: A CRTM kiadja a parancsot a PCR-ek visszaállítására. S4 OS: TPM állapot: Minden energia, beleértve a tápfeszültséget is, kikapcsolva. Belépés S4-be: Nincs feladat. S4 közben: TPM kikapcsolva – nincs feladat. 19 20
Power On Self Test (bekapcsolási önteszt) PCR – Platform Configuration Register
92/102
Kilépés S4-bıl: A PCR-ek elvesznek, beleértve az operációs rendszer által használtakat is, ezért az operációs rendszernek új integritást kell meghatároznia. A rendszer emiatt nem tud visszatérni eredeti állapotba. S4 BIOS: TPM állapot: Minden energia, beleértve a tápfeszültséget is, kikapcsolva. Belépés S4-be: Nincs feladat. S4 közben: TPM kikapcsolva – nincs feladat. Kilépés S4-bıl: A PCR-ek elvesznek, ezért az operációsrendszernek új integritást kell meghatároznia. S5: kikapcsolt állapot TPM állapot: Minden energia, beleértve a tápfeszültséget is, kikapcsolva. Belépés S5-be: Nincs feladat. S5 közben: TPM kikapcsolva – nincs feladat. Kilépés S5-bıl: A PCR-ek elvesznek, ezért az operációs rendszernek új integritást kell meghatároznia. Átmenetek az egyes energiaállapotok között S5 -> S0 Ez a kikapcsolt állapotból indítás. Platform reset történik. A teljes BIOS inicializálási szekvencia lefut. S1 -> S0 Az S1-es alvási fázisból történı ismételt indítás. Platform reset nem történik, tehát a TPM InitCRTM funkció nem kerül meghívásra. A CRTM az indítási kódokat a pre-boot komponensek ellenırzése nélkül futtatja. A CRTM közvetlenül az operációs rendszernek adja át a vezérlést. Ha változások történtek a platform konfigurációjában, vagy komponenseiben, a változások értékelése az operációs rendszer felelıssége. S2 -> S0 Az S2-es alvási fázisból történ ismételt indítás. Platform reset nem történik, tehát a TPM InitCRTM funkció nem kerül meghívásra. A CRTM az indítási kódokat a pre-boot komponensek ellenırzése nélkül futtatja. A CRTM közvetlenül az operációs rendszernek adja át a vezérlést. Ha változások történtek a platform konfigurációjában, vagy komponenseiben, a változások értékelése az operációs rendszer felelıssége. S3 -> S0 Az S3-as alvási fázisból történı ismételt indítás. Platform reset történik. A CRTM újra felismerés nélkül futtatja a pre-boot komponenseket. A CRTM közvetlenül az operációs rendszernek adja át a vezérlést. Ha változások történtek a platform konfigurációjában, vagy komponenseiben, a változások értékelése az operációs rendszer felelıssége. S4 -> S0 Ez az, ahol az IPL az operációs rendszer betöltı hívása helyett betölti a memória tartalmát a diszkrıl. Platform reset történik. A teljes BIOS inicializáció végrehajtódik, csakúgy, mint az S5 -> S0 folyamatban. Ha változások történtek a platform konfigurációjában, vagy komponenseiben, a változások értékelése a Pre-Boot és a Post-Boot fázis felelıssége. Az állapot átmenetek ismertetésénél említésre kerültek a PCR-ek (Platform Configuration Registers), ezekhez való minden hozzáférésnél egy log bejegyzés jön létre. ACPI táblázat használata A rendszer firmware-je egy ACPI21 táblát használ a rendszer TCPA képességeinek azonosítására a Post-boot környezetben. A tábla információinak helyessége nem garantált, amíg a BIOS el nem jut a pre-boot állapotból a postboot állapotig. A firmware blokkolja a TCG log számára lefoglalt memóriát, és fenntartott memóriaként mutatja az IA32 INT 15h/E820 eszközön keresztül. Ez azért szükséges, hogy a log terület biztosan tartalmazza a rendszertranzakciókat az S5-tıl vagy az S4-tıl. Ha a log egy felülírható memóriában lenne, a firmware nem tudná jelezni a rendszer konfigurációt a hibernációból(S4) való visszatéréskor, mivel a memóriát felülírhatta az operációs rendszer az utolsó boot óta. 21
ACPI – Advanced Configuration and Power Interface
93/102
Implementáció A TCG interfészek a pre-boot környezetben: TCG Application Interface, TCPA Pre-boot driver interface és egy csoport ACPI struktúra definíció, ami az EventLog-ot tartalmazza. Pre-Boot interfészek
TPM-et támogató BIOS driverek A TPM gyártó a szokásos operációs rendszerhez kapcsolódó driver mellett egy, vagy két további drivert kell hogy biztosítson. Az egyik ezek közül a Memory Present (MP) driver a POST BIOS környezetben. Ez támogatja az INT 1Ah TPM kommunikációs interfészt. A másik BIOS driver a Memory Absent (MA), memória és vermek nélküli környezetben. Tipikusan ez használt az alkatrészek BIOS boot blockjában. Az MA és az MP driver is biztosított a külsı BIOS-ok számára, míg az integrált BIOS architektúrák esetében csak az MP. Mindkét driver szabványos objektumként definiált a BIOS gyártók számára. Minden alaplapi chip inicializálása (ideértve a kommunikációs csatornát a TPM eszköz felé) a CRTM vagy a POSTBIOS által kerül lebonyolításra mielıtt a BIOS meghívja a CRTM, vagy a POST drivert. Alapkövetelmények a BIOS driverekkel szemben A BIOS drivereknek teljesíteniük kell a következı elvárásokat: - önállónak kell lenniük, BIOS szolgáltatások nem használandók. - ellenörizniük kell bemeneti paramétereik érvényességét.
94/102
- tartalmazniuk kell az adatblokkok láncolhatóságát, a TPM eszköz felé, és attól. - felelısek minden TPM-gyártó specifikus protokoll információ hozzáadásáért és elvételéért a TCG-Transfer-Data (TCG-Command)-hoz, illetve ettıl.
Az alkalmazások kommunikációja a TPM hardver eszközökkel. Memory Absent (MA) Driver Ezt a drivert egy igen limitált környezetben történı mőködésre tervezték. A memória nélkül mőködik, csak a CPU regisztereit használva adattárolásra. A drivernek teljes egészében önállónak kell lennie, mivel a BIOS szolgáltatásai betöltıdésekor nem elérhetıek. Ezt a drivert használjuk az alkatrészek BIOS boot blockjaiban ( jelenleg is elterjedt a RAID, illetve SCSI vezérlıknél). Az alaplapi BIOS-ok esetében nem szükséges az alkalmazása, elég csak a Memory Present(MP) drivert használni. Az MA driver feladata, hogy ellenırizze és elıkészítse a BIOS kód elsı részét, ennek meghívása elıtt. Az MA drivernek és a TPM-nek ezt a mőveletet két másodpercnél rövidebb idı alatt kell végrehajtania. Memory Present(MP) Driver Az MP driver a TCG modulja a TPM eszközhöz. Az MP driver fı célja, hogy támogassa a BIOS-ok integrálását a TPM vezérlıbe, és a TPM kommunikációs szoftverébe. A driver tartalmaz funkciókat az adatblokkok protokolljának kezelésére is a TPM eszköz, és a hoszt között. Minden konfigurációs adat ( nem csak a bázis cím ) a BIOS által kerül beállításra, mielıtt meghívná az MP drivert. Minden adatátvitel a TPM-tıl és hozzá, ezen a modulon keresztül zajlik. A modulon keresztül a hoszt gép olvashatja, írhatja, vezérelheti a TPM-et. Az alkalmazás (ez esetben ilyen az operációs rendszer is) és az MP driver a TPM eszköz chipkészletén keresztül kommunikál egymással.
95/102
A TPM és a BIOS azonban nem elég a számítógép biztonságos üzemeltetéséhez. A memóriából, vagy egyéb perifériákból is könnyedén megszerezhetı a kívánt adat. Erre a gyártók is gondoltak,. A 2003 januári TCPA támogatással rendelkezı AMIBIOS 8 bemutatását követıen több hardverelem is megjelent az ajánlásnak megfelelı biztonsági megoldásokkal. 2003 májusában az Atmel a WinHEC-en mutatta be új billentyőzetét, amely a számítógéppel, a TPM megléte esetén, titkosítottan kommunikál. A klaviatúra a billentyőlenyomásokat kódolja, mielıtt a számítógéphez küldené, ahol a biztonsági modul dekódolja az adatokat. Hogyan mőködik a TPM? A szabványban a TPM-et a processzorba integrálják, így a felhasználok számára tényleges biztonságot tud nyújtani, és az esetleges módosításokat is meg lehet elızni. A TPM bevezetési fázisában a TCPA-koprocesszor egy különálló chipként fog elhelyezkedni az alaplapon, míg a késıbbi PC generációkban az alaplapi chipkészletbe vagy a processzorba (úgy, mint a Transmeta esetében) integrálják. A Fritz22 lapkában egy 33(/20) MHz-es, 8 bites RISC processzor található, ami a 2048 bit hosszú RSA kulcsot hozzávetılegesen fél másodperc alatt számolja ki. A számoláshoz „vélhetıen” prímszámokat használ. Ezekbıl a kulcsokból a lapkagyártótól függıen tíz és húsz közötti darabszámban képes kulcsokat tárolni. Az elsı ilyen kulcsot az alaplap gyártója állítja elı, minden alaplaphoz egyedien. Ez a gyártó kulcsával lesz ellenjegyezve, amit szintén egy TCPA Mesterkulcs jelöl meg. A további kulcsok késıbb jönnek ehez, amelyek a felhasználót az elsı számítógép indításnál hivatottak azonosítani. A felhasználónak késıbb bármilyen módosítás után ismét ellen kell jegyeztetnie egy ellenırzı állomással. Ebbıl valószínősíthetı, hogy a gyártási költségek emelkedni fognak a nyilvántartás és kulcskezelés miatt. A chip a számítógép bekapcsolását követıen azonnal munkához lát. Abban az esetben, ha a TCPA nincs az alaplapon letiltva a kapcsolóval vagy jumperrel, a koprocesszor23 (TPM) elıször a BIOS-t ellenırzi, majd elindítja a processzort. Ha mindent rendben talál, lekérdezi a számítógépben lévı kártyákat. Minden egyes lépésnél tárol egy ellenırzı összeget (SHA 1 Hash) és ezek után megállapítja a rendszer állapotát. A SHA-1 Hash algoritmus egy bizonyos hosszúságú adatfolyamot számol, mint a BIOS ellenırzésnél, egy 160 bit hosszú egyértelmő értéket. Ha valaki ezek után megváltoztatja a BIOS-t, vagy egy másik használatban lévı kulcsot, egy új ellenırzıösszeg jön létre, és a TPM figyelmezteti a felhasználót a módosításra. Következı lépésben a merevlemez TCPA konformítását ellenırzi, utána a bootszektort, a rendszer betöltıt, a kernelt, az eszközmeghajtót és mindent, ami az operációsrendszer indításához a memóriába betöltésre kerül. Bármilyen eltérés az elızı konfigurációhoz képest, - például új hardver elemek - a rendszer újra hitelesítési igényét okozza, mivel ez által a számítógép elveszíti TCPA konformítását. A hitelesítés online történik egy lista alapján, ami az ellenırzött hardvereket (HCL) és a letiltott szériaszák számokat (SRL) tartalmazza. Abban az esetben, ha a chip minden hardvert és az operációs rendszert is TCPA konformnak találja, átadja a vezérlést az operációs rendszernek. A jövıbeli Windows verzióknál ez vélhetıen a Longhorn és utódja, míg a Linuxnál talán a HP által tervezett HP-Linux. Ezt követıen az operációsrendszer elindítja a ’biztonságos órát’ a TPM-ben, és összehasonlítja az idıt egy megbízható idı-szerverrel az Interneten, hogy megakadályozza a rendszeridı módosítását. Egyben a számítógépen tárolt HCL és SRL adatbázist is aktualizálja. Amikor a felhasználó elindít egy programot, az operációs rendszer a TPM segítségével ellenırzi TCPA konformitását, amihez tartozik egy megfelelı platformazonosító és egy érvényes licensz. Az ellenırzés utolsó lépéseként összehasonlítja az SRL-el, ami az Interneten mindig naprakész lesz. Ha a licensz lejárt, vagy a gyártó zárolta a szériaszámot, az operációs rendszer kilövi a memóriából a programot. Egyezı licensz és sorozatszámok esetén a rendszer még a zárolt dokumentumok listáját (DRL) is letölti a szerverrıl, ami által a felhasználó semmilyen tiltott adatot nem tud megnyitni, hogy ezt tiltott formában felhasználja. A program csak ezen ellenırzések után indul el. Természetesen lehetıség van nem TCPA konform szoftvereket meghívni, legalábbis a bevezetési fázisban. Amennyiben egy ilyen program indul, a TCPA konform alkalmazások egy jelet kapnak, hogy a rendszer ’kompromittálásra’ (SIGCOMP) került. Ennek következtében az összes TCPA program az általa használt munkaterületet nullákkal írja felül és bezárja magát. A hagyománíos vírusok egy ilyen rendszerben esélytelenek. A
22 23
A TPM gúnyneve Fritz Holling amerikai szenátor után koprocesszor – segédprocesszor, társprocesszor, gyakran az aritmetikai segédprocesszorra alkalmazzák, itt a TPM-et értjük alatta.
96/102
linux rendszert használók kedvéért jegyzem meg: a mostani részlegesen kész hardverhez is létezik már kernel támogatás ( device major /minor : c 10 224 ), most épp az 1.1-es verziónál tart. Egy TCPA rendszer mindig azonos állapotba bootol, amit a felhasználó a telepítésnél meghatározott. Minden, a konfigurációban bekövetkezett változtatásnak világosan visszaigazoltnak kell lennie. Rosszindulatú DLL, vagy trójai vírus esetén az operációs rendszer a kártevıt a következı SRL vagy DRL frissítésekor egyszerően el tudja távolítani a rendszerbıl, ezáltal is javítva a biztonságát. TPM + TCPA = Palládium + DRM ? A TPM önmagában csak egy eszköz, ami nem képes utasításokat adni a gépnek, vagy bármit megtiltani, képes viszont kódokat ellenırizni, és megbízhatóan ki és be kódolni. A TCPA konform architektúra nem sokkal lép túl ezen, leginkább újabb lehetıségeket ad az operációsrendszerek és a BIOS kezébe, illetve segít a hardverek azonosításában, és az operációsrendszerek, programok, illetve maga a BIOS ellenırzésében, megnehezítve a vírusok dolgát. A Palládium adja hozzá az architektúrához az operációs rendszer funkcióit, melyekkel az képes saját eredetiségének vizsgálatára, a rajta futó programok ellenırzésére, az adatok és a perifériák védelmére ( meg nem erısített hírek szerint pl. az SATA24 szabványt támogató harddiszkek képesek a TCPA-ba illeszkedıen kódolt kommunikációra) , amivel megoldható hogy idegen gépben ne olvashassák le adatainkat. Szabványos alkalmazása a PC-kben, és a Palládium integrálása a jövıbeni operációs rendszerekbe megteremti a lehetıséget a DRM ( Digital Rights Management ) alkalmazására. A DRM lehetıvé teszi a törvényi keretek kiterjesztését, korlátozva az eddig szabadjára eresztett Internetes világot. Ellenzıi jogosan kritizálják a nagycégek részvételét, hiszen törvényi szabályozásról lévén szó, jelenlétük nem feltétlenül indokolt. ( a személyi igazolványokat sem a Coca Cola Inc. állítja ki, és nem is licenszeli azokat ). Jövıképek Microsoft Next-Generation Secure Computing Base A Microsoftot elsısorban szoftveres oldalról érinti a TCPA elterjedése. A szabványban leírtak alapján már a válaszuk is megvan rá, aminek a neve Next-Generation Secure Computing Base (NGSCB). Vélhetıen a következı generációs Windowsban (Longhorn) kerül sor a bevezetésére, legalábbis részlegesen. A szoftverfejlesztık tiltakozásának hatására egyelıre csak részletek kerülnek át az operációs rendszerbe. A megoldás alapját az úgynevezett nexus adná, ami az operációs rendszer szerves részét képezné, ezáltal biztosítva a megbízható kommunikációt az alkalmazásokkal, a perifériákkal, memóriával és az adathordozókkal. Elıreláthatólag a jelenlegi 1.1es TCG által leírt szabványban meghatározott TPM modulok támogatják a TCG specifikációkat, azonban ez az NGSCB számára nem elég, ezeken a hardvereken nem lehet elérni az NGSCB által meghatározott biztonsági szintet ( ami magában foglalja a DRM-et is). Ha a TPM megjelenik a PC-kben, akkor várhatóan az operációs rendszerek fogják meghatározni a fejlıdés irányvonalát. A lemezkiadók/könyvkiadók/filmforgalmazók elıreláthatólag azt az operációs rendszert fogják támogatni, amelyikkel
24
Serial ATA
97/102
érvényesíthetik érdekeiket. Ez vélhetıen az lesz, amelyik támogatja a TPM-re épülı biztonsági megoldásokat, egészen a DRM-ig. Unix alapú operációs rendszerekhez is lehet olyan kernel modult használni, ami képes lenne ezeket a biztonsági megoldásokat használni, azonban a TPM lényege (csak ellenırzött bináris kódok fussanak a gépen) alapján az otthon fordított kódokat hitelesíteni kell. Vélhetıen kevés felhasználó tudja majd ezt megengedni magának. Erısödhetnek a nagy Linuxos disztribúciók, amelyek fizetıs verziókat adnak ki (Pl. RedHat), így próbálva fedezni a hitelesítés/kulcs kérés folyamatát. A TCPA nem az elsı ( és valószínőleg nem is az utolsó ) kísérlet a PC-k biztonságosabbá tételére, és bár a hardver bevonásával úttörı szerepet tölt be, érdemes áttekinteni néhány korábbi szoftveres megoldás történelmét. Az egyik legelterjedtebb “komoly” állománykódoló program PGP (Pretty Good Privacy), illetve ennek GNU verziója a GPG (GNU Privacy Guard). Mindkét implementációból ingyenes kliensek állnak rendelkezésre amiga, atari, beos, epoc(psion), macos, dos, newton, os/2, palmos, unix/linux, windows 2000, windows 3.x, windows95/98/NT, windowsME, windowsXP alá. A gpg pedig, ami magában foglalja a pgp képességeit, forrásban is elérhetı, és a GNU/GPL licensznek hála szabadon módosítható, tehát nyitott az út az esetleges új hardverek és operációs rendszerekre történı portolás25 felé. A módszer lényege a nyilvános és titkos kulcsú rendszerek ötvözése. Mint láthattuk, a pgp nem kötött hardverhez, és szoftveres korlátai sem igen akadnak. Azonban ha az Interneten történı kommunikációk statisztikáit vesszük a pgp/gpg alkalmazása minimális a kódolatlan levelek, és dokumentumok forgalmához képest. Ezek alapján nehéz elképzelni, hogy a TCPA, ami mind szoftver, mind hardver szinten komoly követelményeket, és korlátozásokat támaszt, hamarosan képes legyen az Internet jelentıs részén elterjedni. Az Interneten az új technológiák amúgy is baljós jövınek néznek elébe. Elég csak az IPv4 és az IPv6 harcára gondolnunk. Az IPv6 konformitásról régóta beszélünk, és bár útvonalválasztási és címzési szempontokból az Internet Protokoll 6-os verziója egyértelmően jobb, ma is kevés az IPv6-os címmel rendelkezı számítógép ( legyen mégoly könnyő is a tunnell-ekhez illetve Ipv6-os címekhez való hozzájutás ), nem is beszélve a csak IPv6-os címmel rendelkezı gépek számáról. A TCPA itt is hátrányban van az új Internet Protokollal szemben, így méginkább szembekerül az Internet statikus voltával. Ha a TCG sikeresen kiterjeszti szárnyait az Internet felé, foglalkoznia kell a “még” nem TCPA konform gépek súlyával, és valószínőleg nem rekesztheti ıket egyszerően ki rendszerébıl, kettéosztva az Internetet. Hiszen melyik lemezkiadó, vagy kereskedelmi cég tartaná érdekének, hogy hirdetéseit csak az Internet felhasználók bizonyos százaléka lássa? A TCP/IP vagyis inkább IP/TCP nem tartalmaz megfelelı titkosítási, illetve hitelesítési lehetıségeket, így mindezt az alkalmazási protokoll szintjén kell megoldani. Ennek hatására az alacsonyabb protokoll szinteken dolgozó hálózati pontok passzívan vesznek részt a kommunikációban, és az útvonalkövetés, a “Trusted Path” nem kivitelezhetı. Mindemellett alkalmazás szinten titkosítani, hitelesíteni, azonosítani a megjelenı alkalmazások számából adódóan nagyobb hibalehetıségeket hordoz magában, valamint teljesítmény szempontból is hátrányos. Lehetıséget ad például alacsonyabb szintő támadás, illetve nem rendeltetés szerinti használatra is. Már a Microsoft internetes aktivációs kísérleteinek kezdeti bevezetésekor megjelentek a hacker oldalakon az olyan egyszerő alkalmazások, melyek a Microsoft szervereinek adva ki magukat aktiválni voltak képesek bármely illegális termékmásolatot. Nem garantálja semmi, hogy a key szerverekkel nem történik hasonló, ha nem is hacker csoportok, de az FBI, a CIA, vagy az NSA által. Alkalmazhatatlanná válnak a manapság oly elterjedt NAT-olt rendszerek is ( mivel ez valójában a forrás címek hamisításán alapul). Ne feledkezzünk el arról sem, hogy a szabványban leírt megbízható kulcs és idıszerverek biztonságunkon kívül függıségünket is “szavatolják”. Például, ha TPM nélkül indítjuk otthon számítógépünket, nem férünk hozzá a TPM módban írt dokumentumainkhoz biztonsági okokból. Így elıfordulhat, hogy csak azért kell Internetre csatlakoznunk, hogy kulcsokat cseréljünk a szerverekkel és TPM módban indíthassuk gépünket. Ez a gazdasági összefonódás elgondolkodtató, ha figyelembe vesszük a TCG-ben az internetes médiával, reklámmal, és Internet szolgáltatással foglalkozó cégek nagy számát. A szabványban ( vagy inkább szabvány tervezetben ) meglepıen nagy teret kap a hálózat, ami problémákat okozhat a nagy biztonságot igénylı rendszereknél, mivel ezek gyakran az Internettıl szeparált környezetben üzemelnek, mely az Internetrıl történı támadások ellen egyértelmően biztosabb megoldás, mint bármilyen speciális hardver vagy szoftver, vagy ezek kombinációja.
25
portolás: átírás, egy szoftver átültetése más hardware vagy software platformra
98/102
A szabvánnyal szembeni bizonytalanságot mutatja az is, hogy a Microsoft korábbi elhatározásához képest visszakozni látszik, illetve, hogy a TCG-be tartozók 200 körüli hangzatos számának vizsgálatakor feltőnhet, hogy jópár leányvállalat szerepel köztük, az anyavállalattal együtt, illetve azóta egyesült cégek továbbra is külön-külön jelennek meg csak ezen a fórumon. Az olcsó marketingfogások semmiképpen sem sugallják, hogy a háttérben minden rendben folyik, sokkal inkább a bizonytalanság jelei. A TCPA/TCG hivatalos oldalán szereplı cégek saját weblapjain és egyéb információs csatornáin (fórumok, email kapcsolatok) kevesebb, mint húsz cégnél sikerült fellelni a TCPA-ra vonatkozó utalásokat, és ezek is általában egy-egy logó jelenlétében merülnek ki. Ez is arra utal, hogy sokkal inkább gazdasági szövetségrıl van szó, mint a hackerek/crackerek ellen vívott harcról. Privát e-mail felmérésembıl kiderült, hogy sok TCPA tagként nyilvántartott cég nem is igen tudja, minek a tagja, és tevékenységük sem köthetı szorosan a TCPA alkalmazásához. A külön utakon járó architektúrákkal való kapcsolattartás is egy akadályozó tényezı a TCPA elıtt. Sem a Cray, sem az NEC nem tervezi, hogy TCPA konform hardverre váltson, de ha tervezné is, nem valószínő, hogy ennek kedvéért átépítenék például a már jóideje üzemelı Earth Simulator-t (NEC, Japan), ami jelenleg a legnagyobb teljesítményő szuperszámítógép a világon. A gépen belül a perifériák, a processzor, a memória, a videokártya, és egyéb eszközök közötti adat titkosítás értékes idıt is elvon a rendszertıl, aminek következtében a gépek a TPM indítása nélkül indítva sokkal nagyobb teljesítményt nyújtanak. Kérdéses, hogy ki választja a biztonságot és ki a sebességet ( hiszen éppen a Microsoft volt az egyik, aki a felhasználókat a sebesség lázába hajszolta, gerjesztve a hardver fejlıdését ). A nemzetközi jog állásfoglalása is várat magára az ügyben, hazai pályán (az USA-ban) a Microsoft, az IBM, és a HP minden bizonnyal képes keresztül vinni a DRM nekik tetszı elfogadását, illetve kivédeni az árukapcsolással és a trösztellenes törvénnyel kapcsolatos aggályokat. Nemzetközi szinten azonban jóval nehezebb dolguk lesz. Minden bizonnyal bíznak a jogi testületek passzív dilettantizmusában, és ügyvédeik szokásos halogató politikájában, ami az IBM esetében már többször is bevált. A trösztellenes törvény alapján például, mely egyértelmően érintette már a Microsoft, az IBM, és a HP házatáját is, az USA-ban a mai napig egyetlen óriás céget daraboltak fel, az AT&T-t. Ez is csak azért történt így, mert az AT&T-nek így nyílt lehetısége belépni a számítástechnikai piacra, például üzleti szoftverré téve a Unix-ot (véget vetve az addigi szabad terjesztésének), ezért maga is a döntés mellett volt. A “Linuxos” világ megdöbbenésére Linus Torvalds támogatja a TPM ötletét, ami nem is annyira meglepı, ha számításba vesszük, hogy Linus jelenleg a Transmetának dolgozik, amely maga is TCPA képességekkel rendelkezı CPU-t készít (Cruesoe széria). Persze a TPM önmagában még nem TCPA platform és nem is Palládium. De a maghasadás elmélete sem volt atombomba. A 2.6.14-es Linux rendszermag már támogat is néhány TPM chipet. A Linux hívık álláspontját a GNU atyja, a GNU/GPL eredeti kidolgozója Richard Stallman, “a hacker” , többek között az Emacs és sok más ingyenes szoftver írója képviseli. Úgy látja, a TCPA elterjedése a Linux végét jelentheti. Gátat szab a szoftverek szabad felhasználásának és fejlesztésének. Például képzeljünk magunk elé egy mai programozót, aki programírás közben többször is megpróbálkozik a fordítással, és a kapott kód futtatásával. Ha minden egyes esetben kulcsokat kell igényelni, ráadásul ez anyagi vonzatokkal is jár, vagy nem ír több programot, vagy nem TCPA konformra készíti ıket, elzárva magát ( és programját ) a számítógépek egy nagy cégek által mesterségesen növesztett táborától. Ugyanígy járnak a kisebb szoftvercégek is, míg a nyilvánvaló elınyt azok a cégek élvezik, akik a TCG tagjai. Ez felfogható a szabad verseny korlátozásának is, ami a kapitalista piacgazdaság egyik alapja. Mindazonáltal ismerve az eddig elkészült termékeket, lehetetlennek látszik, hogy a TCG egy hibátlan implementációval kezdje meg a TCPA bevezetését, és biztosra vehetjük, hogy ezek a hibák hamarosan felszínre is kerülnek. A kulcs- és idıszerverek központosított alkalmazásával, az ilyen hibák egyszerre jelentenek majd veszélyt az összes TCPA konform gépre. A TPM futtatása pedig az elsı komolyabb hiba felfedezéséig a látszat biztonság érzetébe vonja a felhasználókat. Nem lenne az elsı eset sem szoftver, sem hardver, sıt még CPU szintjén sem a komolyabb lappangó hiba felfedezése ( pl. Intel Pentium 0ff0 bug). Az Intelt a Pentium szériában felfedezett hiba miatt már érték a szándékosság vádjai, mivel a drágább katonai széria tökéletesen mőködött, és nem érintette a hiba, amely a 386-os processzorcsalád felett jelen volt az Intel-féle chipekben.
99/102
Ha nem is értünk egyet Stallman-nal, a TCPA egyértelmően akadályozza a házi fejlesztéseket, és a rendszeradminisztráció egy részét is kiveszi kezünkbıl. Gépünk hasonlóvá válik a Microsoft programjaihoz, melyeket a fogyasztói törvények megkerülése érdekében csak bérelhetünk (hacsak nem vagyunk nagyobb kormányügynökség). S mivel nem mindenki bízik feltétlenül a Microsoftban, sem pedig a kék óriásban, játszunk el a gondolattal egy pillanatig, hogy valahol, valamikor elindul egy új worm, vagy vírus, ami védettséget élvez velünk szemben a gépünkön futó TCPA szoftver által, s nem csak törölni, de leállítani, vagy még olvasni sem tudjuk. Az Intel után esetleg a Microsoft is megpróbálkozik egy szándékos hibával, amivel rákényszerítheti komoly biztonságot igénylı megrendelıit egy esetleges “javítás” megvásárlására. Talán ez még nem is lenne baj, ha nem létezne más programozó, csak olyan, aki a Microsoftnak dolgozik, de egy ilyen bejárat meddig maradhat rejtve az odakint pötyögtetı világfelszabadító hackerek elıtt? És mennyi idı, mire ez a tudás átszármazik a gépeket játékból feltörı crackerek szintjére? Ami pedig az implementáció hibáit illeti, egy véletlen hiba ugyanúgy végzetes lehet, mivel könnyen használhatatlanná teheti adatainkat, programjainkat. Az általánosan elfogadott szoftvergaranciák pedig nem teszik lehetıvé, hogy ilyen esetekben reális kártérítést kapjunk. 11. Hová forduljunk? Felügyeleti szervek, címek Ha visszaéltek adatainkkal, és ebbıl komolyabb erkölcsi vagy anyagi kárunk származott, és esetleg környezetünkben többekkel is megtörtént ez ugyanazos webes e-mailos vagy egyéb ügyben, és szeretnénk jogi útra terelni a dolgot a perköltségek számolgatása elıtt vegyük fel a kapcsolatot az Adatvédelmi Biztossal ([email protected], vagy Adatvédelmi Biztos Irodája,1387 Budapest Pf. 40 ). Persze sok egyéb dolgot megpróbálhatunk még ez elıtt. A szerverek üzemeltetıiknek általában van egy [email protected] email címe, illetve gyakran használt az [email protected] is. Ha pl. emailban spam-ekkel bombáznak minket a fentebb leírtak alapján keressük ki a fejlécbıl a valódi feladót, és próbáljunk meg írni az adott gép rendszergazdájának. Ha egy a címébıl is láthatóan kliens géprıl van szó, nem valószínő hogy valaha is választ kapunk, de még az sem hogy nem dinamikus címkiosztású a gép, és így egyáltalán a megfelelı gépre próbálunk levelet írni. Ilyen esetekben ( vagy ha a rendszergazdák nem válaszolnak leveleinkre, esetleg a fenti címek nem élnek, és az adott szervernek weblapja sincs, vagy azon sem található egy használható email cím a kapcsolatfelvételhez ) segítségül hívhatjuk a DNS szervereket. A magyar címek esetében pl. a www.nic.hu címen (network information center) a keresés menübe a domainnevet megadva lekérhetjük a domain-nel foglalkozó technikai, illetve adminisztrátori címeket, telefonszámokat, email-okat. Jogsértı vagy kétes esetekben belföldön fordulhatunk a HIF ( Hirközlési Fıfelügyelet ) vagy az NHH ( Nemzeti Hirközlési Hatóság ) is (http://hif.hu , http://nhh.hu ) Sok spam szőrı szoftver központi adatbázisokat használ, ahová magunk is beküldhetjük azokat a spam-eket amik átcsúsztak a program ellenırzésén (általában csak akkor minısítik az üzenetet spam-nek ha több forrásból is megkapják).
Ács Péter – Béres Cs. Z.: Hálózati, Internet ismeretek, World Wide Web, JPTE RTK, 1999 Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone : Handbook of Applied Cryptography 5. kiadás 2001 Béres Csaba Zoltán – Harka Gyızı: Számítógépes biztonság – Hálózati Biztonság I., Krónika Pécs 2004 Cheswick, William R. and Bellovin, Steven M.: Firewalls and Internet Security: Repelling the Wily Hacker, Addison-Wesley Publishing Company, Reading, MA, 1994. Cohan, Frederick B.: Protection and Security on the Information Superhighway, John Wiley & Sons, New York, 1995. Computer Desktop Encyclopedia - 9th Edition Osborne/McGraw-Hill. 2001 Custer, Helen: Inside the Windows NT File System Microsoft Press, 1994 Dr. Gömbös Ervin : Informatika és hatalom 1976 Galántai Zoltán: A nagy adatrablás 1998 Gimesi László: Bevezetés az informatikába, Krónika Pécs, 2003 Howard, John D.: An Analysis of Security Incidents on the Internet, Carnegie Mellon University, 1995 Icove, David - Seger,Karl - VonStorch, William: Computer Crime: A Crimefighter's Handbook, O'Reilly & Associates, Inc., Sebastopol, CA, 1995 Knuth, D. E:: A számítógép-programozás mővészete 2. kötet (1995. Mőszaki Könyvkiadó, második kiadás) Ködmön József: Kriptográfia (1999. Computerbooks, 113. - 201. oldal) Massiglia, Paul (Ed.)/RAID Advisory Board: The RAIDbook, 6th Edition: A Handbook of Storage Systems Technology, 1997. Microsoft Computer Dictionary Fifth Edition, Microsoft Press, 2002 Miniszterelnöki Hivatal, Informatikai Tárcaközi Bizottság, 1998 http://www.itb.hu/ajanlasok/a16/ Russel, D. –Gangemi Sr., G.T. : Computer Security Basics, O’Reilly, 2001 Schneier, Bruce: Description of a New Variable-Length Key, 64-Bit Block Cipher (Blowfish), Conference Paper, Springer-Verlag 1994 Stallings, William : Cryptography and Network Security: Principles and Practice, Prentice Hall, 2002 Stallings, William : Network Security Essentials, Prentice Hall, 2002 Tannenbaum, A.S.: Számítógép-hálózatok, Panem-Prentice Hall, 1999,2002 Tannenbaum, A.S: Modern Operating Systems, 2001 The Computer Glossary - 9th Edition Amacom 2001. Tittel – Hudson –Stewart: Hálózati ismeretek, MCSE Exam Cram, Kiskapu, 1999 Virasztó Tamás: Kriptográfia és szteganográfia, 1999-2003 http://wacher.fpn.hu/_dwad_/framesetbf.php?path=http://wacher.fpn.hu/