I2P

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2022. augusztus 24-én felülvizsgált verziótól ; az ellenőrzéshez 1 szerkesztés szükséges .
I2P
Típusú ingyenes és nyílt forráskódú szoftverek , Névtelen hálózatok , Overlay hálózat és mobilalkalmazás
Beírva Java [2]
Operációs rendszer Microsoft Windows , Linux , macOS , OpenBSD , FreeBSD és Android
Interfész nyelvek Angol , spanyol , német , orosz és francia
Első kiadás 2003 [1]
Hardver platform Java virtuális gép és Android
legújabb verzió
Engedély BSD , GNU GPL , MIT licenc és 🅮 [d]
Weboldal geti2p.net
 Médiafájlok a Wikimedia Commons oldalon

Az I2P ( az angol i nvisible i nternet project rövidítése , IIP , I 2 P  – the Invisible Internet project) egy névtelen számítógépes hálózat . 

Az I2P hálózat overlay , rugalmas (egy csomópont letiltása nem befolyásolja a hálózat működését), anonim (lehetetlen vagy nehéz meghatározni a csomópont IP-címét ) és decentralizált [4] (nincs központi szervere ). A hálózati csomópontok közötti adatátvitel során titkosítást alkalmaznak .

Bármilyen szolgáltatás (vagy szolgáltatás) ( fórum , blog , fájltárhely , e-mail , azonnali üzenetküldés ( chat ), fájlmegosztás , VoIP stb.) elhelyezhető az I2P hálózaton belül a szerver anonimitásának megőrzése mellett. Az I2P hálózat http szervereket futtat ; a webhelyek címei az " .i2p " pszeudotartományban vannak. Peer-to-peer hálózatok (P2P) építhetők az I2P hálózatra , például BitTorrent , eDonkey , Kad , Gnutella stb.

Áttekintés

Az I2P egy névtelen, önszerveződő elosztott hálózat , amely módosított DHT Kademlia -t használ , de abban különbözik, hogy hálózati csomópontok kivonatolt címeit , AES - titkosított IP-címeket , valamint nyilvános titkosítási kulcsokat tárol, és a hálózati adatbázis-kapcsolatok is titkosítva vannak. A hálózat átviteli mechanizmust biztosít az alkalmazások számára, hogy névtelenül és biztonságosan továbbítsák egymásnak az üzeneteket [5] . Bár az I2P hálózat fő feladatként a csomagküldés útvonalának meghatározását jelöli ki, a Streaming lib könyvtárnak köszönhetően ezek szállítása is az eredetileg megadott sorrendben valósul meg hiba, veszteség és duplikáció nélkül, ami lehetővé teszi [6] az IP használatát. telefon , internetes rádió , IP az I2P - televízió , videokonferencia és egyéb streaming protokollok és szolgáltatások .

Az I2P hálózaton belül saját webhelykönyvtárat , elektronikus könyvtárakat és torrentkövetőket üzemeltet . Ezen kívül léteznek átjárók az I2P hálózat közvetlen internetről történő elérésére, amelyeket kifejezetten olyan felhasználók számára hoztak létre, akik különböző okok miatt nem tudják telepíteni számítógépükre az Invisible Internet projektszoftvert [6] .

Hálózati szolgáltatások

Az I2P hálózatot titkosítási mechanizmusok , P2P architektúra és változó közvetítők (ugrások) használják. Ez a módszer feltételezi a deanonimizálás, a MITM-támadások bonyolultságának növekedését, és teljesen lehetetlenné teszi a csomagok átlátható cseréjét a felhasználó számára .

Jelenleg a hálózat eleme a hagyományos DNS-kiszolgálók egyfajta megvalósítása . A következő szempontokban tér el a szokásos DNS-től [7] :

Mivel a hálózat peer-to-peer és decentralizált, a hálózat sebessége és megbízhatósága közvetlenül függ attól, hogy az emberek részt vesznek-e mások forgalmának továbbításában.

Az I2P eléréséhez telepítenie kell egy útválasztó programot a számítógépére , amely (de)titkosítja, (nem)tömöríti a forgalmat , és elküldi azt az I2P-ben működő társaknak. Ha intranetes webhelyekkel szeretne dolgozni, be kell állítania a böngészőt úgy, hogy HTTP - csomagokat küldjön az adott porton figyelő útválasztónak . A külső internet I2P-n keresztüli eléréséhez az I2P-n belülről (outproxy) belülről proxyszervereket kell használni , amelyek jelenleg kevés. Az I2P hálózat belső oldalai is elérhetők a külső internetről egy proxyszerveren keresztül [8] .

