Wie sollte ich VPN auf einem Mac verwenden, um eine Kompromittierung zu verhindern, bevor das VPN startet?

Wie die meisten erfahrenen Benutzer gehört haben, kann die Verwendung eines Mac in einem öffentlichen, nicht vertrauenswürdigen WLAN potenziell schädlich sein. Ein Tool wie Firesheep 1 hat es sehr einfach gemacht, unverschlüsselte Kommunikation abzufangen.

Die Verwendung eines Full-Tunnel-VPN zur Verschlüsselung der gesamten Kommunikation wird oft als magische Lösung zum Abhören erwähnt, aber natürlich ist es nicht so einfach:

  • Je nach Protokoll und Konfiguration der VPN-Verbindung kann die Verbindung leichter abbrechen. (z. B. TLS vs. UDP)
  • Die VPN-Verbindung wird nicht sofort hergestellt, wenn Sie sich mit einem öffentlichen Netzwerk verbinden.

Ich denke, dass die letzten beiden Punkte sehr wichtig sind, denn wenn sich Ihre Netzwerkeinstellungen ändern, kommunizieren die verschiedenen Anwendungen sofort mit ihren Servern - ich nehme an, configddas informiert sie, oder?

Das heißt, bevor der VPN-Tunnel eingerichtet ist , kommunizieren die meisten (laufenden) Prozesse, die das Internet benötigen .

Ich sehe zwei Komponenten, um ein guter VPN-Benutzer zu sein:

  1. Stellen Sie sicher, dass die Dinge nicht unverschlüsselt gesendet werden, bevor sie eingerichtet sind.
  2. Stellen Sie sicher, dass die Dinge später nicht unverschlüsselt gesendet werden, wenn das VPN ausfällt .

Wie kann ich VPN auf einem Mac in einem öffentlichen Netzwerk verwenden, um unverschlüsselten Datenverkehr einzuschränken, bevor das VPN gestartet wird?

Es ist schön, dies noch einmal zu wiederholen – die ältere Frage, auf die ich verlinkt habe, scheint sich mehr darauf zu konzentrieren, wie man weiß, wann ein VPN die Verbindung trennt, als wie man Dinge für einen sicheren Start einrichtet – so können wir von mehreren gezielten Fragen zu Praktiken zur Erhöhung der Sicherheit bei der Verwendung von a profitieren VPN.

Antworten (2)

Lassen Sie uns jede Lösung beiseite legen, bei der Sie ein zweites Stück Netzwerkausrüstung für das Problem verwenden. Lassen Sie uns auch das Problem des Stoppens des Datenverkehrs nach dem VPN-Ausfall mit dieser verwandten, aber anderen Frage befassen .

Ich betrachte dieses Problem als eine benutzerzentrierte Lösung und nicht als etwas, das leicht durch Ändern des OS X-Verhaltens erreicht werden kann.

Richten Sie zwei Konten auf Ihrem Mac ein (beide müssen keine Administratorkonten sein, aber wenn dies der Fall ist, benötigen Sie kein drittes Konto, um die Systemeinstellungen zu ändern).

  1. Ein Shell-Konto, das existiert, um nichts auszuführen und nur die VPN-Verbindung herzustellen.
  2. Ein Hauptkonto, auf dem die Programme ausgeführt werden, die Sie sicherstellen möchten, dass Sie nur Zugriff auf das Netzwerk erhalten, wenn es ordnungsgemäß mit einem VPN gesichert wurde.

Wenn also der schnelle Benutzerwechsel aktiviert ist, können Sie sich vom Hauptkonto abmelden. Dadurch wird sichergestellt, dass keine Programme oder Prozesse dieses Benutzers im Hintergrund weiter ausgeführt werden. Die meisten OS X-Apps benehmen sich gut und unterbrechen den Netzwerkzugriff, wenn sie kein aktives Fenster auf dem Bildschirm haben, aber Sie müssten dies für immer überwachen und testen, um sicherzustellen, dass nichts passiert - das Abmelden ist einfacher zu verwalten.

