This is an old revision of the document!
====== Decoding the iSCSI Boot Firmware Table ====== Microsoft has recently raised objections to the publication of information describing the iSCSI Boot Firmware Table (iBFT). They believe that the definition of this table is confidential information, and that anyone who knows how it is constructed can only have obtained such information by signing a non-disclosure agreement. This document exists solely to prove that this belief is false. Without revealing any information about the structure of the iSCSI Boot Firmware Table, we will demonstrate that it is trivial to decode, using tools published by Microsoft for this explicit purpose. ==== Step 1: Obtain the boot-capable Microsoft iSCSI initiator ==== This is available from several sources, including Microsoft themselves. For this demonstration, we chose to purchase a copy of winBoot/i from [[http://www.emboot.com|emBoot]]. Here is the emBoot download page: {{ iscsiboot/emboot-download-page.png?200x150 }} After filling in the web form, we received an e-mail containing a download link, which took us straight to a zip file: {{ iscsiboot/emboot-zipfile.png?200x150 }} The zip file contains an executable named WBI_CLIENT_X86_V1_50_B13.EXE.rename. We copied this file out of the archive and renamed it to WBI_CLIENT_X86_V1_50_B13.EXE, and ran it: {{iscsiboot/emboot-client-setup1.png?200x150 }}{{ iscsiboot/emboot-client-setup2.png?200x150 }}{{ iscsiboot/emboot-client-setup3.png?200x150}}