Chráněná oblast hostitele - Host protected area

Hostitele chráněná oblast ( HPA ) je plocha pevného disku nebo solid-state drive , který není normálně viditelné pro operační systém . Poprvé byl představen ve standardu ATA-4 CXV (T13) v roce 2001.

Jak to funguje

Vytvoření HPA. Diagram ukazuje, jak se vytváří chráněná oblast hostitele (HPA).
  1. IDENTIFY DEVICE vrací skutečnou velikost pevného disku. READ NATIVE MAX ADDRESS vrací skutečnou velikost pevného disku.
  2. SET MAX ADDRESS zmenšuje hlášenou velikost pevného disku. READ NATIVE MAX ADDRESS vrací skutečnou velikost pevného disku. Byl vytvořen HPA.
  3. IDENTIFY DEVICE vrací nyní falešnou velikost pevného disku. READ NATIVE MAX ADDRESS vrací skutečnou velikost pevného disku, HPA existuje.

Řadič IDE má registry, které obsahují data, která lze dotazovat pomocí příkazů ATA . Vrácená data poskytují informace o jednotce připojené k řadiči. Na vytváření a používání chráněné oblasti hostitele se podílejí tři příkazy ATA. Příkazy jsou:

  • IDENTIFIKUJTE ZAŘÍZENÍ
  • NASTAVTE MAX. ADRESU
  • PŘEČTĚTE SI NATIVNÍ MAXIMÁLNÍ ADRESU

Operační systémy používají k určení adresovatelného prostoru na pevném disku příkaz IDENTIFY DEVICE. Příkaz IDENTIFY DEVICE dotazuje konkrétní registr na řadiči IDE, aby zjistil velikost jednotky.

Tento registr však lze změnit pomocí příkazu SET MAX ADDRESS ATA. Pokud je hodnota v registru nastavena na menší než skutečnou velikost pevného disku, efektivně se vytvoří chráněná oblast hostitele. Je chráněn, protože OS bude pracovat pouze s hodnotou v registru, která je vrácena příkazem IDENTIFY DEVICE, a proto obvykle nebude schopen adresovat části jednotky, které leží v rámci HPA.

HPA je užitečná pouze v případě, že je schopen používat jiný software nebo firmware (např. BIOS nebo UEFI ). Software a firmware, které mohou používat HPA, se označují jako „HPA aware“. Příkaz ATA, který tyto entity používají, se nazývá READ NATIVE MAX ADDRESS. Tento příkaz přistupuje k registru, který obsahuje skutečnou velikost pevného disku. Chcete-li oblast použít, řídící program s vědomím HPA změní hodnotu registru načteného IDENTIFY DEVICE na hodnotu nalezenou v registru načten READ NATIVE MAX ADDRESS. Po dokončení operací se registr načtený zařízením IDENTIFY DEVICE vrátí na původní falešnou hodnotu.

Použití

  • V době, kdy byla HPA poprvé implementována do firmwaru pevného disku, měl některý BIOS potíže s bootováním z velkých pevných disků. Počáteční HPA by pak bylo možné nastavit (některými propojkami na pevném disku) tak, aby omezil počet válců na 4095 nebo 4096, aby se spustil starší BIOS. Poté bylo úkolem zavaděče resetovat HPA, aby operační systém viděl plný úložný prostor na pevném disku.
  • HPA mohou používat různé zaváděcí a diagnostické nástroje, obvykle ve spojení s BIOSem . Příkladem této implementace je Phoenix FirstBIOS , který používá BOER Engineering Extension Record ( BEER ) a Protected Area Run Time Interface Extension Services ( PARTIES ). Dalším příkladem je instalační program Gujin, který může nainstalovat zavaděč v programu BEER, pojmenovat tento pseudo-partition /dev /hda0 nebo /dev /sdb0; pak budou úspěšné pouze studené boty (z vypnutí), protože teplé boty (z Control-Alt-Delete) nebudou schopny číst HPA.
  • Výrobci počítačů mohou oblast použít k tomu, aby obsahovala předinstalovaný operační systém pro účely instalace a obnovy (namísto poskytování médií DVD nebo CD).
  • Notebooky Dell skrývají nástroj HP MediaDirect v HPA. Notebooky IBM ThinkPad a LG skrývají software pro obnovu systému v HPA.
  • HPA je také používána různými dodavateli služeb pro obnovu po krádeži a monitorování. Například společnost CompuTrace pro zabezpečení notebooků používá HPA k načtení softwaru, který se hlásí na jejich servery, kdykoli je počítač spuštěn v síti. HPA je pro ně užitečná, protože i když má ukradený notebook naformátovaný pevný disk, HPA zůstane nedotčen.
  • HPA lze také použít k ukládání dat, která jsou považována za nezákonná, a proto jsou předmětem zájmu vládních a policejních počítačových forenzních týmů.
  • O některých skříních externích disků specifických pro dodavatele (např. Maxtor, vlastněné společností Seagate od roku 2006) je známo, že používají HPA k omezení kapacity neznámých náhradních pevných disků nainstalovaných do skříně. V takovém případě se může zdát, že jednotka má omezenou velikost (např. 128 GB), což může vypadat jako problém systému BIOS nebo překrytí dynamické jednotky (DDO). V takovém případě musíte použít softwarové nástroje (viz níže), které používají READ NATIVE MAX ADDRESS a SET MAX ADDRESS ke změně velikosti hlášené jednotky zpět na její nativní velikost a vyhněte se opětovnému použití externí skříně s dotčenou jednotkou.
  • Některé rootkity se skrývají v HPA, aby se vyhnuly detekci anti-rootkitovým a antivirovým softwarem.
  • Některé exploity NSA používají HPA pro trvalou aplikaci.

Identifikace a manipulace

Identifikaci HPA na pevném disku lze dosáhnout řadou nástrojů a metod.

Všimněte si toho, že funkce HPA může být skrytá pomocí příkazů DCO (dokumentace uvádí pouze v případě, že HPA není používána) a může být „zmrazena“ (do příštího vypnutí pevného disku) nebo chráněna heslem.

Identifikační nástroje

Metody identifikace

Windows Program ATATool lze detekovat HPA. Chcete -li například zjistit, zda má první disk HPA, použijte příkaz:

ATATOOL /INFO \\.\PhysicalDrive0

V Linuxu existují různé způsoby, jak zjistit existenci HPA. Nedávné verze Linuxu vytisknou při spuštění systému zprávu, pokud je detekován HPA. Například:

dmesg | less
[...]
hdb: Host Protected Area detected.
    current capacity is 12000 sectors (6 MB)
    native  capacity is 120103200 sectors (61492 MB)

Program hdparm (verze 8.0 a vyšší) detekuje HPA na jednotce sdX při vyvolání s těmito parametry:

hdparm -N /dev/sdX

U verzí hdparm pod 8 lze porovnat počet výstupů sektorů z „hdparm -I“ s počtem sektorů hlášených pro publikované statistiky modelu pevného disku.

Manipulační metody

K vytvoření HPA lze použít program Windows ATATool . Chcete -li například vytvořit 10 GB HPA:

ATATOOL /NONVOLATILEHPA /SETHPA:10GB \\.\PhysicalDrive1

Linuxový program hdparm (verze> = 8.0) vytvoří HPA při vyvolání s těmito parametry: (sdX: cílová jednotka, #: počet viditelných sektorů jiných než HPA)

hdparm -N p# /dev/sdX

Viz také

Reference

externí odkazy