home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 16 / 16.iso / t / t229 / 1.img / GO_EN1.PRN < prev    next >
Encoding:
Text File  |  1993-10-08  |  16.6 KB  |  474 lines

  1.                GO_EN1, the friendly A_Virus:                         P1
  2.                ═════════════════════════════
  3.  
  4. A_Virus means Anti-Virus Software Tester.
  5. How to infect (couple) a DOS EXE file with A_Virus:
  6. ───────────────────────────────────────────────────
  7. MEMCHECK.EXE is provided to allow you to test GO_EN1 on a DOS exe file.
  8. MEMCHECK.EXE is a simple program which reports available base memory.
  9.  
  10. Uninfected (non coupled) MEMCHECK:
  11. Be sure to have an uninfected version of MEMCHECK.EXE by running MEMCHECK
  12. and confirm that it only reports your computers' available memory.
  13.  
  14. Infecting (coupling) MEMCHECK:
  15. Infect MEMCHECK.EXE with the command line:
  16.  
  17.     GO_EN1 MEMCHECK.EXE /SMIT
  18.  
  19. (All parameter must be upper case letters).
  20. When you now run MEMCHECK it will display both the A_Virus critter and the
  21. available memory in your computer.
  22.  
  23.         ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
  24.  
  25. How to disinfect a DOS EXE file wich has the A_Virus:
  26. ─────────────────────────────────────────────────────
  27. Be sure to have an infected version of MEMCHECK.EXE by running MEMCHECK
  28. and confirm that it is both displaying the A_Virus and your computers'
  29. available memory.
  30.  
  31. Disinfect MEMCHECK.EXE with the command line:
  32.  
  33.     MEMCHECK.EXE /FJERN
  34.  
  35. The parameter /FJERN must be upper case letters.
  36. When you now run MEMCHECK it will display only the available memory in your
  37. computer. The friendly A_VIRUS has been removed.
  38.  
  39.         ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
  40.  
  41. How to display the A_Virus in graphics:
  42. ──────────────────────────────────────
  43. An A_Virus infected program recognises two different parameters' /FJERN and
  44. /GRAFIK. By using the parameter /GRAFIK, the screen will change to VGA mode
  45. and the A_Virus will be displayed in graphics.
  46.  
  47. If you try it on an infected MEMCHECK.EXE the command line would be:
  48.  
  49.     MEMCHECK /GRAFIK
  50.  
  51. The parameter /GRAFIK must be upper case letters.
  52.  
  53.         ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
  54.  
  55. The purpose with A_VIRUS, GO_EN1:                                    P2
  56. ─────────────────────────────────
  57. Anti-Virus software should help you identify and remove various PC viruses.
  58. This has absolute security importance for any company or person who relies
  59. on the PC, to run their business etc.
  60.  
  61. Does the Anti-Virus software work?
  62. How would you know if you don't test it?
  63.  
  64. This is where GO_EN1 comes in. 
  65. Infect the supplied MEMCHECK program or any DOS EXE file you fancy, and 
  66. test your Anti-Virus software.
  67.  
  68. Could it find GO_EN1? 
  69. Probably not.
  70.  
  71.         - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
  72.  
  73. What does GO_EN1 do?
  74. ────────────────────
  75. GO_EN1 is a DOS EXE file coupling program. It checks the exe file for being
  76. a proper DOS program and will not couple onto windows or OS2 exe files.
  77. The coupling process assures that the GO_EN1 friendly A_VIRUS (NOT a PC 
  78. virus), is run whenever you run the infected (coupled) program. To prove 
  79. its existence, it shows a picture with the text A_VIRUS and explains how to 
  80. remove it from the infected program.
  81.  
  82.  
  83. Coupling programs:
  84. ──────────────────
  85. Any archive program which assembles the archived files in an executable 
  86. program is a coupling program and thus closely related to GO_EN1, the 
  87. A_Virus.
  88.  
  89.  
  90. Do you want to know how to make A_Viruses and other coupling programs?  P3
  91. ──────────────────────────────────────────────────────────────────────
  92. Obtain proper information and source texts about
  93.     
  94.     A_Virus 
  95.         (with source text in Turbo Pascal 6)
  96.     PC virus and other PC problems
  97.     Worms, the network disaster
  98.         EDLAB Vaccine, professional prevention of PC virus spreading
  99.     Coupling programs 
  100.         (with source text in Turbo Pascal 6) 
  101.     EDLAB-SafeMark: 
  102.         PC auditing, control, anti theft and anti-virus
  103.     Anti-Virus software tests
  104.     Utility programs from EDLAB(tm)
  105.  
  106. Total utility/training pack with programs, source texts etc., can be 
  107. obtained from 
  108.  
  109.     Compuserve: GO SWREG, ID 100315,1371
  110.  
  111.     or
  112.  
  113.     CompetiTronic Limited UK, Phone and Fax: (+44) 0506 811-457
  114.         (automatic switch board, 6 lines)
  115.  
  116.  
  117.  
  118.  ··> EDLAB Vaccine: Prevention is better than cure
  119. ───────────────────────────────────────────────────
  120.  
  121.  Standard Anti Virus software cannot detect unknown viruses on programs 
  122.  just purchased. They rely on knowing the 'virus fingerprint', which by
  123.  nature must be known to the Anti Virus software. This obviously works if
  124.  the virus is known AND the Anti Virus program is run.
  125.  
  126.  Some, more considered Anti Virus programs, has added a limited or 
  127.  extensive CRC check. Such a check demands that the CRC value is known AND
  128.  that the CRC check program is run. This latter can be done automatically 
  129.  with a TSR program, provided you are not running OS2 or Windows-NT.
  130.  
  131.  To demonstrate EDLAB-Protect(C), with EDLAB-Vaccine(C) code, memchk2 
  132.  has EDLAB Vaccine embedded.
  133.  Attach the friendly A_Virus to memchk2 and run the infected program. 
  134.  
  135.  Sensational: 
  136.  Imagine that all software producers used EDLAB Vaccine. It would spell
  137.  eradication of the PC virus. (Admitted: There must be a way around
  138.  EDLAB Vaccine, but we don't know it).
  139.  In fact: The coupler virus is one of the more sophisticated types and 
  140.  actual auto detection is very complex. The simpler types, which are
  141.  patched into specific programs and then released, are also much simpler
  142.  to prevent.
  143.  
  144.  
  145.  Try to patch the memchk2 code.                                         P4
  146.  For software pirates, patching the dongle protection or a serial number 
  147.  or a company name is most interesting. To allow you to try your capacity,
  148.  in this area, memchk2 has a larger text area AND EDLAB Vaccine with 
  149.  pirate patch prevention.
  150.  You could not patch memchk2 and still have it running! Well, this is one 
  151.  more demonstration of the value of EDLAB Protect, which is a professional 
  152.  program protection system, which incorporates EDLAB Vaccine.  
  153.  
  154.  Now try to patch the UNprotected memcheck program. It has exactly the same
  155.  larger text area. Easy to patch (change). You can even eradicate the EDLAB
  156.  text entirely and make it look like your program. It still runs.
  157.  
  158.  Would you believe that programs protected with EDLAB Vaccine are easier to 
  159.  sell? I certainly would prefer programs that are born with embedded 
  160.  protection. 
  161.  
  162.  In honesty: I would love all programs on compuserve to have EDLAB Vaccine 
  163.  embedded. Then I would know that I can download them without PC virus 
  164.  worries. A very nice AND possible thought.
  165.  
  166.  EDLAB Vaccine can be incorporated into ANY source text, if the compiler
  167.  allows linking of binary code (*.OBJ).
  168.  A simple source text shows the call of the EDLAB Vaccine function.
  169.  Source text in PASCAL and C++.
  170.  
  171.  
  172.  Obtain our shareware version of EDLAB Vaccine from Compuserve
  173.  (See the last 2 pages in this document).
  174.  
  175.  
  176. Other products from EDLAB:
  177.  
  178.  
  179. >> EDLAB-Protect
  180. A software protection system to eliminate software piracy
  181.  
  182. >> EDLAB-Protect Administration System
  183. A complete serial number and customer administration system for protected 
  184. software. Must be acquired to make SafeWare Production Modules.
  185.  
  186. >> SafeWare Production System with BMS (Business Management System)
  187. Provides a software production facility enabling the production of 
  188. Protected software.
  189.  
  190. >> EDLAB-SafeMark and AntiTheft
  191. Monitors and Audits software and hardware on PC's. Unique Fingerprint 
  192. facility adds software and hardware control, a must for larger corporates 
  193. and institutions.
  194.  
  195. >> EDLAB-Panorama: Corporate Safe PC Monitoring
  196. Panorama is a add-on SafeMark module. It relies on information acquired 
  197. through SafeMark. It gives extensive 'At a Glance' graphic information 
  198. about corporate PC's. Multi user system.
  199.  
  200.  
  201. >> Business Management System                                           P5
  202. General Accounts and administration for small to medium businesses. 
  203. Modularised for cost effective tailoring. Also available as multi user.
  204.  
  205. >> DBEDL: Obtain from Compuserve GO ZIFFNET, keyword EDLAB
  206. A database Viewer and Editor designed for database viewing and editing only.
  207.  
  208. >> DBSUPER, Professional
  209. An advanced database program with Auto Guidance, Intelligent Help, Mimic,  
  210. Personal Commands, Automatic Screen Sensing, OOP, etc.
  211.  
  212. >> DBNSUPER
  213. A true multi user database for immediate multi user access. It has all the 
  214. qualities of DBSUPER plus multi user facility. 
  215. Standard license for 30 users.
  216.  
  217. >> CMDEDIT, Professional
  218. A high quality application design tool in an ISO9000/BS5750 Design 
  219. Environment. Unique paste system reduces writing by a factor 10 or more. 
  220. 21" screen gives 4 times more information. A must for serious application 
  221. programmers. Direct DOS interrupts with HELP eliminates the need for IBM 
  222. technical manual.
  223.  
  224. >> CMDEDIT, Network Design
  225. All network commands included plus whatever CMDEDIT, Professional can do.
  226.  
  227. >> CMDEDIT Libraries
  228. Libraries assembled on request.
  229.  
  230. >> EDLAB-Phoneman/Business Appointment/Customer Contact Manager
  231. A DBSUPER OOP application, modularised for cost effective Sales Office 
  232. Tailoring. Customer contact and sales tracking system with direct modem 
  233. access, phone bill calculation and EDLAB-PhoneMap.
  234.  
  235.  ──────────────────────────────────────────────────────────────────────
  236.  
  237.  Extract from the A_Virus source text:                                  P6
  238.  
  239.     {*************************************************************}
  240.     {                                                             }
  241.     {       Turbo Pascal Source file for Turbo Version 6.0.       }
  242.     {       GO_EN1 (A_Virus Anti Virus Software Tester).          }
  243.     {       Created for EDLAB AntiVirus Division for test purpose.}
  244.     {                                                             }
  245.     {       Copyright (C) 1993 Karlius, dan and Guns.             }
  246.     {                                                             }
  247.     {*************************************************************}
  248.  
  249.  {$A+,B-,F+,I-}
  250.  {$M 4096,0,0}
  251.  program go_en1; (* Means good_one number 1    *)
  252.  
  253.  uses
  254.     dos     ,
  255.     crt     ;
  256.  
  257.  const
  258.     bufsize             =1024*8;            (* Size of buffer file/graphics *)
  259.  
  260.     Location_ID :array(.1..8.) of char  = ('O','f','S',' ','4','3','2','1');
  261.     file_ofs            :longint=1024*30;   (* Offset into the linked file  *)
  262.  
  263.     clklong :^longint   =ptr($0000,$046C);  (* 4 byte longint in BIOS works.*)
  264.     video_rows  :^byte  =ptr($0000,$0484);  (* Number of lines - 1          *)
  265.  
  266.  type
  267.     buftype =array(.1..bufsize.) of char;
  268.  
  269.  var
  270.     params  :string;
  271.     fld     :dirstr;
  272.     fln     :namestr;
  273.     fle     :extstr;
  274.     fbuf    :^buftype;  (* File copy buffer *)
  275.     imgbuf  :^buftype;  (* Image ico buffer *)
  276.     lin2buf :^buftype;  (* vga line buffer  *)
  277.     fcon    :text;      (* Standard output  *)
  278.  
  279.  function    MEM_ALLOCATE(bytes :word) :word;    (* Get segment  *)
  280.  var
  281.     reg :registers;
  282.  begin
  283.     REG.BX := (bytes div 16) + 1;
  284.     REG.AH := $48;
  285.  .
  286.  
  287.  .                                                                       P7
  288.  .     
  289.  .
  290.  .
  291.         show_information_Linked;
  292.     end;
  293.  end;
  294.  
  295.  procedure   execute_the_original_part_of_program_as_child;
  296.  begin
  297.     (* --------- Isolate path for this program ------------ *)
  298.     fsplit(fexpand(paramstr(0)),fld,fln,fle);
  299.  
  300.     fbuf:=ptr(MEM_ALLOCATE(1024*16),0);
  301.     if fbuf = NIL then
  302.     begin
  303.         writeln(fcon,'Need more free memory!');
  304.         halt(1);
  305.     end;
  306.  
  307.     (* --------- Copy this program's original part -------- *)
  308.     if fcopy(fexpand(paramstr(0)),fld+'$$$.EXE',file_ofs) then
  309.     begin
  310.  
  311.         (* --------- Remove eventual old left over ------------ *)
  312.         fdelete(fld+'$$$.DAT');
  313.  
  314.         (* --------- Hide this program ------------------------ *)
  315.         frename(fexpand(paramstr(0)),fld+'$$$.DAT');
  316.  
  317.         (* --- Let 'original program have the original name --- *)
  318.         frename(fld+'$$$.EXE',fexpand(paramstr(0)));
  319.  
  320.  
  321.  
  322.         (* --------- Let the virus show it is here ------------ *)
  323.         show_virus_critter; (* Make your own procedure if you wish  *)
  324.  
  325.         if not MEM_DEALLOCATE(seg(fbuf^)) then
  326.         begin
  327.             writeln(fcon,'Error: Could not free memory!');
  328.             halt(1);
  329.         end;
  330.  
  331.  
  332.         (* --------- Now call the 'original' program ---------- *)
  333.         swapvectors;
  334.         exec(fexpand(paramstr(0)),params);
  335.         swapvectors;
  336.  
  337.                                                                          P8
  338.         (* --------- Get back the virus version --------------- *)
  339.         fdelete(fexpand(paramstr(0)));
  340.         frename(fld+'$$$.DAT',fexpand(paramstr(0)));
  341.  
  342.         (* --------- All done --------------------------------- *)
  343.         halt(exitcode);     (* Pass exit code from child to DOS *)
  344.     end
  345.     else
  346.     begin
  347.  
  348.         (* --------- Remove failed copy ----------------------- *)
  349.         fdelete(fld+'$$$.EXE');
  350.  
  351.         show_information_Linked;
  352.  
  353.         if not MEM_DEALLOCATE(seg(fbuf^)) then
  354.         begin
  355.             writeln(fcon,'Error: Could not free memory!');
  356.             halt(1);
  357.         end;
  358.     end;
  359.  end;
  360.  
  361.  begin   (* GO_EN1   *)
  362.     assign(fcon,'');    (* Assign fcon to standard output   *)
  363.     rewrite(fcon);
  364.  
  365.     Collect_Params;
  366.  
  367.     if pos('GO_EN1.EXE',paramstr(0)) > 0 then
  368.     begin   (* Unlinked version *)
  369.  
  370.         if pos('/SMIT',params) > 0 then
  371.         begin
  372.             fbuf:=ptr(MEM_ALLOCATE(1024*16),0);
  373.             if fbuf = NIL then
  374.             begin
  375.                 writeln(fcon,'Need more free memory!');
  376.                 halt(1);
  377.             end;
  378.             infect_program_with_A_Virus;
  379.             if not MEM_DEALLOCATE(seg(fbuf^)) then
  380.             begin
  381.                 writeln(fcon,'Error: Could not free memory!');
  382.                 halt(1);
  383.             end;
  384.         end
  385.         else
  386.  
  387.         begin                                                          P9
  388.             show_information_Unlinked;
  389.         end;
  390.  
  391.     end     (* Unlinked version *)
  392.     else
  393.     begin   (* Linked version   *)
  394.  
  395.         if pos('/INFO',params) > 0 then
  396.         begin
  397.             show_information_Linked;
  398.         end
  399.         else
  400.         begin
  401.             if pos('/FJERN',params) > 0 then
  402.             begin
  403.                 fbuf:=ptr(MEM_ALLOCATE(1024*16),0);
  404.                 if fbuf = NIL then
  405.                 begin
  406.                     writeln(fcon,'Need more free memory!');
  407.                     halt(1);
  408.                 end;
  409.                 remove_virus_from_program;
  410.                 if not MEM_DEALLOCATE(seg(fbuf^)) then
  411.                 begin
  412.                     writeln(fcon,'Error: Could not free memory!');
  413.                     halt(1);
  414.                 end;
  415.             end
  416.             else
  417.             begin
  418.                 execute_the_original_part_of_program_as_child;
  419.             end;
  420.         end;
  421.  
  422.     end;    (* Linked version   *)
  423.     close(fcon);
  424.  end.    (* GO_EN1   *)
  425.  
  426.  
  427.  
  428.          How to order EDLAB SafeMark and other EDLAB products:         P10
  429.          ═════════════════════════════════════════════════════
  430.  
  431.  Register shareware:
  432.            Compuserve GO SWREG
  433.                          Keyword: "EDLAB"
  434.                 or Compuserve ID: 100315,1371
  435.  
  436.  Note: Register for any EDLAB package, and recieve the enhanced
  437.        professional version, manual(s) and support.
  438.  
  439.             ════════════════════════════════════════════════════
  440.  
  441.  EDLAB Shareware available:
  442.        "PC Audit/Control, EDLAB"
  443.        "Panorama-E for Managers, EDLAB"
  444.        "Graphic Menu System, EDLAB"
  445.        "Utility/Training, EDLAB"
  446.        "Pascal Utility Source texts, EDLAB"
  447.        "DBSUPER appl. source texts, EDLAB"
  448.        "Interactive DB3 database program, EDLAB DBSUPER."
  449.        "Interactive DB3 database viewer, EDLAB DBEDL.
  450.        "Business Management: Order module, EDLAB"
  451.        "Business Management: Invoice module, EDLAB"
  452.        "Business Management: Stock module, EDLAB"
  453.        "Business Management: Account module, EDLAB"
  454.        "Business Management: Order source text, EDLAB"
  455.        "Business Management: Invoice source text, EDLAB"
  456.        "Business Management: Stock source text, EDLAB"
  457.        "Business Management: Account source text, EDLAB"
  458.             + much more (Search with keyword EDLAB)
  459.  
  460.  Download our shareware from:
  461.            Compuserve GO IBMSYS
  462.                          Keyword: "EDLAB"
  463.                 or Compuserve ID: 100315,1371
  464.  
  465.                          and
  466.  
  467.            Compuserve GO ZIFFNET, GO PBSAPPS
  468.                          Keyword: "EDLAB"
  469.                 or Compuserve ID: 100315,1371
  470.  
  471.  
  472.  EDLAB(tm) has produced high quality, professional programs since 1986,
  473.  for the Silicon Wafer ind., Automated machines, Public bodies etc.
  474.