📄 install.txt
字号:
This distribution includes the source code for the PXE and USB memoryscraper binaries and the pxedump and usbdump host side tools. The scrapersare standalone binary images that are meant to run directly on the targetsystem. The PXE scraper is transferred over the network as part of thetarget's network bootstrap process, while the USB scraper is loaded fromdisk. The pxedump utility runs on a remote system and requests a memorydump from the target using a simple UDP-based protocol. The usbdump utilityis used to recover a raw memory dump from a disk after it's been writtenout by the target.The pxedump and usbdump utilities are simple C programs and can be hostedon any platform with any C compiler and sockets-based networking. Buildingthe scraper binaries is a little more involved, and requires the use of theGNU compiler tools.To build everything in 32-bit mode:% cd bios_pc% makeTo build on MinGW in 32-bit mode:% cd bios_pc% make -f Makefile.mingwFully supported and tested build platforms for the 32-bit scrapers:FreeBSD/ia32: any versionOpenBSD/ia32: any versionNetBSD/ia32: any versionLinux/ia32: any distribution, as long as the C compiler is installedWindows XP/Vista: as long as the Cygwin or MinGW environment and gcc are installedPartially supported platforms:MacOS X: pxedump and usbdump support onlyWhen building the 64-bit versions of the scrapers, you need a version ofGCC and binutils targeted for x64-64 systems. If you build on a nativex86-64 host, then you should be able to use the host C compiler (assumingit's GCC). If not, you need to build a GCC cross compiler. Instructionsfor doing so are provided in the FAQ file.To build everything in 64-bit mode:% make -f Makefile.64At this time, the only host build system which has been tested forthe 64-bit scraper code is FreeBSD, however the same cross compilationsteps should work for other operating systems as well.Capturing a memory dump over the network:You will need two pieces of software to get the scraper loaded into atarget computer: a DHCP server and a TFTP server. Most FreeBSD and Linuxsystems include a TFTP server in their base installations, and a DHCPserver is often also present by default or can be easily added as anoption. (TFTP and DHCP servers are also available for Windows.) The DHCPserver should be configured to hand out leases specifying the filefile path that can be used to access the scraper utility via TFTP.The simplest approach is to use a laptop with an ethernet port. Installand configure the DHCP and TFTP servers, then connect the laptop to thetarget system using a crossover cable. Once this is done, reboot orreset the target computer. (Ideally, you should find a way to reset thesystem without turning off the power, i.e. by forcing a CPU reset.) Youshould try to insure that the BIOS on the target system does not performa destructive memory test when it restarts.When the target system's BIOS starts up, ask it to boot via networkinstead of from disk. Exactly how this is done varies depending on theBIOS implementation. Some systems offer a simple hotkey override ("PressF12 to boot from network") while others may require you to enter theBIOS configuration utility to enable PXE support and specify thenetwork interface as a boot device.In any case, once the target begins its PXE boot sequence, it willbegin searching for a DHCP server. Once it obtains a response from yourlaptop, it should download the scraper binary via TFTP and launch it.The scraper will print some status messages and then wait for a handshakefrom the pxedump utility. Note that the scraper will use the IP addressobtained by PXE from your DHCP server.At this point, you can run the pxedump utility on your laptop systemas follows:% pxedump [IP address of target system] > memorydump.datThe dumper should begin copying the target's memory to disk. This dumpwill include the 640K of lower memory and all extended memory (up to3.5GB). Once the dump completes, the scraper will attempt to power offthe target system using APM. If this fails (i.e. no APM BIOS is present).it will reboot the target instead.Capturing a memory dump on a disk:To use the USB based memory scraper, you need a disk device large enoughto hold a dump from the RAM of your target system. The device can be anythingreally, as long as the target system's BIOS supports it as a boot device.USB mass storage devices are good candidates: these include USB thumb drives,USB SD card and compactflash card readers (with appropriate media attached)and ordinary hard disks in USB disk enclosures.Once you've selected a device, connect it to a host system and dump thescraper binary to it. On UNIX/Linux systems, this can be done with thedd(1) command:# dd if=scraper.bin of=/dev/diskdevNo special formatting of the disk is needed: the disk will now function asa standalone memory capture device. To use it, connect it to the USB port ofa target system, reset it, and then set the system to boot from USB (thismay require changing some settings in the BIOS setup menus). As soon as thetarget boots, it will load the scraper program and begin dumping all availableRAM to to the USB device. Once it completes, it will turn off the system (orreset it if APM power off is not support it).To recover the memory dump, connect the disk to your host system again, anduse the usbdump utility to extract the dump image:# usbdump /dev/diskdev > memorydump.datUsing the USB tools on Windows is complicated somewhat by the fact thatWindows doesn't allow you to directly access raw disk devices in the sameway that UNIX/Linux does. To get around this, you can use a Windows versionof the dd(1) utility, available from here:http://www.chrysocome.net/dd
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -