Кіріспе
Пайдаланушылардың парольдерін сақтайтын Windows дерекқоры. Қауіпсіздік есептік менеджері (SAM) – Windows XP, Windows Vista, Windows 7, 8.1, 10 және 11 жүйелерінде пайдаланушылардың парольдерін сақтайтын деректер қоры файлы. Ол жергілікті және қашықтағы пайдаланушыларды куәландыру үшін пайдаланылады. Windows 2000 SP4 нұсқасынан бастап, Active Directory қашықтағы пайдаланушыларды куәландырады. SAM криптографиялық шараларды қолданады, бұл куәландырылмаған пайдаланушылардың жүйеге кіруіне жол бермейді. Пайдаланушы парольдері LM хэші немесе NTLM хэші түрінде реестрлік ұяда хэштелген күйде сақталады. Бұл файл %SystemRoot%/system32/config/SAM мекенжайында орналасқан және HKLM/SAM арқылы орнатылған. Оны қарау үшін SYSTEM құқықтары қажет. SAM дерекқорының офлайн бағдарламалық қамтамасыз етумен бұзуға қарсы қауіпсіздігін арттыру мақсатында Microsoft Windows NT 4.0 жүйесінде SYSKEY функциясын енгізді. SYSKEY қосылғанда, SAM файлының дискідегі көшірмесі ішінара шифрланады, сондықтан SAM-де сақталған барлық жергілікті тіркелгіштердің парольдік хэш мәндері кілтпен шифрланады (әдетте «SYSKEY» деп те аталады). Оны syskey бағдарламасын іске қосу арқылы қосуға болады. Windows 10 нұсқасы 1709-дан бастап, нашар қауіпсіздік және зиянды тұлғалардың жүйелерден пайдаланушыларды құлыптау үшін теріс пайдалануының салдарынан syskey алынып тасталды.
The Security Account Manager (SAM) is a database file in Windows XP, Windows Vista, Windows 7, 8.1, 10 and 11 that stores users' passwords. It can be used to authenticate local and remote users. Beginning with Windows 2000 SP4, Active Directory authenticates remote users. SAM uses cryptographic measures to prevent unauthenticated users accessing the system. The user passwords are stored in a hashed format in a registry hive either as an LM hash or as an NTLM hash. This file can be found in %SystemRoot%/system32/config/SAM and is mounted on HKLM/SAM and SYSTEM privileges are required to view it. In an attempt to improve the security of the SAM database against offline software cracking, Microsoft introduced the SYSKEY function in Windows NT 4.0. When SYSKEY is enabled, the on disk copy of the SAM file is partially encrypted, so that the password hash values for all local accounts stored in the SAM are encrypted with a key (usually also referred to as the "SYSKEY"). It can be enabled by running the syskey program. As of Windows 10 version 1709, syskey was removed due to a combination of insecure security and misuse by bad actors to lock users out of systems.
Криптоанализ
2012 жылы NTLM парольдерінің барлық мүмкін 8 таңбалы хэш-пермутациясын 6 сағаттан кем уақытта бұзуға болатыны көрсетілді. 2019 жылы жаңа технологиялық жабдықтарды пайдалану арқасында бұл уақыт шамамен 2,5 сағатқа дейін азайтылды. Онлайн шабуылдар кезінде SAM файлын басқа жерге көшіру мүмкін емес. Windows жұмыс істеп тұрғанда SAM файлын жылжытуға немесе көшіруге болмайды, себебі Windows ядросы SAM файлына эксклюзивті файлдық құлып қойып, операциялық жүйе тоқтағанға дейін немесе «Көк өлім экраны» қатесі пайда болғанға дейін оны босатпайды. Дегенмен, SAM файлының мазмұнының жадтағы көшірмесін түрлі әдістер (pwdump сияқты) арқылы алуға болады, бұл пароль хэштерін офлайн күшпен бұзу шабуылы үшін қолжетімді етеді.
LM хэшін жою
LM хэші - бұзылған протокол және NTLM хэшімен алмастырылды. Windows-тың көптеген нұсқаларында пайдаланушы паролін өзгертетін кезде жарамды LM хэштерін жасау мен сақтауды өшіруге болады. Windows Vista және одан кейінгі Windows нұсқалары LM хэшін әдепкі бойынша өшіреді. Ескерту: бұл параметрді қосу SAM-нан LM хэшін бірден жоймайды, керісінше парольді өзгерту операциялары кезінде қосымша тексеруді қосады, ол LM хэші сақталатын SAM дерекқорында "бос" мәнді сақтайды. (Бұл бос мән пайдаланушының паролімен ешқандай қатысы жоқ, ол барлық пайдаланушы тіркелгілері үшін қолданылатын бірдей мән.)
Байланысты шабуылдар
Windows NT 3.51, NT 4.0 және 2000 жүйелерінде жергілікті аутентификация жүйесін айналып өтуге арналған шабуыл жасалды. Егер SAM файлы қатты дискінен жойылса (мысалы, Windows операциялық жүйесінің томын басқа операциялық жүйеге орнату арқылы), шабуылшы паролі жоқ кез келген тіркелгі ретінде кіре алады. Бұл кемшілік Windows XP-де түзетілді, ол қате туралы хабарламаны көрсетіп, компьютерді өшіреді. Дегенмен, эмуляцияланған виртуалды дискті немесе жүктеу дискісін (әдетте Unix/Linux немесе Windows Preinstallation Environment сияқты Windows-тың басқа нұсқасы) пайдаланып, белсенді NTFS бөлімін қамтитын жергілікті дискіні орнату және бағдарламалық тәсілдер мен тағайындалған жад стегінен функцияларды шақыру арқылы SAM файлын Windows NT жүйесінің орнату каталогынан (әдепкі: %SystemRoot%/system32/config/SAM) оқшаулайтын бағдарламалық құралдар бар. Содан кейін, қолданылатын бағдарламалық құралға байланысты, пайдаланушы тіркелгілері үшін сақталған парольдің хэштерін толығымен жояды немесе кейбір жағдайларда осы ортадан тікелей пайдаланушы тіркелгі парольдерін өзгертеді. Бұл бағдарламалық жасақтама Windows тіркелгі парольдерін жоғалтқан немесе ұмытқан адамдар үшін парольді тазалау немесе тіркелгіні қалпына келтіру құралы ретінде өте тиімді және пайдалы, сонымен қатар қауіпті бағдарламалық қамтамасыз етуді айналып өту құралы ретінде де қолданылуы мүмкін. Яғни, Windows NT ядросының қауіпсіздік шараларымен және бұзу құралдарымен жеткілікті тәжірибесі және білімі бар, сондай-ақ нысаналық компьютерге офлайн және тікелей қол жеткізімі бар пайдаланушыға нысаналық компьютерден Windows тіркелгі парольдерін толығымен айналып өтуге немесе жоюға мүмкіндік береді. Жақында ғана Microsoft LockSmith деп аталатын, MSDart құрамына кіретін құралды шығарды. Алайда, MSDart соңғы пайдаланушыларға тегін қолжетімді емес. 2021 жылдың шілдесінде Windows 10 және Windows 11 жүйелерінде SAM файлын қоса алғанда, құпия тіркелім деректер базасына кіруге мүмкіндік беретін осалдық бар екені анықталды.