Dostawca usług warstwowych - Layered Service Provider

Layered Service Provider (LSP) to przestarzała funkcja interfejsu dostawcy usług Microsoft Windows Winsock 2 (SPI). Dostawca usług warstwowych to biblioteka DLL, która używa interfejsów API Winsock do próby wstawienia się do stosu protokołów TCP / IP . Po umieszczeniu w stosie dostawca usług warstwowych może przechwytywać i modyfikować przychodzący i wychodzący ruch internetowy. Umożliwia przetwarzanie całego ruchu TCP / IP zachodzącego między Internetem a aplikacjami, które uzyskują dostęp do Internetu (takimi jak przeglądarka internetowa, klient poczty itp.). Na przykład może być używany przez złośliwe oprogramowanie do przekierowywania przeglądarek internetowych na fałszywe witryny lub do blokowania dostępu do witryn takich jak Windows Update . Alternatywnie, program zabezpieczający komputer może skanować ruch sieciowy w poszukiwaniu wirusów lub innych zagrożeń. Interfejs API Winsock Service Provider Interface (SPI) zapewnia mechanizm warstwowania dostawców jeden na drugim. Winsock LSP są dostępne do wielu przydatnych celów, w tym do kontroli rodzicielskiej i filtrowania treści internetowych. Filtr sieciowy kontroli rodzicielskiej w systemie Windows Vista to LSP. Kolejność warstw wszystkich dostawców jest przechowywana w katalogu Winsock.

Detale

W przeciwieństwie do dobrze znanego API Winsock 2, które jest opisane w wielu książkach, dokumentacji i próbkach, SPI Winsock 2 jest stosunkowo niezbadane. Interfejs SPI Winsock 2 jest implementowany przez dostawców usług transportu sieciowego i dostawców usług rozpoznawania przestrzeni nazw. Interfejs SPI Winsock 2 można wykorzystać do rozszerzenia istniejącego dostawcy usług transportowych poprzez wdrożenie dostawcy usług warstwowych. Na przykład jakość usług (QoS) w systemach Windows 98 i Windows 2000 jest implementowana jako LSP przez stos protokołów TCP / IP . Innym zastosowaniem dostawców LSP byłoby opracowanie specjalistycznego oprogramowania do filtrowania adresów URL w celu uniemożliwienia przeglądarkom sieci Web dostępu do określonych witryn, niezależnie od przeglądarki zainstalowanej na komputerze. Interfejs SPI Winsock 2 umożliwia programistom tworzenie dwóch różnych typów dostawców usług - transportu i przestrzeni nazw. Dostawcy transportu (powszechnie określani jako stosy protokołów) to usługi, które dostarczają funkcje, które konfigurują połączenia, przesyłają dane, wykonują kontrolę przepływu, kontrolę błędów i tak dalej. Dostawcy przestrzeni nazw to usługi, które kojarzą atrybuty adresowania protokołu sieciowego z co najmniej jedną przyjazną dla człowieka nazwą i umożliwiają rozpoznawanie nazw niezależnych od protokołu. SPI umożliwia także rozwijanie dwóch typów dostawców usług transportowych - dostawców usług podstawowych i usług warstwowych.

Podstawowi dostawcy usług wdrażają rzeczywiste szczegóły protokołu transportowego: konfigurowanie połączeń, przesyłanie danych oraz wykonywanie kontroli przepływu i kontroli błędów. Warstwowi dostawcy usług wdrażają tylko niestandardowe funkcje komunikacyjne wyższego poziomu i polegają na istniejącym podstawowym dostawcy w zakresie faktycznej wymiany danych ze zdalnym punktem końcowym.

Winsock 2 LSP są implementowane jako biblioteki DLL systemu Windows z jedną wyeksportowaną funkcją wpisu , WSPStartup . Wszystkie inne funkcje transportowe SPI są udostępniane ws2_32.dll lub dostawcy z wyższą warstwą łańcucha za pośrednictwem tabeli wysyłki dostawcy LSP . LSP i dostawcy baz są połączeni w łańcuch protokołów. Biblioteka LSP DLL musi zostać zarejestrowana przy użyciu specjalnego rejestrującego LSP, który instruuje Winsock 2, kolejność ładowania LSP (może być zainstalowanych więcej niż jeden LSP) oraz protokoły do ​​przechwycenia.

