home *** CD-ROM | disk | FTP | other *** search
/ The Unsorted BBS Collection / thegreatunsorted.tar / thegreatunsorted / live_viruses / virus_collections / leprosy.doc < prev    next >
Text File  |  1990-06-23  |  10KB  |  238 lines

  1.  
  2.  
  3.         
  4.  
  5.  
  6.                              L E P R O S Y   1 . 0 0
  7.  
  8.                            A Virus for MS-DOS Systems.
  9.                      Copy-ya-right (c) June 29, 1990 by PCM2
  10.  
  11.  
  12.  
  13.  
  14.         GENERAL SUMMARY 
  15.         ~~~~~~~~~~~~~~~ 
  16.  
  17.              LEPROSY is  a  virus  which  can  influence  PC and PC clone
  18.         systems  running  MS-DOS  or PC-DOS version 2.0 or later.  It may
  19.         be  characterized  as  an overwriting, non-resident .COM and .EXE
  20.         infecting  virus,  similar  in  operation  to  the  AIDS Virus by
  21.         Doctor  Dissector  and  CPI; in fact, the AIDS Virus was actually
  22.         the  inspiration  for this program, though Leprosy is in no way a
  23.         re-write  or  mod  of  the  AIDS  Virus,  it  is  an entirely new
  24.         program.
  25.  
  26.              The way  both  Leprosy  and  the AIDS Virus (and Number One,
  27.         the  ancestor of AIDS) work is fairly simple.  Upon executing the
  28.         virus  program,  the  virus  runs  a  search for executable files
  29.         which  it  can  affect.  It does this by doing a general scan for
  30.         all  files with a .COM or .EXE extension, then, having found such
  31.         a  file,  it loads in part of that file's code to compare it with
  32.         the  virus'  own code, to make sure the file found hasn't already
  33.         been  infected.  If it hasn't, the virus proceeds to write itself
  34.         OVER  the code of the executable file found.  The executable file
  35.         now   ceases   to   perform  its  original  function.   When  the
  36.         unsuspecing  user  runs  the  file,  he  will  instead be running
  37.         another   copy   of  the  virus,  which  will  seek  out  another
  38.         executable  file  to  infect,  and  so  on.  The executable files
  39.         which  are  infected  by the virus in this manner are permanently
  40.         destroyed.   While  this is a primitive way to spread a virus, it
  41.         is  actually  pretty  effective, if you consider that by the time
  42.         the  user  discovers a file which has been infected by the virus,
  43.         it  has  already  gone and zapped one or more other files, and by
  44.         the  time  the  user finds those files, they will have infected a
  45.         few  more,  and  on until the user figures out some way to detect
  46.         and eradicate all the infected files.  
  47.  
  48.              While Leprosy  is similar in operation to the AIDS Virus, it
  49.         presents several important advantages over AIDS: 
  50.  
  51.         1.  CARRIERS:   The  AIDS  Virus  will  only  infect  .COM files.
  52.         Leprosy  is  not  limited  in  this way; it will infect both .COM
  53.         files and the more common .EXE files, going for .EXE files first.
  54.  
  55.         2.  FILE SIZE:  The AIDS Virus is written in Pascal, and is about
  56.         13K  in  size.   Considering that any file that is infected which
  57.         was  originally  smaller than the virus itself will expand to the
  58.  
  59.  
  60.                                       - 1 -
  61.  
  62.  
  63.         
  64.  
  65.  
  66.         size  of  the virus when it is infected, and that many .COM files
  67.         will  be  smaller  than  13K,  quite  often  a  file  will show a
  68.         noticeable  change  in  size  when  infected  by  the AIDS Virus.
  69.         Leprosy  is  only a mere 666 bytes in size; therefore, changes in
  70.         file  size  will  be much less frequent, and the disk access time
  71.         it  takes  to infect a new file will be considerably shorter than
  72.         when using the AIDS Virus.  
  73.  
  74.         3.  DUMBSHIT FACTOR:  When the AIDS Virus infects a file or fails
  75.         to  find  any  non-infected files, it just sits there or hangs up
  76.         the  system.   Leprosy  takes  a  more  subtle approach, however.
  77.         When  Leprosy has infected some files successfully, it prints out
  78.         the  message  "Program  too  big  to  fit  in memory".  This way,
  79.         dumbshits  might  think there is something screwy with their RAMs
  80.         or  TSRs, and may end up running the same virus-infected file one
  81.         or more times before they get a clue.  
  82.  
  83.         4.  CONCEALMENT:   To find out if a file has been infected by the
  84.         AIDS  Virus,  all  you need to do is run a hex editor on the file
  85.         and  look  for  the full screen reading "AIDS" in the code.  Once
  86.         again,  Leprosy  makes  it  more  difficult on the dumbshit user.
  87.         All  the strings Leprosy outputs to the screen are encrypted in a
  88.         simple  way,  enough  to  make  it  impossible  to  quickly  spot
  89.         suspicious  phrases  when  running  a  hex  editor on an infected
  90.         file.   What is more, Leprosy will not change the time/date stamp
  91.         on the file when it infects it, unlike AIDS.
  92.  
  93.         5.  COMMUNICABILITY:   When  the  AIDS  Virus fails to locate any
  94.         non-infected  .COM  file  in  the  current  directory,  it can no
  95.         longer  spread  itself.   The  only  way an AIDS Virus can spread
  96.         from  one  directory to another is to somehow make it into one of
  97.         the  directories  in  the current PATH, and be called by the user
  98.         from  a  different  directory.   Leprosy  gives  itself  one more
  99.         shot.   When  it fails to find any more non-infected files in the
  100.         current  directory,  it will step back into the parent directory,
  101.         and  try  to  find  some files again there.  While when the virus
  102.         exits  the  current directory will have changed when Leprosy does
  103.         this,  hopefully  the  dumbshit  won't  catch on.  The payback is
  104.         that  Leprosy might eventually creep up to the root directory and
  105.         infect COMMAND.COM, and then the user will be fucked over.  
  106.  
  107.         6.  RATE  OF  TRANSMISSION:   The AIDS Virus will only infect one
  108.         file  at  a time.  Leprosy will infect up to four files each time
  109.         it is run.  
  110.  
  111.         SETTING UP LEPROSY ON A SYSTEM 
  112.         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
  113.  
  114.              To install  Leprosy onto an un-infected system, all you need
  115.         do  is  run  the  provided  file,  LEPROSY.COM, somewhere on that
  116.         system,  preferably  somewhere where it will have access to a lot
  117.         of  commonly  used  executables.   Alternately,  you could infect
  118.         some   program   with   an  impressive-looking  file  length  and
  119.  
  120.                                       - 2 -
  121.  
  122.  
  123.         
  124.  
  125.  
  126.         documentation  and  send  it  to  someone  as a Trojan Horse type
  127.         program.  Just make sure it gets run.  
  128.  
  129.         COMPILING LEPROSY 
  130.         ~~~~~~~~~~~~~~~~~ 
  131.  
  132.              To assemble  the  Leprosy  .COM  file, you will need Turbo C
  133.         2.0  and  Turbo  Assembler.  MASM might work, just as long as the
  134.         executable  file  turns  out the appropriate length.  If the .COM
  135.         file  doesn't  come  out to exactly 666 bytes long, then it might
  136.         not  work properly.  C compilers other than Turbo C will probably
  137.         not  work,  since  the  program  makes  extensive  use  of inline
  138.         assembler,  but  versions  other  than 2.0 will probably be okay.
  139.         Just remember -- watch the file length.  
  140.  
  141.              The easiest  way  to  re-create Leprosy is to just run MAKE,
  142.         and  the  provided  makefile  will  handle  the rest.  If you are
  143.         compiling  it  by  hand,  you  should  use  this makefile as your
  144.         guidelines.   An  important  note is that you should not link the
  145.         program  with  the  standard  Turbo  C  startup code for the Tiny
  146.         memory   model;   instead,  always  link  it  with  the  provided
  147.         alternate  startup  code.   This  file,  C0T.ASM,  is  a  startup
  148.         sequence  which gets rid of code to gather command line arguments
  149.         and  the  like,  allowing  for  programs which are essentially as
  150.         small  as  their  assembly language counterparts.  Just remember,
  151.         keep an eye on the executable file size.  
  152.  
  153.         WAYS TO SPOT THE VIRUS 
  154.         ~~~~~~~~~~~~~~~~~~~~~~ 
  155.  
  156.              There are  several  ways to notice the Leprosy virus on your
  157.         system.   If  small  .COM  files  are increasing in length to 666
  158.         bytes,  that's  your  first  hint.  666 bytes isn't a very likely
  159.         file  length,  but it's funny, so I'm keeping it that way.  Also,
  160.         if  the  current directory changes when you run a program, or you
  161.         notice  strange  "Program  too big to fit in memory" errors, that
  162.         should  tip  you  off  too.   Leprosy can also be detected by CRC
  163.         checking  programs,  because it directly modifies the contents of
  164.         the   files   it   infects.   What  is  more,  Leprosy  causes  a
  165.         distinctive  drive noise, sort of a "blickablickablickablicka" on
  166.         my  hard  drive, because it is opening, reading from, writing to,
  167.         and closing a number of files very quickly.  
  168.  
  169.         ACKNOWLEDGEMENTS 
  170.         ~~~~~~~~~~~~~~~~ 
  171.  
  172.              I'd like  to  thank  some  of the pirate boards in the (415)
  173.         area code -- they know who they are.  
  174.  
  175.              What is  more,  I'd like to say that I used the December 26,
  176.         1989  issue  of  PC  Magazine, and the book "The NEW Peter Norton
  177.         Programmer's  Guide  to  the  IBM  PC and PS/2" in the process of
  178.  
  179.  
  180.                                       - 3 -
  181.  
  182.  
  183.         
  184.  
  185.  
  186.         writing  the  Leprosy  program.  I just thought I'd mention that,
  187.         since  it  kind of makes me laugh to wonder what Peter Norton and
  188.         PC   Magazine   would   think  if  they  knew  they  were  partly
  189.         responsible for the creation of a virus.  HAHA! 
  190.  
  191.         Yours truly, 
  192.         PCM2 
  193.  
  194.  
  195.  
  196.         P.S.  BTW,  if  Leprosy fails to find any .EXE or .COM files that
  197.               aren't  infected,  but  it  locates more  than 6 executable
  198.               files that are already infected with Leprosy, it displays a
  199.               message  indicating  that the system has been infected with
  200.               Leprosy, and wishes the user luck.   If  it can't find  any
  201.               new files to infect, and only  finds  6  or  less  infected
  202.               files  during  its entire run, it just prints out the  fake
  203.               "Program too big to fit in memory" message again.
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.                                       - 4 -
  237.  
  238.