Wat is het SYS-bestandsformaat?
De extensie .sys duidt op systeembestanden die worden gebruikt in Windows- en MS-DOS-besturingssystemen. Dergelijke bestanden bevatten gegevens over laadbare stuurprogramma's, apparaatinstellingen en andere functies op laag niveau. Zonder .sys-bestanden zou het besturingssysteem niet kunnen functioneren, omdat ze de communicatie mogelijk maken tussen de Windows-kernel, hardwareapparaten en externe randapparatuur.
De extensie beslaat twee verschillende generaties. In het MS-DOS-tijdperk waren .sys-bestanden op tekst gebaseerd of eenvoudige binaire configuratie- en stuurprogrammabeschrijvingen. In modern Windows NT (Windows 2000 en later) is een .sys-bestand een Portable Executable kernel-mode driver binary - hetzelfde MZ/PE-formaat als .exe- en .dll-bestanden, maar direct geladen en uitgevoerd door de Windows-kernel in plaats van door code in de gebruikersmodus.
Typische .sys-bestanden
Het bekendste legacy .sys-bestand is CONFIG.SYS, berucht omdat het alle stuurprogramma-declaraties en configuratie-instellingen bevat die nodig zijn om MS-DOS uit te voeren. Andere .sys-bestanden uit die tijd zijn onder meer:
MSDOS.SYS- Bevat de basiscode van het DOS-systeem, de zogenaamde DOS-kernel.IO.SYS- Bevat standaard DOS-stuurprogramma's en het programma dat verantwoordelijk is voor het starten van DOS; gebruikt in DOS en Windows 9x.KEYBOARD.SYS- Bevat informatie over de toetsenbordindeling.
Modern Windows bevat talloze driver .sys-bestanden, zoals ntfs.sys (NTFS-bestandssysteemstuurprogramma) en tcpip.sys (TCP/IP-netwerkstack).
Locatie van .sys-bestanden
Een groot deel van de .sys-bestanden binnen het systeem is verborgen. Ze zijn meestal te vinden in de hoofdmap van Windows; in Vista en nieuwer bevinden .sys-bestanden zich meestal in C:\Windows\System32\drivers\ en C:\Windows\WinSxS\. Hardwarestuurprogramma's worden ook klaargezet in C:\Windows\System32\DriverStore\FileRepository\.
Aanvullende opmerkingen
- Moderne Windows kernel-mode
.sys-stuurprogramma's draaien op Ring 0 en hebben volledige, onbeperkte toegang tot het systeemgeheugen en de hardware. - Op 64-bits Windows moeten alle kernel-mode stuurprogramma's een geldige digitale handtekening hebben; niet-ondertekende stuurprogramma's worden bij het opstarten geblokkeerd.
.sys-bestanden zijn gevoelig voor virusinfecties en kwaadaardige software - een beschadigd stuurprogramma is een belangrijke oorzaak van Blue Screen of Death (BSOD) crashes..sys-bestanden zijn PE-binaries, geen platte tekst, en kunnen worden geïnspecteerd met tools zoals PE-bear of Resource Hacker. Een bijbehorend.inf-bestand regelt doorgaans de installatie van het stuurprogramma.
Beveiliging & veiligheid
RISICO: MEDIUMDe meeste driver .sys-bestanden zijn legitieme, ondertekende Windows-componenten en zijn veilig - de echte gevaren zijn tweeledig: (1) het verwijderen/bewerken van de verkeerde. Het verwijderen van een driver .sys kan leiden tot opstartfouten of een blauw scherm; laat Windows Update en Apparaatbeheer stuurprogramma's beheren in plaats van de bestanden aan te raken. (2) Kwaadaardige stuurprogramma's: omdat .sys-stuurprogramma's in de kernel draaien, misbruiken rootkits en „BYOVD”-aanvallen (bring-your-own-vulnerable-driver) ondertekende of valse .sys-bestanden voor het diepste niveau van systeemtoegang. Behandel elke niet-ondertekende/onbekende .sys op een vreemde locatie met achterdocht - controleer de digitale handtekening (Eigenschappen > Digitale handtekeningen, of Sigcheck) en scan het. Een echt Windows-stuurprogramma moet ondertekend zijn door Microsoft of een bekende hardwarefabrikant.
Formaatdetails
in een notendop- Gereserveerde systeemdatablobs (pagefile.sys, hiberfil.sys, swapfile.sys) - Grote gereserveerde schijfgebieden die Windows beheert voor virtueel geheugen en de slaapstand - geen programma's en niet te openen.
- Legacy DOS-configuratie/tekstbestanden (CONFIG.SYS, HIMEM.SYS) - Platte tekst MS-DOS opstartscripts en oude real-mode stuurprogramma's die in elke teksteditor kunnen worden geopend.
Programma's die SYS-bestanden openen
Technische details
diepe specificaties| Binair formaat | Portable Executable (PE) kernel-mode driver; identiek containerformaat als .exe- en .dll-bestanden |
| Magic bytes | 4D 5A („MZ”) op offset 0; PE-handtekening 50 45 00 00 op de offset opgeslagen in de MZ-header |
| PE-subsysteem | 1 - IMAGE_SUBSYSTEM_NATIVE; markeert het binaire bestand als een kernel/native driver, niet als een applicatie in gebruikersmodus |
| Executie-privilegieniveau | Ring 0 (kernelmodus); volledige onbeperkte toegang tot hardwareregisters, fysiek geheugen en systeemdatastructuren |
| MIME-type | application/octet-stream |
| Codeondertekening in kernelmodus | Verplicht op 64-bits Windows Vista en later; stuurprogramma's moeten WHQL- of EV-ondertekend zijn; Secure Boot dwingt het ondertekeningsbeleid af bij het opstarten |
| Typische installatielocatie | C:\Windows\System32\drivers\; staging-kopie bewaard in C:\Windows\System32\DriverStore\FileRepository\ |
| Bestandszichtbaarheid | Verborgen systeemkenmerk standaard ingesteld; niet zichtbaar in Verkenner zonder zowel „Verborgen bestanden weergeven” als „Beveiligde besturingssysteembestanden weergeven” in te schakelen |
| Laadmechanisme | Windows Service Control Manager (SCM) bij het opstarten of op aanvraag; boot-start drivers vermeld onder HKLM\SYSTEM\CurrentControlSet\Services in het register |
| MS-DOS legacy-rol | Op tekst gebaseerde of eenvoudige binaire configuratiebeschrijving (CONFIG.SYS, IO.SYS, MSDOS.SYS); dateert van meer dan tien jaar vóór het PE-driverformaat |
| Architectuurvarianten | Afzonderlijke builds vereist voor x86 (32-bits), x86-64 (AMD64) en ARM64; een enkel .sys-bestand is gericht op slechts één architectuur |
| Ontwikkelingsframework voor drivers | WDM (Windows Driver Model) of WDF/KMDF (Windows Driver Frameworks - Kernel-Mode Driver Framework); gecompileerd met de Windows Driver Kit (WDK) |
| Veiligheidsgevoeligheid | Kritiek - een defecte of kwaadaardige kernel-driver kan een Blue Screen of Death (BSOD), gegevenscorruptie of volledige systeemcompromis veroorzaken |
| Ontwikkelaar | Microsoft voor ingebouwde Windows-stuurprogramma's; hardwarefabrikanten leveren aanvullende ondertekende .sys-bestanden via op INF gebaseerde driverpakketten |
| Gerelateerde formaten | .exe en .dll delen de PE-container; .drv is een legacy user-mode driver DLL; .inf biedt installatiemetadata; .vxd was het Win9x virtuele apparaatstuurprogrammaformaat |
| Uitgebracht | 1981 (MS-DOS used .SYS for drivers); modern Windows NT drivers are PE binaries |
| Specificatie | learn.microsoft.com |