Przejdź do głównej zawartości

Przechwytywanie przez proxy

Moduł przechwytywania przez proxy w Trace Eagle pokazuje żądania sieciowe Twojego komputera, telefonu i innych urządzeń w Twojej sieci lokalnej kompletnie, przejrzyście i po odszyfrowaniu. Nie tylko patrzysz: możesz je edytować, przechwytywać w locie, odtwarzać, porównywać i śledzić aż do źródła.

Fundamentalna różnica względem “jeszcze jednego narzędzia do przechwytywania przez proxy” jest taka: zwykłe narzędzia proxy mają tylko jedną ścieżkę, “ustaw proxy + odszyfrowanie typu man-in-the-middle”. W chwili, gdy natrafią na program ignorujący proxy, aplikację z przypinaniem certyfikatu, program w Javie / Pythonie, prywatny protokół binarny albo aplikację wrażliwą na charakterystykę ruchu, praktycznie utykają w miejscu. Trace Eagle wypełnia te martwe punkty jeden po drugim: przechwytuje nawet programy ignorujące proxy, odszyfrowuje nawet aplikacje z przypinaniem certyfikatu, rekonstruuje nawet prywatne formaty, wskazuje, kto wysłał dany przepływ, nawet gdy jest zagrzebany w szumie systemowym, i pozostawia ruch bez zmian dla aplikacji wrażliwych na charakterystykę ruchu, obserwując je z wysoką wiernością bez zakłócania ich normalnego działania.

Lista przepływów: każde żądanie pokazuje metodę, status, host/ścieżkę, typ, rozmiar i proces źródłowy w czasie rzeczywistym


1. Czym różni się od zwykłych narzędzi do przechwytywania przez proxy

Dział zatytułowany „1. Czym różni się od zwykłych narzędzi do przechwytywania przez proxy”

Przy tym samym przechwytywaniu przez proxy różnica nie polega na tym, “czy widzisz żądanie”, lecz na tym, czy możesz kontynuować pracę, gdy trafisz na trudny przypadek, i czy widzisz głębiej.

Scenariusz Zwykłe narzędzia do przechwytywania przez proxy Trace Eagle
Program ignoruje proxy systemowe (wielu klientów, usługi w tle, ruch bezpośredni) Nie może przechwycić, całkowicie to pomija Proxy przezroczyste: bez konfiguracji aplikacji; wciąż przechwytuje programy ignorujące proxy, ruch bezpośredni oraz ruch przekazywany, gdy komputer działa jako hotspot/brama, a zakres można precyzyjnie ograniczyć według procesu
Aplikacja stosuje przypinanie certyfikatu Błędy / brak połączenia / trzeba się poddać Jedno kliknięcie czyści weryfikację certyfikatu docelowej aplikacji, aby zaufała certyfikatowi do przechwytywania i odszyfrowanie mogło trwać dalej; witryny, których wolisz nie ruszać, są precyzyjnie przepuszczane
Programy w Javie, Pythonie i podobne Nawet z zainstalowanym certyfikatem systemowym bezużyteczne, nie da się odszyfrować Pełne pokrycie certyfikatami: te programy, których zwykłe proxy nie potrafią odszyfrować, tutaj też się odszyfrowują
Ruch HTTP/3 (QUIC) Słabe wsparcie, w większości nie da się go zobaczyć Wybierz według potrzeb spośród trzech poziomów: przechwytywanie z obniżeniem wersji, wierne przekazywanie (wysoka wierność) albo prawdziwe odszyfrowanie
Protokoły prywatne / binarne, skompresowane i zaszyfrowane koperty Sterta śmieci, których nie da się przeczytać Automatyczna dekompresja, automatyczne rozpoznawanie wielu formatów, plus własne dekodowanie za pomocą reguł ramkowania albo skryptów JS
Sterta wymieszanych procesów, bez pojęcia, który wysłał ruch Tylko IP / domena, musisz zgadywać Każdy przepływ jest oznaczony aplikacją / procesem źródłowym; kliknij host, aby też sprawdzić jego pełny profil
Chcesz ustalić, kim jest druga strona i jaki to klient Brak Kliknij host, aby zobaczyć jego profil właściciela / certyfikat / geolokalizację, i sprawdź odcisk klienta (JA3/JA4) każdego połączenia
Aplikacje wrażliwe na charakterystykę ruchu Proxy typu MITM zmienia charakterystykę ruchu, więc to, co obserwujesz, przestaje być prawdziwym ruchem, i może zakłócić działanie celu Wiele trybów wysokiej wierności: zachowaj ruch w niezmienionej postaci, bez zmiany jego charakterystyki, dzięki czemu ani nie zakłócasz działania docelowej aplikacji, ani nie tracisz z oczu prawdziwego łącza, które analizujesz
Metoda dostępu / praca równoległa Zasadniczo tylko proxy, pojedyncza sesja Proxy + bezpośrednie przechwytywanie na karcie sieciowej + przechwytywanie przezroczyste + bezpośrednie połączenie z urządzeniem mobilnym, wiele sesji równolegle, wiele portów bez wzajemnych zakłóceń