Jetzt könnten Sie auch „Konto“ oben durch das Betriebssystem ersetzen und ein Virtualisierungssystem wie Fusion (oder Parallels oder ein anderes) ausführen und das Gastbetriebssystem erst starten, wenn das Host-Betriebssystem alles auf einem VPN gesichert hat. Je nach ausgewählter VM-Software haben Sie möglicherweise auch die Kontrolle über das Netzwerk und können den Zugriff ein- und ausschalten, selbst wenn das Gastbetriebssystem (oder die Betriebssysteme) ausgeführt werden. Dies simuliert im Grunde die zusätzliche Hardware, von der ich ursprünglich sagte, dass ich sie nicht in Betracht ziehen würde.

Ich hoffe, dies zeigt einen Weg auf, wie Sie auf Reisen sicherer sein und ein Netzwerk verwenden können, dem Sie nicht vertrauen, und gleichzeitig das Risiko minimieren, das dies immer mit sich bringen wird. Wenn jemand anderes das Netzwerk besitzt – er besitzt DNS, kann Pakete protokollieren, Man-in-the-Middle (MITM)-Angriffe versuchen und alle Ihre Pakete gründlich untersuchen, um zu versuchen, festzustellen, was im VPN-Tunnel fließt.

Dies ist eine ziemlich vernünftige Antwort. Die Verwendung einer VM in einem zweiten Benutzerkonto ist einfach einzurichten. Während das Betriebssystem möglicherweise weiterhin ungesicherten Netzwerkverkehr zulässt, spielt es keine Rolle, ob es sich in der eingeschränkten Umgebung eines redundanten Benutzerkontos befindet.
Ich wünschte, es gäbe eine einfache Schaltfläche, aber wie Sie sehen können, ist es nicht trivial, den Vor- oder Nachdatenverkehr auf einer Kernelebene zu steuern, da OS X darauf ausgelegt ist, jeden Pfad zu verwenden, der hoch ist. Das Betriebssystem ist nicht darauf ausgelegt, alles herunterzufahren, aber die Netzwerkausrüstung ist es.

Hier ist ein Ansatz, der vollständig außerhalb der MacOS X-GUI liegt. Daher beeinträchtigt dieser Ansatz des Problems keine Netzwerk- oder VPN-Einstellungen.

Angenommen, ich möchte ein IPSEC-VPN verwenden (basierend auf der Verwendung von 500/udp == isakmp & 50/ip == esp).

Erstellen Sie eine ipfwKonfigurationsdatei, die nur die erforderlichen Protokolle zum Erstellen des VPN zulässt:

/usr/bin/sudo cat <<____eof >/etc/ipfw.vpn.rules
# VPN trafic contention
#
# DHCP
add 00100 permit udp from any to any src-port bootpc dst-port bootps
# DNS
add 01000 permit udp from me to any dst-port domain
add 01010 permit udp from any to me dst-port domain
# isakmp
add 01050 permit udp from me to any dst-port isakmp
add 01060 permit udp from any to me dst-port isakmp
# esp
add 01100 permit esp from me to any
add 01110 permit esp from any to me
# all other ip go to the central black hole
add 20000 deny ip from any to any
____eof

Überprüfen Sie, ob die Syntax in Ordnung ist:

/usr/bin/sudo /sbin/ipfw -n /etc/ipfw.vpn.rules

Installieren Sie es im Kernel:

/usr/bin/sudo /sbin/ipfw /etc/ipfw.vpn.rules

Überprüfen Sie, ob Ihr Betriebssystem neu gestartet werden kann, und erhalten Sie seine IP-Adresse über das übliche DHCP. Überprüfen Sie, ob die meisten IP-Protokolle blockiert sind:

ping www.google.com

Wenn Sie zusätzlich zu SSL ein VPN verwenden möchten, müssen Sie diese Konfigurationsdatei natürlich anpassen (isakmp + esp → https).