fbpx
Wikipedia

Host protected area

The host protected area (HPA) is an area of a hard drive or solid-state drive that is not normally visible to an operating system. It was first introduced in the ATA-4 standard CXV (T13) in 2001.[1]

How it works edit

 
Creation of an HPA. The diagram shows how a host protected area (HPA) is created.
  1. IDENTIFY DEVICE returns the true size of the hard drive. READ NATIVE MAX ADDRESS returns the true size of the hard drive.
  2. SET MAX ADDRESS reduces the reported size of the hard drive. READ NATIVE MAX ADDRESS returns the true size of the hard drive. An HPA has been created.
  3. IDENTIFY DEVICE returns the now fake size of the hard drive. READ NATIVE MAX ADDRESS returns the true size of the hard drive, the HPA is in existence.

The IDE controller has registers that contain data that can be queried using ATA commands. The data returned gives information about the drive attached to the controller. There are three ATA commands involved in creating and using a host protected area. The commands are:

  • IDENTIFY DEVICE
  • SET MAX ADDRESS
  • READ NATIVE MAX ADDRESS

Operating systems use the IDENTIFY DEVICE command to find out the addressable space of a hard drive. The IDENTIFY DEVICE command queries a particular register on the IDE controller to establish the size of a drive.

This register however can be changed using the SET MAX ADDRESS ATA command. If the value in the register is set to less than the actual hard drive size then effectively a host protected area is created. It is protected because the OS will work with only the value in the register that is returned by the IDENTIFY DEVICE command and thus will normally be unable to address the parts of the drive that lie within the HPA.

The HPA is useful only if other software or firmware (e.g. BIOS or UEFI) is able to use it. Software and firmware that are able to use the HPA are referred to as 'HPA aware'. The ATA command that these entities use is called READ NATIVE MAX ADDRESS. This command accesses a register that contains the true size of the hard drive. To use the area, the controlling HPA-aware program changes the value of the register read by IDENTIFY DEVICE to that found in the register read by READ NATIVE MAX ADDRESS. When its operations are complete, the register read by IDENTIFY DEVICE is returned to its original fake value.

Use edit

  • At the time HPA was first implemented on hard-disk firmware, some BIOS had difficulty booting with large hard disks. An initial HPA could then be set (by some jumpers on the hard disk) to limit the number of cylinders to 4095 or 4096 so that the older BIOS would start. It was then the job of the bootloader to reset the HPA so that the operating system would see the full hard-disk storage space.
  • HPA can be used by various booting and diagnostic utilities, normally in conjunction with the BIOS. An example of this implementation is the Phoenix FirstBIOS, which uses Boot Engineering Extension Record (BEER) and Protected Area Run Time Interface Extension Services (PARTIES).[2] Another example is the Gujin installer which can install the bootloader in BEER, naming that pseudo-partition /dev/hda0 or /dev/sdb0; then only cold boots (from power-down) will succeed because warm boots (from Control-Alt-Delete) will not be able to read the HPA.
  • Computer manufacturers may use the area to contain a preloaded OS for install and recovery purposes (instead of providing DVD or CD media).
  • Dell notebooks hide Dell MediaDirect utility in HPA. IBM ThinkPad and LG notebooks hide system restore software in HPA.
  • HPA is also used by various theft recovery and monitoring service vendors. For example, the laptop security firm CompuTrace use the HPA to load software that reports to their servers whenever the machine is booted on a network. HPA is useful to them because even when a stolen laptop has its hard drive formatted the HPA remains untouched.
  • HPA can also be used to store data that is deemed illegal and is thus of interest to government and police computer forensics teams.[3]
  • Some vendor-specific external drive enclosures (e.g. Maxtor, owned by Seagate since 2006) are known to use HPA to limit the capacity of unknown replacement hard drives installed into the enclosure. When this occurs, the drive may appear to be limited in size (e.g. 128 GB), which can look like a BIOS or dynamic drive overlay (DDO) problem. In this case, one must use software utilities (see below) that use READ NATIVE MAX ADDRESS and SET MAX ADDRESS to change the drive's reported size back to its native size, and avoid using the external enclosure again with the affected drive.
  • Some rootkits hide in the HPA to avoid being detected by anti-rootkit and antivirus software.[2]
  • Some NSA exploits use the HPA[4] for application persistence.

Identification and manipulation edit

