Wyłącz udostępnianie plików w systemie Windows XP

14

Chcę wyłączyć udostępnianie plików (SMB) w systemie Windows XP i wyłączyłem je w oknie dialogowym właściwości sieci, ale system nadal nasłuchuje na porcie 445. Czy istnieje sposób, aby całkowicie przestał nasłuchiwać na 445? Czy nadal jest włączony w trybie ukrytym?

wprowadź opis zdjęcia tutaj

Tyler Durden
źródło
7
Wystarczy zainstalować poprawkę dla systemu Windows XP, która naprawia exploit SMB
Ramhound
7
@Ramhound Nawet po usunięciu obecnej luki SMB wciąż jest dość dużą powierzchnią ataku.
CodesInChaos
1
Zawsze możesz korzystać z wbudowanej zapory ogniowej, blokować wszystko oprócz tego, czego potrzebujesz do słuchania.
Sam
@Sam Dobry pomysł, blokuj błędne oprogramowanie, którego nie używam z ... większym błędnym oprogramowaniem, którego nie używam. Mam lepszy pomysł: wyłącz błędne oprogramowanie.
Tyler Durden
Obecne odpowiedzi tak naprawdę nie wyłączają SMBv1, w tym artykule wyjaśniono, jak to zrobić
Ramhound

Odpowiedzi:

13

Dowiedziałem się, jak to zrobić z innego postu.

Dodaj następujący klucz rejestru:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters

Name: SMBDeviceEnabled Type: DWORD (REG_DWORD) Data: 0

Spowoduje to całkowite wyłączenie usług SMB i zamknięcie serwera, który nasłuchuje na 445. Uruchom ponownie komputer, aby zastosować. Możesz sprawdzić, czy jest wyłączony, używając netstat -an

Tyler Durden
źródło
4
Czy próbowałeś wyłączyć usługę serwera?
Todd Wilcox
5
Prawidłowym działaniem jest oznaczenie pytania jako duplikatu, a nie udzielenie odpowiedzi bez przypisania źródłowych pytań i odpowiedzi.
AStopher
Nie wyłącza to jednak SMBv1
Ramhound
1
@Ramhound Zamyka port 445. Z jakiego portu korzysta „SMBv1”?
Tyler Durden
Po dodaniu klucza polecenie: netstat -na | znajdź „LISTENING” | znajdź „: 445”, zwraca puste - więc nikt nie słucha 445
Lucio M. Tato
7

Metoda wiersza poleceń

Zakładając, że bieżący użytkownik jest członkiem Administratorsgrupy, otwórz wiersz polecenia i wprowadź:

reg add HKLM\System\CurrentControlSet\Services\NetBT\Parameters /V SmbDeviceEnabled /T REG_DWORD /F /D 0

(dodaje to wymagane ustawienie rejestru w celu wyłączenia SMB i jest odpowiednikiem CLI odpowiedzi PO)

Następnie wprowadź:

sc stop lanmanserver
sc config lanmanserver start= disabled

(powoduje to zatrzymanie i wyłączenie serverusługi, alias lanmanserver)

Zrestartuj swój komputer:

shutdown -r -t 01

Po ponownym uruchomieniu otwórz wiersz polecenia i wprowadź następujące polecenie, aby sprawdzić, czy SMB nie nasłuchuje na porcie 445:

netstat -na | find "LISTENING" | find ":445 "

Jeśli to polecenie nie zwraca danych wyjściowych, wszyscy jesteście w porządku!

Inna możliwa metoda obejmująca GUI

... należy File and Printer Sharing for Microsoft Networkscałkowicie odinstalować :

  1. Idź do Start| Control Paneli kliknij dwukrotnie Network Connectionsaplet.
  2. Kliknij prawym przyciskiem myszy Local Area Connection(tzn. Połączenie z Internetem) i wybierz Properties.
  3. Wybierz File And Printer Sharing For Microsoft Networksi kliknij Uninstallprzycisk.
  4. Wybierz, Yesgdy pojawi się monit o odinstalowanie komponentu. Zamknij wszystkie okna dialogowe i aplety.

Dla osób, które mogą skorzystać z przewodnika ze zrzutami ekranu, zobacz:
http://ca.huji.ac.il/services/security/sharingXP-uninstall.shtml

Jimadine
źródło
2
Już miałem wyłączony serwer. Nadal nasłuchiwał na 445. Port jest własnością PID 4, który jest w zasadzie jądrem, nie jest usługą. Myślę, że część serwisowa to tylko rodzaj interfejsu. Sam serwer nie jest w rzeczywistości w usłudze „Serwer”, więc wyłączenie Serwera nie powoduje wyłączenia odbiornika 445.
Tyler Durden
Zaktualizowałem swoją odpowiedź w oparciu o twoje doświadczenia - prawdopodobnie najlepiej pas i szelki! Widzę mieszane wyniki w odniesieniu do tego, czy należy zmodyfikować zarówno ustawienia rejestru, jak i stan usługi. W testowanym pudełku XP wystarczyło zmodyfikować reg, a na moim 7 pudełku wystarczyło zatrzymanie usługi. Być może kolejność modyfikacji robi różnicę.
Jimadine
1

Ponieważ ta luka dotyczy SMB i NetBT, można ją usunąć za pomocą cmd (jeśli te usługi nie są wymagane):

::Disable netbt service
net stop netbt & sc delete netbt
net stop netbios & sc delete netbios

::Disable Workstation Service
sc stop "LanmanWorkstation"
sc config "LanmanWorkstation" start= disabled
sc delete "LanmanWorkstation"

::Disable SMB feature (windows 7 or higher)
DISM /Online /Disable-Feature /FeatureName:SMB1Protocol /Remove /NoRestart
DISM /Online /Disable-Feature /FeatureName:SmbDirect /Remove /NoRestart

::File and Printer Sharing for Microsoft Networks       
netcfg /u ms_server

Uruchom to jako administrator i uruchom ponownie komputer. Te polecenia trwale usuwają usługi. Możesz zamknąć porty w zaporze ogniowej.

Biswapriyo
źródło
1
Ponieważ pytanie to jest oznaczone jako Windows XP, czy na pewno DISM jest dostarczane z XP?
Jimadine
To nie ....
Ramhound
Dlatego edytuję post. Zobacz więcej informacji o Serverfault :: Funkcja opcjonalna w systemie Windows XP
Biswapriyo
@Biswa Tylko wiersz netcfg w twoich poleceniach jest istotny dla parametrów pytania OP, tj. Wyłącz SMB 445 w Win XP. Ale nawet netcfg jest wątpliwy, biorąc pod uwagę, że nie jest to standardowe użycie konsoli XP ( arstechnica.com/civis/viewtopic.php?f=17&t=627079 ).
Jimadine