Titkosítás az I2P hálózatban

A hálózatot eredetileg azzal a feltételezéssel tervezték, hogy minden közbenső csomópont kompromittált vagy rosszindulatú, ezért számos aktív intézkedést vezettek be ennek ellensúlyozására [9] .

A hálózaton a feladótól a címzettig terjedő összes forgalom titkosítva van. Összességében egy üzenet továbbításakor négy titkosítási szintet használnak (végponttól végpontig, fokhagyma , alagút és szállítási szintű titkosítás ), a titkosítás előtt kis véletlenszámú véletlenszerű bájt automatikusan hozzáadódik minden hálózati csomaghoz. tovább személyteleníti a továbbított információkat, és megnehezíti a tartalom elemzését és blokkolja a továbbított hálózati csomagokat. A titkosítási azonosítók , amelyek nyilvános kriptográfiai kulcsok, hálózati címként használatosak . Az I2P hálózatban az IP-címek sehol és soha nem használatosak, így a hálózat egyetlen csomópontjának valódi címét sem lehet meghatározni [6] . A számítógépen minden hálózati alkalmazás külön, titkosított, névtelen alagutakat épít ki magának. Az alagutak többnyire egyirányúak (egyes alagutakon a kimenő forgalom, másokon a bejövő forgalom) - az irányt, hosszt és azt is, hogy melyik alkalmazás vagy szolgáltatás hozta létre ezeket az alagutakat, rendkívül nehéz kideríteni [6] . Minden továbbított hálózati csomag hajlamos több különböző alagúton keresztül eltérni, ami értelmetlenné teszi az áthaladó adatfolyam meghallgatását és elemzését szippantó segítségével . Emellett a már létrehozott alagutak időről időre (10 percenként) újakra cserélődnek, új digitális aláírásokkal és titkosítási kulcsokkal (természetesen digitális aláírások és titkosítási kulcsok, minden alagútnak megvan a sajátja). Ezen okok miatt nem kell [6] attól tartani, hogy az alkalmazásprogramok titkosítják a forgalmukat. Ha nincs bizalom a zárt forráskódú programok (például Skype ) titkosításában, akkor megoldható a probléma olyan IP-telefónia programokkal (például Ekiga ), amelyek a forgalmat tisztán továbbítják. Az I2P hálózat mindenesetre négyszintű titkosítást végez az összes csomagon, és biztosítja az összes adat átvitelét/vételét [6] .

Az I2P hálózatban az összes csomag a küldő oldalon titkosítva van, és csak a címzett oldalon dekódolható, miközben a csere közbenső résztvevői közül senki sem tudja lefogni a visszafejtett adatokat, és egyik résztvevő sem tudja, ki a feladó és ki a címzett, mivel a csomagokat továbbító csomópont lehet a feladó, vagy lehet ugyanaz a közbenső csomópont, és a következő csomópont, amelyhez ezt a csomagot el kell küldeni, lehet a címzett, vagy lehet ugyanaz a közbenső csomópont, a közbülső csomópont nem tudja kideríteni a küldő és a címzett végpontját, ahogy azt sem, hogy mi történt a következő csomópontnak átadott csomaggal - hogy feldolgozta-e, vagy továbbadta valahova, azt nem lehet kideríteni [6 ] .

Az I2P hálózat (különböző szintek és protokollok esetén) a következő titkosítási és aláírási rendszereket és módszereket használja [6] :

  1. 256 bites AES CBC mód PKCS#5-tel;
  2. 2048 bites ElGamal séma ;
  3. 2048 bites Diffie-Hellman algoritmus ;
  4. 1024 bites DSA ;
  5. 256 bites HMAC-algoritmus más kriptográfiai algoritmusok kriptográfiai erősségének erősítésére ;
  6. 256 bites SHA256 hash .

Az I2P hálózat története

