Bearbeiten von „Firewall Piercing“
Aus UUGRN
Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden.
Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und speichere dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.
Aktuelle Version | Dein Text | ||
Zeile 7: | Zeile 7: | ||
__TOC__ | __TOC__ | ||
− | == SSH | + | == via SSH == |
SSH kann nicht nur selbst auf verschiedenen Transportmedien arbeiten, sondern kann auch selbst als Transportmedium dienen. So kann man beispielsweise auf die eine oder andere Weise eine SSH-Verbindung zu einem speziellen Shellserver herstellen und durch die SSH-Verbindung hindurch dann weitere Tunnelmechanismen verwenden. | SSH kann nicht nur selbst auf verschiedenen Transportmedien arbeiten, sondern kann auch selbst als Transportmedium dienen. So kann man beispielsweise auf die eine oder andere Weise eine SSH-Verbindung zu einem speziellen Shellserver herstellen und durch die SSH-Verbindung hindurch dann weitere Tunnelmechanismen verwenden. | ||
− | === | + | === SOCKS Proxy === |
− | OpenSSH | + | {{FIXME|Beschreiben, wie man mit einem OpenSSH-Client einen SOCKS-Proxy einrichtet}} |
− | + | === PPP over SSH === | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | === PPP | ||
{{FIXME|Beschreiben, wie eine PPP-Verbindung durch die Terminalverbindung von SSH funktioniert}} | {{FIXME|Beschreiben, wie eine PPP-Verbindung durch die Terminalverbindung von SSH funktioniert}} | ||
− | === IP Tunnel | + | === IP Tunnel === |
{{FIXME|Beschreiben, wie man mit Hilfe einer OpenSSH-Sitzung ein tun(4)-Device einrichtet}} | {{FIXME|Beschreiben, wie man mit Hilfe einer OpenSSH-Sitzung ein tun(4)-Device einrichtet}} | ||
− | === | + | === wie verhindern? === |
{{FIXME|Beschreiben, wie man Tunnelmechanismen Client- oder Serverseitig unterbinden kann}} | {{FIXME|Beschreiben, wie man Tunnelmechanismen Client- oder Serverseitig unterbinden kann}} | ||
− | == | + | == via Webproxy == |
In komplexeren Firewallsetups gehört ein oder mehrere in Reihe geschaltete Webproxies normalerweise zum Gesamtkonzept, sofern das zu schützende Netz seinen Nutzern den Zugriff auf das World-Wide-Web erlauben will. Der Zugriff auf Webseiten erfolgt überlicherweise über 2 verschiedene Arten, der ungesicherte Zugriff auf tcp Port 80, besser bekannt als [[http]], der durch [[SSL]] gesicherte Zugriff auf Webserver auf Port 443, besser bekannt auch als [[https]]. | In komplexeren Firewallsetups gehört ein oder mehrere in Reihe geschaltete Webproxies normalerweise zum Gesamtkonzept, sofern das zu schützende Netz seinen Nutzern den Zugriff auf das World-Wide-Web erlauben will. Der Zugriff auf Webseiten erfolgt überlicherweise über 2 verschiedene Arten, der ungesicherte Zugriff auf tcp Port 80, besser bekannt als [[http]], der durch [[SSL]] gesicherte Zugriff auf Webserver auf Port 443, besser bekannt auch als [[https]]. | ||
Zeile 88: | Zeile 78: | ||
HTTP/1.0 200 Connection established | HTTP/1.0 200 Connection established | ||
− | : Der gesamte darauf folgende Traffic ist 1:1 vom Server, in diesem Beispiel ist es nicht ganz [[https]], sondern die Klartext-Antwort des [[sshd]] von [[ | + | : Der gesamte darauf folgende Traffic ist 1:1 vom Server, in diesem Beispiel ist es nicht ganz [[https]], sondern die Klartext-Antwort des [[sshd]] von [[shell.uugrn.org]] |
SSH-2.0-OpenSSH_4.5p1 FreeBSD-20061110 | SSH-2.0-OpenSSH_4.5p1 FreeBSD-20061110 | ||
:;Wichtig zu wissen ist: Der Webproxy stellt auf die Anfrage CONNECT hin die Verbindung zum gewünschten Server auf dem gewünschten Port her und antwortet einzeilig mit der Nachricht, dass die Verbindung hergestellt wurde. Nach einer weiteren Leerzeile erscheint auf der Verbindung dann bitsauber der Datenverkehr des jeweiligen Remotehosts. Bitsauber beudetet, dass SSL fehlerfrei funktioniert, aber auch jedes andere Protokoll, welches auf eine bitgenaue, d.h. nicht zeilenbasierte Übermittlung der Daten angewiesen ist. | :;Wichtig zu wissen ist: Der Webproxy stellt auf die Anfrage CONNECT hin die Verbindung zum gewünschten Server auf dem gewünschten Port her und antwortet einzeilig mit der Nachricht, dass die Verbindung hergestellt wurde. Nach einer weiteren Leerzeile erscheint auf der Verbindung dann bitsauber der Datenverkehr des jeweiligen Remotehosts. Bitsauber beudetet, dass SSL fehlerfrei funktioniert, aber auch jedes andere Protokoll, welches auf eine bitgenaue, d.h. nicht zeilenbasierte Übermittlung der Daten angewiesen ist. | ||
− | === [[SSH]] | + | === [[SSH]] === |
− | Das SSH-Protokoll erlaubt es neben einer Terminalsitzung auch weitere Daten zu übertragen. Das kann von SSH basierten Anwendungen über einfaches Portforwarding und SOCKS-Proxy Fähigkeiten bis hin zu gerouteten IP-Verbindungen ([[OpenSSH]]) gehen. Wichtig für die Anwendung ist, dass die SSH-Verbindung irgendwie zustande kommt. Mögliche Transportwege für SSH sind neben einer direkten TCP-Verbindung auch Verbindungen via SOCKS-Proxy oder eben Webproxy oder alle andere Möglicheiten, die einen | + | Das SSH-Protokoll erlaubt es neben einer Terminalsitzung auch weitere Daten zu übertragen. Das kann von SSH basierten Anwendungen über einfaches Portforwarding und SOCKS-Proxy Fähigkeiten bis hin zu gerouteten IP-Verbindungen ([[OpenSSH]]) gehen. Wichtig für die Anwendung ist, dass die SSH-Verbindung irgendwie zustande kommt. Mögliche Transportwege für SSH sind neben einer direkten TCP-Verbindung auch Verbindungen via SOCKS-Proxy oder eben Webproxy oder alle andere Möglicheiten, die einen bitsauberen Trasport vermöglichen. |
− | |||
− | |||
− | |||
− | + | ==== [[OpenSSH]] ==== | |
− | + | {{FIXME|Perlscript und Configanleitung für OpenSSH-Client}} | |
− | |||
− | |||
− | |||
− | |||
− | ==== [[PuTTY]] | + | ==== [[PuTTY]] ==== |
[[PuTTY]] kann neben direkten TCP-Verbindungen auf Port 22 auch über verschiedene andere Wege mit dem SSH-Server kommunizieren, dazu gehören: | [[PuTTY]] kann neben direkten TCP-Verbindungen auf Port 22 auch über verschiedene andere Wege mit dem SSH-Server kommunizieren, dazu gehören: | ||
* Webproxy, auch mit Authentifizierung | * Webproxy, auch mit Authentifizierung | ||
Zeile 118: | Zeile 101: | ||
Die Anwendung und Konfigurationsbeispiele befinden sich im Artikel [[PuTTY]]. | Die Anwendung und Konfigurationsbeispiele befinden sich im Artikel [[PuTTY]]. | ||
− | === [[OpenVPN]] | + | === [[OpenVPN]] === |
OpenVPN ist ein Tunnelprotokoll. Durch eine OpenVPN-Verbindung lassen sich IP-Verbindungen, je nach Tunneltyp sogar Ethernet-Bridges realisieren. | OpenVPN ist ein Tunnelprotokoll. Durch eine OpenVPN-Verbindung lassen sich IP-Verbindungen, je nach Tunneltyp sogar Ethernet-Bridges realisieren. | ||
OpenVPN selbst arbeitet standardmäßig auf UDP Port 1194, kann aber auch auf anderen Ports oder TCP-Verbindungen, sogar durch Proxyverbindungen hindurch arbeiten. | OpenVPN selbst arbeitet standardmäßig auf UDP Port 1194, kann aber auch auf anderen Ports oder TCP-Verbindungen, sogar durch Proxyverbindungen hindurch arbeiten. | ||
Zeile 124: | Zeile 107: | ||
Das [http://openvpn.net/index.php/documentation/howto.html#http OpenVPN HowTo beschreibt die Konfiguration einer Verbindung via http-Proxy]. | Das [http://openvpn.net/index.php/documentation/howto.html#http OpenVPN HowTo beschreibt die Konfiguration einer Verbindung via http-Proxy]. | ||
− | === [[httptunnel]] | + | === [[httptunnel]] === |
{{FIXME|Beschreibung von [[httptunnel]]}} | {{FIXME|Beschreibung von [[httptunnel]]}} | ||
− | === | + | === wie verhindern? === |
− | + | {{FIXME|Strategie zur Vermeidung oder Aufspüren ungewollter Zugriffe über den Webproxy}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | === weiterführende Informationen === | |
+ | Durch die Verwendung eines oder mehrerer offenener Proxies im Internet können Verbindungen "umgeleitet" werden. Die Verwendung fremder (offener) Proxys ist üblicherweise nicht legal. | ||
− | + | == via SOCKS == | |
− | |||
− | |||
− | |||
− | == | ||
− | |||
− | |||
− | |||
− | |||
Manche Firewallsysteme bieten für Applikationen einen SOCKS-Proxy an. Sehr viele Applikationen, die per TCP kommunizieren können auch via SOCKS-Proxy kommunizieren, zum Beispiel auch SSH, aber auch Messenger, Tauschbörsen, Mailclients. | Manche Firewallsysteme bieten für Applikationen einen SOCKS-Proxy an. Sehr viele Applikationen, die per TCP kommunizieren können auch via SOCKS-Proxy kommunizieren, zum Beispiel auch SSH, aber auch Messenger, Tauschbörsen, Mailclients. | ||
{{FIXME|Beschreiben, wie man einen SOCKS-Proxy nutzt}} | {{FIXME|Beschreiben, wie man einen SOCKS-Proxy nutzt}} | ||
− | === | + | === wie verhindern? === |
− | + | {{FIXME|Strategie für den sicheren Betrieb eines SOCKS-Proxys}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | == via DNS == | |
− | |||
− | == DNS | ||
DNS ist üblicherweise auch in stark abgeschirmten Netzwerken möglich. Selbst wenn es keine direkte Route zwischen den Netzwerken gibt kann man davon ausgehen, dass innerhalb des Sicherheitskonzepts innere DNS-Server über externe DNS-Server weitergeleitet werden. Ein speziell präparierter Client kann über standardkonforme DNS-Requests Verbindungen zu einem speziellen DNS-Server herstellen, der Nutzdaten wie z.B. einzelne IP-Pakete per Request vom Client erhält und per Response dem Client zurückschickt. | DNS ist üblicherweise auch in stark abgeschirmten Netzwerken möglich. Selbst wenn es keine direkte Route zwischen den Netzwerken gibt kann man davon ausgehen, dass innerhalb des Sicherheitskonzepts innere DNS-Server über externe DNS-Server weitergeleitet werden. Ein speziell präparierter Client kann über standardkonforme DNS-Requests Verbindungen zu einem speziellen DNS-Server herstellen, der Nutzdaten wie z.B. einzelne IP-Pakete per Request vom Client erhält und per Response dem Client zurückschickt. | ||
+ | {{FIXME|Beschreiben, mit welcher Software man soetwas einrichten kann}} | ||
− | === | + | === wie verhindern? === |
− | + | {{FIXME|Strategie zur Erkennung und Vermeidung von Sicherheitslücken im DNS-Verkehr}} | |
− | |||
− | == | + | == via TOR == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
{{FIXME|Beschreiben, wie das TOR Netzwerk funktioniert}} | {{FIXME|Beschreiben, wie das TOR Netzwerk funktioniert}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Kategorie:Netzwerk]] | [[Kategorie:Netzwerk]] | ||
[[Kategorie:Security]] | [[Kategorie:Security]] |