Krótko mówiąc: zwykłe narzędzia robią “przechwytywanie przez proxy”, a Trace Eagle robi “przechwytywanie, odszyfrowywanie, rozumienie i wiedzę, kto komu to wysłał, niezależnie od sytuacji”.


2. Elastyczne metody dostępu (dwa lokalne tryby dostępu)

Dział zatytułowany „2. Elastyczne metody dostępu (dwa lokalne tryby dostępu)”

To, w jaki sposób ruch trafia do przechwytywania, zależy od scenariusza. Na pasku narzędzi sesji, pod “Proxy lokalne” → ikoną koła zębatego “Ustawienia dostępu”, możesz wybrać jeden z dwóch trybów dostępu:

  • Proxy tradycyjne (korzysta z proxy systemowego, klasyczne przechwytywanie): dostęp jednym kliknięciem; przeglądarki, wiersz poleceń i większość aplikacji korzystają z proxy automatycznie. Po zatrzymaniu wszystko wraca do normy automatycznie, więc normalny dostęp do internetu jest zagwarantowany, a nawet po nietypowym zakończeniu działa mechanizm przywracania awaryjnego. Ograniczenie: jeśli aplikacja nie korzysta z proxy systemowego, nie da się jej przechwycić.
  • Proxy przezroczyste (cały ruch): martwy punkt zwykłych narzędzi: bez konfiguracji aplikacji; można przechwycić cały lokalny ruch (w tym ruch bezpośredni i ruch przekazywany, gdy komputer działa jako hotspot/brama); aplikacje niekorzystające z proxy systemowego są przechwytywane tak samo; możesz precyzyjnie ograniczyć zakres według aplikacji/procesu, aby przechwytywać tylko kilka programów; na urządzeniach mobilnych wystarczy zainstalować certyfikat główny, bez potrzeby ręcznego ustawiania proxy.

Ustawienia dostępu: dwa tryby dostępu, proxy tradycyjne / proxy przezroczyste, w połączeniu z trzema poziomami obsługi HTTP/3: przechwytywanie z obniżeniem wersji / wierne przekazywanie / prawdziwe odszyfrowanie

Przechwytywanie urządzeń w sieci lokalnej: skieruj proxy telefonu/tabletu/innego komputera na ten komputer, aby je przechwycić, z jednoklikowym przewodnikiem instalacji certyfikatu (profil konfiguracyjny iOS/macOS, instalacja przez zeskanowanie kodu QR).

Łańcuch z proxy nadrzędnym: sama sesja przechwytywania może dodatkowo połączyć się łańcuchowo z innym proxy nadrzędnym (łącząc przechwytywanie tego komputera z firmowym proxy, hostem pośredniczącym albo innym proxy drugorzędnym); łącze jest przezroczyste i nie wpływa na odszyfrowanie.


Coraz więcej aplikacji przyjmuje HTTP/3, a zwykłe narzędzia często się tu załamują. W “Ustawieniach dostępu” możesz wybrać:

  • Blokuj (przechwytywanie z obniżeniem wersji): spróbuj obniżyć HTTP/3 do HTTP/2, aby uczynić go możliwym do przechwycenia (kilka aplikacji tego nie obsługuje).
  • Ignoruj (wierne przekazywanie): przekazuj w niezmienionej postaci bez odszyfrowywania, wysoka wierność, nie zakłóca żądań danych programu.
  • Odszyfruj (prawdziwy MITM H3): naprawdę przechwytuj i odszyfrowuj, oglądając tekst jawny tak samo jak zwykłe HTTPS.

Proxy tradycyjne obsługuje “Blokuj / Ignoruj”; “Odszyfruj” musi być używane w trybie proxy przezroczystego.


4. Możliwości odszyfrowania: więcej niż “tylko zainstaluj certyfikat”

Dział zatytułowany „4. Możliwości odszyfrowania: więcej niż “tylko zainstaluj certyfikat””

Odszyfrowanie w zwykłych narzędziach to “zainstaluj jeden certyfikat systemowy + man-in-the-middle na proxy”, co zawodzi przy najmniejszym zabezpieczeniu. Trace Eagle to zestaw kilku ruchów naraz:

  • Jednoklikowe odszyfrowanie HTTPS: wbudowany system certyfikatów; zainstaluj raz dla ciągłego odszyfrowania.
  • Instalacja pełnego pokrycia certyfikatami: jednym kliknięciem obejmij certyfikatem systemowym wszędzie. Java, Python i podobne programy, których zwykłe proxy nie potrafią odszyfrować nawet z zainstalowanym certyfikatem systemowym, tutaj też się odszyfrowują.
  • Usuwanie przypinania certyfikatu (clear certificate pinning): dla aplikacji stosujących przypinanie, które normalnie od razu odrzucają połączenie z błędem, jedno kliknięcie czyści ich weryfikację certyfikatu i odszyfrowanie trwa dalej.
  • Lista biała / lista dozwolonych / lista blokowanych: lista biała odszyfrowuje tylko wskazane domeny i przepuszcza resztę bezpośrednio; lista dozwolonych przepuszcza ściśle zwalidowane witryny w niezmienionej postaci bez odszyfrowywania, żeby uniknąć błędów; lista blokowanych od razu odrzuca domeny, których nie chcesz przepuścić.

Ustawienia zakresu odszyfrowania: przełącznik lista czarna / lista biała, lista dozwolonych, lista blokowanych, plus proxy nadrzędne i niestandardowe DNS


  • Otwórz kilka sesji przechwytywania naraz; każda jest niezależną kartą, którą można uruchamiać/zatrzymywać/przełączać osobno.
  • Sesje są całkowicie odizolowane: niezależne listy przepływów, szczegóły, stan zaznaczenia i konfiguracja; wiele sesji proxy może nasłuchiwać każda na innym porcie i działać jednocześnie.
  • Proxy, bezpośrednie przechwytywanie na karcie sieciowej, przechwytywanie przezroczyste i bezpośrednie połączenie z urządzeniem mobilnym można uruchomić naraz i łączyć według scenariusza bez wzajemnego wpływu.

Protokół Obsługiwane możliwości
HTTP / HTTPS Pełne parsowanie żądań i odpowiedzi, podgląd tekstu jawnego
HTTP/2 Natywne parsowanie, sposób przeglądania spójny z HTTP/1.1
HTTP/3 (QUIC) Trzy poziomy do wyboru: przechwytywanie z obniżeniem wersji / wierne przekazywanie / prawdziwe odszyfrowanie (patrz wyżej)
WebSocket Wyświetlanie ramka po ramce wysłanych i odebranych wiadomości (tekst/binarne/ping/pong, z oznaczonym kierunkiem)
Server-Sent Events (SSE) Strumienie zdarzeń wyświetlane zdarzenie po zdarzeniu
gRPC / protobuf Rozwiązywanie struktury pól bez potrzeby posiadania pliku .proto
Surowe TCP / UDP Przechwytywanie surowych danych nawet dla niestandardowych protokołów innych niż HTTP
SOCKS5 Współdzieli ten sam port dostępu; obsługiwane są zarówno CONNECT, jak i UDP ASSOCIATE, a ruch SOCKS też można odszyfrować / przepuścić

7. Obserwacja o wysokiej wierności: nie zakłócaj celu, nie zmieniaj charakterystyki ruchu

Dział zatytułowany „7. Obserwacja o wysokiej wierności: nie zakłócaj celu, nie zmieniaj charakterystyki ruchu”

Zwykłe proxy typu man-in-the-middle zmienia charakterystykę żądań sieciowych, przez co to, co obserwujesz, przestaje być prawdziwym ruchem aplikacji, a może też wpłynąć na normalne działanie celu. Dla aplikacji wrażliwych na charakterystykę ruchu (takich jak usługi polegające na odciskach danych żądań sieciowych do kontroli spójności) zakłóca to zarówno cel, jak i zniekształca analizę.

Trace Eagle oferuje wiele poziomów wierności, aby utrzymać proces przechwytywania możliwie “przezroczystym” i możliwie bliskim prawdziwemu łączu: wierna obserwacja (obserwuj w sposób najbliższy prawdziwemu klientowi, minimalizując zmiany charakterystyki ruchu), rekonstrukcja odcisku (zachowaj spójny odcisk klienta nawet wtedy, gdy ruch musi zostać przepisany) oraz ustalony profil klienta (przywróć charakterystykę ruchu do standardowego klienta: Chrome / Firefox / Safari na desktopie, Safari na urządzeniu mobilnym albo profil losowy). W połączeniu z “H3 Ignoruj (wierne przekazywanie)”, nawet dla aplikacji wrażliwych na charakterystykę ruchu możesz przechwytywać i analizować wiernie, nie zakłócając ich normalnego działania.


  • Zobacz na pierwszy rzut oka, kto to wysłał: każdy przepływ jest oznaczony aplikacją/procesem źródłowym, więc szybko wskazujesz cel w zatłoczonym środowisku, czego zwykłe narzędzia pokazujące tylko IP/domenę nie potrafią Ci dać.
  • Przechwytuj tylko to, na czym Ci zależy: połącz z proxy przezroczystym, aby precyzyjnie ograniczyć przechwytywanie do aplikacji/procesu i wyciszyć szum.