Az I2P projekt 2003-ban indult, hogy támogassa azokat, akik érdeklődnek egy új, cenzúrázatlan, anonim kommunikációs és információterjesztési eszköz iránt. Az I2P kísérlet egy biztonságos, decentralizált, névtelen hálózat létrehozására, alacsony válaszidővel és autonómiával, hibatűréssel és skálázhatósággal. A végső kihívás az, hogy nehéz körülmények között is működni tudjunk, még a jelentős pénzügyi vagy politikai erőforrásokkal rendelkező szervezetek nyomása alatt is. Az internet minden aspektusa elérhető forráskódként és ingyenes. Ez lehetővé teszi a felhasználók számára, hogy ellenőrizzék, hogy a szoftver pontosan azt csinálja, amit állítólag, és megkönnyíti a külső fejlesztők számára, hogy javítsák a hálózat biztonságát a szabad kommunikáció folyamatos korlátozására irányuló próbálkozások ellen [10] .

Az I2P fejlesztőcsapat közül sokan korábban is részt vettek IIP projektekbenés a Freenet . De az utóbbival ellentétben a "Invisible Internet Project" egy anonim peer -to-peer elosztott kommunikációs környezet , amely képes együttműködni bármilyen hagyományos hálózati szolgáltatással és protokollal , mint például e- mail , IRC , HTTP , Telnet , valamint olyan elosztott alkalmazásokkal , mint pl . adatbázisok. , Squid és DNS [11] .

2013 közepe óta aktívan fejlesztik az I2Pd -t , amely egy alternatív nyílt forráskódú kliens az i2p hálózathoz, C ++ programozási nyelven írva, a titkosítás megközelítésében eltérések vannak. Független fejlesztők csapata dolgozik rajta, amelyek közül néhány Oroszországból származnak, ami független forráskód-ellenőrzés hiányában néhány felhasználó számára befolyásolhatja a démon hitelességét. Az i2pd-ben időnként kritikus biztonsági rések találhatók. A hivatalos klienstől való eltérések rövid listája: kisebb alkalmazásméret, harmadik féltől származó programok teljes hiánya a hivatalos összeállításban, integráció a C ++ nyelven írt alkalmazásokkal, a számítógépes erőforrások gazdaságos felhasználása és nagyobb hálózati sebesség.

Meglévő sebezhetőségek

Csomópontok cseréje

A hálózat támadásának ez a módszere meglehetősen kis erőforrás-felhasználással megvalósítható (a sikeres támadáshoz az összes hálózati csomópontnak csak körülbelül 2% -át kell rögzíteni). Ez a módszer azonban korlátozza a támadást azáltal, hogy rögzíti az összes hálózati árvízkitöltés 20%-át [12] .

A támadás végrehajtásához a támadónak le kell cserélnie az egészséges hálózati csomópontokat (amelyek már aktívak benne) feltört csomópontokra. Ehhez le kell tiltani a szervizelhető csomópontokat, miközben le kell cserélni őket a sajátjára. A támadónak le kell cserélnie a gazdagépeket fő hosztokra ( manuálisan konfigurálva ). A hálózat működő csomópontjainak letiltása nem előfeltétele a támadás végrehajtásának - a hálózat csomópontjainak útválasztói közönséges felhasználói számítógépek, ezért nem mindig vesznek részt a hálózatban, és a csomópontok az útválasztó újraindításakor is lekapcsolódnak. (például szoftverfrissítéskor). Maga a hálózat nem köt új csomópontokat mindaddig, amíg nincs szükség új tagokra, vagy amíg nincs erőforrás. Ezért a csomópontok könnyebb cseréjéhez elegendő megvárni, amíg az egyik csomópont lekapcsol a hálózatról, és átveszi a helyét a saját csomópontjával [12] .

A folyamat felgyorsítása érdekében, miközben meg kell várni, amíg az egyik csomópont önállóan leválik a csomópontcsere-hálózatról, a támadó feladatverem túlcsordulást okozhat a dolgozói csomópontoknál (az úgynevezett job lag). Ez abból áll, hogy DoS támadást hajtanak végre egy csomóponton. A támadónak sok új alagutat kell létrehoznia a megtámadott csomóponton keresztül, hogy a feladatsorát az egyes alagutakon keresztüli folyamatos kérésekkel töltse fel. Ebben az esetben nagy késés lép fel a feladatok végrehajtásában, és a csomópont kizárja magát a floodfill listájából [12] .

