Windows Vista in het NetBIOS via TCP/IP netwerk

> OS/2 net index <



Server Message Block Protocol

NetBIOS via TCP/IP inschakelen op Windows Vista


Wel verbinding, maar geen toegang

Meer lezen



Ik heb de 64 bits Windows Vista Premium getest onder een 64 bits XEN kernel. Het gastsysteem was OpenSuse 11.0. Hierop draait mijn samba server, die na enige aanpassingen in smb.conf niet moeilijk doet als hij een OS/2 of eComStation netwerkklant ontmoet. Zie Samba 3 onder OS/2.

Maar Windows Vista lijkt standaard alleen maar goed te willen samenwerken met poort 445 van Windows 2000 en XP. En samba natuurlijk, omdat die het eigenzinnige gedrag van Microsoft systemen op het netwerk nabootst. Om die reden is een verbinding via de samba client plugin van Netdrive met Windows Vista goed te doen.

Maar hoe zit het met het "verouderde" door Windows 9x, OS/2 en veel NAS devices gebruikte netwerkprotocol NetBIOS via TCP/IP? De vraag was dus of er een poort 139 NetBIOS via TCP/IP verbinding mogelijk was met Vista. En wat je daar voor Microsofts vlaggeschip ZKH MS Vista zoal voor moet doen. Transparante 3D zeepbellen worden door bepaalde videokaarten ondersteund, maar hoe zit het nu met het mijn oude en vertrouwde NetBIOS via TCP/IP thuisnetwerk. Kan ik daar ook doen wat ik wil?

Om te beginnen moet u net als onder Windows XP het NetBIOS via TCP/IP protocol onder Windows Vista activeren. Want standaard staat dat niet aan. Zodat veel gebruikers hun onder Windows 9x en OS/2 nog prima werkende werkende NetBIOS via TCP/IP NAS devices ineens niet meer zien.

Maar als u NetBIOS via TCP/IP in Windows XP of Vista inschakelt, wil nog niet zeggen dat uw netwerk computers weer met elkaar spreken. Want de uitvoering van dit NetBIOS via TCP/IP protocol varieert per besturingssysteem. En soms bestaan er heel heel vreemde manieren om netwerkresources te delen.

Zo accepteerde de Windows XP Home editie geen netwerkwachtwoord voor de gedeelde bestanden, maar alleen het Eenvoudig delen (Simple File Sharing) principe. Hierin kon of alleen Iedereen of niemand een share delen. De braaf door de clients van de SFS clients opgeven wachtwoorden werden gewoon weggegooid. Het was alles of niets. Alleen de voor Windows XP niet benaderbare NTFS-machtigingen (standaard stonden ze open voor iedereen) konden roet in dit Simple File Sharing hackersparadijs gooien.

Wie bedenkt zoiets? Natuurlijk niet de voor Microsoft Windows 2000 Professional ingehuurde security officers, maar de commercieel ingestelde managers, die het bedrijfsleven Windows XP Professional wilden opdringen en tevens de Windows Helpdesk niet met de voor veiligheid onvermijdelijke problemen van NTFS Machtigingen wilden opzadelen. Commercieel gezien was het wel een slimme zet. Maar vanuit beveiligingsoogpunt was het spelen met vuur.

Daarnaast worden over deze verschillende NetBIOS via TCP/IP implementaties weer verschillende authentificatie-protocollen verzonden. Onder MS Vista is dat standaard het NTLMv2 authentificatie protocol van Windows NT met Service Pack 4. En dat wordt niet door OS/2 en Windows 9x ondersteund.

Nu heeft Microsoft voor Windows 9x en ME gebruikers uiteindelijk ook een MSI-installer uitgebracht waarmee Windows 9x ook over het NTLMv2 authentificatie protocol beschikken. Het heeft vele jaren geduurd: niet om technische, maar om commerciele redenen. Aan veiligheid en comptabiliteit hangt bij Microsoft een prijs. Wie niet aan de - in het geval van XP Home met opzet aangebrachte netwerk - tekortkomingen wil lijden moet maar een proportioneel veel duurdere nieuwere versie van Windows kopen.

Maar inmiddels wel door samba, waardoor de van de samba Netdrive plugin gebruik makende OS/2 en ECS gebruikers met Windows Vista verbinden kunnen. En omgekeerd kan Windows Vista met OS/2 en eCS verbinden via de samba server port van Paul Smedley.

