+ All Categories
Home > Documents > JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.

JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.

Date post: 05-Apr-2015
Category:
Upload: heinrike-regel
View: 110 times
Download: 5 times
Share this document with a friend
22
JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor
Transcript
Page 1: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.

JINI Security & Scalability

JINI Security

Hans-Peter Rötheli & Christian Gloor

Page 2: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.

Inhalt

JINI-BeispielumgebungKommunikationWas darf fremder Code? Exploits Folgerungen

Page 3: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.

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.

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.

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.

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.

Ü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.

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.

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.

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.

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.

Basierend auf Signatur

grant signedBy “chgloor“ {permission

java.security.AllPermission ““,““;

}

Page 13: JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor.

Ü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.

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.

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.

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.

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.

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.

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.

Ü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.

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.

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


Recommended