Alagúttagok deanonimizálása

Alagutakat használnak az I2P hálózatban [13] :

Az alagutak olyan útválasztók láncai, amelyeken keresztül üzeneteket továbbítanak. Alagutak kimenő és bejövő. A kimenő postafiókok a feladó helyét rejtik, míg a beérkező levelek a címzett helyét.

Nem szabványos rövid alagutak – 0, 1, 2 ugrás – használatakor megnövekszik az alagút összes résztvevőjének deanonimizálásának kockázata. Mivel a címzettről és a feladóról szóló információ magával az üzenettel együtt kerül továbbításra az IP-csomagban (mivel az adatok normál, nem biztonságos csatornán kerülnek továbbításra), a köztes csomópont ismeri a csomag címzettjét és feladóját, így a támadó, irányító köztes csomópont. feltételezéseket tud tenni a kezdeti és végső csomópontokról.

Ezt a problémát az alagút hosszának növelése oldja meg, de ez nagymértékben lelassítja a hálózat üzenetátvitelét. Jelenleg a hálózat alapértelmezés szerint háromugrásos alagutakat használ, ami gyakorlatilag csak akkor teszi ezt a fajta támadást gyakorlatilag alkalmatlanná, ha a támadó egy alagút 3 közbenső csomópontjából 2-t nem irányít. [13] .

Kivétel támadás

Ez a támadás I2P sebezhetőséget használ, amelyek a hálózatban található P2P hálózatok tulajdonságaiból fakadnak , nevezetesen: a hálózati útválasztók (amelyek a hálózati résztvevők közönséges számítógépei) nem állandó működési ideje, valamint néhány alagútszabályozás [13] :

A támadás végrehajtásához a támadó összeállít egy listát azokról a hálózati útválasztókról, amelyek potenciálisan csomópontjai a megtámadott végcsomóponttal rendelkező alagútnak (maga a támadott csomópont nem szerepel a listán). Ezután a támadó folyamatos kéréseket kezd küldeni a megtámadott gazdagépnek, hogy megtudja, milyen időintervallumokban van az útválasztó online. Aktív csomópont esetén (jelenlegi állapot: "online") a támadó ellenőrzi a csomópontok elkészített listáját, hogy mindegyikhez egyszeri kérést küldve találjon inaktív csomópontokat. Ha nem érkezett válasz egy adott csomópont lekérdezésekor (jelenlegi állapot: "offline"), akkor az útválasztó kikerül a csomópontok listájából. Hasonló műveleteket hajtanak végre az ellenkező esetben: ha a támadott csomópont inaktív, akkor az éppen aktív csomópontok kikerülnek a listából. Így végül a lista folyamatosan aktív routerekből áll majd. A csomópontok listáról való szűrésének következő lépése a fent leírt alagútszabályok kiaknázása lesz: a támadott csomópont LeaseSet-jében [14] szereplő alagútútválasztók ki vannak zárva; figyelembe veszi az alagút időtartamára vonatkozó kvótát is [13] .

A módszer sebességének értékelése: az algoritmusnak kb. 7 napig kell keresnie az előzetes lista 5 ezer csomópontján [13] .

Sybil attack

