LAN-hanterare

LAN-hanterare
Utvecklaren Microsoft , 3Com
OS-familjen OS/2
Källa stängd
Första upplagan 1987  ( 1987 )
senaste versionen 2.2a (1994 ) ( 1994 )
Plattformar som stöds x86
Licens Proprietär
stat upphört
Tidigare MS-Net , Xenix-NET, 3+Share

LAN Manager  är ett nätverksoperativsystem utvecklat av Microsoft i samarbete med 3Com Corporation . Den designades för att ersätta 3Coms 3+Share nätverksserverprogramvara, som kördes på en kraftigt modifierad version av MS-DOS .

Historik

LAN Manager baserades på operativsystemet OS/2 , utvecklat gemensamt av IBM och Microsoft . Det använde ursprungligen Server Message Block- protokollet över NetBIOS Frames (NBF)-protokollet eller en specialiserad version av Xerox Network Services -protokollet (XNS). Dessa äldre protokoll ärvdes från tidigare produkter som MS-Net för MS-DOS , Xenix-NET för MS-Xenix och den tidigare nämnda 3+Share. En Unix-version av LAN Manager fanns också tillgänglig som heter LAN Manager/X.

1990 tillkännagav Microsoft LAN Manager 2.0 med många förbättringar, inklusive stöd för TCP/IP som transportprotokoll. Den senaste versionen av LAN Manager 2.2, som inkluderade basoperativsystemet MS-OS/2 1.31, förblev Microsofts serveroperativsystem fram till lanseringen av Windows NT Advanced Server 1993.

Versioner

Många leverantörer har tillhandahållit licensierade versioner, inklusive:

Säkerhetssystem

LAN Manager (LM)-autentisering är ett protokoll som används för att autentisera Windows-klienter för nätverksoperationer, inklusive domänanslutningar, åtkomst till nätverksresurser och användar- eller datorautentisering. LM-autentiseringsnivån bestämmer vilken begäran/svar protokollet förhandlar mellan klienten och servern. Värdet som anges för parametern LmCompatibilityLevel avgör vilket autentiseringsprotokoll som kommer att användas vid inloggning på nätverket. Detta värde påverkar nivån på autentiseringsprotokoll som används av klienter, nivån på sessionssäkerhet som förhandlas fram och nivån på autentisering som accepteras av servrar. Möjliga alternativ:

Menande Parameter
0 Skicka svar från Lan Manager
ett Skicka Lan Manager - använd NTLMv2-sessionssäkerhet när du förhandlar
2 Skicka endast NTLM-svar
3 Skicka endast NTLMv2-svar
fyra Skicka endast NTLMv2-svar, avvisa LM
5 Skicka endast NTLMv2-svar, avvisa LM och NTLM

Kryptanalys

LAN Manager - autentisering använder en svag hash- metod för användarlösenord , känd som LM-hashalgoritmen, som uppstod i mitten av 1980-talet när virus blev huvudproblemet, snarare än högfrekventa nätverksattacker med loopback. Detta gör att sådana hash kan knäckas på några sekunder med regnbågsbord, eller timmar med brute force . Dess användning i Windows NT har ersatts av NTLM , av vilka äldre versioner fortfarande är sårbara för regnbågstabeller men mindre sårbara för brute-force-attacker. NTLM används för att logga in med lokala konton eftersom Windows Vista och senare inte längre stöder LM-hash som standard. Kerberos används i Active Directory-miljöer .

De största nackdelarna med LAN Manager-autentiseringsprotokollet är:

  1. Alla lösenord konverteras till versaler innan hashgenerering. Därför kommer lösenord som lösenord, Lösenord, Lösenord, Lösenord och andra liknande kombinationer att konverteras till versaler, d.v.s. LÖSENORD. Lösenordstecken är också begränsade till en delmängd på 95 tecken i 256-byte ASCII-teckenuppsättningen.
  2. Lösenordslängden är begränsad till 14 tecken.
  3. Ett lösenord på 14 tecken delas upp i 7 + 7 tecken, varefter hashen beräknas för de två halvorna separat. Denna metod för att beräkna hashen underlättar hackningen avsevärt, eftersom angriparen måste försöka 7 tecken två gånger istället för 14. Styrkan hos ett 14-siffrigt lösenord är allt , vilket är mycket mindre än den teoretiska styrkan hos ett 14-siffrigt lösenord .
  4. Om lösenordet inte består av mer än 7 tecken, kommer den andra hälften av hashen alltid att visa samma konstanta värde (0xAAD3B435B51404EE).
  5. Hashvärdet skickas till nätverksservrar utan salt , vilket gör det sårbart för man-in-the-midten- attacker och gör det också möjligt att skapa regnbågstabeller.