Szczegóły przepływu: połączenie i proces źródłowy, TLS i odcisk połączenia (JA3/JA4), status odszyfrowania oraz automatycznie sparsowana treść żądania, wszystko na jednym ekranie


9. Więcej zaawansowanych możliwości towarzyszących (każda w osobnym artykule)

Dział zatytułowany „9. Więcej zaawansowanych możliwości towarzyszących (każda w osobnym artykule)”

Po przechwyceniu “rozumienie, śledzenie, przepisywanie, odtwarzanie, testy obciążeniowe” każde idzie w głąb, dlatego są opisane w osobnych artykułach:

Możliwość W jednym zdaniu Szczegóły
Podgląd i dekodowanie 5 trybów podglądu + automatyczna dekompresja/rozpoznawanie/upiększanie + podgląd multimediów w miejscu + ramkowanie prywatnych protokołów/dekodowanie skryptowe Podgląd i dekodowanie
Szczegóły hosta Kliknij dowolny host, aby zobaczyć właściciela (ASN/organizacja/rejestracja) + mapę geograficzną + DNS + kontrolę certyfikatu TLS + stos technologiczny witryny Szczegóły hosta
Reguły przepisywania i przechwytywanie na punktach przerwania Proste reguły edytują żądania przez wskazanie i kliknięcie, bez potrzeby skryptowania + punkty przerwania edytują każde ręcznie + skrypty/wtyczki jako rozwiązanie awaryjne dla złożonych scenariuszy Reguły przepisywania i przechwytywanie na punktach przerwania
Komponowanie i odtwarzanie żądań Jednoklikowe ponowne wysłanie/edycja-i-odtworzenie + komponowanie żądań + podpisywanie wartości dynamicznych + kolekcje/środowiska + generowanie kodu Komponowanie i odtwarzanie żądań
Porównywanie żądań (Diff) Porównaj dwa żądania/odpowiedzi obok siebie wiersz po wierszu, między sesjami i źródłami, aby na pierwszy rzut oka zobaczyć, czym się różnią Porównywanie żądań
Odtwarzanie sesji i testy obciążeniowe Odtwarzaj ciąg żądań po kolei partiami; kliknij prawym przyciskiem myszy pojedyncze żądanie, aby “przetestować obciążeniowo to żądanie”, z przepustowością i percentylami opóźnień w czasie rzeczywistym Odtwarzanie sesji i testy obciążeniowe

Jest też jedna lekka, ale przydatna możliwość:

  • Odcisk połączenia (JA3 / JA4): dla dowolnego połączenia HTTPS zobacz jego odcisk TLS klienta (JA3 z surowym łańcuchem, JA4, jednoklikowe kopiowanie). Nie zmienia się wraz z IP/UA i służy do identyfikacji typu klienta oraz wspomagania śledzenia ruchu i analizy bezpieczeństwa.

  • Debugowanie integracji API: mockuj, aby uzyskać dane; przekieruj punkt końcowy produkcyjny do środowiska lokalnego/testowego.
  • Przechwytywanie na urządzeniach mobilnych: przechwyć żądania HTTPS aplikacji na telefonie, aby analizować punkty końcowe i rozwiązywać problemy.
  • Radzenie sobie z trudnymi przypadkami: programy ignorujące proxy, stosujące przypinanie certyfikatu albo napisane w Javie / Pythonie; poradź sobie z nimi za pomocą proxy przezroczystego + usuwania przypinania + pełnego pokrycia certyfikatami.
  • Analiza prywatnych protokołów: rozwiąż strukturę protokołów binarnych/niestandardowych za pomocą reguł ramkowania albo skryptów.
  • Rozwiązywanie problemów: zobacz wyraźnie, co wysłało żądanie i co zwrócił serwer, aby wskazać problemy z parametrami/zwracaną wartością/pochodzeniem krzyżowym.
  • Testowanie słabej sieci / testy obciążeniowe: użyj reguł, aby symulować słabą sieć; użyj testów obciążeniowych, aby ocenić przepustowość punktu końcowego.
  • Audyt bezpieczeństwa / inwentaryzacja zasobów: przejrzyj komunikację wychodzącą, sprawdź wycieki poufnych informacji, zweryfikuj certyfikaty i użyj profili hostów, aby ustalić właściciela drugiej strony.
  • Analiza o wysokiej wierności: dla aplikacji wrażliwych na charakterystykę ruchu przechwytuj i analizuj wiernie, zachowując ruch bez zmian i nie zakłócając jego zachowania.

Przechwytywanie przez proxy jest częścią możliwości gromadzenia danych Trace Eagle. Oprócz metody proxy produkt obsługuje też bezpośrednie przechwytywanie na karcie sieciowej, bezpośrednie połączenie z urządzeniem mobilnym i inne metody przechwytywania, które można elastycznie łączyć według scenariusza.