Maar de OS/2 implementatie van de onder Linux prima werkende multi-user samba server kent onder het single-user systeem OS/2 (eCS) fundamentele gebreken. Gewoon omdat de samba code voor een Unix-achtig multi-user besturingssysteem geschreven is. Om die reden kunnen Windows gebruikers nog niet van de open source samba technologie gebruik maken. OS/2 en eCS gebruikers kunnen daarentegen profiteren van Holger Feiths Emulate Unix (EMX) onder OS/2 API.



Server Message Block Protocol

> Top <

Standaard maakt Windows Vista gebruik van Microsofts SMB over TCP protocol dat over TCP poort 445 loopt. Maar SMB over TCP maakt evenals het door oudere Windows versies gebruikte NetBIOS ethernet protocol en NetBIOS via TCP/IP gebruik van de principes van het door Barry Feigenbaum (IBM) ontwikkelde Server Message control Block protocol uit 1983.

In de eerste PC DOS versies werd het SMB netwerk protocol door het BIOS van de door IBM ingehuurde Sytek netwerkkaarten uitgevoerd. Dus door speciale netwerkkaarten. Later kwamen er NetBIOS stuurbestanden van IBM en Microsoft die de SMB functies op andere netwerkkaarten konden uitvoeren. Voor de Network Driver Interface Specification (NDIS) ontworpen Windows en OS/2 NetBIOS via TCP/IP stuurbestanden zorgden er ook voor dat het oorspronkelijke Netwerk BIOS functies over IP en IPX routers kon lopen. Door deze inkapseling van het NETBIOS breidde het bereik van het netwerk zich uit van LAN naar WAN. Maar ook tot de hackers op het internet omdat Microsoft zo dom was in Windows 9x standaard NetBIOS via TCP/IP niet alleen op de ethernetkaarten , maar ook op de dial-up connecties (modems) te activeren.

Voor meer griezelige details zie: lan03ecs_in_smb_networks.pdf .

SMB over TCP is Microsofts implementatie van het Server Message control Block protocol dat rechtsreeks over TCP/IP loopt. Het maakt geen gebruik van UDP en de NetBIOS API. SMB over TCP werd in Windows 2000 Professional geïntroduceerd. Windows 2000 en XP gebruiken versie 1 hiervan. Windows Vista maakt gebruik van een aangepaste versie SMB 2, maar kan ook terugschakelen naar de door Windows 200 en XP gebruikte versie 1.

NetBIOS via TCP/IP inschakelen op Windows Vista

> Top <

Het instellen van NetBIOS via TCP/IP gaat onder Windows Vista op dezelfde manier als onder Windows XP (Zie: Netwerk instellen). Maar in het Netwerkcentrum van Windows Vista is het wel even zoeken voordat u bij uw LAN-verbinding (netwerkkaart) aangekomen bent. Met het typen van ncpa.cpl gaat het wel wat sneller. Maar kom daar maar eens op.

Log in als beheerder

Start / Netwerk / Netwerkcentrum / Netwerkverbindingen beheren (onder Taken)

Rechts klikken op LAN-verbinding

Kies Eigenschappen

Selecteer Internet Protocol versie 4 (TCP/IPv4)

Kies Eigenschappen

Klik op Geavanceerd op de Tab Algemeen.

Selecteer de TAB WINS van het tabblad Geavanceerde TCP/IP instellingen

Vink NetBIOS via TCP/IP inschakelen aan.

Toets OK

Daarna gaf nmap onder Linux aan dat de volgende TCP poorten onder Vista open stonden:

Starting Nmap 4.60 ( http://nmap.org ) at 2008-11-24 19:27 CET
Interesting ports on vista64.thuis (192.168.123.25):
Not shown: 1711 closed ports
PORT STATE SERVICE
135/tcp open msrpc
139/tcp open netbios-ssn
445/tcp open microsoft-ds
554/tcp open rtsp

TCP poort 554 wordt onder Vista gebruikt als een streaming service. Er stonden geen UDP poorten open.

OS/2 kon de via NetBIOS via TCP/IP de Windows Vista server wel zien, maar kon er niet mee verbinden.

[F:\]net view
Naam server    Opmerking
________________________________________________
\\DESKPRO
\\LAPTOP
\\MULTIBOOT
\\VISTA64
\\ZOLDER               SAMBA 3.2.3-0.1-1882-SUSE-SL11.0 AT ZOLDER
De opdracht is uitgevoerd.

[F:\]net view \\vista64
NET3502: OS/2-fout 5 is opgetreden.
SYS0005: Toegang geweigerd


De weigering trad op ondanks het feit dat de gebruikersnamen en wachtwoorden onder OS/2 en Windows dezelfde waren.

Wel verbinding, maar geen toegang

> Top <

Meestal betekent dit dat er verschillende Lanman-authenticatie protocollen gebruikt worden. Bijvoorbeeld protocolen die gebruik maken van een andere wachtwoordversleuteling. Dit vereist enige uitleg en er is geen betere plek om SMB te begrijpen dan in de uitgebreide (want open source) samba documentatie.


In de regel lossen de met elkaar communicerende besturingssystemen dit welwillend met elkaar op door naar een door beiden wel begrepen ouder protocol over te stappen. Eventueel zou dit zo ver kunnen gaan dat beide besturingssystemen platte tekstwachtwoorden met elkaar uitwisselden.

Op een van het internet afgeschermd OS/2 netwerk zin onveilig versleutelde wachtwoorden natuurlijk geen bezwaar, maar op een door vreemden (Windows malware of draadloos) afgetapt netwerk is dat natuurijk een ramp. Op een door malware en dus ook door keyloggers geinfecteerd Windows netwerk - meestal gaat het de hackers dan niet om uw wachtwoord maar om uw credit card nummer - maakt versleuteling ook niet zoveel uit: Ze kunnen immers toch al op uw toetsenbord meekijken.

Welke SMB authentificatie protocollen zijn er eigenlijk? In feite heel veel. Zie: Just what is SMB? van Richard Sharpe. Maar in de praktijk gaat het om laatste drie protocollen waarbij de actuele Windows NTLM versie 2 door Sharpe en de Wikepedia NT LM 0.12 wordt genoemd. Microsoft promoveerde deze NT LM 0.12 oefenversie later tot NTLM versie 2. Het werkt immers onder recente Windows versies.

  1. Het door OS/2 (1988), OS/2 Lan Manager, Windows NT (1993), Windows 3.11 (1994), samba, Windows 9x/ME, 2000 en XP ondersteunde LAN Manager 2.1 protocol.

  2. Het door Windows NT, 2000 en XP en samba ondersteunde NTLM versie 1 protocol. Maar OS/2 en Windows 9x/ME clients konden ook via het minder veilige LAN Manager 2.1 protocol of nog oudere versies inloggen.

  3. Het door Windows NT SP 4 (1998), Windows 2000, XP en Windows Vista gebruikte NTLM versie 2 protocol (NT LM 0.12) . Samba kan het al jaren emuleren. En voor Windows 9x en ME clients zijn daarna updates beschikbaar gesteld, zodat ze ook met de door Microsoft aanbevolen exclusief van NTLM 2 Microsoft servers (hier was geen samba bedoeld) kunnen verbinden. En wel het liefst met een Lan Manager Compatibility Level instelling zodat ze het alleen maar met de laatste NTLM versie 2 van Microsoft willen spreken.

De mate van de door u gewenste protocol ondersteuning ( incl. wachtwoordversleuteling) kunt u in het Windows register instellen. Zo bestaat er een register key (REG_DWORD) in Windows Vista die standaard op 3 staat, maar naar 0, 1 of 2 omgezet kan worden:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\LMCompatibilityLevel

Het beschrijft het SMB authentificatie gedrag van Windows Vista servers en clients wanneer ze met andere SMB servers en clients op NetBIOS via TCP/IP poort 139 of SMB via TCP poort 445 samenwerken. Microsofts Technet (LmCompatibilityLevel) schrijft er het volgende over:

0

Clients use LM and NTLM authentication, but they never use NTLMv2 session security. Domain controllers accept LM, NTLM, and NTLMv2 authentication.

1

Clients use LM and NTLM authentication, and they use NTLMv2 session security if the server supports it. Domain controllers accept LM, NTLM, and NTLMv2 authentication.

2

Clients use only NTLM authentication, and they use NTLMv2 session security if the server supports it. Domain controller accepts LM, NTLM, and NTLMv2 authentication.

3

Clients use only NTLMv2 authentication, and they use NTLMv2 session security if the server supports it. Domain controllers accept LM, NTLM, and NTLMv2 authentication.

4

Clients use only NTLMv2 authentication, and they use NTLMv2 session security if the server supports it. Domain controller refuses LM authentication responses, but it accepts NTLM and NTLMv2.

5

Clients use only NTLMv2 authentication, and they use NTLMv2 session security if the server supports it. Domain controller refuses LM and NTLM authentication responses, but it accepts NTLMv2.

Met de LmCompatibilityLevel standaardwaarde van 3 zouden domein controllers (de plaatsen waar je moet inloggen) alle soorten wachtwoorden accepteren. Zou dit niet het geval zijn, dan konden Windows 9x en OS/2 computers niet inloggen op het Windows, Samba of OS/2 Warp server domein.

Maar Windows Vista clients zullen standaard (3) alleen de niet door OS/2 en Windows 9x NTLMv2 authenticatie methode gebruken. En dus zullen ze nooit met OS/2 werkgroepleden kunnen verbinden. Als Windows Vista de bestanden van en OS/2 werkgroeplid wil gebruiken, dan zal hij na een mislukte NTLMv2 SMB via TCP aanmelding via poort 445, terug moeten schakelen op het LanManager 2 protocol van OS/2's NetBIOS via TCP/IP op poort 139. Maar dat doet Windows Vista niet. Het stelt desgewenst wel zijn poort 139 beschikbaar voor Windows 9x clients, maar gebruikt daar alleen maar het

Een andere LSA waarde die in XP anders staat dan in Vista is NoLmHash: deze kunt u voor OS/2 van 1 in 0 veranderen.



Meer lezen

> Top <



How to enable NTLM 2 authentication (Q239869) : Microsoft legt uit hoe je de veiligheid van het Windows netwerk verhoogd door het NT LanManager versie 2 authentificatie protocol van Windows NT Service Pack 4 te gebruiken.

Historically, Windows NT supports two variants of challenge/response authentication for network logons:
* LAN Manager (LM) challenge/response
* Windows NT challenge/response (also known as NTLM version 1 challenge/response)
The LM variant allows interoperability with the installed base of Windows 95, Windows 98, and Windows 98 Second Edition clients and servers. NTLM provides improved security for connections between Windows NT clients and servers. Windows NT also supports the NTLM session security mechanism that provides for message confidentiality (encryption) and integrity (signing).
Recent improvements in computer hardware and software algorithms have made these protocols vulnerable to widely published attacks for obtaining user passwords. In its ongoing efforts to deliver more secure products to its customers, Microsoft has developed an enhancement, called NTLM version 2, that significantly improves both the authentication and session security mechanisms. NTLM 2 has been available for Windows NT 4.0 since Service Pack 4 (SP4) was released, and it is supported natively in Windows 2000. You can add NTLM 2 support to Windows 98 by installing the Active Directory Client Extensions.
After you upgrade all computers that are based on Windows 95, Windows 98, Windows 98 Second Edition, and Windows NT 4.0, you can greatly improve your organization's security by configuring clients, servers, and domain controllers to use only NTLM 2 (not LM or NTLM).

Dat laatste klopt, maar het betekende wel dat de veel veiligere OS/2 en samba servers in de problemen kwamen. Want ze beheersten het closed source NTLM 2 protocol van Microsoft niet. Deze verbetering was niet alleen bedoeld om Windows netwerken te beschermen, maar ook bedoeld om bedrijven te stimuleren om hun Windows clients en OS/2 LanManager servers op te waarderen. Want het heeft jaren geduurd voordat een NTLM2 protocol voor Windows 95 uitkwam.

Het stuk eindigt met:

Aplpies to:
* Microsoft Windows 2000 Advanced Server
* Microsoft Windows NT 4.0 Service Pack 4
* Microsoft Windows NT 4.0 Service Pack 5
* Microsoft Windows 98 Second Edition
* Microsoft Windows 98 Standard Edition
* Microsoft Windows 95

Windows Vista ontbreekt, want het volgens Microsoft veel veiligere Windows Vista gebruikt standaard alleen maar de NTLM 2 authentificatie.

LMCompatibilityLevel and Its Effects

LmCompatibilityLevel

NTLM - Wikipedia

LM hash - Wikipedia