LSP działają na zasadzie przechwytywania poleceń Winsock 2, zanim zostaną one przetworzone przez ws2_32.dll; mogą więc modyfikować polecenia, porzucić polecenie lub po prostu rejestrować dane, co czyni je użytecznymi narzędziami do usuwania złośliwego oprogramowania, filtrów sieciowych, przechwytywaczy sieciowych i snifferów strumieniowych. Sniffowanie ruchu sieciowego przez LSP może być czasami kłopotliwe, ponieważ producenci oprogramowania antywirusowego zazwyczaj oznaczają takie działania jako złośliwe - analizator pakietów sieciowych jest zatem lepszą alternatywą do przechwytywania ruchu sieciowego.

Cechą podsłuchiwania serwerów proxy LSP i Winsock jest to, że umożliwiają przechwytywanie ruchu z jednej aplikacji, a także umożliwiają przechwytywanie ruchu przechodzącego do hosta lokalnego (127.0.0.1) w systemie Windows.

Istnieją dwa rodzaje LSP: IFS i inne niż IFS LSP. Obecnie większość dostawców usług dostawcy usług (LSP) dostępnych na rynku to firmy inne niż IFS. Różnica między tymi dwoma dostawcami LSP polega na tym, że dostawcy LSP inne niż IFS modyfikują uchwyt gniazda do nieprawidłowego uchwytu systemu Windows IFS, a zatem dostawca LSP musi implementować wszystkie metody Winsock 2. Z drugiej strony, IFS LSP zachowują uchwyt gniazda, co pozwala LSP na implementację tylko funkcji, które chce przechwycić. IFS LSP mają znacznie mniejszy wpływ na wydajność niż inne niż IFS LPS, ale są one ograniczone przez fakt, że nie mogą sprawdzać ani modyfikować danych na ścieżce odbiorczej.

Wycofanie i obejście LSP

LSP są przestarzałe od czasu systemu Windows Server 2012 . Systemy zawierające LSP nie przejdą kontroli logo Windows. Aplikacje „metro” w stylu Windows 8, które używają sieci, automatycznie pomijają wszystkie LSP. Windows Filtering Platform zapewnia podobną funkcjonalność i jest kompatybilny zarówno z Windows 8 styl „Metro” aplikacji i tradycyjnych aplikacji desktopowych.

Kwestie związane z korupcją

Głównym problemem związanym z LSP jest to, że wszelkie błędy w LSP mogą powodować awarie aplikacji. Na przykład LSP, który zwraca nieprawidłową liczbę bajtów wysłanych przez interfejs, może spowodować, że aplikacje wejdą w nieskończoną pętlę podczas oczekiwania na stos sieciowy, który wskaże, że dane zostały wysłane.

Innym częstym problemem związanym z LSP było to, że jeśli zostały one usunięte lub wyrejestrowane nieprawidłowo lub jeśli LSP zawiera błędy, spowoduje to uszkodzenie katalogu Winsock w rejestrze, a cały stos TCP / IP zostanie uszkodzony, a komputer może nie uzyskuje już dostępu do sieci.

Technologia LSP jest często wykorzystywana przez programy typu spyware i adware w celu przechwycenia komunikacji w Internecie. Na przykład złośliwe oprogramowanie może wstawić się jako LSP do stosu sieciowego i przekierować cały ruch użytkownika do nieautoryzowanej witryny zewnętrznej, gdzie może zostać przeszukane dane w celu znalezienia zainteresowań użytkownika, aby również bombardować go ukierunkowanymi reklamami. jako e-mail będący spamem . Jeśli złośliwe oprogramowanie LSP nie zostanie poprawnie usunięte, starsze wersje systemu Windows mogą pozostać bez działającego połączenia sieciowego.

Takiej potencjalnej utracie łączności sieciowej zapobiega się w systemie Windows XP z dodatkiem Service Pack 2, Windows Server 2003 z dodatkiem Service Pack 1 i we wszystkich późniejszych systemach operacyjnych Windows, w których Winsock ma możliwość samonaprawy po odinstalowaniu przez użytkownika takiego LSP.

Zainstalowane LSP mogą być przeglądane za pomocą XP / Vista programu Windows Defender „s Software Explorer lub za pomocą narzędzi innych firm.

Bibliografia

Linki zewnętrzne