Bug 23305 - Sicherheitsmechanismen des UMC-Server
Sicherheitsmechanismen des UMC-Server
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC (Generic)
UCS 3.0
Other Linux
: P5 normal (vote)
: UCS 3.0 - RC
Assigned To: Andreas Büsching
Alexander Kläser
: interim-3
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-08-16 09:32 CEST by Andreas Büsching
Modified: 2011-12-13 15:50 CET (History)
1 user (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Büsching univentionstaff 2011-08-16 09:32:05 CEST
Die im UMC-Server integrierten Sicherheitsmechansimen sollten überprüft werden bzw. es sollte geprüft werden, ob weitere notwendig sind.

Momentan gibt es folgende Techniken

- Kein Request wird ohne Authentisierung zugelassen
- Wird die Verbindung beendet ist die Sitzung gestorben und eine neue Authentisierung ist notwendig.
- Der Message Parser verwirft eine Nachricht sobald sie nicht dem Format entspricht.
- Eingehende Requests müssen dem UMC-Server bekannt sein, sonst werden sie verworfen
- Ist das Modul-Kommando unbekannt wird der Request verworfen
- Entspricht die Syntax der Parameter nicht der angegebene Spezifikation (XML-Datei) wird der Request verworfen (ist noch nicht vollständig umgesetzt)
Comment 1 Andreas Büsching univentionstaff 2011-10-29 15:34:02 CEST
(In reply to comment #0)
> Die im UMC-Server integrierten Sicherheitsmechansimen sollten überprüft werden
> bzw. es sollte geprüft werden, ob weitere notwendig sind.
> 
> Momentan gibt es folgende Techniken
> 
> - Kein Request wird ohne Authentisierung zugelassen
> - Wird die Verbindung beendet ist die Sitzung gestorben und eine neue
> Authentisierung ist notwendig.
> - Der Message Parser verwirft eine Nachricht sobald sie nicht dem Format
> entspricht.
> - Eingehende Requests müssen dem UMC-Server bekannt sein, sonst werden sie
> verworfen
> - Ist das Modul-Kommando unbekannt wird der Request verworfen
> - Entspricht die Syntax der Parameter nicht der angegebene Spezifikation

Zusätzlich:

- ist ein Kommando nicht erlaubt wird es mit 'Forbidden' abgelehnt.

> (XML-Datei) wird der Request verworfen (ist noch nicht vollständig umgesetzt)

Das wird erst später umgesetzt. Die Module verwerfen das Kommando, wenn sie es nicht verstehen. Selbst wenn das Modul das Kommando nicht richtig verarbeiten kann und beispielsweise abstürzen beeinflusst das den Server und auch die Security nicht.
Comment 2 Alexander Kläser univentionstaff 2011-12-06 17:22:28 CET
(In reply to comment #0)
> Die im UMC-Server integrierten Sicherheitsmechansimen sollten überprüft werden
> bzw. es sollte geprüft werden, ob weitere notwendig sind.
> 
> Momentan gibt es folgende Techniken
> 
> - Kein Request wird ohne Authentisierung zugelassen

→ OK, konnte überprüft werden, es ist immer eine gültige Sesion-ID im Cookie notwendig.

> - Wird die Verbindung beendet ist die Sitzung gestorben und eine neue
> Authentisierung ist notwendig.

→ OK, konnte überprüft werden.

> - Der Message Parser verwirft eine Nachricht sobald sie nicht dem Format
> entspricht.

→ Das wurde nicht explizit getestet

> - Eingehende Requests müssen dem UMC-Server bekannt sein, sonst werden sie
> verworfen

→ OK

> - Ist das Modul-Kommando unbekannt wird der Request verworfen

→ OK, es wird in diesem Fall aus Sicherheitsgründen ein 'Forbidden' zurückgegeben.

> - Entspricht die Syntax der Parameter nicht der angegebene Spezifikation
> (XML-Datei) wird der Request verworfen (ist noch nicht vollständig umgesetzt)

→ OK, noch nicht vollständig umgesetzt.


(In reply to comment #1)
> ...
> Zusätzlich:
> - ist ein Kommando nicht erlaubt wird es mit 'Forbidden' abgelehnt.

→ OK, konnte so erfolreich überprüft werden


Soweit zunächst in Ordnung. Es wurden ein paar einfache Tests durchgeführt, um den Server zu kompromittieren, dabei sind folgende Probleme aufgefallen, die separat behandelt werden:
* Absturz des UMC-Servers bei invalidem JSON-Body → Bug 25231
* UMC-Server: Inkorrekte Fehlermeldungen beim Parsen von JSON-Daten → Bug 25233
* Absturz des UMC-Servers wenn die Verbindung zu schnell geschlossen wird
→ Bug 23305
Comment 3 Sönke Schwardt-Krummrich univentionstaff 2011-12-13 15:50:30 CET
UCS 3.0-0 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert
werden: "Clone This Bug"