Identification of HPA on a hard drive can be achieved by a number of tools and methods.

Note that the HPA feature can be hidden by DCO commands (documentation states only if the HPA is not in use), and can be "frozen" (until next power-down of the hard disk) or be password protected.

Identification tools edit

Identification methods edit

The Windows program ATATool can detect an HPA. For instance, to see if the first disk has an HPA use the command:

ATATOOL /INFO \\.\PhysicalDrive0 

Using Linux, there are various ways to detect the existence of an HPA. Recent versions of Linux will print a message when the system is booting if an HPA is detected. For example:

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

The program hdparm (versions 8.0 and above) will detect an HPA on drive sdX when invoked with these parameters:

hdparm -N /dev/sdX 

For versions of hdparm below 8, one can compare the number of sectors output from 'hdparm -I' with the number of sectors reported for the hard drive model's published statistics.

Manipulation methods edit

The Windows program ATATool can be used to create a HPA. For instance, to create a 10GB HPA:

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

The Linux program hdparm (version >= 8.0) will create an HPA when invoked with these parameters: (sdX: target drive, #: number of non-HPA visible sectors)

hdparm -N p# /dev/sdX 

See also edit

References edit

  1. ^ "Host Protected Areas" (PDF). Utica.edu.
  2. ^ a b Blunden, Bill (2009). The rootkit arsenal: escape and evasion in the dark corners of the system. Plano, Texas: Wordware Pub. p. 538. ISBN 978-1-59822-061-2. OCLC 297145864.
  3. ^ Nelson, Bill; Phillips, Amelia; Steuart, Christopher (2010). Guide to computer forensics and investigations (4th ed.). Boston: Course Technology, Cengage Learning. p. 334. ISBN 978-1-435-49883-9.
  4. ^ "SWAP: NSA Exploit of the Day - Schneier on Security".

External links edit

  • The Sleuth Kit
  • International Journal of Digital Evidence
  • Wiki Web For ThinkPad Users

host, protected, area, beer, redirects, here, other, uses, beer, disambiguation, host, protected, area, area, hard, drive, solid, state, drive, that, normally, visible, operating, system, first, introduced, standard, 2001, contents, works, identification, mani. BEER redirects here For other uses see Beer disambiguation The host protected area HPA is an area of a hard drive or solid state drive that is not normally visible to an operating system It was first introduced in the ATA 4 standard CXV T13 in 2001 1 Contents 1 How it works 2 Use 3 Identification and manipulation 3 1 Identification tools 3 2 Identification methods 3 3 Manipulation methods 4 See also 5 References 6 External linksHow it works edit nbsp Creation of an HPA The diagram shows how a host protected area HPA is created IDENTIFY DEVICE returns the true size of the hard drive READ NATIVE MAX ADDRESS returns the true size of the hard drive SET MAX ADDRESS reduces the reported size of the hard drive READ NATIVE MAX ADDRESS returns the true size of the hard drive An HPA has been created IDENTIFY DEVICE returns the now fake size of the hard drive READ NATIVE MAX ADDRESS returns the true size of the hard drive the HPA is in existence The IDE controller has registers that contain data that can be queried using ATA commands The data returned gives information about the drive attached to the controller There are three ATA commands involved in creating and using a host protected area The commands are IDENTIFY DEVICE SET MAX ADDRESS READ NATIVE MAX ADDRESSOperating systems use the IDENTIFY DEVICE command to find out the addressable space of a hard drive The IDENTIFY DEVICE command queries a particular register on the IDE controller to establish the size of a drive This register however can be changed using the SET MAX ADDRESS ATA command If the value in the register is set to less than the actual hard drive size then effectively a host protected area is created It is protected because the OS will work with only the value in the register that is returned by the IDENTIFY DEVICE command and thus will normally be unable to address the parts of the drive that lie within the HPA The HPA is useful only if other software or firmware e g BIOS or UEFI is able to use it Software and firmware that are able to use the HPA are referred to as HPA aware The ATA command that these entities use is called READ NATIVE MAX ADDRESS This command accesses a register that contains the true size of the hard drive To use the area the controlling HPA aware program changes the value of the register read by IDENTIFY DEVICE to that found in the register read by READ NATIVE MAX ADDRESS When its operations are complete the register read by IDENTIFY DEVICE is returned to its original fake value Use editThis section needs additional citations for verification Please help improve this article by adding citations to reliable sources in this section Unsourced material may be challenged and removed November 2016 Learn how and when to remove this template message At the time HPA was first implemented on hard disk firmware some BIOS had difficulty booting with large hard disks An initial HPA could then be set by some jumpers on the hard disk to limit the number of cylinders to 4095 or 4096 so that the older BIOS would start It was then the job of the bootloader to reset the HPA so that the operating system would see the full hard disk storage space HPA can be used by various booting and diagnostic utilities normally in conjunction with the BIOS An example of this implementation is the Phoenix FirstBIOS which uses Boot Engineering Extension Record BEER and Protected Area Run Time Interface Extension Services PARTIES 2 Another example is the Gujin installer which can install the bootloader in BEER naming that pseudo partition dev hda0 or dev sdb0 then only cold boots from power down will succeed because warm boots from Control Alt Delete will not be able to read the HPA Computer manufacturers may use the area to contain a preloaded OS for install and recovery purposes instead of providing DVD or CD media Dell notebooks hide Dell MediaDirect utility in HPA IBM ThinkPad and LG notebooks hide system restore software in HPA HPA is also used by various theft recovery and monitoring service vendors For example the laptop security firm CompuTrace use the HPA to load software that reports to their servers whenever the machine is booted on a network HPA is useful to them because even when a stolen laptop has its hard drive formatted the HPA remains untouched HPA can also be used to store data that is deemed illegal and is thus of interest to government and police computer forensics teams 3 Some vendor specific external drive enclosures e g Maxtor owned by Seagate since 2006 are known to use HPA to limit the capacity of unknown replacement hard drives installed into the enclosure When this occurs the drive may appear to be limited in size e g 128 GB which can look like a BIOS or dynamic drive overlay DDO problem In this case one must use software utilities see below that use READ NATIVE MAX ADDRESS and SET MAX ADDRESS to change the drive s reported size back to its native size and avoid using the external enclosure again with the affected drive Some rootkits hide in the HPA to avoid being detected by anti rootkit and antivirus software 2 Some NSA exploits use the HPA 4 for application persistence Identification and manipulation editIdentification of HPA on a hard drive can be achieved by a number of tools and methods Note that the HPA feature can be hidden by DCO commands documentation states only if the HPA is not in use and can be frozen until next power down of the hard disk or be password protected Identification tools edit ATATool by Data Synergy The Sleuth Kit free open software by Brian Carrier HPA identification is currently Linux only EnCase by Guidance Software Forensic Toolkit by Access DataIdentification methods edit The Windows program ATATool can detect an HPA For instance to see if the first disk has an HPA use the command ATATOOL INFO PhysicalDrive0 Using Linux there are various ways to detect the existence of an HPA Recent versions of Linux will print a message when the system is booting if an HPA is detected For example dmesg less hdb Host Protected Area detected current capacity is 12000 sectors 6 MB native capacity is 120103200 sectors 61492 MB The program hdparm versions 8 0 and above will detect an HPA on drive sdX when invoked with these parameters hdparm N dev sdX For versions of hdparm below 8 one can compare the number of sectors output from hdparm I with the number of sectors reported for the hard drive model s published statistics Manipulation methods edit The Windows program ATATool can be used to create a HPA For instance to create a 10GB HPA ATATOOL NONVOLATILEHPA SETHPA 10GB PhysicalDrive1 The Linux program hdparm version gt 8 0 will create an HPA when invoked with these parameters sdX target drive number of non HPA visible sectors hdparm N p dev sdXSee also editDevice Configuration Overlay DCO GUID Partition Table GPT Master boot record MBR References edit Host Protected Areas PDF Utica edu a b Blunden Bill 2009 The rootkit arsenal escape and evasion in the dark corners of the system Plano Texas Wordware Pub p 538 ISBN 978 1 59822 061 2 OCLC 297145864 Nelson Bill Phillips Amelia Steuart Christopher 2010 Guide to computer forensics and investigations 4th ed Boston Course Technology Cengage Learning p 334 ISBN 978 1 435 49883 9 SWAP NSA Exploit of the Day Schneier on Security External links editThe Sleuth Kit International Journal of Digital Evidence Dublin City University Security amp Forensics wiki Wiki Web For ThinkPad Users Retrieved from https en wikipedia org w index php title Host protected area amp oldid 1085279278 PARTIES, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.