JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.
-
Upload
heinrike-regel -
Category
Documents
-
view
110 -
download
5
Transcript of JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.
![Page 1: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/1.jpg)
JINI Security & Scalability
JINI Security
Hans-Peter Rötheli & Christian Gloor
![Page 2: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/2.jpg)
Inhalt
JINI-BeispielumgebungKommunikationWas darf fremder Code? Exploits Folgerungen
![Page 3: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/3.jpg)
Seminarraum mit Printer
Lookup Service
Http Server
Jini Printer
1
2
34
5
Printer sucht Lookupservice, discovery (1)
Lookup Service sendet Referenz auf http-Server (2)
Printer lädt lookup.jar (3,4) und registriert sich damit, join (5)
![Page 4: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/4.jpg)
PDA kommt hinzu
Lookup Service
Jini Printer
12
3
4
5
PDA
Pda: discovey, joinPda fragt nach
Printer (1)Lookup Service
gibt Referenz (2)Pda lädt Code aus
Printer (3,4)Kommunikation
direkt (5)
![Page 5: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/5.jpg)
RMI
Jini PrinterPDA
resultat
call cpudata
PDA ruft remote procedure auf
Parameter gehen übers Netz
Service verarbeitet Resultat geht
übers Netz
![Page 6: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/6.jpg)
Serialization, Code Base
Jini PrinterPDA
call cpudata
codebase
parent
Objekt wird serialisiert und übertragen
Parentobjekte werden aus Code Base geladen
![Page 7: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/7.jpg)
Überblick
Discovery mittels Broadcast Parameter gehen ungeschützt übers
Netz Resultat geht ungeschützt übers Netz Auf Codebase wird via ungeschütztem
http zugegriffen Verschlüsselung einsetzen
![Page 8: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/8.jpg)
Was darf fremder Code?
Auf das Netz zugreiffen?
Portscans Interne Angriffe Daten
weitersenden
Auf die HD zugreiffen?
User-Rechte Daten
manipulieren Daten
weitersenden
![Page 9: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/9.jpg)
Security Manager
java -Djava.security.policy=“policy“
grant { permission java.security.AllPermission ““, ““;
}
![Page 10: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/10.jpg)
Nur bestimmte Aktivitäten
grant {permission java.net.SocketPermission
“129.132.200.35“, “connect,accept“;}
![Page 11: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/11.jpg)
Von bestimmter Herkunft
grant codebase “http://www.ethz.ch/“ {permission
java.security.AllPermission ““,““;
}
![Page 12: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/12.jpg)
Basierend auf Signatur
grant signedBy “chgloor“ {permission
java.security.AllPermission ““,““;
}
![Page 13: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/13.jpg)
Überblick
Geladener Code kann Böses anrichten
Aktionen einschränken Herkunftabhängige Erlaubnis Signaturabhängige Erlaubnis
![Page 14: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/14.jpg)
Denial of Service
Device kann sich mehrmals anmelden 1000 Printer im Büro?
Client kann nichtexistente Devices anmelden Welches ist das richtige?
SYN-Flood Lookup Service überlastet
![Page 15: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/15.jpg)
Falscher http-Server
Jini PrinterPDA
call cpudata
codebase
codebase
Netzwerk
http-Server ist gefälscht DNS Router Switch
beliebiger Code wird geladen und ausgeführt
Server-Zertifikat
![Page 16: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/16.jpg)
Fake Service
Jini Printer
PDA
LAN
Boshafter Printer
Lookup Service
Load
Bal
anci
ng
Neuer Service mit identischer ID
LoadbalancingCodebase identisch
und signiert Serialisiertes Objekt
verschieden Signatur der
Serialisierten Objekte
![Page 17: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/17.jpg)
Fremder Lookup-Service
Jini PrinterPDA
LAN
Boshafter PrinterBoshafter Lookup Service
Lookup Service
Load
Bal
anci
ng
Zusätzlicher Lookup-Service im Netz
LoadbalancingNeue, eigene
Services werden angeboten
Neuer Printer sendet Daten über Internet
Nur bekannte Lookup Services benutzen
![Page 18: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/18.jpg)
Netzwerkzugriff
Device hat keine Permissions, Daten zu senden.
Device generiert Objekt, gibt in Codebase gefälschten URL an: http://fremdedomain.ch/chgloor/s!ch3r3$Pw
RMI Class Loader versucht Code zu laden und sendet somit Daten an Server
![Page 19: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/19.jpg)
Probleme mit Signatur
Client ist in fremdem Netz und kennt keine Signaturen Printer im Hotel, Seminarraum etc.
CAs belegen nur Herkunft, nicht Inhalt der Codestücke Jeder kann ein Zertifikat lösen bei Verisign
Lange Vertrauensketten funktionieren nicht
![Page 20: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/20.jpg)
Überblick
Denial of Service möglichCode Base nicht authentiziertLookup Service nicht authentiziertProbleme mit SignaturenGrundlegende Designfehler
![Page 21: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/21.jpg)
Folgerungen
URL-Basierende Permissions unsicher, daher nur signierten Code ausführen
http durch https (SSL) ersetzen Serialisierte Objekte müssen signiert
und verschlüsselt werden
Aktuelle Implementation von JINI nicht geeignet für Real World Anwendungen
![Page 22: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.](https://reader036.fdocuments.in/reader036/viewer/2022062512/55204d7349795902118c75a2/html5/thumbnails/22.jpg)
Referenzen
Scott Oaks & Henry Wong, JINI in an nutshell, O‘REILLY 2000
Crichton, Davis, Woodcock, When to trust mobile objects, Oxford University 1999
Hasselmeyer, Kehr, Voss, Trade-offs in an Secure JINI Service Architecture, TU Darmstadt 2000