home *** CD-ROM | disk | FTP | other *** search
/ Shareware 1 2 the Maxx / sw_1.zip / sw_1 / VIRUS / FIXUTIL3.ZIP / FIXMBR24.DOC < prev    next >
Text File  |  1992-01-27  |  26KB  |  473 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.                                FixMBR v2.4 (gamma)
  7.  
  8.             FixMBR is a combination recovery/integrity management program 
  9.         for  the protection of hard disks. In the case of an Master  Boot 
  10.         Record  infection  FixMBR  may  be used  to  restore  either  the 
  11.         original  Master Boot Record or to rebuild it using  an  original 
  12.         Partition Table taken from either inside the virus or from one of 
  13.         the "hidden" sectors (where most MBR infectors hide them).
  14.  
  15.             According   to   the  latest  (1991)  figures   from   McAfee 
  16.         Associates,  producers  of the popular SCAN, VSHIELD,  and  CLEAN 
  17.         programs,  MBR infecting viruses were the cause of over  half  of 
  18.         all  reported infections. FixMBR is designed to  provide  warning 
  19.         and recovery from such infections.
  20.  
  21.             Additionally, FixMBR also provides for capture/storage of  an 
  22.         off-line   copy  of  the  MBR  sector  that  may  be   used   for 
  23.         reconstruction and capture.
  24.  
  25.             FixMBR  requires no complicated switches and will prompt  for 
  26.         all  necessary information and permissions. Further  FixMBR  will 
  27.         suggest   only legitimate partition tables found in the track   0 
  28.         "hidden" area.
  29.  
  30.             User commands are limited to y(es)/n(o)/q(uit) and  will  be
  31.         requested when appropriate. On  single disk systems  q(uit)  will
  32.         terminate the program. On systems having multiple physical disks,
  33.         q(uit)  will  skip to the next disk. This is useful when the only 
  34.         activity desired is to back-up the original MBR(s).
  35.  
  36.                                  WARNING Message
  37.  
  38.             The only real "caveat"s involve the error checking mechanisms 
  39.         used  by FixMBR. When the program starts, the drive  table(s)  as 
  40.         reported  by  the system is read and these  disk  parameters  are 
  41.         output.  If  the  CMOS (AT class & 386  and  later  machines)  is 
  42.         corrupt due to battery failure or rogue software, the  parameters 
  43.         as reported will probably be different than exist. In this  case, 
  44.         the  program should be q(uit)ed and the CMOS restored to  correct 
  45.         parameters before continuing. 
  46.  
  47.             The other case is if the disk is not completely allocated  to 
  48.         partitions  (rare).  This would occur if FDISK was  not  told  to 
  49.         allocate  all  of  the  disk  to  active,  extended,  or  non-DOS 
  50.         partitions  during the low-level format process. What will  occur 
  51.         is that on partition table display a warning message will appear.
  52.         Should  this  occur, either check the  original  partition  table 
  53.         values to verify entries or look for another table to use  before 
  54.         loading.  In  most  cases  a mismatch  will  indicate  a  corrupt 
  55.         partition table.
  56.  
  57.                                  Other Functions
  58.  
  59.             While  FixMBR  is designed to install the  SafeMBR  code  for 
  60.         detection  of attacks by MBR and partition table viruses,  it  is 
  61.         also designed to allow easy storage and recovery of original  MBR 
  62.         code in the event that the SafeMBR code cannot be used.              
  63.  
  64.                                   Suggested Use
  65.  
  66.             FixMBR   is   best utilized before  infection  or  corruption 
  67.         strikes.   In  this case, run the program, save the original  MBR 
  68.         when  prompted, select the partition table found  in sector  one, 
  69.         and  allow use of the SafeMBR code. It is further suggested  that 
  70.         the saved MBR(s) be copied as .COM file(s) along with the SafeMBR 
  71.         program  to a known clean bootable (restoration) floppy  that  is 
  72.         then write-protected and stored in a safe location. If a  printer 
  73.         is connected, Print-Screen may be used to automatically create  a 
  74.         hard  copy  of  the selected partition table(s)  that  should  be 
  75.         stored with the recovery floppy.
  76.  
  77.                              If an Infection Occurs
  78.  
  79.             In the event of an identified infection (e.g. STONED), simply 
  80.         boot   from the restoration floppy, run FixMBR and  increment  to  
  81.         the sector  in  which the virus stores the real MBR (e.g.  sector  
  82.         7)  then  use  this  to either restore the original MBR  or   use  
  83.         the SafeMBR code.
  84.  
  85.             In the case of an unknown infection, the best bet would be to 
  86.         select   a   partition  table from a sector other   than   sector  
  87.         one 
  88.         following a clean floppy boot.
  89.  
  90.             In  the event that a valid partition table is only  found  in 
  91.         sector   one (e.g. Azusa) then the SafeMBR replacement code  must  
  92.         be   selected  -  again only after a  known  clean  floppy  boot. 
  93.         Alternatively,  the user can use the original MBR stored  offline 
  94.         (see MBR8x.DAT below).
  95.             
  96.             If  used prior to infection, FIXMBR provides for  storage  of 
  97.         the original MBR code offline in separate programs for each disk.
  98.         (physical disks, not partitions). These  programs  will  be named
  99.         MBR80.DAT for the first disk responding, MBR81.DAT for the second
  100.         disk,   etc.   When   renamed with  a   .COM   extension,   these 
  101.         become executable programs that will restore  the  original  MBR.  
  102.  
  103.             It  is very unlikely that a virus will attack the MBR of  any 
  104.         fixed disk other than the first (disk 80) since this is the  only 
  105.         one in which the MBR is executed, however just in case...  FixMBR 
  106.         is designed to operate on ALL physical fixed disks responding  as 
  107.         such and will provide for saving all MBRs found.
  108.  
  109.         WARNING: Since MBR code is generally unique to each PC, execution 
  110.         of these programs  could  cause  serious data loss if executed on 
  111.         a different machine. DO NOT MIX PROGRAMS. If used in a  multiple-
  112.         PC environment, these files should be renamed to identify with  a
  113.         specific machine.
  114.  
  115.         IMPORTANT:  For  FixMBR  to  work properly, it is essential  that 
  116.         any disk caching software (e.g. PC-Kwik) be turned OFF !
  117.  
  118.  
  119.                               Recovery Using FixMBR
  120.  
  121.             Nearly  every  known  MBR infection (with  the  exception  of 
  122.         AZUSA)  will store the original MBR sector in one of  the  hidden 
  123.         sectors  (2-11 on MFM and many "translating" drives, 2-26 on  RLL 
  124.         drives).  For  example, the STONED virus and  its  many  variants 
  125.         store the original MBR in absolute sector 7. Furthermore, so that 
  126.         a  PC  can be booted from a floppy, the partition table  MUST  be 
  127.         found  in absolute sector 1 (see below for a description  of  the 
  128.         MBR and Partition Table). Consequently, every known non-"stealth" 
  129.         virus keep a copy of the P-Table in its own body.
  130.  
  131.  
  132.                          Recovery Using the Original MBR
  133.  
  134.             Since  it  is  often necessary to  boot  "bare"  an  infected 
  135.         machine,  it is recommended that the first step after receipt  of 
  136.         FixMBR be creation of a "recovery" disk.
  137.  
  138.             The  advisability of running FixMBR on a "clean"  system  and 
  139.         saving  the  original MBR to a floppy  cannot  be  overemphasized 
  140.         since  this  is a sure way to recover a system once  failure  has 
  141.         occurred. For this reason more detail is provided.
  142.  
  143.          Step 1: Prepare a bootable  floppy  disk with the same operating
  144.                  system  currently  used. Copy the SYS  program  (may  be 
  145.                  either .COM or .EXE extension) to the disks.
  146.          Step 2: Run FIXMBR  and respond "y" when it asks if you wish  to
  147.                  save the original MBR(s).
  148.          Step 3: With  the  bootable floppy in the A:  drive,  enter  the
  149.                  command: COPY MBR*.DAT A:MBR*.COM
  150.          Step 4: Place   a   write protect tab on the  floppy,  label  it 
  151.                  SafeMBR recovery disk (if you have more than one PC each  
  152.                  should be separately labeled - serious loss could occur 
  153.                  if the  recovery program is executed on a different PC) 
  154.                  & store in a safe place.
  155.  
  156.             Following   infection,  easy  restoration  to  the   original 
  157.         condition (without SafeMBR code) may be accomplished by executing 
  158.         the MBR8x.COM file(s) after booting from the recovery disk.
  159.  
  160.                     Recovery using FixMBR (original MBR code)
  161.  
  162.             If you have elected not to use the SafeMBR code and the  disk 
  163.         becomes  infected, then recovery MAY be possible as follows:  Run 
  164.         FixMBR but reject (n) the first sector and do not save a copy  of 
  165.         the  MBR (unless you or someone else wishes to analyze it  -  the 
  166.         saved  file has the extension .DAT and is harmless unless  either 
  167.         renamed  or otherwise forced to execute. In this case be  careful 
  168.         not to mix it with your recovery file.
  169.  
  170.             If  another  sector  on the first track is found  to  have  a 
  171.         "possible  partition table" either compare it with  the  original 
  172.         hard  copy  (see above) or analyze it using the  Partition  Table 
  173.         description  below.  If  it matches your  disk  then  the  sector 
  174.         probably  also contains the original MBR code. In any  event  you 
  175.         can try it by selecting this sector (y) and rejecting use of  the 
  176.         SafeMBR code (n). If necessary, repeat for other drives.
  177.  
  178.                            Recovery Using SafeMBR Code
  179.  
  180.             In  this  case it is generally "safe" to  use  the  Partition 
  181.         Table found in the first sector - select it (y) and permit use of 
  182.         the  SafeMBR code (y again). In some cases (e.g. AZUSA) this  may 
  183.         be  the  only recovery method other than using the  original  MBR 
  184.         code saved offline that will work.
  185.  
  186.                              The Master Boot Record
  187.  
  188.             When the IBM-PC architecture was expanded to allow the use of  
  189.         hard  disks in 1982, provision was made for the accommodation  of 
  190.         more  than one operating system on each hard  disk.  Accordingly, 
  191.         the  first  FDISK  program permitted up  to  four  partitions  or 
  192.         logical  disks  on  each physical disk.  While  rarely  used  for 
  193.         multiple  operation systems (though systems such as OS/2,  XENIX, 
  194.         CMP/86  have exploited this capability), the most common  use  of 
  195.         partitioning was to allow early DOS versions to accommodate disks 
  196.         larger  than  32  Mbytes - the largest disk  that  DOS  prior  to 
  197.         Compaq/Zenith  3.31 could accommodate without third party help  - 
  198.         by dividing the disk into multiple logical drives.
  199.  
  200.             At  boot time, the BIOS had to be able to recognize not  only 
  201.         that  the disk was divided into partitions, but also needed  some 
  202.         way  to determine which partition contained the operating  system 
  203.         to be loaded.
  204.  
  205.             This  requirement  was satisfied by the Master  Boot  Record. 
  206.         Always  occupying the first physical sector on a disk the MBR  is 
  207.         divided  into two parts: the Partition Table and the Master  Boot 
  208.         Record  Program - a special code segment that is able to  extract 
  209.         the  partition table information and to load the first  stage  of 
  210.         the operating system.
  211.  
  212.             Traditionally,  this is ALL the MBR code was designed to  do, 
  213.         the  assumption  was made that it was operating in  a  valid  and 
  214.         stable environment, consequently no error checking is done beyond 
  215.         a simple "signature" validation.
  216.  
  217.             Since the MBR is very well defined both in both structure and 
  218.         location, it is a target for some of the most successful computer 
  219.         viruses today.
  220.  
  221.  
  222.                               The Partition Table
  223.         
  224.              Note: hexadecimal (base 16) numbers will be indicated by the 
  225.         suffix "h", other numbers are in decimal notation.
  226.         
  227.              The  partition table is a 40h (64) byte area in  the  Master 
  228.         Boot  Record that describes the partitioning of a disk. Each  10h 
  229.         (16) byte line describes a single partition: what it is, how  big 
  230.         it is, and where it is found on the disk. Some of the information 
  231.         is seemingly redundant, but all is used during the boot process.
  232.         
  233.              If  booting  is done from floppy disk, the MBR  sector  (the 
  234.         first on the disk) need only contain the partition table, the MBR 
  235.         code  segment is not necessary. However, if the fixed disk is  to 
  236.         be bootable, then the MBR code segment must be present.
  237.         
  238.              The  partition  table is able to contain a maximum  of  four 
  239.         entries  or logical partitions and versions of MS-DOS (&  PC-DOS) 
  240.         prior  to 3.31 (sometimes called 3.3+) were only able to  address 
  241.         FFFFh  (65535) 512 byte sectors for a maximum partition  size  of 
  242.         33,553,920 bytes commonly referred to as 32 Mb though not exactly 
  243.         this  value.  Since a maximum of four partitions  are  permitted, 
  244.         this gave an effective maximum disk size of 128 Mb, an incredible 
  245.         size  in 1982 when a 10 Mb ST-412 disk cost nearly  $1000.00  and 
  246.         floppies had just gone from 160kb to 360 kb each.
  247.         
  248.              Note: the apparent "loss" of a sector was caused by the 
  249.         fact that the original BIOS did not recognize any disk sector  as 
  250.         "0", sector addressing starts with "1".
  251.         
  252.              Of  course, from the beginning, the partitions  permitted  a 
  253.         doubleword  (four  bytes) for the sector numbers  rather  than  a 
  254.         single word (two bytes) so the partition table was from the first 
  255.         able  to accommodate much gigabyte disks, a size which  began  to  
  256.         be 
  257.         exploited with MS-DOS 3.31. However earlier versions were limited 
  258.         to 32 Mb partitions.
  259.         
  260.              Prior  to  3.31,  a  number  of  manufacturers  had  already 
  261.         provided  proprietary means for handling larger disk sizes.  EDSI 
  262.         disks commonly used 1024 byte sectors permitting 64Mb partitions. 
  263.         Other  manufacturers  used  extended partition  tables  by  daisy 
  264.         chaining  the  tables (each logical partition had its  own  table 
  265.         linking to the next). Still others such as OnTrack's  DiskManager 
  266.         used custom device drivers to break the 32 Mb "barrier". However, 
  267.         Compaq's  introduction of MS-DOS 3.31, a convention also used  by 
  268.         Zenith  and DR-DOS finally allowed larger  partitions.  
  269.         
  270.              Microsoft  used a slightly different means with  MS-DOS  4.x 
  271.         that  still required a custom driver to enable programs  to  used 
  272.         "large"  partitions, a requirement that was  finally  eliminated 
  273.         with  the introduction of DOS 5.0. The only important  factor  to 
  274.         note  is  that all of these used the same basic  partition  table 
  275.         (and   still   do)  with  only  the  addition  of  a   "Type   6"  
  276.         partition 
  277.         indicating a "large" (over 32Mb) partition.
  278.         
  279.              In  any  event,  the partition table is  actually  a  simple 
  280.         construct - once understood the only limitation to reconstruction 
  281.         of  it  is knowledge of exactly how the disk is  partitioned  and 
  282.         even 
  283.         this information, though beyond the scope of this discussion, may 
  284.         be recovered by someone knowlegable in disk structure.
  285.         
  286.              Each 10h (16d) byte entry in the partition table is made  up 
  287.         of  six elements. The first byte (0h) determines which  partition 
  288.         is "active" e.g. to be used for booting MS-DOS. This is indicated 
  289.         by a hex "80" in the first byte. All other partitions should have 
  290.         "00" in the first byte.
  291.         
  292.              The next three bytes (1-3h) contain information used by  the 
  293.         MBR   to   locate   the  first  sector  of   the   partition   in 
  294.         track/head/sector  format: the low order four bits (16  max.)  of 
  295.         the first byte indicates the head number (the upper four bits are 
  296.         not  used), the first six bits of the second byte are the  sector 
  297.         number (63 max - 0 is not used). The upper two bits are  prefixed 
  298.         to  the third byte to generate the track number (1024  max),  and 
  299.         the upper nibble of the last byte is the head number (16 max). In 
  300.         theory  this should provide for 1,032,192 sectors (at  512  bytes 
  301.         per  sector this would allow 516 MB disks) but since  few  drives 
  302.         have   16  heads  or  63  sector  tracks,   often   "translating" 
  303.         controllers  or 1024 byte sectors are used to  permit  addressing 
  304.         large disks. 
  305.         
  306.              The   fifth  byte (4h) describes the "type"  of   partition:  
  307.         00h 
  308.         indicates  "unknown"  and is often used by other  O/Ss.  Type  01 
  309.         indicates a primary (active) partition with a 12-bit FAT. This is 
  310.         rarely seen except on floppy disks since it can only  accommodate 
  311.         4096   "allocation  units".  04  indicates  a  primary   (active) 
  312.         partition  using  a  16-bit FAT and can be  used  for  partitions 
  313.         containing  up  to 65,536 "allocation units", 05 is  an  extended 
  314.         partition, and 06 a "large" partition. Other numbers are used  to 
  315.         designate partitions used by other Operating systems such as OS/2 
  316.         and Unix.
  317.         
  318.              Bytes  5-7h  contain  information used to  locate  the  last 
  319.         sector in a partition the layout is the same as in bytes 1-3h.
  320.         
  321.              Bytes 8-Bh and C-Fh are double words indicating the starting 
  322.         sector   offset   for  each partition and  the  absolute   sector  
  323.         count. 
  324.         These  are read backwards with the least significant byte  first. 
  325.         Thus the first partition begins 00000011h (17) sectors after  the 
  326.         MBR  and  extends for 0000C826h (51,238) sectors -  25  MB).  The 
  327.         second  partition  begins at offset 0000C837h (C826h +  11h)  and 
  328.         extends for 00007B2Fh (31,535) sectors (15 Mb). 
  329.         
  330.         Sample valid Partition Table: 42 MB disk with 2 partitions
  331.         
  332.              |A | Start  |T | End    | Absolute  | Absolute  |
  333.              |C | Head/  |Y | Head/  | Partition | Partition |
  334.              |T | Track/ |P | Track/ | Starting  | Sector    |
  335.              |V | Sector |E | Sector | Sector    | Count     |
  336.              |E |        |  |        | Offset    |           |
  337.         
  338.               80 01 01 00 04 04 91 5A 11 00 00 00 26 C8 00 00
  339.               00 00 81 5B 05 04 D1 CD 37 C8 00 00 2F 7B 00 00
  340.               00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
  341.               00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
  342.         
  343.          Byte: 0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
  344.         
  345.         For  a  more  complete description of the  Fixed  Disk  Partition 
  346.         Table,  refer to the *IBM-PC Technical Reference  Manual*  (IBM), 
  347.         also  the QUE book *DOS Programmer's Reference Manual*   provides 
  348.         an excellent reference.
  349.  
  350.  
  351.                                   SAFEMBR v1.6
  352.                 
  353.             An   integrity  checking Master Boot Record program for  IBM-
  354.         PCs  and Clones by Padgett. Copyright (C) 1991, 1992: all  rights 
  355.         reserved.
  356.        
  357.             This  program  is designed to replace  the  standard   MS-DOS         
  358.         master  boot  record program with code that does more  than  just 
  359.         find  the  active  partition and jump to  the  O/S  boot  record, 
  360.         SAFEMBR   first  checks  the  disk  access  integrity,  its   own 
  361.         integrity, and validates the indicated partition.
  362.         
  363.              SAFEMBR  will  detect  all known Master  Boot  Record  virus 
  364.         infections  including  those  using  "stealth"  such  as   JOSHI, 
  365.         MICHELANGELO,  and   the EVIL EMPIRE as well as the  most  common 
  366.         known infector, STONED and its variants.
  367.         
  368.              Used  in conjunction with NoFBoot (C), the likelihood of  an 
  369.         undetected  BIOS level infection going undetected drops  to  near 
  370.         zero.
  371.         
  372.              Using the techniques proven by its more rigorous  commercial 
  373.         relative,  DISKSECURE,  SAFEMBR  can  provide  immediate  generic 
  374.         front-line  detection of viruses both known and unknown  for  the 
  375.         individual PC.
  376.         
  377.              Being  a MBR replacement only, SAFEMBR does not go  resident 
  378.         and  thus  does  not require any  dedicated  RAM.  Following  the 
  379.         IBM/MicroSoft specifications for a MBR, SAFEMBR is effective even 
  380.         with  validating  BIOSes such as the TANDON  and  is designed  to 
  381.         accommodate "unruly" disk controllers such as the Western Digital 
  382.         WD10002A-27X which may write directly to the MBR.
  383.                 
  384.              When installed, SAFEMBR will display its logo on each  boot. 
  385.         Failure  to  print the logo could indicate a replacement  and  is 
  386.         cause  for concern. The program CHKSMBR.EXE is provided to  allow 
  387.         determination that SAFEMBR code is present.
  388.         
  389.              Should an exception occur, the boot will halt with an  error
  390.         message such as "Low Interrupt Vector", "Invalid  First  Sector",
  391.         "Invalid Master Boot Record", or "Missing Operating System".  The
  392.         system can then be booted with  a floppy disk  and  investigation 
  393.         made to determine the cause of the exception.
  394.  
  395.              It should be noted that many  security  products  using  MBR
  396.         relocation techniques  are  incompatible  with SAFEMBR. If such a 
  397.         product  uses  MBR  redirection  to prevent booting from a floppy 
  398.         disk,  this  will  be  the case. If use  of  such  a  product  is 
  399.         necessary,  SAFEMBR will have to be removed and the original  MBR 
  400.         restored.
  401.  
  402.                                      CHKSMBR
  403.  
  404.             The  CHKSMBR program is supplied so that the user (or  Network 
  405.         Server)  can verify that the SafeMBR code has been installed  and 
  406.         is intact. Like FixMBR, CHKSMBR has no switches: on invocation  it 
  407.         will display either an error message or the SafeMBR logo. It will 
  408.         also  return  the following DOS Errorlevels for use  from  within 
  409.         a .BAT batch file or other program.
  410.  
  411.             There  are  some common viruses which  simply  overwrite  the 
  412.         original  MBR  code  (e.g. AZUSA). If the PC is  booted  from  an 
  413.         infected floppy there is no way to prevent this from taking place 
  414.         and there will be no warning that infection has occurred. CHKSMBR 
  415.         is  designed to fill this gap by verifying that SafeMBR is  still 
  416.         intact on the disk.
  417.                                
  418.                                Errorlevel Returns
  419.  
  420.                0 - Abnormal Termination (disk read error, etc.)
  421.                1 - SafeMBR found in MBR (correct response)
  422.                2 - SafeMBR NOT found in MBR
  423.  
  424.            Thus any return OTHER than 1 indicates a problem. 
  425.  
  426.         Note:  CHKSMBR will operate properly ONLY if the SafeMBR  code  is 
  427.         loaded onto the system.
  428.  
  429.                                            Padgett Peterson
  430.                                            POB 1203
  431.                                            Windermere, FLA, 34786 USA
  432.                                            padgett@tccslr.dnet@mmc.com        
  433.  
  434.         DISCLAIMER: This software is furnished "as is" and all  liability 
  435.              for  the effects of the use of this software rests  entirely 
  436.              with the user. Adequate backups are the best protection from 
  437.              loss.
  438.              Extensive testing has been made but obviously this cannot
  439.              include every conceivable combination.
  440.  
  441.                                 SHAREWARE NOTICE        
  442.  
  443.              FixMBR  is SHAREWARE with a suggested remuneration of  $1.00 
  444.         per   PC   or  user  supported  (volume   discounts   available). 
  445.         Alternately  you may send a class 1 or 2 1966 Pontiac Grand  Prix 
  446.         or 1970 Pontiac Trans-Am in a plain brown wrapper to the  address 
  447.         above.
  448.         
  449.              The SafeMBR code is FREEWARE and may be used as  extensively 
  450.         as  wished however it is copyrighted material and no  changes  to 
  451.         the code are permitted without authorization.
  452.         
  453.         Note: This distribution consists of six files:
  454.              FixMBR24.exe - 2,219 bytes - the program
  455.              CHKSMBR.EXE  -   749 bytes - the DOS check program
  456.              FixMBR24.doc - this document
  457.              NoFBoot.com  - 368 bytes - simple floppy boot protection
  458.              NoFBoot.doc  - documentation
  459.              Validate.24  - Validation numbers for McAfee's Validate
  460.  
  461.     v2.4 - 1992 - Changed Suggested Remuneration
  462.         v2.4 - 1992 - Added detection and notice for 1k byte sectors
  463.         v2.3 - 1992 - not released
  464.         v2.2 - 1992 - Added drive table information and check
  465.         v2.1 - 1992 - Added early Zenith BR compatibility
  466.         v2.0 - 1992 - MBR restoration programs made executable.
  467.                       User interface improved. Program restructured.
  468.         v1.7 - 1991 - Multiple drive handler added
  469.         v1.6 - 1991 - Fixes "Invalid Partition Table" with unusual table 
  470.         v1.5 - 1991 - First beta version released
  471.  
  472.  
  473.