home *** CD-ROM | disk | FTP | other *** search
/ Phoenix Rising BBS / phoenixrising.zip / phoenixrising / vir-docs / crptlt19.arj / BWFPU21S.DOC next >
Text File  |  1993-10-17  |  9KB  |  173 lines

  1.                  
  2.                  
  3.                  Black Wolf's File Protection Utilities 2.1s
  4.  
  5.                     Special Release Version W/Source Code!
  6.                   
  7.               PassCOM, PassEXE, EncrCOM, EncrEXE, and ULTIMUTE
  8.                                    
  9.                                    All
  10.                        
  11.                       (c) 1993 Black Wolf Enterprises.
  12.                        Included in Crypt Newsletter 19
  13.  
  14. MODIFICATIONS:
  15.                    None as of yet - initial release 08/05/93.
  16.  
  17. LISCENSE:
  18.     
  19.     Released As Freeware - These files may be distributed freely.  If
  20. they are modified, please note modifications in source code and above
  21. under the "MODIFICATIONS:" header.  With notice, include your name/handle,
  22. the date, and the modification's purpose. NOTE THAT MODIFICATION PRIVILEDGES
  23. APPLY ONLY TO THIS VERSION (2.1s)!  I'd appreciate notification of any
  24. modifications if at all possible, reach me through the address listed
  25. at the bottom of this file.  Sorry, but all of the code is written in
  26. .ASM for size and effectiveness and some of the commenting may be
  27. a bit cryptic.  If you would like to incorporate this code into a project,
  28. or some similair situation - please contact me so I'll know what's going
  29. on and can, perhaps, even offer input and improvements on the code.  You 
  30. are, however, welcome to do so on your own as long as there is at 
  31. least a string with my copyright in it presented in a visible place 
  32. (i.e. a note in the documentation, distributed source, displayed on 
  33. execution, whatever.... I just don't want to have to look for it with 
  34. a hex editor).
  35.  
  36.     Files protected by these programs may be  distributed non-commercially 
  37. as is.  Commercial programs utilizing this protection system MUST display 
  38. a notice of the protection in their program AND in the documentation to 
  39. give credit where it is due - it is, however free under those conditions.  
  40. The notice should consist of the following: 
  41.  
  42.      Which programs were used, the version number (2.1s), and my copyright
  43.      string. For example, the following would be acceptable:
  44.  
  45.  SuperProg 1.3 is protected by EncrEXE 2.1s, (c) 1993 Black Wolf Enterprises.
  46.  
  47.  
  48. DISCLAIMER:
  49.     
  50.     THE AUTHOR IS NOT RESPONSIBLE FOR ANY DAMAGES THAT MAY OCCUR FROM THE
  51. USE AND/OR MISUSE OF THIS PROGRAM!  SOME FILES WILL NOT WORK AFTER
  52. BEING PROTECTED - FOR THIS PURPOSE, BACKUP FILES ARE CREATED WITH A
  53. .OLD EXTENSION.  KEEP THESE BACKUPS UNTIL YOU ARE SURE THAT THE PROTECTED
  54. VERSION WORKS!!!  ALSO, IF YOU LOSE YOUR PASSWORD TO A PASSWORD PROTECTED
  55. FILE, UNLESS YOU'RE AWFULLY GOOD WITH ASSEMBLY THERE IS NO WAY TO RECOVER 
  56. THE FILE.  THERE IS NO UN-INSTALL PROGRAM.
  57.    
  58. PassCOM and PassEXE Password Protection Programs:
  59.  
  60.    PassCOM and PassEXE are file-protection utilities that will attach a
  61. password routine to a specified file.  When that file is executed, from 
  62. then on, it  will prompt the user for a password.  If that password is 
  63. correct, it will execute normally, if it is not, then it will terminate.  
  64. PassCOM should ONLY be used for .COM files, and PassEXE should only be 
  65. used for .EXE files.  Before protecting a file, make sure to make a backup 
  66. copy of it.  THESE UTILITIES MAY DAMAGE CERTAIN FILES!  Generally, the only 
  67. files that will have difficulties are certain types of overlay files and 
  68. files that perform a self-check when they run. Basically, a good rule of 
  69. thumb is - if the file can be compressed with PKlite or similar executable 
  70. compression program, then you can protect it with the password.  WINDOWS 
  71. files will not work, because WINDOWS executes a different section of the 
  72. program entirely from DOS (if you do protect a windows .EXE, then you 
  73. will most likely only see the password prompt just before you see 
  74. "This program requires Microsoft Windows" or something like that :).
  75.  
  76. EncrCOM and EncrEXE Encryption Protection Programs:
  77.      
  78.      EncrCOM and EncrEXE are file-protection utilities that will attach a
  79. decryption routine to specified files after encrypting them.  When an
  80. encrypted file is executed, it automatically decrypts itself and runs
  81. normally - the user will notice no difference.  Would be "crackers",
  82. however, will DEFINITELY notice the change the second they try to modify
  83. the program.  Every time a file is protected, the decryption code for it
  84. is put inside a polymorphic envelope with several anti-debugging and anti-
  85. disassembling techniques peppered throughout it.  This makes stepping through
  86. the program extremely difficult.  Also, the encryption protections can be
  87. layered - each one will be different from the last.  This makes it possible
  88. to have multiple layers of "ICE" which would give even the best crackers
  89. a headache.  Also - any data inside the program will be rendered unreadable 
  90. by anyone on the disk, giving the extra security that no one can simply
  91. modify the program with a hex editor.
  92.  
  93. EXTRA NOTES:
  94.  
  95.      All of the protection utilities keep the time/date stamp the same
  96. after protection as it was beforehand.
  97.      
  98.      If an EXE file crashes when protected, try protecting it again after
  99. restoring it from the backup.  It it still does not work - try compressing
  100. it with one of the executable-compression preograms and trying again.  In
  101. some cases, this will fix the problem.  Otherwise, probably the encryptions
  102. interfere with file overlays.  I will work on fixing this at some point
  103. in the future.
  104.  
  105.       It may be possible for a protected program to set off some
  106. anti-viral program that have heuristical abilities.  This has not happened
  107. to my knowledge (they cannot seem to trace through the decryption algorithm)
  108. but some ARE set to alert the user if they detect an decryption algorithm
  109. at the beginning of a file's execution.  So far, however, none of the
  110. heuristic programs I've tested seem to be able to identify the decryption
  111. algorithm as being such.
  112.  
  113. HOW GOOD IS THIS, REALLY?:
  114.  
  115. How good is the security these provide?  Well...  It isn't hacker proof 
  116. - a good assembly programmer with some "specialized" experience should be 
  117. able to break through the password protection given enough time.  However - 
  118. I've put a lot of effort into making it a very large pain.  The passwords 
  119. are kept encrypted, and every time a new file is protected the protection 
  120. code is surrounded by a COMPLETELY DIFFERENT ENCRYPTION ALGORITHM, complete 
  121. with several anti-debugging techniques that, while benign, are VERY painful 
  122. to step through.  Why am I not telling you that it is hacker proof?  Well,
  123. a few reasons.  One is that very few things are.  Another is that if the 
  124. computer needs to decrypt the file to execute it - a method must be present
  125. to do so.  Simple logic - unfortunately it cuts down on security quite a
  126. bit.  And the last reason is that when you say something is XXXX-proof,
  127. you're just asking for it.  If someone does find a simple solution to
  128. cracking this program, however, E-Mail me and I'll see about fixing it.
  129.  
  130. The big advantages of these programs' security are as follows:
  131.  
  132. 1.) You aren't going to run into two exact copies of the decryption routine -
  133.     it's extremely flexible.  This eliminates the possibility of a simple
  134.     "hack one, hack 'em all" solution that most protection programs suffer
  135.     from.
  136.  
  137. 2.) The decryption algorithm generally includes multiple anti-debugging 
  138.     tactics.  While these can be bypassed by an experienced programmer with
  139.     time, they can be VERY frustrating to anyone without previous knowledge
  140.     of such techniques.
  141.  
  142. 3.) After you set a password, it never again shows on the screen OR IN
  143.     MEMORY.  When a password is checked, it is encrypted and the RESULT
  144.     is checked against the true password, rather than carelessly leaving
  145.     the true password in memory as many programs do.
  146.  
  147. 4.) Passwords can be up to 12 characters long.  While this is not 
  148.     enourmous, it provides enough to prevent most easy guessing.  Most
  149.     ALT-Keypad combinations will work if you want to use special symbols
  150.     to increase security.  NOTE - I recommend using a full 12 characters
  151.     for added security.
  152.  
  153. 5.) Multiple layers of these programs can be used to protect the target
  154.     file to a VERY high degree.  If you think one layer of polymorphic
  155.     encryptions is a pain......
  156.  
  157.  
  158. Well, here you go.  That's about it.  Again, I accept NO RESPONSIBILITY FOR
  159. ANY DAMAGES IT MAY CAUSE.  Backup files are automatically made with the
  160. extension of 'OLD' - if a file crashes after being protected, copy it back
  161. from this backup and try protecting it again.  If it crashes again, it's
  162. unprotectable by this version.  Do try twice, however, as in a few cases
  163. one polymorphic protection may not be compatible with a program where another
  164. would - especially after several layers of protection have been applied.
  165.  
  166. If you want to test the polymorphic abilities of these programs, try creating
  167. multiple copies of some small .COM or .EXE file in a directory and protect
  168. each of them.  You will notice that there is a VERY large range in size and
  169. contents of the protection code due to the mutating decryption algorithm.
  170.  
  171.                                      Black Wolf
  172.  
  173.