A szoftvervédelem olyan intézkedések összessége, amelyek célja, hogy megvédjék a szoftvert az analógok jogosulatlan megszerzésétől, használatától, terjesztésétől, módosításától, tanulmányozásától és reprodukálásától.
Programok jogosulatlan használata elleni védelem – a szoftverek illegális használatának megakadályozását célzó intézkedésrendszer . A védelem során szervezeti, jogi, szoftveres és szoftveres és hardveres eszközök alkalmazhatók.
A másolásvédelmet ritkán alkalmazzák a szoftverekre, mivel el kell terjeszteni és telepíteni kell a felhasználók számítógépére. Azonban az alkalmazás licence (ha fizikai adathordozón van terjesztve) vagy annak egyedi algoritmusai védve lehetnek a másolástól.
A módszerek a védett szoftver terjesztési módja és a licenchordozó típusa szerint osztályozhatók .
A sorozatszám (kulcs) megadásának követelménye a telepítés/indítás során. Ennek a módszernek a története akkor kezdődött, amikor az alkalmazásokat csak fizikai adathordozón (például CD -n ) terjesztették. A lemezt tartalmazó dobozra olyan sorozatszámot nyomtattak, amely csak a program ezen példányára vonatkozik.
A hálózatok elterjedésével nyilvánvaló hátrányt jelentett a lemezképek és a sorozatszámok hálózaton történő elosztásának problémája. Ezért a módszert jelenleg csak egy vagy több egyéb módszerrel (például szervezeti módszerrel) kombinálva alkalmazzák.
A hálózati szkennelés kizárja két program egyidejű indítását azonos regisztrációs kulccsal két számítógépen ugyanazon a helyi hálózaton belül.
Hátránya, hogy a tűzfal beállítható úgy, hogy blokkolja a védett programhoz tartozó csomagokat. Igaz, a tűzfal beállításához bizonyos felhasználói ismeretek szükségesek. Ezenkívül az alkalmazások a hálózaton keresztül is együttműködhetnek (például hálózati játék szervezésekor ). Ebben az esetben a tűzfalnak engedélyeznie kell az ilyen forgalmat .
Ha a program valamilyen központosított szerverrel működik, és nélküle használhatatlan (például online játékszerverek , víruskereső frissítő szerverek ). Elküldheti a sorozatszámát a szervernek; ha a szám hibás, a szerver megtagadja a szolgáltatást. Hátránya, hogy létre lehet hozni olyan szervert, amely nem végzi el ezt az ellenőrzést. Például volt egy battle.da szerver , amely funkciójában hasonló volt a Battle.net -hez (a Blizzard Entertainmenttől), de lehetővé tette a játékok jogosulatlan másolását. Most ez a szerver bezárt, de jelentős számú PvPGN szerver van, amely szintén nem ellenőrzi a regisztrációs számokat.
A programhoz szükség lehet az eredeti CD-re. Ezt a módszert különösen a játékokban használják . Az ilyen védelmek tartóssága nem túl nagy, a CD képalkotó eszközök széles választéka miatt. [egy]
Általában ezt a védelmi módszert az ugyanazon a CD-n rögzített programok védelmére használják, ami szintén kulcsfontosságú.
Másolásvédelemre a következőket használják:
Az első két módszer gyakorlatilag haszontalan, mivel lehetőség van egy komplett kép eltávolítására a lemezről a megfelelő alkalmazás segítségével . A harmadik módszer megbízhatóbbnak tekinthető (különösen a StarForce védelemben használják ). De vannak olyan programok, amelyek az adatok helyének geometriáját figyelembe véve emulálják a lemezeket, ezzel is megkerülve ezt a védelmet. A StarForce-ban többek között a behelyezett lemezre való írási képességet is ellenőrzi. Ha lehetséges, akkor a lemez licenc nélkülinek minősül. Ha azonban a kép CD-R lemezre van írva , a megadott ellenőrzés átmegy. Lehetőség van a lemez típusának elrejtésére, így a CD-R vagy CD-RW normál CD-ROM- ként jelenik meg . Az emuláció ellenőrzése azonban beépíthető a védelmi illesztőprogramba.
Jelenleg a világ leghíresebb másolásvédelmi rendszerei a SecuROM , a StarForce , a SafeDisc , a CD-RX és a Tages. [2]
Sok program esetében ez a védelmi módszer nem elérhető a kiváló terjesztési mód miatt (például shareware programok).
A számítógép egyik portjába ( USB , LPT vagy COM interfésszel ellátott ) behelyezett elektronikus kulcs ( kulcs) kulcsadatokat, más néven licencet tartalmaz , amelyet a fejlesztő írt bele.
Az elektronikus kulcsokkal való védelem előnyei:
A védelem erőssége azon alapul, hogy a kulcsbiztonsági információk (kriptográfiai kulcsok, letölthető kód) nem hagyják el a kulcsot a vele való munka során.
Főbb hátrányai:
Korábban a hardverkulcs alacsony sebessége (a számítógépes CPU-hoz képest) is betudható a hátrányoknak. A modern kulcsok azonban 1,25 DMIPS teljesítményt érnek el (például HASP , Guardant ), és a segítségükkel végzett védelmi technika nem jár állandó cserével a kulccsal.
A kulcsok bizonyos hardverplatformokon történő telepítésével kapcsolatos korábban fennálló problémákat most hálózati kulcsok (amelyek képesek működni egy védett alkalmazás egy vagy több másolatával, csak hogy ugyanazon a helyi hálózaton vannak vele) és szoftver vagy hardver használatával oldják meg. USB-eszközök továbbítása a hálózaton keresztül.
A számítógépe összetevőinek felhasználóira/sorozatszámaira vonatkozó információkhoz való kötődés és a szoftver ezt követő aktiválása jelenleg meglehetősen széles körben használatos (például: Windows operációs rendszer).
A telepítési folyamat során a program kiszámít egy aktiváló kódot - egy vezérlő értéket, amely egyedileg megfelel a számítógép telepített összetevőinek és a telepített operációs rendszer paramétereinek. Ezt az értéket a program fejlesztője kapja meg. Ez alapján a fejlesztő generál egy aktiváló kulcsot, amely alkalmas arra, hogy az alkalmazást csak a megadott gépen aktiválja (a telepített futtatható fájlok másik számítógépre másolása működésképtelenné teszi a programot).
Előnye, hogy nincs szükség speciális hardverre , és a program digitális terjesztéssel (interneten) terjeszthető.
A fő hátrány: ha a felhasználó frissíti a számítógépet ( hardverhez kötés esetén ), a védelem meghiúsul. Számos program szerzője ilyen esetekben kész új regisztrációs kódot adni. Például a Microsoft Windows XP rendszerben lehetővé teszi, hogy 120 naponta egyszer új regisztrációs kódot generáljon (de kivételes esetekben az aktiválási szolgáltatás felhívásával új kódot kaphat ezen időszak lejárta után).
Kötésként elsősorban az alaplap BIOS sorozatszámát, a merevlemez sorozatszámát használjuk. A felhasználó elől való elrejtés érdekében a védelmi adatok a merevlemez fel nem osztott területén helyezkedhetnek el.
Egészen a közelmúltig az ilyen védelmet magának a szoftverterméknek a fejlesztői fejlesztették ki és hajtották végre. Mostanra azonban már léteznek SDK-k a szoftverkulcsokkal való munkavégzéshez, például az Aladdin R. D. HASP SL-je. Emellett egyre szélesebb körben elterjednek azok a szolgáltatások, amelyek mind a „csuklós” védelmi funkciót, mind az aktiválási/licenckiszolgálót kínálják (például Guardant Online , Protect online) .
A programok védelmének másik módja a SaaS - megközelítés , vagyis e programok funkcióinak (egészen vagy részben) szolgáltatásként való biztosítása. Ebben az esetben a programkód egy, a globális hálózatban elérhető szerveren található és fut. Az ehhez való hozzáférés a vékonykliens elve szerint történik . Ez azon kevés esetek egyike, amikor másolásvédelmet alkalmaznak.
A kód a "megbízható" oldalon fut le, ahonnan nem másolható.
Azonban itt is számos biztonsági probléma van:
A szolgáltatásba vetett bizalom kérdése is felmerül (beleértve a jogiakat is), hiszen mind maga a szoftver, mind az általa feldolgozott adatok (például a felhasználók személyes adatai ) ténylegesen „egyértelműen” kerülnek át hozzá.
Itt külön kiemelhetjük azokat az eszközöket, amelyek megvédik magát az alkalmazáskódot az elemzéstől és más programokban való felhasználástól. Különösen obfuszkátorokat használnak – programokra van szükség a kód elhomályosítására, hogy megvédjék az elemzéstől, módosítástól és jogosulatlan használattól.
A mobilplatformokra szánt szoftverek másolás elleni védelmének módjai általában azon alapulnak, hogy egy közönséges felhasználó nem tudja elolvasni/módosítani az eszköz PROM -jában tárolt adatokat . Szoftveraktiválás is használható.
A múltban más módszereket is alkalmaztak a szoftverek illegális használat elleni védelmére .
A módszer az MS-DOS korában elterjedt volt , ma az FDD technológia elavultsága miatt gyakorlatilag nem használják. Négy fő módja van a nem másolási jelölések létrehozásának a hajlékonylemezeken:
Néhány régi DOS -program nem másolható címkéket hozott létre a merevlemezen . Például egy 1 bájtos fájl egy fürtöt (legalább 512 bájtot) foglal el a lemezen, és bizonyos információk írhatók a fennmaradó 511 bájtra. Ezt a gyakorlatot gyakorlatilag nem alkalmazzák, mivel nagy az adatvesztés kockázata.
A programlicenc köthető valamilyen fizikai objektumhoz, például:
A jogszabály szerint a műsorkód az irodalmi alkotásokkal egyenértékű, és minden vonatkozó előírás vonatkozik rá. A szoftvervédelem kapcsán a következő terminológiát használjuk:
A hatályos jogszabályoknak megfelelően felelősséget vállalunk a számítógépes programok és adatbázisok hamisított másolatainak felhasználásáért, valamint az alkalmazott technikai védelmi eszközök leküzdéséért .
A szervezeti szoftvervédelmi intézkedések alapelve, hogy a szoftvertermék teljes körű használatának lehetetlensége a fejlesztő megfelelő támogatása nélkül: részletes felhasználói dokumentáció, műszaki támogatás forródrót, felhasználói képzési rendszer, verzió- és adatbázisfrissítések stb.
A drága szoftverrendszerek másolás elleni védelmét néha szervezési intézkedésekkel (például a szoftver próbapéldányának rendelkezésre bocsátásával csak kérésre, vagy a szoftvercsomag teljes funkcionalitású verziójának próbaidőre megfelelő megállapodás megkötése után történő telepítésével) valósítják meg. megegyezés).
A szervezeti védelmi intézkedéseket általában a nagy fejlesztők alkalmazzák meglehetősen nagy és összetett szoftvertermékekre.
A modern védelmi módszerek sebezhetőségei az alkalmazott védelmi módszertől függően meglehetősen szigorúan osztályozhatók.
Számos védelem biztosít eszközöket a hackelés ellen: a hibakereső destabilizálása ; kódtitkosítás , amely kizárja a kód statikusan disassembler segítségével történő tanulmányozását ; kódzavarás, "hamis ágak", amelyek megzavarják a hackert ; a fájl integritásának ellenőrzése, a javítások alkalmazásának megakadályozása ; kódvirtualizáció saját parancsrendszerrel. Mindezek a módszerek akadályozzák a védelmi logika tanulmányozását, elemzését és növelik annak ellenállását.
Probléma merült fel a szoftverfejlesztők forráshiányával (ideértve az ideigleneseket is). Lehetséges, hogy nincs elég idejük, pénzük vagy készségeik saját erős védelmük megvalósításához. Kénytelenek harmadik féltől származó automatikus szoftvervédelmi eszközöket használni. Ezek az eszközök biztonsági modult csatolnak a lefordított programhoz. Az ilyen védelem előnye, hogy bármilyen programra telepíthető (akár a program forráskódjához való hozzáférés nélkül is). Maga a megközelítés hátránya a módszer „sablonja”. A szabványos védelmek nagyobb valószínűséggel kerülnek feltörésre, mivel több programra telepítve vannak, és így keresletet biztosítanak a hackelési piacon.
Az automatikus eszközök azonban megnehezítik a program feltörését. Néha tanácsos használni őket, ha egyáltalán nincs védelem, vagy a saját egyedi védelem megvalósításával együtt.
Ez a technikai védelmi eszközök egyik alapvető problémája. Abból áll, hogy a védelmi rendszer elkerülhetetlenül kellemetlenséget okoz a felhasználónak, és ezért a felhasználó szempontjából a feltört program bizonyos értelemben jobb, mint az eredeti. Például:
Emiatt még a licencelt példányok tulajdonosai is olykor feltört szoftvereket telepítenek a licenceltekkel egyenrangúan.