Warum zeigt Fiddler keine Anfragen von bestimmten Anwendungen an?

Melden
  1. Funktionsweise von Fiddler und Proxy-Einstellungen
  2. Zertifikatsprobleme bei HTTPS und TLS-verschlüsseltem Verkehr
  3. Betriebssystem- und Benutzerrechte
  4. Besondere Netzwerkprotokolle und native Sockets
  5. Zusammenfassung

Fiddler ist ein weit verbreitetes Web-Debugging-Tool, das den Netzwerkverkehr zwischen einem Computer und dem Internet überwacht und anzeigt. Dennoch kann es vorkommen, dass Fiddler keine Anfragen von bestimmten Anwendungen erfasst oder anzeigt, was für den Benutzer verwirrend sein kann. Die Gründe hierfür sind vielfältig und hängen oft mit der Art und Weise zusammen, wie Fiddler arbeitet, wie Anwendungen ihre Netzwerkverbindungen konfigurieren und welche Sicherheitsmechanismen involviert sind.

Funktionsweise von Fiddler und Proxy-Einstellungen

Fiddler arbeitet als ein lokaler Proxy-Server, der standardmäßig auf dem Rechner meist den HTTP- und HTTPS-Datenverkehr über sich leitet, um diesen zu erfassen. Damit Anwendungen ihren Datenverkehr über Fiddler leiten, müssen sie in der Regel die Systemeinstellungen für den HTTP-Proxy übernehmen oder explizit so konfiguriert sein, dass sie den lokalen Proxy von Fiddler nutzen. Wenn eine Anwendung allerdings eigene Netzwerkeinstellungen verwendet oder direkt auf das Netzwerk zugreift, ohne die System-Proxy-Einstellungen zu beachten, kann Fiddler den Verkehr dieser Anwendung nicht abfangen. Dies trifft häufig auf Anwendungen zu, die eigene Implementierungen für Netzwerkverbindungen besitzen oder alternative APIs nutzen.

Zertifikatsprobleme bei HTTPS und TLS-verschlüsseltem Verkehr

Da die meisten Internetverbindungen heutzutage verschlüsselt sind, setzt Fiddler für das Mitschneiden von HTTPS-Verkehr einen sogenannten "Man-in-the-Middle"-Proxy-Ansatz ein, bei dem Fiddler ein eigenes Root-Zertifikat installiert, das vom Client als vertrauenswürdig angesehen werden muss. Wenn die Anwendung jedoch die Zertifikatskette streng überprüft, keine Fremd-Zertifikate akzeptiert oder Pinning-Techniken einsetzt, lehnt sie häufig die Verbindung zu Fiddler ab. In solchen Fällen wird keine Kommunikation über den Fiddler-Proxy zugelassen oder die Anfragen schlagen fehl und erscheinen somit nicht im Fiddler-Fenster. Außerdem kann es sein, dass Fiddler nicht korrekt als vertrauenswürdiges Zertifikat installiert wurde oder die Anwendung in einer Umgebung läuft, in der die Zertifikatsinstallation nicht möglich ist.

Betriebssystem- und Benutzerrechte

Ein weiterer Grund kann mit Berechtigungen und Sicherheitseinstellungen zusammenhängen. Manche Anwendungen laufen mit erhöhten Rechten (zum Beispiel als Administrator) oder in geschützten Umgebungen, wodurch sie den Proxy-Server von Fiddler nicht wahrnehmen oder umgehen. Insbesondere unter Windows kann es vorkommen, dass Fiddler nicht mit den entsprechenden Rechten ausgeführt wird, um Netzwerkverkehr systemweit abzufangen. Ist Fiddler in solchen Fällen mit einer geringeren Berechtigungsstufe gestartet als die Zielanwendung, kann kein Verkehr erfasst werden. Darüber hinaus beeinflusst auch die Netzwerkkonfiguration, etwa Firewall-Regeln oder VPN-Verbindungen, das Erfassen von Netzwerkdaten durch Fiddler.

Besondere Netzwerkprotokolle und native Sockets

Fiddler ist primär auf das Abfangen von HTTP- und HTTPS-Traffic ausgelegt. Anwendungen, die aber andere Protokolle (wie FTP, WebSocket in gewissen Varianten, QUIC oder proprietäre Protokolle) nutzen oder direkt auf Raw-Sockets zugreifen, werden von Fiddler nicht erfasst. Außerdem bieten manche Frameworks und Bibliotheken (z.B. einige Versionen von .NET oder Java) eigene Mechanismen zum Aufbau von Verbindungen, die nicht automatisch die System-Proxy-Einstellungen übernehmen. Falls der verwendete Netzwerkverkehr über UDP oder andere nicht von Fiddler unterstützte Protokolle läuft, werden diese ebenfalls nicht mitgeschnitten.

Zusammenfassung

Das Nicht-Anzeigen von Anfragen bestimmter Anwendungen in Fiddler ist meist eine Konsequenz aus der Arbeitsweise von Fiddler als Proxy, den Sicherheitseinschränkungen durch Zertifikatsprüfung, speziellen Netzwerkkonfigurationen sowie aus der Art der von den Anwendungen genutzten Netzwerkschnittstellen. Um dennoch diese Anfragen zu erfassen, muss man oft die Anwendung so konfigurieren, dass sie Fiddler als Proxy nutzt, das Fiddler-Zertifikat als vertrauenswürdig gilt und Fiddler mit ausreichenden Rechten ausgeführt wird. Außerdem kann es hilfreich sein, alternative Netzwerk-Monitoring-Tools in Betracht zu ziehen, die auf niedrigerer Ebene (z.B. Packet-Capturing mit Wireshark) arbeiten und daher auch nicht proxy-kompatiblen Verkehr mitlesen können.

0

Kommentare