Wydanie analizatora HTTPS Mitmproxy 11 z obsługą HTTP/3

Została zaprezentowana nowa wersja projektu Mitmproxy 11, rozwijającego zestaw narzędzi do przechwytywania ruchu w połączeniach ustanowionych przez HTTPS, z możliwościami inspekcji, modyfikacji i ponownego odtwarzania ruchu. Głównym celem Mitmproxy jest organizacja śledzenia ruchu w systemach korporacyjnych oraz diagnoza problemów, na przykład identyfikacja ukrytej aktywności sieciowej aplikacji. Źródłowe kody projektu napisane są w języku Python i są dystrybuowane na licencji MIT.

Aby przeanalizować ruch HTTPS, Mitmproxy jest umieszczany na węźle tranzytowym, gdzie przechwytuje żądania klienta i retransmituje je jako wysyłane przez siebie żądania do celu serwera. W trakcie sesji klienta serwer Mitmproxy nawiązuje standardowe połączenie HTTPS, a z klientem nawiązywane jest fikcyjne połączenie z podstawowym certyfikatem SSL, generowanym na bieżąco dla klienta. Odebrany od klienta ruch jest przekazywany do serwera docelowego, a otrzymane odpowiedzi retransmitowane są z powrotem do klienta.

Wydanie analizatora HTTPS Mitmproxy 11 z obsługą HTTP/3

Aby przekierować ruch przez mitmproxy, obsługiwanych jest kilka metod, takich jak wskazanie adresu mitmproxy jako proxy HTTP w ustawieniach przeglądarki, działanie jako proxy SOCKS5, wykorzystanie roli proxy odwrotnego przed serwerem HTTP oraz organizacja przezroczystego przekazywania przy użyciu reguł filtrowania pakietów lub zawijania routingu. Aby używany przy połączeniu z klientem podstawowy certyfikat nie powodował ostrzeżeń przeglądarki o problemach z bezpieczeństwem połączenia, użytkownikowi proponuje się zainstalowanie głównego certyfikatu mitmproxy, co można zrobić zarówno ręcznie, jak i otwierając w przeglądarce specjalny host mitm.it.

Wydanie analizatora HTTPS Mitmproxy 11 z obsługą HTTP/3

Mitmproxy obsługuje HTTP/2, HTTP/3, Websockets, normalizację kolejności pakietów w strumieniu, podłączanie skryptów obsługujących do modyfikacji ruchu na bieżąco, zapisywanie żądań do dalszego ponownego odtwarzania, generację certyfikatów TLS dla przechwyconych sesji, czyszczenie nagłówków o czasie modyfikacji w celu wyłączenia buforowania po stronie klienta, tryb odwrotnego proxy (Reverse proxy) do przekierowywania ruchu na serwer, listy blokad do filtrowania określonych zapytań, selektywne przekierowywanie zapytań (w tym do lokalnych plików), zmiana treści i nagłówków na podstawie wyrażeń regularnych. Do analizy ruchu oferowana jest podobna do tcpdump narzędzie wiersza poleceń mitmdump oraz interfejs webowy mitmweb.

Wydanie analizatora HTTPS Mitmproxy 11 z obsługą HTTP/3
Wydanie analizatora HTTPS Mitmproxy 11 z obsługą HTTP/3

Kluczowym ulepszeniem w nowej wersji jest pełne wsparcie dla protokołu HTTP/3, w którym wykorzystywany jest protokół QUIC (Quick UDP Internet Connections) jako transport dla HTTP/2 (QUIC to nakładka nad protokołem UDP, która obsługuje multiplexing wielu połączeń oraz zapewnia metody szyfrowania równoważne TLS/SSL). W Mitmproxy dla HTTP/3 można wykorzystać zarówno przezroczyste przechwytywanie ruchu, jak i działanie w trybie odwrotnego proxy. Testy przechwytywania HTTP/3 przeprowadzono w Firefoxie, Chrome oraz w różnych wersjach cURL.

Inne zauważalne zmiany w nowej gałęzi związane są z poprawą wsparcia dla DNS w kontekście umieszczania w rekordach DNS dla HTTPS oraz ECH (Encrypted Client Hello). W nowej wersji dodano wsparcie dla zapytań dotyczących rekordów DNS, różnych od A/AAAA (na przykład w ECH informacje o otwartym kluczu szyfrującym są przekazywane w rekordach DNS HTTPSSVC). Dodano tryb czyszczenia kluczy ECH z rekordów HTTPS w DNS. Przejście na bibliotekę Hickory, napisaną w języku Rust i rozwijaną przez projekt Let’s Encrypt, umożliwiło pracę z DNS. Dodano wsparcie dla DNS-over-TCP. Wprowadzono opcję wyłączania przetwarzania ustawień z /etc/hosts.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster