Захист файлів Windows працює за рахунок реєстрації повідомленні про зміну файлів в програмі входу в систему. Якщо виявлені які-небудь зміни захищених системних файлів. то відновлюється їх початкова версія з стислій папки% WinDir% \ System32 \ dllcache. Захист ресурсів Windows встановлює DACL і ACL для захищених ресурсів. Права для повного доступу до них належать сервісу установки модулів Windows TrustedInstaller.exe. Адміністратори більше не можуть змінювати системні файли.
У зв'язку з проблемами з додатками Windows. здатними перезаписувати системні файли Windows 95. Microsoft створила кілька заходів безпеки для захисту системних файлів від атак зловмисників, пошкоджень або таких проблем як DLL hell.
Перевірка системних файлів вперше з'явилася в Windows 98 як утиліта з GUI. Вона пропонувала сканування і відновлення пошкоджених системних файлів, шляхом зіставлення поточних версій містяться в базі даних початковим версіями файлів. Цей метод захисту був базовим. Він визначав системні файли з розширення та місця перебування. Можна було відновити файли з установочного диска або з місця, зазначеного користувачем. Windows 98 не пропонувала ніяких методів постійного захисту, крім атрибутів файлів; з цієї причини не було доступно будь-яких профілактичних заходів.
На додаток програма перевірки системних файлів (sfc.exe) була перевизначена як більш потужна утиліта командного рядка. інтегрована з захистом файлів Windows. На відміну від SFC в Windows 98, вона сканує захищені системні файли, використовуючи захист файлів Windows і дозволяє автоматично відновлювати їх з папки DLLCache або з інсталяційного диска.
SFC не було в Windows ME. [2] замість неї використовувалася захист системних файлів. Вона, як і захист файлів Windows забезпечувала постійний захист.
В операційних системах сімейства Windows NT. перевірка системних файлів може бути запущена через командний рядок. виконанням наступної команди:
При знаходженні проблеми буде виконана спроба замінити проблематичний файл файлом з кешу DLL (% WinDir% \ System32 \ Dllcache \). Якщо там немає потрібного файлу або кеш DLL пошкоджений, то користувачеві буде запропоновано вставити інсталяційний диск Windows або вказати шлях до файлу. Перевірка системних файлів визначає вихідний шлях установки Windows за значеннями реєстру SourcePath and ServicePackSourcePath. [4] Для цього може знадобитися інсталяційний диск. [5]
З Windows Vista файли захищені ACL. але незважаючи на це, команда не змінила свого значення.
Починаючи з Windows Vista. перевірка системних файлів може сканувати конкретні файли. Також, сканування може бути здійснено в іншій папці установки Windows для заміни пошкоджених файлів (в разі, якщо Windows не завантажується). Щоб запустити таке сканування, слід виконати засіб перевірки системних файлів з іншого робочої установки Windows Vista і більш пізніх версій або з DVD-диска установки Windows, звідки можна отримати доступ до середовища відновлення Windows.
У разі, коли сховище компонента пошкоджено, в Windows Vista і 7 можна встановити інструмент CheckSUR, який перевіряє сховище і відновлює виявлені пошкодження. З Windows 8 функціонал CheckSUR вбудований в DISM.