ubuntuusers.de

Für diese Funktion musst du eingeloggt sein.

Firewalling auf Application-Ebene

Status: Ungelöst | Ubuntu-Version: Server 14.04 (Trusty Tahr)
Antworten |

root213123

Anmeldungsdatum:
21. Januar 2014

Beiträge: 130

Folgendes Szenario: Ich konfiguriere mir einen eigenen Linux-Router mit einem Heimnetz auf der einen Seite. Dieser wählt sich mittels PPP beim Provider ein und sendet die Anfragen der Clients im Heimnetzwerk mittels NAT über den Provider-Gateway nach draußen. Während die Daten durch meinen Router hindruchgeleitet werden, greife ich diese mit einer Netzwerkanalysesoftware wie beispielweise tcpdump ab. Ist es möglich die vorbeikommenden Pakete zu stoppen? Gemeint ist nicht die generelle Kontrolle über iptables auf [(IP/ICMP)/(TCP/UDP)]-Basis, sondern auf der Application-Ebene. Als wenn ein Client z.B. eine TLS Verbindung aufmacht. Kann ich diese anhand bestimmer Bedingungen mit Bezug auf das Paket selbst ausbremsen und verwerfen? Sicherlich wird jemandem sofort die Idee eines Proxys in den Sinn kommen. Die Pakete sollen NICHT über einen Proxy weitergeleitet werden, sondern einfach on-the-fly kontrolliert und möglicherweise gestoppt werden.

Danke im Voraus für die Hilfe!

Bin schon auf folgende Sachen gestoßen: Deep Packet Inspection, Stateful Packet Inspection

redknight Team-Icon

Moderator & Supporter
Avatar von redknight

Anmeldungsdatum:
30. Oktober 2008

Beiträge: 21856

Wohnort: Lorchhausen im schönen Rheingau

Was Du beschreibst, ist aber nicht Firewalling auf Applicationebene. Denn das wäre "Erlaube Firefox, verbiete thunderbird", um mal ein Beispiel zu konstruieren.

Das_Wort

Anmeldungsdatum:
23. Dezember 2009

Beiträge: 5269

Wohnort: /dev/null

Wenn du eine Firewall haben willst die auf per Anwendung blockt, so wie "Little Snitch" für Mac OS X, dann ist Douane die equivalente Anwendung für Linux. Ist auch freie Software da GPL. Muss aber auf dem Rechner laufen.

Pakete einer Anwendung aus dem Netz filtern geht zwar in der Theorie mit Deep Packet Inspection und Fingerprinting, etwa wenn man nur Whats App blockieren möchte, aber gewöhnlich gibt es so etwas nicht auf normalem Weg zu kaufen.

root213123

(Themenstarter)

Anmeldungsdatum:
21. Januar 2014

Beiträge: 130

Ich meite Firewalling auf Application-Layer im OSI-Modell. Man muss davon ausgehen, dass man keine ausreichenden Rechte auf den Clients hat!

redknight Team-Icon

Moderator & Supporter
Avatar von redknight

Anmeldungsdatum:
30. Oktober 2008

Beiträge: 21856

Wohnort: Lorchhausen im schönen Rheingau

root213123 schrieb:

Ich meite Firewalling auf Application-Layer im OSI-Modell. Man muss davon ausgehen, dass man keine ausreichenden Rechte auf den Clients hat!

Wie erklärt: Da findet aber Firewalling nicht statt. Firewalling findet am OSI-Layer 4 (selten 3) statt. Denn das ist das, was Du unterwegs kontrollieren kannst. Ob ein SSl-Handshake von Programm 1 oder Programm 2 ausgeht, kannst Du unterwegs nicht sehen, dafür musst Du alle Layer (eben auf dem Client) kontrollieren.

root213123

(Themenstarter)

Anmeldungsdatum:
21. Januar 2014

Beiträge: 130

Es geht nicht darum, den Verkehr einer bestimmten Anwendungen zu filtern. Es geht grundsätzlich darum, Pakete über der Transport-Schicht (TCP/UDP) zu identifizieren und diese anhand bestimmer Vorraussetzungen zu verwerfen. Wofür muss ich dafür auf dem Client sein, wenn die Pakete doch sowieso an meinem Gateway vorbeikommen. Vielleicht meinst du, dass es mir nichts bringt, TLS-Traffic abzufangen, weil ich diesen nicht lesen kann. Es geht weniger um den Inhalt sondern eher um die "Header" des TLS-Protokolls. Mir ist deine Erklärung nicht ganz klar.

redknight Team-Icon

Moderator & Supporter
Avatar von redknight

Anmeldungsdatum:
30. Oktober 2008

Beiträge: 21856

Wohnort: Lorchhausen im schönen Rheingau

Du bringst da was durcheinander. Eine TLS-Verbindung ist auf OSI Layer 4 (Da ist auch TCP/UDP und deren Header). Auf Application-Layer unterscheidest Du zwischen den Programmen, die die Verbindung öffnen.