LM hash detaljer

LM-hash (även känd som LanMan-hash eller LAN Manager-hash) är en lösenords-hashfunktion som används i versioner av Microsoft LAN Manager och Microsoft Windows för att lagra användarlösenord före Windows NT. Stödet för det äldre LAN Manager-protokollet fortsatte i senare versioner av Windows för bakåtkompatibilitet, men Microsoft rekommenderade att administratörer inaktiverar protokollet; i Windows Vista är protokollet inaktiverat som standard.

Algoritm

LM-hash beräknas enligt följande: [1] [2]

  1. Längden på användarlösenordet är begränsad till 14 tecken. Om lösenordet är längre än 14 tecken kan hashen inte beräknas.
  2. Lösenordet konverteras till versaler.
  3. Lösenordet är kodat i OEM -kodtabellssystemet . [3]
  4. Lösenordet är vadderat med nollor upp till 14 byte. [fyra]
  5. Lösenordet är uppdelat i två delar om 7 byte.
  6. Dessa värden används för att skapa två DES -nycklar , en från varje 7-byte-halva. 7 byte omvandlas till en ström av bitar och en nolla infogas efter var 7:e bit. Detta skapar de 64 bitar som krävs för en DES-nyckel.
  7. Var och en av dessa nycklar används för att DES-kryptera ASCII - strängen " KGS!@#$%", vilket resulterar i två 8-byte krypterade värden. DES CipherMode måste ställas in på ECB och PaddingMode måste ställas in på NONE.
  8. Dessa två chiffertextvärden kombineras för att bilda ett 16-byte-värde, vilket är LM-hash.

Säkerhetssårbarheter

Även om LM-hash är baserad på kvalitativ DES -blockchiffer , är det inte en enkelriktad funktion , eftersom lösenordet kan bestämmas utifrån hashen på grund av flera brister i dess design: [5] För det första kan lösenord inte innehålla mer än 14 tecken, vilket ger det teoretiska maximala antalet lösenord .

För det andra är lösenord längre än 7 tecken uppdelade i två delar, och varje del hashas separat. Denna brist gör att varje halva av lösenordet kan attackeras separat, vilket minskar antalet lösenord som krävs för brute force till . Dessutom ändras alla gemener i lösenordet till versaler innan lösenordet hashas, ​​vilket ytterligare minskar lösenordsutrymmet till .

Dessutom använder en LM-hash inte ett kryptografiskt salt , en standardmetod för att förhindra ordboksuppräkning . Därför är attacker som regnbågsbord möjliga på den . Alla lösenord som är kortare än 8 tecken kommer också att resultera i att 7 nollbyte hashas, ​​vilket resulterar i ett konstant värde på 0xAAD3B435B51404EE, vilket gör att korta lösenord kan identifieras visuellt. 2003 publicerades Ophcrack  , en attack baserad på regnbågstabeller. Den utnyttjar alla sårbarheter i LM-kryptering och inkluderar en databas som är tillräckligt stor för att knäcka nästan alla LM-hashar med taltecken på några sekunder. Många crackingverktyg som RainbowCrack , L0phtCrack och Cain inkluderar nu också sådana attacker, vilket gör cracking LM-hashar trivialt.

Lösningar

För att åtgärda säkerhetsbrister introducerade Microsoft NTLMv 1-protokollet 1993. För hashning använder NTLM Unicode- stöd och ersätter det LMhash=DESeach(DOSCHARSET(UPPERCASE(password)), "KGS!@#$%")med , vilket inte kräver någon utfyllnad eller trunkering för att förenkla nyckeln. Å andra sidan har Windows-datorer under många år konfigurerats som standard för att skicka och ta emot svar som erhållits från både LM-hash och NTLM-hash, så att använda NTLM-hash gav inte ytterligare säkerhet, medan mer den svaga hashen fortfarande fanns kvar. NThash=MD4(UTF-16-LE(password))

För att öka säkerheten ansågs det vara god praxis att inaktivera LM- och NTLMv1-autentiseringsprotokollen där de inte behövdes. Från och med Windows Vista och Windows Server 2008 inaktiverade Microsoft LM-hash som standard; den här funktionen kan aktiveras för lokala konton genom en säkerhetspolicyinställning. Användare kan också förhindra att en LM-hash genereras för deras lösenord genom att använda ett lösenord som är minst femton tecken långt.

Skäl för fortsatt användning av LM-hash

Det tog lång tid för många äldre SMB- implementeringar att lägga till stöd för de starkare protokoll som skapats av Microsoft för att ersätta LM-hashing eftersom de open source-gemenskaper som stöder dessa bibliotek först var tvungna att omvända de nya protokollen - det tog Samba 5 år att lägga till stöd för NTLMv2 , medan JCIFS tog 10 år.

Tillgänglighet av NTLM-protokoll för att ersätta LM-hashning
produkt Stöd för NTLMv1 Stöd för NTLMv2
Windows NT 3.1 RTM (1993) Stöds inte
Windows NT 3.5 RTM (1994) Stöds inte
Windows NT 3.51 RTM (1995) Stöds inte
Windows NT4 RTM (1996) Service Pack 4 [6] (25 oktober 1998)
Windows 95 Stöds inte Directory Service Client (släppt med Windows 2000 Server, 17 februari 2000)
Windows 98 RTM Directory Service Client (släppt med Windows 2000 Server, 17 februari 2000)
Windows 2000 RTM (17 februari 2000) RTM (17 februari 2000)
Windows ME RTM (14 september 2000) Directory Service Client (släppt med Windows 2000 Server, 17 februari 2000)
Samba ? Version 3.0 [7] (24 september 2003)
JCIFS Stöds inte Version 1.3.0 (25 oktober 2008) [8]
IBM AIX (SMBFS) 5.3 (2004) [9] Stöds inte sedan v7.1 [10]

Se även

Anteckningar

  1. Kapitel 3 - Operativsysteminstallation: LMHash . Microsoft TechNet . Hämtad 12 maj 2015. Arkiverad från originalet 18 maj 2015.
  2. Glass, Eric NTLM Authentication Protocol and Security Support Provider: The LM Response . Hämtad 12 maj 2015. Arkiverad från originalet 18 mars 2012.
  3. Lista över lokaliserade MS-operativsystem (otillgänglig länk) . Microsofts utvecklarnätverk . Hämtad 12 maj 2015. Arkiverad från originalet 18 maj 2015. 
  4. Lösenord för klustertjänstkonto måste vara inställt på 15 eller fler tecken om NoLMHash-policyn är aktiverad . Microsoft (30 oktober 2006). Hämtad 12 maj 2015. Arkiverad från originalet 10 september 2014.
  5. Johansson, Jasper M. Windows-lösenord: Allt du behöver veta . Microsoft (29 juni 2004). Hämtad 12 maj 2015. Arkiverad från originalet 12 januari 2015.
  6. Windows NT 4.0 Service Pack 4 Readme.txt-fil (40-bitars) . Microsoft (25 oktober 1998). Hämtad 12 maj 2015. Arkiverad från originalet 31 december 2014.
  7. Samba-teamet tillkännager den första officiella utgåvan av Samba 3.0 . SAMBA (24 september 2003). Hämtad 12 maj 2015. Arkiverad från originalet 16 december 2014.
  8. Java CIFS-klientbiblioteket . Hämtad 12 maj 2015. Arkiverad från originalet 10 maj 2015.
  9. AIX 5.3 Nätverk och kommunikationshantering: Filsystem för servermeddelandeblock . IBM (15 mars 2010). Hämtad 12 maj 2015. Arkiverad från originalet 18 maj 2015.
  10. AIX 7.1 Nätverk och kommunikationshantering: Filsystem för servermeddelandeblock . IBM (5 december 2011). Hämtad 12 maj 2015. Arkiverad från originalet 18 maj 2015.

Länkar