Egyetlen támadó elegendő egy "Sybil támadás" végrehajtásához, és kis mennyiségű erőforrást igényel. Ez a módszer lehetővé teszi több floodfill csomópont vezérlését a kulcstér egy adott területén [ . Mivel a támadó nem tudja elég gyorsan elindítani a feltört csomópontokat a hálózatba (például kizárási támadásokkal), ez a módszer abban különbözik a többitől, hogy nem veszi át az irányítást egy adott csomópont felett (anélkül, hogy annak tulajdonosa lenne). Ebben az esetben a támadó nagyszámú csomópontazonosítót generálhat helyileg, majd kiválaszthatja a legmegfelelőbbet (azokat, amelyek közelebb vannak az adatbázis bármely egészséges csomópontjához) [12] .

Ahhoz, hogy ez a támadás eredményt hozzon, időbe telik, mivel amikor egy új csomópont csatlakozik a hálózathoz, körülbelül egy óra kell ahhoz, hogy ez a csomópont feldolgozza a többi hálózati csomópontra vonatkozó információkat [12] .

Ez a támadás például arra használható, hogy blokkolja a hálózati csomópontokhoz való hozzáférést bizonyos információkhoz (például egy kulcshoz, amely egy adott szolgáltatással rendelkező csomópontra mutat). Egy bizonyos csomópont legközelebbi szomszédainak kompromittálásával biztosítható, hogy amikor ehhez a csomóponthoz hozzáférünk egy hálózati szolgáltatás címéért, a szolgáltatás bizonytalanságára vonatkozó lekérdezés időben visszaküldésre kerül ( eredet, az erőforrás nem ismerete) [12] .

Az I2P hálózaton belül használható fő alkalmazások

Alább egy lista [15] .

Lásd még

Jegyzetek

  1. https://staas.home.xs4all.nl/t/swtr/documents/wt2015_i2p.pdf
  2. Az i2p nyílt forráskódú projekt az Open Hubon: Nyelvek oldala - 2006.
  3. zzz https://geti2p.net/en/blog/post/2022/8/22/1.9.0-Release-2022 .
  4. Chip magazin 2013/11., 53. o
  5. Anonimitás az interneten // ComputerPress  : magazin. - 2010. - 9. sz .
  6. ↑ 1 2 3 4 5 6 7 8 Denis Kolisnichenko. Anonimitás és biztonság az interneten: a „teáskannától” a felhasználóig. - BHV-Petersburg, 2011. - S. 44, 46, 47. - 240 p. - ISBN 978-5-9775-0363-1 .
  7. Jon Snow. Anonymous Hosting I2P-n keresztül: Gyakorlati tippek a kriptonet használatához . Xakep.ru (2011. július 7.). Hozzáférés dátuma: 2014. december 12. Az eredetiből archiválva : 2014. november 8.
  8. ↑ 1 2 Juan Pablo Timpanaro, Isabelle Chrisment, Olivier Festor. Az I2P hálózat figyelése  // INRIA Nancy-Grand Est. - Henri Poincar'e Egyetem, Franciaország, 2011. - P. 5-7 . Az eredetiből archiválva : 2014. december 13.
  9. Adrian Crenshaw. Sötéthálók és rejtett szerverek: Az I2P szolgáltatásgazdagépek valódi IP/hálózati identitásának azonosítása // In the Proceedings of Black Hat 2011. - Washington, DC, 2011.
  10. Lars Schimmer. Peer profilalkotás és kiválasztás az I2P Anonymous Networkben. – 2011.
  11. DeI Abou-Tair, L. Pimenidis, J. Schomburg, B. Westermann. Az anonimitási hálózatok használhatóságának vizsgálata. — Drezdai Műszaki Egyetem. - 2009. - 76 p. — ISBN ISSN 1430-211X.
  12. ↑ 1 2 3 4 5 6 Christoph Egger, Johannes Schlumberger, Christopher Kruegel, Giovanni Vigna. 3.2 Sybil támadás; 3.3 Eclipse-támadás // Gyakorlati támadások az I2P hálózat ellen . — 16. Nemzetközi Szimpózium a támadások, behatolások és védelem kutatásáról (RAID 2013), 2013-10. - P. 8-9. Archiválva : 2014. december 26. a Wayback Machine -nál
  13. ↑ 1 2 3 4 5 Jon Snow. Felfedjük az I2P hálózat titkait . Xakep.ru (2014. szeptember 4.). Hozzáférés időpontja: 2014. december 8. Az eredetiből archiválva : 2014. december 11.
  14. Juan Pablo Timpanaro, Isabelle Chrisment, Olivier Festor. Az I2P használatának jellemzése // Kutatási jelentés RR-7844. — INRIA Nancy-Grand Est, Franciaország: Henri Poincaré Egyetem, 2011.
  15. Andrej Komarov ([email protected]). A láthatatlanságon túl: új módszerek az Ingonito megmentésére az interneten  // Publishing House LLC "Game Land" : magazin. - 2008. - 120. sz . Archiválva az eredetiből 2015. június 5-én.
  16. Az XD egy önálló torrent kliens az i2p hálózathoz , a Web Of Dark – mi vagyunk a Darknet szócsöve  (2017. szeptember 6.). Archiválva az eredetiből 2018. február 27-én. Letöltve: 2018. február 27.

Linkek