Noch dazu ist für das aufbrechen von TLS mindestens ein Eingriff auf dem Client nötig, da Du einen Proxy brauchst, dessen Zertifikat auf dem Client vorhanden (und vetrauenswürdig) sein muss, damit Du eine Art Man-in-the-Middle-Angriff fahren kannst, ohne dass der Client einen Zertifikatfehler bekommt. Also nochmal von vorn: Was genau willst Du tun?

root213123

(Themenstarter)

Anmeldungsdatum:
21. Januar 2014

Beiträge: 130

OK. Ich versuche es nochmal korrekt zu formulieren. Wenn der Client eine Verbindung öffnet, wird ein Transport-Protokoll(TCP/UDP) verwendet. Auf das darüberliegende (auch wenn das keine neue Layer ist) Protkoll (z.B. TLS) kann ich doch zugreifen. Also kann ich es doch auch identifizieren oder? Wäre das dann Schicht 6? http://www.elektronik-kompendium.de/sites/kom/0301201.htm

redknight Team-Icon

Moderator & Supporter
Avatar von redknight

Anmeldungsdatum:
30. Oktober 2008

Beiträge: 21856

Wohnort: Lorchhausen im schönen Rheingau

TLS ist eine Ende-zu-Ende-Verbindung, also auch nach der Tabelle Layer4 😉

root213123

(Themenstarter)

Anmeldungsdatum:
21. Januar 2014

Beiträge: 130

Hatte davon eine andere Vorstellung. Kann ich also auf Layer 4 Protokolle wie TLS identifizieren?

redknight Team-Icon

Moderator & Supporter
Avatar von redknight

Anmeldungsdatum:
30. Oktober 2008

Beiträge: 21856

Wohnort: Lorchhausen im schönen Rheingau

im Payload solltest Du das mit Deep-Packet-Inspection können.

Laut deutscher Wikipedia ist TLS Layer 5, was ich alleridngs für mehr als diskutabel halte.

root213123

(Themenstarter)

Anmeldungsdatum:
21. Januar 2014

Beiträge: 130

Welche Software brauche ich dafür? (Linux)

redknight Team-Icon

Moderator & Supporter
Avatar von redknight

Anmeldungsdatum:
30. Oktober 2008

Beiträge: 21856

Wohnort: Lorchhausen im schönen Rheingau

Ich empfinde Deep Packet Inspection als Eingriff in die Privatsphäre - gerade wenn Du keinen Zugriff auf die Clients hast, gehen dich das nichts an. Du wirst dazu keine Hilfe von mir bekommen.

root213123

(Themenstarter)

Anmeldungsdatum:
21. Januar 2014

Beiträge: 130

Etwas grundlegendes: Wenn ich Clients Internetzugriff über meinen Zugang gewähre, muss ich doch auch kontrollieren können, was die damit machen. Angenommen ich leihe jemandem mein Auto, bin ich doch dazu berechtigt, Kontrolle über mein Eigentum auszuüben. Nur weil derjenige mein Auto bekommt, darf er damit noch lange nicht machen, was er will! Wenn der Client also etwas gegen die Analyse seiner Pakete hat dann muss er sich eben einen anderen Anschluss suchen. Außerdem, die Privatsphäre wird ja mit dem Blockieren von verschlüsselten TLS-Paketen nicht beeinträchtigt. Ich habe nicht vor den Verkehr über einen Proxy umzuleiten und die gesamten Daten abzufischen. Das würde ja auch garnicht funktionieren weil ich ja die Original-CA's nicht habe und der Client meine Fake-Zertifikate zulassen müsste!

redknight Team-Icon

Moderator & Supporter
Avatar von redknight

Anmeldungsdatum:
30. Oktober 2008

Beiträge: 21856

Wohnort: Lorchhausen im schönen Rheingau

Etwas grundlegendes: Autovergleiche sind doof: Wenn Du jemand dein Auto leihst, ist er der Fahrer und damit klar haftbar für alles, was in der Zeit passiert. In dem Fall, in dem Du dein Eigentum verleihst, gibst Du die Kontrolle bewusst und aus freier Entscheidung ab. Wie Du siehst, stützt das selbe Beispiel auch meinen Standpunkt.

root213123 schrieb:

Wenn der Client also etwas gegen die Analyse seiner Pakete hat dann muss er sich eben einen anderen Anschluss suchen.

Dazu muss es ihm bekannt sein. Informierst Du? Wenn ja wie?

Außerdem, die Privatsphäre wird ja mit dem Blockieren von verschlüsselten TLS-Paketen nicht beeinträchtigt.

Ich würde mich durch die Tatsache, dass jeder Payload analysiert wird, durchaus beeinträchtigt fühlen. Wie gesagt, muss jeder selbst wissen, aber meine Ansicht musst Du wohl oder übel zumindest hinnehmen.

Ich habe nicht vor den Verkehr über einen Proxy umzuleiten und die gesamten Daten abzufischen. Das würde ja auch garnicht funktionieren weil ich ja die Original-CA's nicht habe und der Client meine Fake-Zertifikate zulassen müsste!

Die Tatsache, dass du verschlüsselte Verbdindungen verwerfen willst, lässt da einen gewissen Verdacht bezüglich der unverschlüsselten in mir aufkeimen.

Antworten |