home *** CD-ROM | disk | FTP | other *** search
/ Peanuts NeXT Software Archives / Peanuts-1.iso / CDROM / FAQs / virus / faq next >
Encoding:
Internet Message Format  |  1996-10-17  |  159.4 KB

  1. Path: informatik.tu-muenchen.de!lrz-muenchen.de!uni-erlangen.de!cs.tu-berlin.de!newscaster-1.mcast.net!news.mathworks.com!bloom-beacon.mit.edu!senator-bedfellow.mit.edu!faqserv
  2. From: "Nick FitzGerald" <n.fitzgerald@csc.canterbury.ac.nz>
  3. Newsgroups: comp.virus,comp.answers,news.answers
  4. Subject: VIRUS-L/comp.virus Frequently Asked Questions (FAQ) v2.00
  5. Supersedes: <computer-virus/faq_842859583@rtfm.mit.edu>
  6. Followup-To: comp.virus
  7. Date: 16 Oct 1996 16:40:00 GMT
  8. Organization: Virus-L/comp.virus moderator
  9. Lines: 3162
  10. Approved: news-answers-request@MIT.Edu
  11. Expires: 29 Nov 1996 16:25:18 GMT
  12. Message-ID: <computer-virus/faq_845483118@rtfm.mit.edu>
  13. Reply-To: <VIRUS-L@Lehigh.edu>
  14. NNTP-Posting-Host: bloom-picayune.mit.edu
  15. Summary: This posting contains a list of Frequently Asked Questions,
  16.          and their answers, about computer viruses.  It should be read
  17.          by anyone who wishes to post to VIRUS-L/comp.virus.
  18. X-Last-Updated: 1995/09/10
  19. Originator: faqserv@bloom-picayune.MIT.EDU
  20. Xref: informatik.tu-muenchen.de comp.virus:25706 comp.answers:21741 news.answers:84350
  21.  
  22. Archive-name: computer-virus/faq
  23. Last-modified:  9 October 1995, 11:00 AM NZD
  24.  
  25. -----BEGIN PGP SIGNED MESSAGE-----
  26.  
  27.  
  28.             Frequently Asked Questions on Virus-L/comp.virus
  29.  
  30.                               Release 2.00
  31.  
  32.                Last Updated:  9 October 1995, 11:00 AM NZD
  33.  
  34.  
  35.  
  36. =========================
  37. = Using this FAQ sheet: =
  38. =========================
  39.  
  40.  
  41. This document is intended to answer some Frequently Asked Questions
  42. (FAQs) about computer viruses.  This FAQ sheet has been compiled by some
  43. of the main contributors to the Virus-L mailing list and its USENET news
  44. fan-out, comp.virus.  The Preface Section (below) explains the multi-
  45. part nature of the FAQ sheet and how to ensure you have "the genuine
  46. article", and gives details on version numbers and contacting the
  47. authors with questions and suggestions.  If you are seeking help after
  48. discovering what you suspect is a virus on your computer, read the
  49. Preface Section, skim through Sections A and B for the essential jargon,
  50. then concentrate on Section C.
  51.  
  52. If you feel that you may have found a new virus, or are not quite sure
  53. if some file or boot sector is infected, please refer to Section F
  54. Question #4 (F4) before posting a request for assistance.  The answer to
  55. this question has been developed to ensure new readers of Virus-L/
  56. comp.virus understand the protocol for raising such questions and to
  57. help them avoid asking questions that can be answered in this document.
  58. If you are looking for help in designing and implementing an antivirus
  59. policy or system, read all of Sections B through F inclusive, paying
  60. particular attention to Section D.
  61.  
  62. Please read the full list of questions carefully--as with most complex
  63. topics, dozens of different virus-related questions turn out to be about
  64. similar phenomena.  If you don't find your exact question here, look
  65. closely at the ones that seem vaguely similar.
  66.  
  67. Above all, remember that the time to really worry about viruses is
  68. *before* your computer gets one!
  69.  
  70.  
  71. ====================
  72. = Preface Section: =
  73. ====================
  74.  
  75. The Virus-L/comp.virus FAQ sheet is normally posted to on-line services
  76. and sent via e-mail in one of two forms:  As a single, large (>160KB)
  77. file, or in four separate pieces.  Either or both of these forms may be
  78. available for download from FTP sites and BBSes.
  79.  
  80. The one-piece FAQ sheet should be available in a file called
  81. vlfaqxyy.txt, where "xyy" is the current version number (starting from
  82. 200 in mid-1995 for version 2.00).  The multi-part version is created by
  83. splitting the main FAQ sheet into four pieces as follows:
  84.  
  85.     Filename          Contains
  86.                     FAQ Sections
  87.    ==============================
  88.     vlfxyy-1.txt       A & B
  89.     vlfxyy-2.txt       C & D
  90.     vlfxyy-3.txt       E & F
  91.     vlfxyy-4.txt       G
  92.  
  93. (with "xyy" again representing the current version number).  Please do
  94. not make your own multi-part FAQ, as each of the parts in the "official"
  95. multi-part version include additional preface information.
  96.  
  97. Either or both versions may also be available in some form of compressed
  98. archive--in this case the "name part" of the filename should be the same
  99. as the original file with the extension being replaced (or appended) as
  100. appropriate for the archiving method used.  Please *do not* repackage
  101. the multi-part FAQ into one large archive file, as this defeats the sole
  102. purpose for creating it--to ensure that the FAQ sheet is "officially"
  103. available in a readable form that will pass unmolested through most
  104. e-mail gateways.
  105.  
  106. All the files in either version of the FAQ sheet are signed with Nick
  107. FitzGerald's PGP key.  Nick's public key can be retrieved from the main
  108. PGP key servers.  If you do not know what PGP is, but wish to validate
  109. your copy of the FAQ sheet, you should read the USENET newsgroup
  110. alt.security.pgp [please do *not* e-mail me, as I am not a PGP expert--
  111. FAQ maintainer].
  112.  
  113. The FAQ sheet is a dynamic document, changing as people's questions
  114. change.  The version number also changes as *any* changes are made.
  115. Version numbers containing a "d" are drafts and should *not* be made
  116. publicly available, nor distributed.  We ask for your cooperation in
  117. deleting and not further distributing "d" versions of the FAQ sheet.  If
  118. you have any questions or contributions, please e-mail them to the FAQ
  119. sheet maintainer, Nick FitzGerald, at:
  120.  
  121.    n.fitzgerald@csc.canterbury.ac.nz
  122.  
  123. The most recent copy of the FAQ sheet will always be available on the
  124. Virus-L/comp.virus archives, including by anonymous FTP on corsa.ucr.edu
  125. (IP = 138.23.166.133) in the directory pub/virus-l.
  126.  
  127. A WWW version of the FAQ sheet, with cross-references and file links is
  128. currently under development, as is a WinHelp version with cross-
  129. references (if you would like to assist with these efforts, or to port
  130. one of these formats to another popular hypertext help format, please
  131. contact the FAQ sheet maintainer so we can better coordinate this work).
  132.  
  133. In various places the FAQ sheet mentions products by name.  This is
  134. usually only for illustrative purposes.  Such references should *not* be
  135. taken to imply that all, some, or any of the contributors to this FAQ
  136. sheet endorse any such product for any purpose or that such products are
  137. the *best* examples of what is being discussed.  Such refernces are
  138. usually because the products named were the first to implement a
  139. particular feature or function.  Further, that a given product is *not*
  140. mentioned in the FAQ should not be taken as an indication of its quality
  141. or suitability for any task.
  142.  
  143. Various brand and product names are used throughout the FAQ sheet--these
  144. remain trademarks or registered trademarks of their respective holders.
  145.  
  146. Unless indicated otherwise, prices are given in US dollars and should be
  147. taken as guides only.  Telephone numbers include an indication of the
  148. time-zone relative to GMT--some of these are very approximate, but
  149. should be close enough to save you ringing in the middle of the
  150. receiver's night!
  151.  
  152.  
  153.  
  154. Nick FitzGerald, Virus-L/comp.virus FAQ sheet maintainer.
  155.  
  156.  
  157. ================================================
  158. = Primary contributors (in alphabetical order) =
  159. ================================================
  160.  
  161. The following people have provided significant content and/or editorial
  162. input to this FAQ sheet:
  163.  
  164.      Mark Aitchison <m.aitchison@phys.canterbury.ac.nz>
  165.      Vaughan Bell <vaughan@computing-department.poly-south-west.ac.uk>
  166.      Claude Bersano-Hayes <hayes@urvax.urich.edu>
  167.      Matt Bishop <matt.bishop@dartmouth.edu>
  168.      Vesselin Bontchev <bontchev@complex.is>
  169.      Bruce Burrell <bpb@us.itd.umich.edu>
  170.      David Chess <chess@watson.ibm.com>
  171.      John-David Childs <con_jdc@lewis.umt.edu>
  172.      Olivier M. J. Crepin-Leblond <o.crepin-leblond@ic.ac.uk>
  173.      Nick FitzGerald <n.fitzgerald@csc.canterbury.ac.nz>
  174.      Richard Ford <virusbtn@vax.ox.ac.uk>
  175.      Alan Glover <aglover@acorn.co.uk>
  176.      Sarah Gordon <sgordon@dockmaster.ncsc.mil>
  177.      Yaron Y. Goland <ygoland@seas.ucla.edu>
  178.      Mikko Hypponen <mikko.hypponen@datafellows.fi>
  179.      John Kida <john_kida@ins.com>
  180.      Kevin Marcus <datadec@cs.ucr.edu>
  181.      Anthony Naggs <tony@vps.cis.co.za>
  182.      Donald G. Peters <Peters@Dockmaster.NCSC.Mil>
  183.      A. Padgett Peterson <padgett%tccslr.dnet@mmc.com>
  184.      Y. Radai <radai@hujivms.huji.ac.il>
  185.      Brian Seborg <bseborg@fdic.gov>
  186.      Fridrik Skulason <frisk@complex.is>
  187.      Rob Slade <roberts@decus.ca> or <rslade@sfu.ca>
  188.      Gene Spafford <spaf@cs.purdue.edu>
  189.      Otto Stolz <rzotto@nyx.uni-konstanz.de>
  190.      Ken van Wyk <krvw@assist.mil>
  191.  
  192. ====================
  193.  
  194.              Questions answered in this document
  195.  
  196. Section A:   Sources of Information and Antivirus Software
  197.              (Where can I find HELP?!!)
  198.  
  199. A1)  What is Virus-L/comp.virus?
  200. A2)  What is the difference between Virus-L and comp.virus?
  201. A3)  How do I get onto or off Virus-L/comp.virus?
  202. A4)  What are the guidelines for Virus-L?
  203. A5)  How can I get back-issues of Virus-L?
  204. A6)  What are the known viruses, their names, major symptoms and
  205.      possible cures?
  206. A7)  Where can I get free or shareware antivirus programs?
  207. A8)  Where can I get more information on viruses, etc?
  208. A9)  Why is so much of the discussion in Virus-L/comp.virus about PCs
  209.      and DOS?  Is this forum only for the PC world?
  210.  
  211.  
  212. Section B:   Definitions
  213.              (What is ...?)
  214.  
  215. B1)  What are computer viruses (and why should I worry about them)?
  216. B2)  What is a Worm?
  217. B3)  What is a Trojan Horse?
  218. B4)  What are the main types of PC viruses?
  219. B5)  What is a stealth virus?
  220. B6)  What is a polymorphic virus?
  221. B7)  What are "fast" and "slow" infectors?
  222. B8)  What is a sparse infector?
  223. B9)  What is a companion virus?
  224. B10) What is an armored virus?
  225. B11) What is a cavity virus?
  226. B12) What is a tunnelling virus?
  227. B13) What is a dropper?
  228. B14) What is an ANSI bomb?
  229. B15) Miscellaneous Jargon and Abbreviations
  230.  
  231.  
  232. Section C:   Virus Detection
  233.              (Is my computer infected?  What do I do?)
  234.  
  235. C1)  What are the symptoms and indications of a virus infection?
  236. C2)  What steps should be taken in diagnosing and identifying viruses?
  237. C3)  What is the best way to remove a virus?
  238. C4)  What does the <insert name here> virus do?
  239. C5)  What are "false positives" and "false negatives"?
  240. C6)  Can an antivirus program itself be infected?
  241. C7)  Where can I get a virus scanner for my Unix system?
  242. C8)  Why does my scanner report an infection only sometimes?
  243. C9)  I think I have detected a new virus; what do I do?
  244. C10) CHKDSK reports 639K (or less) total memory on my system; am I
  245.      infected?
  246. C11) I have an infinite loop of sub-directories on my hard drive; am I
  247.      infected?
  248. C12) Can a PC not running DOS be infected with a common DOS virus?
  249. C13) My hard-disk's file system has been garbled:  Do I have a virus?
  250.  
  251.  
  252. Section D:   Protection Plans
  253.              (What should I do to prepare against viruses?)
  254.  
  255. D1)  What is the best antivirus program?
  256. D2)  Is it possible to protect a computer system with only software?
  257. D3)  Is it possible to write-protect the hard disk with software only?
  258. D4)  What can be done with hardware protection?
  259. D5)  Does setting a file's attributes to READ ONLY protect it from
  260.      viruses?
  261. D6)  Do password/access control systems protect my files from viruses?
  262. D7)  Do the protection systems in DR DOS work against viruses?
  263. D8)  Does a write-protect tab on a floppy disk stop viruses?
  264. D9)  Do local area networks (LANs) help to stop viruses or do they
  265.      facilitate their spread?
  266. D10) What is the proper way to make backups?
  267.  
  268.  
  269. Section E:   Facts and Fibs About Computer Viruses
  270.              (Can a virus...?)
  271.  
  272. E1)  Can boot sector viruses infect non-bootable DOS floppy disks?
  273. E2)  Can a virus hide in a PC's CMOS memory?
  274. E3)  Can a PC virus hide in Extended or in Expanded RAM in a PC?
  275. E4)  Can a virus hide in a PC's Upper Memory or its High Memory Area?
  276. E5)  Can a virus infect data files?
  277. E6)  Can viruses spread from one type of computer to another?
  278. E7)  Are mainframe computers susceptible to computer viruses?
  279. E8)  Some people say that disinfecting files is a bad idea.  Is that
  280.      true?
  281. E9)  Can I avoid viruses by avoiding shareware, free software or games?
  282. E10) Can I contract a virus on my PC by performing a "DIR" of an
  283.      infected floppy disk?
  284. E11) Is there any risk in copying data files from an infected floppy
  285.      disk to a clean PC's hard disk?
  286. E12) Can a DOS virus survive and spread on an OS/2 system using the
  287.      HPFS file system?
  288. E13) Under OS/2 2.0+, could a virus infected DOS session infect another
  289.      DOS session?
  290. E14) Can normal DOS viruses work under MS Windows?
  291. E15) Can I get a virus from reading e-mail, BBS message forums or
  292.      USENET News?
  293. E16) Can a virus "hide" in a GIF or JPEG file?
  294.  
  295.  
  296. Section F:   Miscellaneous Questions
  297.              (I have heard...  I was just wondering...)
  298.  
  299. F1)  How many viruses are there?
  300. F2)  How do viruses spread so quickly?
  301. F3)  What is the correct plural of "virus"?  "Viruses" or "viri" or
  302.      "virii" or "vira" or...
  303. F4)  When reporting a virus infection (and looking for assistance), what
  304.      information should be included?
  305. F5)  How often should we upgrade our antivirus tools to minimize
  306.      software and labor costs and maximize our protection?
  307. F6)  What are "virus simulators" and what use are they?
  308. F7)  I've heard talk of "good viruses".  Is it really possible to use a
  309.      computer virus for something useful?
  310. F8)  Wouldn't adding self-checking code to your programs be a good idea?
  311.  
  312.  
  313. Section G:   Specific Virus and Antivirus Software Questions...
  314.  
  315. G1)  I was infected by the Jerusalem virus and disinfected the infected
  316.      files with my favorite antivirus program.  However, WordPerfect
  317.      and some other programs still refuse to work.  Why?
  318. G2)  Is my disk infected with the Stoned virus?
  319. G3)  I was told that the Stoned virus displays the text "Your PC is now
  320.      Stoned" at boot time.  I have been infected by this virus several
  321.      times, but have never seen the message.  Why?
  322. G4)  I was infected by both Stoned and Michelangelo.  Why has my
  323.      computer become unbootable?  And why, each time I run my favorite
  324.      scanner, does it find one of the viruses and say that it is
  325.      removed, but when I run it again, it says that the virus is still
  326.      there?
  327. G5)  My scanner finds the Filler and/or Israeli Boot virus in memory,
  328.      but after I boot from a clean floppy it reports no viruses.  Am I
  329.      infected?
  330. G6)  I was infected with Flip and now a large part of my hard disk
  331.      seems to have disappeared.  What has happened?
  332. G7)  What does the GenB and/or the GenP virus do?
  333. G8)  How do I "boot from a clean floppy"?
  334. G9)  My PC diagnostic utility lists "Cascade" amongst the hardware
  335.      interrupts (IRQs).  Does this mean I have the Cascade virus?
  336. G10) Occasionally the text "welcome datacomp" appears in my Mac
  337.      documents without me typing it.  Is this a virus?
  338. G11) How good are the antivirus tools included with MS-DOS 6?
  339. G12) When I do a "DIR | MORE", I see two files with random names that
  340.      are not there when I just use "DIR".  On my friends's system they
  341.      cannot be seen.  Do I have a virus?
  342. G13) What is the ChipAway virus?  (Or ChipAwayVirus?)
  343.  
  344.  
  345.  
  346. ===============================================================
  347. = Section A.   Sources of Information and Antivirus Software. =
  348. ===============================================================
  349.  
  350. A1)  What is Virus-L/comp.virus?
  351.  
  352. Virus-L and comp.virus are discussion forums which focus on computer
  353. virus issues.  More specifically, Virus-L is an electronic mailing list
  354. and comp.virus is a USENET newsgroup.  Both groups are moderated; all
  355. submissions are sent to the moderator who decides if a submission should
  356. be distributed to the groups.  For more information, including a copy of
  357. the posting guidelines, see the file virus-l.README, available by
  358. anonymous FTP on corsa.ucr.edu in the pub/virus-l directory.
  359.  
  360.  
  361. A2)  What is the difference between Virus-L and comp.virus?
  362.  
  363. Virus-L is a mailing list while comp.virus is a newsgroup.  Virus-L is
  364. distributed in "digest" format (with multiple e-mail postings in one
  365. large digest) and comp.virus is distributed as individual news postings.
  366. However, the content of the two groups is identical.
  367.  
  368.  
  369. A3)  How do I get onto or off Virus-L/comp.virus?
  370.  
  371. To subscribe to Virus-L, send e-mail to LISTSERV@LEHIGH.EDU saying "SUB
  372. VIRUS-L your-name".  For example:
  373.  
  374.   SUB VIRUS-L Jane Doe
  375.  
  376. To be removed from the Virus-L mailing list, send a message to
  377. LISTSERV@LEHIGH.EDU saying "SIGNOFF VIRUS-L".
  378.  
  379. To "subscribe" to comp.virus, simply use your favorite USENET news
  380. reader to read the group.
  381.  
  382.  
  383. A4)  What are the guidelines for Virus-L?
  384.  
  385. The posting guidelines are available by anonymous FTP on corsa.ucr.edu.
  386. Retrieve the file pub/virus-l/virus-l.README for the most recent copy.
  387. In general, however, the moderator requires discussions to be polite and
  388. non-commercial.  Objective postings of product availability, product
  389. reviews, etc, are fine, but commercial advertisements are not.  Requests
  390. for virus samples (binary or disassembly) are forbidden.  Technical
  391. discussions are strongly encouraged, however, within reason.
  392.  
  393.  
  394. A5)  How can I get back-issues of Virus-L?
  395.  
  396. Back-issues of Virus-L/comp.virus date back to the group's inception, on
  397. 21 April, 1988.  The anonymous FTP archive at cs.ucr.edu carries all of
  398. the Virus-L back issues.  Retrieve the file pub/virus-l/README for more
  399. information on the Virus-L/comp.virus archives.
  400.  
  401.  
  402. A6)  What are the known viruses, their names, major symptoms and
  403.      possible cures?
  404.  
  405. The reader should be aware that there is no universally accepted naming
  406. convention for viruses, nor is there any standard means of testing.  As
  407. a consequence nearly *all* virus information is highly subjective and
  408. open to interpretation and dispute.
  409.  
  410. There are several major sources of information on specific viruses.
  411. Probably the largest one is Patricia Hoffman's hypertext VSUM.  While
  412. VSUM is quite complete it only covers PC viruses and it is regarded by
  413. many in the antivirus field as being inaccurate, so we advise you not to
  414. rely solely on it.  It can be downloaded from most major archive sites.
  415.  
  416. A more precise source of information is the Computer Virus Catalog,
  417. published by the Virus Test Center in Hamburg.  It contains highly
  418. technical descriptions of computer viruses for several platforms: DOS,
  419. Mac, Amiga, Atari ST and Unix.  Unfortunately, the DOS section is quite
  420. incomplete.  The CVC is available by anonymous FTP from
  421. ftp.informatik.uni-hamburg.de (IP = 134.100.4.42), directory
  422. pub/virus/texts/catalog.  (A copy of the CVC is also available by
  423. anonymous FTP on corsa.ucr.edu in the directory pub/virus-l/docs/vtc.)
  424.  
  425. Another small collection of good technical descriptions of PC viruses,
  426. called CARObase is also available from ftp.informatik.uni-hamburg.de, in
  427. the directory /pub/virus/texts/carobase.
  428.  
  429. A fourth source of information is the monthly Virus Bulletin, published
  430. in the UK.  Among other things, it gives detailed technical information
  431. on viruses (see A8); a one year subscription, however, costs $395.  US
  432. subscriptions can be ordered by calling (203) 431 8720 (GMT-5/-4) or
  433. writing to 590 Danbury Road, Ridgefield, CT 06877; for European
  434. subscriptions, the number is +44 1235 555139 (GMT+0/-1) and the address
  435. is: 21 The Quadrant, Abingdon, OXON, OX14 3YS, ENGLAND.  General
  436. enquiries can be sent to virusbtn@vax.ox.ac.uk.
  437.  
  438. Another source of information is the book "Virus Encyclopedia" which is
  439. part of the printed documentation of Dr. Solomon's AntiVirus ToolKit (a
  440. commercial DOS antivirus program).  It is more complete than the CVC
  441. list and just as accurate; however it lists only DOS viruses.  This book
  442. may be available separately
  443.  
  444. The on-line help system of the shareware antivirus product Anti-Virus
  445. Pro contains a large and relatively exact collection of virus
  446. descriptions and even includes demonstrations of several of the audio
  447. and visual effects produced by some viruses. However the text can be
  448. difficult to read because English is not the author's native tongue.
  449.  
  450. The WWW site www.datafellows.fi has an on-line, cross-referenced
  451. database containing descriptions of about 1500 PC viruses, with an
  452. emphasis on viruses "in the wild".  Another network-accessible source of
  453. information pertaining to viruses is provided by IBM AntiVirus, at
  454. http://www.brs.ibm.com/ibmav.html or via gopher at the site
  455. index.almaden.ibm.com (choose "IBM Computer Virus Information Center"
  456. from the main menu).
  457.  
  458. An excellent source of information regarding Apple Macintosh viruses is
  459. the on-line documentation in the freeware Disinfectant program by John
  460. Norstad of Northwestern University.  This is available at most Mac
  461. archive sites.
  462.  
  463.  
  464. A7)  Where can I get free or shareware antivirus programs?
  465.  
  466. The Virus-L/comp.virus archive sites carry publicly distributable
  467. antivirus software products. Up-to-date listings of these antivirus
  468. archive sites are posted monthly to Virus-L/comp.virus (see A5 for
  469. details).
  470.  
  471. Many freeware/shareware DOS antivirus programs are available from the
  472. SimTel Software Repository.  This collection of software is available
  473. via anonymous FTP from ftp.coast.net (IP = 141.210.10.117), with
  474. antivirus software in the directory /SimTel/msdos/virus.  Note that the
  475. SimTel archive is "mirrored" at many anonymous FTP sites, including
  476. wuarchive.wustl.edu (IP = 128.252.135.4, /systems/ibmpc/simtel/virus),
  477. and nic.funet.fi (IP = 128.214.248.6, /pub/msdos/SimTel/virus).  Most of
  478. this software can also be obtained via e-mail in uuencoded form from
  479. various TRICKLE sites, especially in Europe.
  480.  
  481. Likewise, Macintosh antivirus programs can be found in /pub/tools/mac at
  482. coast.cs.purdue.edu.
  483.  
  484. A list of many antivirus programs, including commercial products and one
  485. person's rating of them, can be obtained by anonymous ftp from
  486. corsa.ucr.edu (IP = 138.23.166.33) in pub/virus-l/docs/reviews in the
  487. file slade.quickref.rvw.  This directory also contains detailed product
  488. reviews of many products.
  489.  
  490.  
  491. A8)  Where can I get more information on viruses, etc?
  492.  
  493. Five very good books on computer viruses that cover most of the
  494. introductory and technical questions you might have are:
  495.  
  496. "Computers Under Attack: Intruders, Worms and Viruses" edited by
  497.      Peter J. Denning, ACM Press/Addison-Wesley, 1990.  This is a
  498.      book of collected readings that discuss computer viruses,
  499.      computer worms, break-ins, and social aspects, and many other
  500.      items related to computer security and malicious software.  A
  501.      very solid, readable collection that doesn't require a highly-
  502.      technical background.  Price: $20.50.
  503.  
  504. "Rogue Programs: Viruses, Worms and Trojan Horses" edited by Lance
  505.      J. Hoffman, Van Nostrand Reinhold, 1990.  This is a book of
  506.      collected readings describing in detail how viruses work,
  507.      where they come from, what they do, etc.  It also has
  508.      material on worms, Trojan Horse programs, and other malicious
  509.      software programs.  This book focuses more on mechanism and
  510.      relatively less on social aspects than does the Denning book;
  511.      however, there is an excellent piece by Anne Branscomb that
  512.      covers legal aspects.  Price: $32.95.
  513.  
  514. "A Pathology of Computer Viruses" by David Ferbrache, Springer-
  515.      Verlag, 1992.  This is an in-depth book on the history,
  516.      operation, and effects of computer viruses.  It is one of the
  517.      most complete books on the subject, with an extensive history
  518.      section, a section on Macintosh viruses, network worms, and
  519.      Unix viruses.  Price $49.00.
  520.  
  521. "A Short Course on Computer Viruses", 2nd edition, by Dr. Fred B.
  522.      Cohen, Wiley, 1994.  This book is by a well-known pioneer in
  523.      virus research, who has also written dozens of technical
  524.      papers on the subject.  Price: $35.00 ($45.00 with
  525.      accompanying diskette).
  526.  
  527. "Robert Slade's Guide to Computer Viruses", by Robert Slade,
  528.      Springer-Verlag, 1994.  This book is a comprehensive
  529.      introduction to computer viruses, written in a clear and easy
  530.      style for non-experts.  Price $29.00.
  531.  
  532.  
  533. A somewhat dated, but still useful, high-level description of viruses,
  534. suitable for a complete novice with little computer background is
  535. "Computer Viruses: Dealing with Electronic Vandalism and Programmed
  536. Threats" by Eugene H. Spafford, Kathleen A. Heaphy, and David J.
  537. Ferbrache, ITAA (Arlington, VA), 1989.  ITAA (Information Technology
  538. Association of America) is a computer industry service organization and
  539. not a publisher.  While many people have indicated they find this a very
  540. understandable reference it is now out of print, but portions of it have
  541. been reprinted in many other places, including Denning and Hoffman's
  542. books (above).
  543.  
  544. It is also worth consulting various publications such as _Computers &
  545. Security_ and _SECURE Computing_ (both of which, while not limited to
  546. viruses, contain many relevant papers) and the _Virus Bulletin_
  547. (published in the UK, it contains many technical articles).
  548.  
  549.  
  550. A9)  Why is so much of the discussion in Virus-L/comp.virus about PCs
  551.      and DOS?  Is this forum only for the PC world?
  552.  
  553. No--neither the problem nor this discussion relate only to PCs.  Viral
  554. programs are a property of general-purpose computers, and therefore are,
  555. and will be, a problem for any computer system.  We *are* aware of the
  556. lopsided coverage and welcome the submission of material relevant to
  557. other systems.
  558.  
  559. There are several reasons for the apparent imbalance.  One very general
  560. reason is that users of DOS heavily outnumber the users of other
  561. operating systems.  The discussion in Virus-L/comp.virus therefore tends
  562. to have a preponderance of questions and chat about DOS specific
  563. infections and problems.  We welcome questions, comments and reports
  564. from users of other operating systems and platforms.  If you use a
  565. computer of another type, please do contribute to the discussion.  Just
  566. because the majority are talking about DOS does *not* mean that your
  567. contribution is not welcome.  It may be important precisely because you
  568. have a different perspective.
  569.  
  570. Therefore, let us assure you there is no deliberate attempt being made
  571. to exclude Amiga, Atari, Macintosh, OS/2, UNIX, VMS, Windows (NT, '95 or
  572. any other flavor) or any other platform or operating system from the
  573. discussion or the FAQ sheet.  If you feel that there *is* too much PC
  574. bias, please don't complain about it--tell us something about the virus
  575. situation on *your* system.
  576.  
  577.  
  578. ====================================================
  579. = Section B.   Definitions and General Information =
  580. ====================================================
  581.  
  582. B1)  What are computer viruses (and why should I worry about them)?
  583.  
  584. Fred Cohen "wrote the book" on computer viruses, through his Ph.D.
  585. research, dissertation and various related scholarly publications.  He
  586. developed a theoretical, mathematical model of computer virus behaviour,
  587. and used this to test various hypotheses about virus spread.  Cohen's
  588. formal definition (model) of a virus does not easily translate into
  589. "human language", but his own, well-known, informal definition is "a
  590. computer virus is a computer program that can infect other computer
  591. programs by modifying them in such a way as to include a (possibly
  592. evolved) copy of itself".  Note that a program does not have to perform
  593. outright damage (such as deleting or corrupting files) in order to be
  594. classified as a "virus" by this definition.
  595.  
  596. The problem with Cohen's human language definition is that it doesn't
  597. capture many of the subtleties of his mathematical model--as indeed, few
  598. informal definitions do--and questions arise that can only be answered
  599. by checking his formal model.  Using his formal definitions, Cohen
  600. classifies some things as viruses that most readers of Virus-L/
  601. comp.virus (and many experts) would not consider viruses.  For example,
  602. given certain circumstances on an IBM PC running DOS, the DISKCOPY
  603. program is classified as a virus by Cohen's formalisms.
  604.  
  605. This has led to some tension between what Cohen considers a "virus" and
  606. what is usually discussed on Virus-L.  Several other definitions of
  607. "virus" have been proposed, but it is probably fair to say that most of
  608. us are concerned about things that are viruses by the following
  609. definition:
  610.  
  611. A computer virus is a self-replicating program containing code that
  612. explicitly copies itself and that can "infect" other programs by
  613. modifying them or their environment such that a call to an infected
  614. program implies a call to a possibly evolved copy of the virus.
  615.  
  616. Probably the major distinction between Cohen's definition and "viruses"
  617. as we tend to use the word is that we see them as deliberately designed
  618. to replicate (although there is some debate over this too).  Cohen's
  619. definition does *not* require this (and this would be difficult to build
  620. into his formal model).
  621.  
  622. Note that many people use the term "virus" loosely to cover any sort of
  623. program that tries to hide its possibly malicious function and\or tries
  624. to spread onto as many computers as possible, though some of these
  625. programs may more correctly be called "worms" (see B2) or "Trojan
  626. Horses" (see B3).  Also be aware that what constitutes a "program" for a
  627. virus to infect may include a lot more than is at first obvious--don't
  628. assume too much about what a virus can or can't do!
  629.  
  630. These software "pranks" are very serious; they are spreading faster than
  631. they are being stopped, and even the least harmful of viruses could be
  632. life-threatening.  For example, in the context of a hospital life-
  633. support system, a virus that "simply" stops a computer and displays a
  634. message until a key is pressed, could be fatal.  Further, those who
  635. create viruses can not halt their spread, even if they wanted to.  It
  636. requires a concerted effort from computer users to be "virus-aware",
  637. rather than continuing the ambivalence that has allowed computer viruses
  638. to become such a problem.
  639.  
  640. Computer viruses are actually a special case of something known as
  641. "malicious logic" or "malware", and other forms of malicious logic are
  642. also discussed in Virus-L/comp.virus.  It can be important to understand
  643. the distinctions between viruses and these other forms of malware.
  644.  
  645.  
  646. B2)  What is a Worm?
  647.  
  648. A computer WORM is a self-contained program (or set of programs), that
  649. is able to spread functional copies of itself or its segments to other
  650. computer systems (usually via network connections).
  651.  
  652. Note that unlike viruses, worms do not need to attach themselves to a
  653. host program.  There are two types of worms--host computer worms and
  654. network worms.
  655.  
  656. Host computer worms are entirely contained in the computer they run on
  657. and use network connections only to copy themselves to other computers.
  658. Host computer worms where the original terminates itself after launching
  659. a copy on another host (so there is only one copy of the worm running
  660. somewhere on the network at any given moment), are sometimes called
  661. "rabbits."
  662.  
  663. Network worms consist of multiple parts (called "segments"), each
  664. running on different machines (and possibly performing different
  665. actions) and using the network for several communication purposes.
  666. Propagating a segment from one machine to another is only one of those
  667. purposes.  Network worms that have one main segment which coordinates
  668. the work of the other segments are sometimes called "octopuses."
  669.  
  670. The infamous Internet Worm (perhaps covered best in "The Internet Worm
  671. Program: An Analysis," Eugene H. Spafford, Purdue Technical Report CSD-
  672. TR-823) was a host computer worm, while the Xerox PARC worms were
  673. network worms (a good starting point for these is "The Worm Programs--
  674. Early Experience with a Distributed Computation," Communications of the
  675. ACM, 25, no.3, March 1982, pp. 172-180).
  676.  
  677.  
  678. B3)  What is a Trojan Horse?
  679.  
  680. A TROJAN HORSE is a program that does something undocumented that the
  681. programmer intended, but that some users would not approve of if they
  682. knew about it.  According to some people, a virus is a particular case
  683. of a Trojan Horse, namely one which is able to spread to other programs
  684. (i.e., it turns them into Trojans too).  According to others, a virus
  685. that does not do any deliberate damage (other than merely replicating)
  686. is not a Trojan.  Finally, despite the definitions, many people use the
  687. term "Trojan" to refer only to *non-replicating* malware, so that the
  688. set of Trojans and the set of viruses are disjoint.
  689.  
  690.  
  691. B4)  What are the main types of PC viruses?
  692.  
  693. Generally, there are two main classes of viruses.  The first class
  694. consists of the FILE INFECTORS which attach themselves to ordinary
  695. program files.  These usually infect arbitrary COM and/or EXE programs,
  696. though some can infect any program for which execution or interpretation
  697. is requested, such as SYS, OVL, OBJ, PRG, MNU and BAT files.  There is
  698. also at least one PC virus that "infects" source code files by inserting
  699. code into C language source files that replicates the virus's function
  700. in any executable that is produced from the infected source code files
  701. (see E5 for a more detailed discussion of the issue of "executable"
  702. code).
  703.  
  704. File infectors can be either DIRECT-ACTION or RESIDENT.  A direct-action
  705. virus selects one or more programs to infect each time a program
  706. infected by it is executed.  A resident virus installs itself somewhere
  707. in memory (RAM) the first time an infected program is executed, and
  708. thereafter infects other programs when *they* are executed (as in the
  709. case of the Jerusalem virus) or when other conditions are fulfilled.
  710. Direct-action viruses are also sometimes referred to as NON-RESIDENT.
  711. The Vienna virus is an example of a direct-action virus.  Most viruses
  712. are resident.
  713.  
  714. The second main category of viruses is SYSTEM or BOOT-RECORD INFECTORS:
  715. these viruses infect executable code found in certain system areas on a
  716. disk.  On PCs there are ordinary boot-sector viruses, which infect only
  717. the DOS boot sector, and MBR viruses which infect the Master Boot Record
  718. on fixed disks and the DOS boot sector on diskettes.  Examples include
  719. Brain, Stoned, Empire, Azusa and Michelangelo.  All common boot sector
  720. and MBR viruses are memory resident.
  721.  
  722. To confuse this classification somewhat, a few viruses are able to
  723. infect both files and boot sectors (the Tequila virus is one example).
  724. These are often called "MULTI-PARTITE" viruses, though there has been
  725. criticism of this name; another name is "BOOT-AND-FILE" virus.
  726.  
  727. Aside from the two main classes described above, many antivirus
  728. researchers distinguish either or both of the following as distinct
  729. classes of virus:
  730.  
  731. FILE SYSTEM or CLUSTER viruses (e.g. Dir-II) are those that modify
  732. directory table entries so that the virus is loaded and executed before
  733. the desired program is.  The program itself is not physically altered,
  734. only the directory entry of the program file is.  Some consider these to
  735. be a third category of viruses, while others consider them to be a sub-
  736. category of the file infectors.  LINK virus is another term occasionally
  737. used for these viruses, though it should be avoided, as "link virus" is
  738. commonly used in the Amiga world to mean "file infecting virus."
  739.  
  740. KERNEL viruses target specific features of the programs that contain the
  741. "core" (or "kernel") of an operating system (3APA3A is a DOS kernel
  742. virus and is also multipartite).  A file infecting virus that *can*
  743. infect kernel program files is *not* a kernel virus--this term is
  744. reserved for describing viruses that utilize some special feature of
  745. kernel files (such as their physical location on disk or a special
  746. loading or calling convention).
  747.  
  748.  
  749. B5)  What is a stealth virus?
  750.  
  751. A STEALTH virus is one that, while "active", hides the modifications it
  752. has made to files or boot records.  This is usually achieved by
  753. monitoring the system functions used to read files or sectors from
  754. storage media and forging the results of calls to such functions.  This
  755. means programs that try to read infected files or sectors see the
  756. original, uninfected form instead of the actual, infected form.  Thus
  757. the virus's modifications may go undetected by antivirus programs.
  758. However, in order to do this, the virus must be resident in memory when
  759. the antivirus program is executed and *this* may be detected by an
  760. antivirus program.
  761.  
  762. Example:  The very first DOS virus, Brain, a boot-sector infector,
  763. monitors physical disk I/O and re-directs any attempt to read a Brain-
  764. infected boot sector to the disk area where the original boot sector is
  765. stored.  The next viruses to use this technique were the file infectors
  766. Number of the Beast and Frodo (aka 4096, 4K).
  767.  
  768. Countermeasures:  A "clean" system is needed so that no virus is present
  769. to distort the results of system status checks.  Thus the system should
  770. be started from a trusted, clean, bootable diskette before any virus-
  771. checking is attempted; this is "The Golden Rule of the Trade" (see G8
  772. for help with making a clean boot disk and booting clean).
  773.  
  774.  
  775. B6)  What is a polymorphic virus?
  776.  
  777. A POLYMORPHIC virus is one that produces varied but operational copies
  778. of itself.  These strategies have been employed in the hope that virus
  779. scanners (see D1) will not be able to detect all instances of the virus.
  780.  
  781. One method of evading scan string-driven virus detectors is self-
  782. encryption with a variable key.  These viruses (e.g. Cascade) are not
  783. termed "polymorphic", as their decryption code is always the same.
  784. Therefore the decryptor can be used as a scan string by the simplest
  785. scan string-driven virus scanners (unless another virus uses the
  786. identical decryption routine *and* exact identification (see B15) is
  787. required).
  788.  
  789. A technique for making a polymorphic virus is to choose among a variety
  790. of different encryption schemes requiring different decryption routines:
  791. only one of these routines would be plainly visible in any instance of
  792. the virus (e.g. the Whale virus).  A scan string-driven virus scanner
  793. would have to exploit several scan strings (one for each possible
  794. decryption method) to reliably identify a virus of this kind.
  795.  
  796. More sophisticated polymorphic viruses (e.g. V2P6) vary the sequences of
  797. instructions in their variants by interspersing the decryption
  798. instructions with "noise" instructions (e.g. a No Operation instruction
  799. or an instruction to load a currently unused register with an arbitrary
  800. value), by interchanging mutually independent instructions, or even by
  801. using various instruction sequences with identical net effects (e.g.
  802. Subtract A from A, and Move 0 to A).  A simple-minded, scan string-based
  803. virus scanner would not be able to reliably identify all variants of
  804. this sort of virus; rather, a sophisticated "scanning engine" has to be
  805. constructed after thorough research into the particular virus.
  806.  
  807. One of the most sophisticated forms of polymorphism used so far is the
  808. "Mutation Engine" (MtE) which comes in the form of an object module.
  809. With the Mutation Engine any virus can be made polymorphic by adding
  810. certain calls to its assembler source code and linking to the mutation-
  811. engine and random-number generator modules.
  812.  
  813. The advent of polymorphic viruses has rendered virus-scanning an ever
  814. more difficult and expensive endeavor; adding more and more scan strings
  815. to simple scanners will not adequately deal with these viruses.
  816.  
  817.  
  818. B7)  What are "fast" and "slow" infectors?
  819.  
  820. A typical file infector (such as the Jerusalem) copies itself to memory
  821. when a program infected by it is executed, and then infects other
  822. programs when they are executed.
  823.  
  824. A FAST infector is a virus that, when it is active in memory, infects
  825. not only programs which are executed, but even those that are merely
  826. opened.  The result is that if such a virus is in memory, running a
  827. scanner or integrity checker can result in all (or at least many)
  828. programs becoming infected.  Examples are the Dark Avenger and the Frodo
  829. viruses.
  830.  
  831. The term "SLOW infector" is sometimes used to refer to a virus that only
  832. infect files as they are modified or as they are created.  The purpose
  833. is to fool people who use integrity checkers into thinking that
  834. modifications reported by their integrity checker are due solely to
  835. legitimate reasons.  An example is the Darth Vader virus.
  836.  
  837.  
  838. B8)  What is a sparse infector?
  839.  
  840. The term "sparse infector" is sometimes used to describe a virus that
  841. infects only occasionally (e.g. every tenth program executed), or only
  842. files whose lengths fall within a narrow range, etc.  By infecting less
  843. often, such viruses try to minimize the probability of being discovered.
  844.  
  845.  
  846. B9)  What is a companion virus?
  847.  
  848. A COMPANION virus is one that, instead of modifying an existing file,
  849. creates a new program which (unknown to the user) is executed instead of
  850. the intended program.  On exit, the new program executes the original
  851. program so that things appear normal.  On PCs this has usually been
  852. accomplished by creating an infected .COM file with the same name as an
  853. existing .EXE file.  Integrity checking antivirus software that only
  854. looks for modifications in existing files will fail to detect such
  855. viruses.
  856.  
  857.  
  858. B10) What is an armored virus?
  859.  
  860. An ARMORED virus is one that uses special tricks to make tracing,
  861. disassembling and understanding of its code more difficult.  A good
  862. example is the Whale virus.
  863.  
  864.  
  865. B11) What is a cavity virus?
  866.  
  867. A CAVITY VIRUS is one which overwrites a part of the host file that is
  868. filled with a constant (usually nulls), without increasing the length of
  869. the file, but preserving its functionality.  The Lehigh virus was an
  870. early example of a cavity virus.
  871.  
  872.  
  873. B12) What is a tunnelling virus?
  874.  
  875. A TUNNELLING VIRUS is one that finds the original interrupt handlers in
  876. DOS and the BIOS and calls them directly, thus bypassing any activity
  877. monitoring program (see D1) which may be loaded and have intercepted the
  878. respective interrupt vectors in its attempt to detect viral activity.
  879. Some antivirus software also uses tunnelling techniques in an attempt to
  880. bypass any unknown or undetected virus that may be active when it runs.
  881.  
  882.  
  883. B13) What is a dropper?
  884.  
  885. A DROPPER is a program that has been designed or modified to "install" a
  886. virus onto the target system.  The virus code is usually contained in a
  887. dropper in such a way that it won't be detected by virus scanners that
  888. normally detect that virus (i.e., the dropper program is not *infected*
  889. with the virus).  While quite uncommon, a few droppers have been
  890. discovered.  A dropper is effectively a Trojan Horse (see B3) whose
  891. payload is installing a virus infection.  A dropper which installs a
  892. virus only in memory (without infecting anything on the disk) is
  893. sometimes called an "injector".
  894.  
  895.  
  896. B14) What is an ANSI bomb?
  897.  
  898. An "ANSI bomb" is a sequence of characters, usually embedded in a text
  899. file, that reprograms various keyboard functions of computers with ANSI
  900. console (screen and keyboard) drivers.  In theory a special sequence of
  901. characters could have been included in this FAQ sheet to reprogram your
  902. Enter key to issue the command "format c:" with a return character
  903. tacked on the end.
  904.  
  905. Such a possibility however, need not translate into much of a threat.
  906. It is rare for modern software to require the computer it runs on to
  907. have an ANSI console, so few PCs or other machines should load ANSI
  908. drivers.  Also, few people use software that simply "types" output to
  909. the terminal device, so such an ANSI bomb in an e-mail or News posting
  910. would most likely not reprogram your keyboard anyway.  Further, although
  911. FORMAT C: may be catastrophic under certain versions of DOS, it won't
  912. hurt Macintoshes and would probably have very unexpected, or no, effects
  913. on other systems.
  914.  
  915. If you are at all worried about the possibility of having something
  916. untoward happen on your PC due to an ANSI bomb *and* you have to load an
  917. ANSI driver (some communications software still requires it), look for
  918. one of the third-party ANSI drivers which abound on BBSes and FTP sites.
  919. Most of these have improved performance over DOS's ANSI.SYS *and* either
  920. do not support, or let you disable, keyboard re-mapping.
  921.  
  922.  
  923. B15) Miscellaneous Jargon and Abbreviations
  924.  
  925. AV = antivirus.  A commonly used shorthand on Virus-L/comp.virus, as in
  926. "av software".
  927.  
  928. BSI = Boot Sector Infector: a virus that takes control when the computer
  929. attempts to boot.  These are found in the boot sectors of floppy disks,
  930. and the MBRs or boot sectors of hard disks (see B4 for more details).
  931. BSIs are also known as BSVs (Boot Sector Viruses).
  932.  
  933. CMOS = Complementary Metal Oxide Semiconductor: A memory area that is
  934. used in AT class, and higher, PCs for storage of system information.
  935. CMOS is battery backed RAM (see below), originally used to maintain date
  936. and time information while the PC was turned off.  CMOS memory is not in
  937. the normal CPU address space and cannot be executed (see E2 for further
  938. discussion of issues concerning CMOS memory and viruses).
  939.  
  940. DBS = DOS Boot Sector: The first sector of a logical DOS partition on a
  941. hard disk or the first absolute sector of a diskette.  This sector
  942. contains the startup code that actually loads DOS.  This is often
  943. confused with the MBR.  Some boot sector viruses infect the DBS rather
  944. than the MBR when infecting hard disks.
  945.  
  946. DETECTION = The ability of an antivirus program to detect that a virus
  947. is present, without necessarily reporting which particular virus it is
  948. (also see IDENTIFICATION and RECOGNITION, in this section).
  949.  
  950. DOS = Disk Operating System.  We use the term "DOS" to mean any of the
  951. MS-DOS, PC-DOS, DR DOS or Novell DOS systems for PCs and compatibles,
  952. even though there are operating systems called "DOS" on other, unrelated
  953. machines.
  954.  
  955. GERM = The first generation of a virus.  It normally cannot be produced
  956. again during the replication process and is usually created by compiling
  957. the source of the virus.
  958.  
  959. GOAT FILES = Programs which usually do nothing special (e.g., just exit,
  960. or simply display a message), that are used by antivirus researchers to
  961. capture samples of viruses.  This is done to make it easier to
  962. disassemble and understand the virus, because the infected "goat"
  963. program is (usually) simple and does not clutter the disassembly.
  964. Alternative terms are BAIT FILES, DECOY FILES and VICTIM FILES.  In any
  965. of these terms, the word "programs" often replaces the word "files".
  966.  
  967. IDENTIFICATION = The ability of an antivirus program (usually a scanner)
  968. to not only detect the virus and recognize it by name, but also to
  969. recognize it to a high degree of uniqueness.  This allows third parties
  970. to understand which particular virus it is without seeing a sample of
  971. the virus.  EXACT IDENTIFICATION occurs when every section of the non-
  972. modifiable parts of the virus body are uniquely identified.  ALMOST
  973. EXACT IDENTIFICATION occurs if the identification is only good enough to
  974. ensure that an attempt to remove the virus will not result in damage to
  975. the host object by the use of an inappropriate disinfection method (also
  976. see DETECTION and RECOGNITION, in this section).
  977.  
  978. MBR = Master Boot Record: the first absolute sector (track 0, head 0,
  979. sector 1) on a PC hard disk, that usually contains the partition table
  980. but on some PCs may only contain a boot sector.  The MBR is also known
  981. as the MBS (Master Boot Sector).  This is *not* the same as the DOS Boot
  982. Sector, logical sector 0 (see above).
  983.  
  984. PARTITION TABLE = A 64-byte data structure that defines the way a PC's
  985. hard disk is divided into logical sections known as partitions.  While
  986. there is often more than one partition table on a PC's hard disk, the
  987. most important is the one stored *in* the MBR.  This one contains
  988. important extra information such as which partition (if any) should be
  989. booted from.  The partition table is purely data, so is not executed.
  990. Some people erroneously use the term "partition table virus" as a
  991. synonym for "MBR virus".
  992.  
  993. RAM = Random Access Memory: the place programs are loaded into in order
  994. to execute; the significance for viruses is that, to be active, they
  995. must load themselves into part of the RAM.  However, some virus scanners
  996. may declare that a virus is active when it is found in RAM, even though
  997. it may only be left in a buffer area following a disk read operation,
  998. rather than truly being active (see C8 for further discussion of this
  999. issue).
  1000.  
  1001. RECOGNITION = The ability of an antivirus program (usually a scanner) to
  1002. detect a virus and to recognize it by name (also see DETECTION and
  1003. IDENTIFICATION, in this section).
  1004.  
  1005. TARGETING VIRUS = A virus that tries to bypass or hinder the operation
  1006. of one or more *specific* antivirus programs.  Also known as RETALIATOR,
  1007. RETRO and ANTI-ANTIVIRUS viruses.
  1008.  
  1009. SCAN STRING = A sequence of bytes (characters) that occur in a known
  1010. virus but not, one hopes, in legitimate programs.  Some scanners allow
  1011. "wildcards"--positions that are matched by any character--in their scan
  1012. strings.  Authors of virus scanners reduce the likelihood of false
  1013. positives (see B7) by carefully selecting their scan strings and often
  1014. by only searching "likely" parts of target files.
  1015.  
  1016. SEARCH STRING = A synonym for scan string.
  1017.  
  1018. SIGNATURE = A poor synonym for scan string.  We recommend that you avoid
  1019. using this term and use "scan string" or "search string" instead.
  1020.  
  1021. TOM = Top Of Memory: the end of conventional memory--an architectural
  1022. design limit--at the 640KB mark on most PCs.  Some early PCs may not
  1023. have a full 640KB, but the amount of memory is always a multiple of
  1024. 64KB.  A boot-record virus on a PC typically resides just below this
  1025. mark and changes the value which will be reported for the TOM to the
  1026. location of the beginning of the virus so that it won't be overwritten.
  1027. Checking this value for changes can help detect a virus, but there are
  1028. also legitimate reasons why it may change (see C10).  A very few PCs
  1029. with unusual configurations or memory managers may report in excess of
  1030. 640KB.
  1031.  
  1032. TSR = Terminate but Stay Resident: these are PC programs that stay in
  1033. memory while you continue to use the computer for other purposes; they
  1034. include pop-up utilities, network software, and the great majority of
  1035. common viruses.  These can often be seen using utilities such as MEM and
  1036. MSD.
  1037.  
  1038. VX = Virus eXchange.  A shorthand usually reserved for those BBSes and
  1039. FTP sites, and their community of users, that make their virus
  1040. collections "openly" available for downloading.  Exchange of virus
  1041. samples between bona fide members of the antivirus community is not
  1042. tagged with the VX label.
  1043.  
  1044.  
  1045.  
  1046. ================================
  1047. = Section C.   Virus Detection =
  1048. ================================
  1049.  
  1050. C1)  What are the symptoms and indications of a virus infection?
  1051.  
  1052. Many people associate destruction--file corruption, reformatted disks
  1053. and the like--with viruses.  Machines infected with viruses that do this
  1054. kind of damage often display such damages too.  This is unfortunate, as
  1055. usually viruses can be detected or prevented from infecting long before
  1056. they can inflict any (serious) damage, though many viruses have no
  1057. "payload" at all.  Note that viruses that simply reformat the hard disk
  1058. shortly after infecting a machine tend to wipe themselves out faster
  1059. than they spread, so don't get far.
  1060.  
  1061. Thus, the more successful viruses typically try to spread as much as
  1062. possible before delivering their payload, if any.  As these tend to be
  1063. the viruses you are most likely to encounter, you should be aware that
  1064. there are usually symptoms of virus infection before any (or much!)
  1065. damage is done.
  1066.  
  1067. There are various kinds of symptoms that some virus authors have written
  1068. into their programs, such as messages, music and graphical displays.
  1069. The main indications, however, are changes in file sizes and contents,
  1070. changing of interrupt vectors, or the reassignment of other system
  1071. resources.  The unaccounted use of RAM or a reduction in the amount
  1072. reported to be in the machine are important indicators.  Examination of
  1073. program code is valuable to the trained eye, but even a novice can often
  1074. spot the gross differences between a valid boot sector and some viral
  1075. ones.  These symptoms, along with longer disk activity and strange
  1076. behavior from the hardware, may instead be caused by genuine software,
  1077. by harmless "joke" programs, or by hardware faults.
  1078.  
  1079. The only foolproof way to determine that a virus is present is for an
  1080. expert to analyse the assembly code contained in all programs and system
  1081. areas, but this is usually impracticable.  Virus scanners go some way
  1082. towards performing this analysis by looking in that code for known
  1083. viruses; some even use heuristic means to spot "virus-like" code, but
  1084. this is not always reliable.  It is wise to arm yourself with the latest
  1085. antivirus software and to pay close attention to your system.  In
  1086. particular, look for any unexpected change in the memory map or
  1087. configuration as soon as you start the computer.  For users of DOS 5.0+,
  1088. the MEM program with the /C switch is very handy for this.  If you have
  1089. DR DOS, use MEM with the /A switch; if you have an earlier DOS version,
  1090. use CHKDSK or the commonly-available MAPMEM utility.  You don't have to
  1091. know what all the numbers mean, only that they have changed
  1092. *unexpectedly*.  Mac users have "info" options, which give some
  1093. indication of memory use, but may need ResEdit to supply more detailed
  1094. information.
  1095.  
  1096. If you run Windows on your PC and you suddenly start getting messages at
  1097. Windows startup that 32-bit Disk Access cannot be used, this often
  1098. indicates your PC has been infected by a boot-sector virus.
  1099.  
  1100.  
  1101. C2)  What steps should be taken in diagnosing and identifying viruses?
  1102.  
  1103. Most of the time, a virus scanner program will take care of that for
  1104. you.  To help identify problems early, run a virus scanner:
  1105.  
  1106. 1.   On new programs and diskettes (write-protect diskettes before
  1107.      scanning them).
  1108. 2.   When an integrity checker reports a mismatch.
  1109. 3.   When a generic monitoring program sounds an alarm.
  1110. 4.   When you receive an updated version of a scanner (or you have
  1111.      a chance to run a different scanner than the one you have
  1112.      been using).
  1113.  
  1114. Because of the time required, it is not generally advisable to set a
  1115. scanner to check your entire hard disk on every boot.
  1116.  
  1117. If you run into an alarm and your scanner doesn't identify anything or
  1118. doesn't properly clean up for you, first verify that the version you are
  1119. using is the most recent.  Then get in touch with a reputable antivirus
  1120. researcher, who may ask you to send in a copy of the infected file.
  1121. (Also see C9; and F4 if you decide you need to ask for help on Virus-
  1122. L/comp.virus.)
  1123.  
  1124.  
  1125. C3)  What is the best way to remove a virus?
  1126.  
  1127. In order that downtime be short and losses low, do the minimum that you
  1128. must to restore the system to a normal state, starting with booting the
  1129. system from a clean diskette (see G8).  It is *never* necessary to low-
  1130. level format a hard disk to recover from a virus infection!
  1131.  
  1132. If backups of infected or damaged files are available and, in making
  1133. them, appropriate care was taken to ensure that infected files have not
  1134. been included in the backups (see D10), restoring from backup is the
  1135. safest solution, even though it can be a lot of work if many files are
  1136. involved.
  1137.  
  1138. More commonly, a disinfecting program is used, though disinfection is
  1139. somewhat controversial and problematic (see E8).  If the virus is a boot-
  1140. sector infector, you can continue using the computer with relative
  1141. safety (if the hard disk's partition table is left intact) by booting
  1142. from a clean system diskette.  However, it is wise to go through all
  1143. your diskettes removing any infections as, sooner or later, you will be
  1144. careless and leave an infected diskette in the machine when it reboots,
  1145. or give an infected diskette to a someone who doesn't have appropriate
  1146. defenses to avoid infection.
  1147.  
  1148. Most PC boot-sector infections can be cured by the following simple
  1149. process--pay particular care to make the checks in Steps 2 and 3.
  1150.  
  1151. Note that removing an MBR virus in the following way may not be
  1152. desirable, and may even cause valuable information to be lost.  For
  1153. instance, the One_Half virus gradually encrypts the infected hard drive
  1154. "inwards" (starting from the "end" and moving towards the beginning),
  1155. encrypting two more tracks at each boot.  The information about the size
  1156. of the encrypted area is *only* stored in the MBR.  If the virus is
  1157. removed using the method above, this information will be irrecoverably
  1158. lost and part of the disk with unknown size will remain encrypted.
  1159.  
  1160. 1.   Boot the PC from a clean system floppy--this must be MS-DOS
  1161.      5.0 or version 6.0 or higher of PC-DOS or DR DOS.  This
  1162.      diskette should carry copies of the DOS utilities MEM, FDISK,
  1163.      CHKDSK, UNFORMAT and SYS.  (See G8 for help on making an
  1164.      emergency boot diskette.)
  1165.  
  1166. 2.   Check that your memory configuration is "normal" with MEM
  1167.      (see C10 for assistance here).  Check that your hard disk
  1168.      partitioning is normal--run FDISK and use the "Display
  1169.      partition information" option to check this.  MS-DOS 5.0 (or
  1170.      later) users can use UNFORMAT /L /PARTN.
  1171.  
  1172. 3.   Try doing a DIR of your hard disk/s (C:, D:, etc).
  1173.  
  1174.      You should continue with Step 4 *only* if all the tests in
  1175.      Step 2 and this step pass.  Do *NOT* continue if you were
  1176.      unable to correctly access *all* your hard disks, as you will
  1177.      quite possibly damage critical information making permanent
  1178.      data damage or loss more likely.
  1179.  
  1180. 4.   Replace the program (code) part of the MBR by using the MS-,
  1181.      or PC-DOS FDISK /MBR command.  If you use DR DOS 6.0, or
  1182.      later, select the FDISK menu option "Re-write Master Boot
  1183.      Record".
  1184.  
  1185. 5.   Replace the DOS boot sector using the command SYS C: (or
  1186.      whatever is correct for your first hard disk partition).  For
  1187.      this step, the version of DOS on your boot diskette must be
  1188.      *exactly* the same as is installed on your hard disk (this
  1189.      may mean you have to first reboot with a clean boot diskette
  1190.      other than that used in Step 1).  If you are using a disk
  1191.      compression system, such as DoubleSpace of DriveSpace, check
  1192.      the documentation on how to locate the physical drive on
  1193.      which the compressed volume is installed, and apply the SYS
  1194.      command to that instead.  Usually this is drive H: or I:.
  1195.  
  1196. 6.   Reboot from your hard disk and check that all is well--if not
  1197.      (which is unlikely if you made the recommended checks), seek
  1198.      expert help.
  1199.  
  1200. 7.   As you will get re-infected by forgetting an infected
  1201.      diskette in your A: drive at boot time, you have to clean all
  1202.      your floppies as well.  This is harder, as there is no simple
  1203.      way of doing this with standard DOS tools.  You can copy the
  1204.      files from each of your floppies, re-format them and copy the
  1205.      files back, but this is a very tedious process (and prone to
  1206.      destructive errors!).  At this point you probably should
  1207.      consider obtaining some good antivirus software.
  1208.  
  1209. FDISK /MBR will only overwrite the boot loader code in the MBR of the
  1210. *first* hard drive in a system.  However, a few viruses will infect both
  1211. drives in a two drive system.  Although the second hard drive is never
  1212. booted from in normal PC configurations, should the second drive from
  1213. such a machine ever be used as the first drive in a system, it will
  1214. still be infected and in need of disinfecting.
  1215.  
  1216.  
  1217. C4)  What does the <insert name here> virus do?
  1218.  
  1219. If an antivirus program has detected a virus on your computer, don't
  1220. rush to post a question to this list asking what it does.  First, it
  1221. might be a false positive alert (especially if the virus is found only
  1222. in one file--see C5), and second, some viruses are extremely common, so
  1223. questions like "What does the Jerusalem virus do?" or "What does the
  1224. Stoned virus do?" are asked here repeatedly.  While this list is read by
  1225. several antivirus experts, they get tired of perpetually answering the
  1226. same questions over and over again.  In any case, if you really need to
  1227. know what a particular virus does (as opposed to knowing enough to get
  1228. rid of it), you will need a longer treatise than could be given here.
  1229.  
  1230. For example, the Stoned virus replaces the disk's boot record with its
  1231. own, relocating the original to a sector on the disk that may (or may
  1232. not) occur in an unused portion of the root directory of a DOS diskette;
  1233. when active, it sits in an area a few kilobytes below the top of memory.
  1234. All this description could apply to a number of common viruses; but the
  1235. important points of where the original boot sector goes--and what effect
  1236. that has on networking software, non-DOS partitions, and so on--are all
  1237. major questions in themselves.
  1238.  
  1239. Therefore, it is better if you first try to answer your question
  1240. yourself.  There are several sources of information about the known
  1241. computer viruses, so please consult one of them before requesting
  1242. information publicly.  Chances are that your virus is rather well known
  1243. and that it is already described in detail in at least one of these
  1244. sources (see A6 for some help in finding these.)
  1245.  
  1246.  
  1247. C5)  What are "false positives" and "false negatives"?
  1248.  
  1249. A FALSE POSITIVE (or Type-I) error is one in which antivirus software
  1250. claims that a given object is infected by a virus when, in reality, the
  1251. object is clean.  This is a failure of *detection* (see B15).  A FALSE
  1252. NEGATIVE (or Type-II) error is one in which the software fails to
  1253. indicate that an infected object is infected.  Clearly false negatives
  1254. are more serious than false positives, although both are undesirable.
  1255.  
  1256. Following from some of Fred Cohen's work, it has been proven that every
  1257. virus detector must have an infinite number of false positives, false
  1258. negatives, or both.  This is expressed by saying that detection of
  1259. viruses, either by appearance or behavior, is UNDECIDABLE.  The
  1260. interpretation and practical significance of this depends upon the
  1261. interpretation of the terms used, and as with Fred's definition of the
  1262. term "computer virus", there is some debate over this.
  1263.  
  1264. In the case of virus scanners, false positives are rare, but they can
  1265. arise if the scan string chosen for a given virus is also present in
  1266. some benign objects because the string was not well chosen.  In modern
  1267. scanners, most false positives probably occur because some virus
  1268. encryption engines produce very "normal looking" code and scanners that
  1269. only try to decide if a piece of code could have been generated by a
  1270. known virus encryption procedure will occasionally detect "innocent"
  1271. code as "suspicious".  False negatives are more common with virus
  1272. scanners because scanners will miss completely new or heavily modified
  1273. viruses.
  1274.  
  1275. One other serious problem could occur:  A positive that is misdiagnosed.
  1276. As an example, imagine a scanner faced with the Empire virus in a boot
  1277. record that reports it as the Stoned virus.  In this case, use of a
  1278. Stoned-specific "cure" to recover from an Empire infection could result
  1279. in an unreadable disk or loss of extended partitions.  Similarly,
  1280. sometimes "generic" disinfection (see D1) can result in unusable files,
  1281. unless a check is made (e.g. by comparing checksums) that the recovered
  1282. file is identical to the original file.  The better generic disinfection
  1283. products all store information about the original files to allow
  1284. verification of recovery processes.
  1285.  
  1286. A particular type of false positive, where (part of) an *inactive* virus
  1287. is detected, is known as a GHOST POSITIVE.  Ghost positives usually
  1288. occur in one of four situations (the first two of which are examples of
  1289. antivirus programs "upsetting" each other):
  1290.  
  1291. Ghost positives can be caused when the disinfection routine of an
  1292. antivirus program "unhooks" a virus from its target (be it a file or
  1293. boot sector) but it does so in such a way that part of the virus code is
  1294. left intact (though that code will never be executed).  Another
  1295. antivirus program might see this code and report it is an infection.  In
  1296. this case the second antivirus program is seeing a "ghost"--part of a
  1297. virus that was there.
  1298.  
  1299. A scanner may "see" the unencoded scan strings of another scanner, left
  1300. in memory after the first has run or held in memory by a resident
  1301. scanner, and report these "ghosts" as active viruses (see C6 and C8).
  1302.  
  1303. As explained elsewhere (see E10) a copy of an infected diskette boot
  1304. sector, sitting in the disk buffers, may be detected and reported as an
  1305. active virus.
  1306.  
  1307. Disinfection procedures can result in virus "remnants" being left in
  1308. "slack space" (disk space allocated to files but not actually occupied).
  1309. As in the case of copies of infected diskette boot sectors being held in
  1310. disk buffers, these remnants can be detected and incorrectly reported as
  1311. being active.  Ghost positives of this nature should disappear after
  1312. running disk defragmentation or "optimization" programs with the option
  1313. to "clean" slack space.  Occasionally running a defragmenter (like MS-
  1314. DOS 6's DEFRAG) after a full data backup (see D10), is a good idea
  1315. anyway--especially before installing new software.  Unfortunately, DOS's
  1316. DEFRAG does not have a "clean slack space" option, though some third-
  1317. party defragmenters do.  There are also utilities that clean unallocated
  1318. and slack space and these should remove ghost positives caused by
  1319. "remnants".
  1320.  
  1321.  
  1322. C6)  Could an antivirus program itself be infected?
  1323.  
  1324. Yes, so it is important to obtain this software from good sources, and
  1325. to trust results only after running scanners from a "clean" system.  But
  1326. there are situations where a scanner appears to be infected when it
  1327. isn't.
  1328.  
  1329. Most antivirus programs try very hard to identify viral infections only,
  1330. but sometimes they give false alarms (see C5).  If two different
  1331. antivirus programs are both of the "scanner" type, they will contain
  1332. "scan strings" from which they identify viral infections.  If the
  1333. strings are not "encoded", then they may be identified as a virus by
  1334. another scanner type program.  Also, if the scanner does not remove the
  1335. strings from memory after it has run, then another scanner may detect a
  1336. virus string "in memory".  This often causes the second scanner to
  1337. report that your system is "infected", *but* only after you have run the
  1338. first scanner (which may be a memory resident one).  The major
  1339. contributors to this group are so tired of dealing with non-virus
  1340. reports of this sort that they *strongly* recommend users to avoid
  1341. antivirus software which doesn't keep its scan strings encoded in
  1342. memory.
  1343.  
  1344. Some "change detection" antivirus programs add a snippet of code or data
  1345. to a program in order to "protect" it.  (This process is sometimes
  1346. called "inoculation", but this term is also used for other antivirus
  1347. techniques.)  These file changes will likely be detected by other
  1348. "change detection" programs, and may therefore raise a warning of a
  1349. suspicious file change (see F8 for a discussion of the inadvisability of
  1350. adding self-checking code to *existing* programs).
  1351.  
  1352. It is good practice to use more than one antivirus program but, by their
  1353. nature, multiple antivirus programs may confuse each other!
  1354.  
  1355.  
  1356. C7)  Where can I get a virus scanner for my Unix system?
  1357.  
  1358. Basically, you shouldn't bother scanning for Unix viruses at this point
  1359. in time.  Although it is possible to write Unix-based viruses we have
  1360. yet to see any instance of a non-experimental virus in that environment.
  1361. Someone with sufficient knowledge and access to write an effective virus
  1362. would be more likely to conduct other activities than virus-writing.
  1363. Furthermore, the typical form of software sharing in the Unix
  1364. environment does not support virus spread as easily as some others.
  1365.  
  1366. This answer is not meant to imply that Unix viruses are impossible, or
  1367. that there aren't security problems in a typical Unix environment--there
  1368. are, and Fred Cohen's first experimental virus was implemented and
  1369. tested on a Unix system.  True viruses in the Unix environment are,
  1370. however, unlikely to spread well.  For more information on Unix
  1371. security, see the book "Practical Unix Security" by Garfinkel and
  1372. Spafford, O'Reilly & Associates, 1991, price $29.95 (it can be ordered
  1373. via e-mail from nuts@ora.com).
  1374.  
  1375. There *are* special cases in which scanning Unix systems for non-Unix
  1376. viruses does make sense.  For example, a Unix system acting as a file
  1377. server (e.g., PC-NFS) for PC systems is quite capable of containing PC
  1378. file infecting viruses that are a danger to PC clients.  Note that, in
  1379. this example, the Unix system would be scanned for PC viruses, not Unix
  1380. viruses.  Also, *any* PC is vulnerable to PC MBR infectors, so special
  1381. care should be taken to prevent booting a PC hosted Unix OS from a
  1382. floppy infected with an MBR virus (see C12).
  1383.  
  1384. In addition, a file integrity checker (to detect unauthorized changes in
  1385. executable files) on Unix systems is a very good idea.  (One free
  1386. program that can do this test, as well as other tests, is Tripwire,
  1387. available by anonymous FTP from its "home" site of coast.cs.purdue.edu
  1388. in /pub/COAST/Tripwire, and from several other antivirus sites.)
  1389. Unauthorized file changes on Unix systems are very common, although they
  1390. are not usually due to virus activity.
  1391.  
  1392.  
  1393. C8)  Why does my scanner report an infection only sometimes?
  1394.  
  1395. There are circumstances where part of a virus exists in RAM without
  1396. being active.  If your scanner occasionally reports a virus in memory,
  1397. it could be due to the operating system buffering diskette reads or
  1398. harmlessly keeping disk contents that include a virus in memory, or
  1399. after running another scanner, there may be scan strings left (again
  1400. harmlessly) in memory.  These are known as GHOST POSITIVE alerts (see C5
  1401. for more details).
  1402.  
  1403.  
  1404. C9)  I think I have detected a new virus; what do I do?
  1405.  
  1406. Whenever there is doubt over a virus, you should obtain the latest
  1407. versions of several (not just one) major virus scanners.  Some scanning
  1408. programs now use "heuristic" methods (F-PROT and TBSCAN are examples),
  1409. and "activity monitoring" programs can report a program as being
  1410. possibly infected when it is in fact perfectly safe (odd, perhaps, but
  1411. not infected).  If no scanner finds a virus, but a heuristic program
  1412. raises some alarms (or there are other reasons to suspect a virus--e.g.
  1413. change in size of files, change in memory allocation) then it is
  1414. possible that you have found a new virus, although the chances are
  1415. probably greater that it is an "odd but okay" disk or file.  Start by
  1416. looking in recent Virus-L/comp.virus postings for "known" false
  1417. positives, then contact the author of the antivirus software that
  1418. reports the virus-like features; the documentation for the software may
  1419. have a section explaining what to do if you think you have found a new
  1420. virus.
  1421.  
  1422.  
  1423. C10) CHKDSK reports 639K (or less) total memory on my DOS system; am I
  1424.      infected?
  1425.  
  1426. If CHKDSK displays 639KB (654,336 bytes) for the total memory instead of
  1427. 640K (655,360 bytes)--so that you are missing only 1KB-- it is possibly
  1428. due to reasons other than a virus, but there are a few common viruses
  1429. that take only 1KB from total memory (Monkey and AntiEXE).  Non-virus
  1430. reasons for a deficiency of 1KB include:
  1431.  
  1432. 1.   A PS/2 computer.  IBM PS/2 computers reserve 1KB of
  1433.      conventional RAM for an Extended BIOS Data Area, i.e. for
  1434.      additional data storage required by its BIOS.
  1435. 2.   A computer with a BIOS, which is set to use the upper 1KB of
  1436.      memory for its internal variables.  (Most BIOSes with this
  1437.      option can be instructed to use lower memory instead.)
  1438. 3.   Some SCSI controllers.
  1439. 4.   The DiskSecure antivirus program.
  1440. 5.   Mouse buffers for older Compaqs.
  1441.  
  1442. If you are missing 2KB or more from the 640KB, 512KB, or whatever the
  1443. conventional memory normally is for your PC, the chances are greater
  1444. that you have a boot-record virus (e.g. Stoned, Form or Michelangelo),
  1445. although, even in this case there may be legitimate reasons for the
  1446. missing memory:
  1447.  
  1448. 1.   Many access control programs for preventing booting from a
  1449.      floppy.
  1450. 2.   H/P Vectra computers.
  1451. 3.   Some special BIOS'es which use memory for a built-in calendar
  1452.      and/or calculator.
  1453.  
  1454. However, these are only rough guides.  In order to be more certain
  1455. whether the missing memory is due to a virus, you should:
  1456.  
  1457. 1.   run several virus detectors;
  1458. 2.   look for a change in total memory every now and then;
  1459. 3.   compare the total memory size with that obtained when cold
  1460.      booting from a "clean" system diskette.  The latter should
  1461.      show the normal amount of total memory for your configuration
  1462.      (although several BIOSes now steal 1KB of conventional memory
  1463.      when booted from floppy but none when booting from a hard
  1464.      drive).
  1465.  
  1466. Note:  In all cases, CHKDSK should be run without software such as MS-
  1467. Windows or DesqView loaded, since these operating environments seem to
  1468. be able to open DOS boxes only on 1KB boundaries (some seem to be even
  1469. coarser); thus CHKDSK run from a DOS box may report unrepresentative
  1470. values.
  1471.  
  1472. Note also that some machines have only 512KB or 256KB instead of 640KB
  1473. of conventional memory.
  1474.  
  1475.  
  1476. C11) I have an infinite loop of sub-directories on my hard drive; am I
  1477.      infected?
  1478.  
  1479. Probably not.  This happens now and then, when something sets the
  1480. "cluster number" field of a subdirectory to the same cluster as an upper-
  1481. level (usually the root) directory.  On PCs the /F parameter of CHKDSK
  1482. should be able to "fix" this (as should many other popular disk-repair
  1483. programs), usually by removing the offending directory.  *Don't* erase
  1484. any of the "replicated" files in the "odd" directory, since that will
  1485. erase the "copy" in the root as well (these are not really copies at
  1486. all; just a second pointers to the same files).
  1487.  
  1488.  
  1489. C12) Can a PC not running DOS be infected with a common DOS virus?
  1490.  
  1491. Yes!  There are three distinct possibilities here.
  1492.  
  1493. One is Novell's NetWare (and possibly other network operating systems),
  1494. which boots from a DOS disk and loads a "standard" DOS executable that
  1495. takes complete control of the system from DOS.  This executable--
  1496. SERVER.EXE--could easily be infected by a DOS file infector.  For
  1497. example, a server's NetWare boot diskette may have to be taken from the
  1498. server to a DOS PC to edit some of the configuration and startup files
  1499. that have to be on that diskette.  If the PC where the editing is done
  1500. is infected with a file infecting virus, SERVER.EXE may well be infected
  1501. when the new startup files are saved to the diskette.  Such infections
  1502. are virtually guaranteed to render SERVER.EXE inoperative and the server
  1503. would fail at its next restart.  No viruses are known to target the
  1504. NetWare kernel specifically.
  1505.  
  1506. Another possibility is the case of a 386 (or better) system running
  1507. NetWare or a self-loading OS, such as Unix, NeXTStep486, Windows NT or
  1508. OS/2, since this system is still vulnerable to infection by MBR
  1509. infectors (such as Stoned or Michelangelo), as these are operating
  1510. system independent.  Note that an infection on such a system may result
  1511. in the disabling of non-DOS disk partitions (possibly beyond easy
  1512. recovery) because the tricks and system conventions these viruses employ
  1513. may not apply to operating systems other than DOS.  The issue here is
  1514. that MBR infectors are not really "DOS viruses" so much as "PC-BIOS
  1515. viruses"--they can infect any machine with a PC-compatible BIOS.
  1516.  
  1517. Third, *any* OS that offers a "DOS box" or "DOS emulator" to run DOS
  1518. programs can, potentially, run a virus-infected DOS program.  Such
  1519. activation of a virus should allow the virus to spread to any "targets"
  1520. available to it under that DOS emulator.  For example, a DOS program
  1521. infected with a multipartite virus, when run under OS/2 would probably
  1522. be able to infect other DOS executables, but not the MBR/DBS, as OS/2
  1523. only allows programs to read these critical areas of the hard drive (see
  1524. E12 for more details on DOS viruses running under OS/2).  With the
  1525. increasing sophistication and power of computing environments, DOS
  1526. emulators running on non-PC computers are increasingly available and
  1527. able to run DOS viruses.
  1528.  
  1529.  
  1530. C13) My hard-disk's file system has been garbled:  Do I have a virus?
  1531.  
  1532. Many things apart from viruses cause corruption of file systems.
  1533.  
  1534. With DOS machines possibly the most common is Microsoft's SmartDrive
  1535. disk cache program that came with Microsoft Windows 3.1 and subsequent
  1536. versions of MS-DOS.  Most versions of this software not only cache disk-
  1537. reads but, by default, also cache disk-writes.  This means that recently
  1538. "written" files (say from saving a document in your word processor) may
  1539. not have all the information about the associated file system updates
  1540. written to disk by the time you exit the application, close Windows and
  1541. turn off your PC.  Users who simply save work then turn their PC off are
  1542. even more likely to suffer from disk caching induced problems like this.
  1543.  
  1544. Regardless of what caused your file-system corruption, you should
  1545. probably seek expert help *before* trying to fix anything yourself.
  1546. While there are many powerful and interesting-sounding utilities of the
  1547. "disk fix" kind available, *all* of these have the stunning ability to
  1548. render your file system all but unfixable (or at least, fixable to a
  1549. much lesser degree) when presented with unusual situations their authors
  1550. hadn't considered when designing the programs.  Unfortunately, as these
  1551. programs (by definition) do not recognize these situations, they
  1552. confidently pronounce that you have such-and-such a problem then ask
  1553. your permission to fix it.  Even when these utilities have "undo"
  1554. options, they often cannot restore your file system to its originally
  1555. "broken" state to give human experts their best shot at fixing it.
  1556. Thus, detecting whether it is safe to let one of these programs loose on
  1557. your disks is something you should normally seek expert help in
  1558. deciding.
  1559.  
  1560.  
  1561.  
  1562. =================================
  1563. = Section D.   Protection plans =
  1564. =================================
  1565.  
  1566. D1)  What is the best antivirus program?
  1567.  
  1568. None!  Different products are more or less appropriate in different
  1569. situations, but in general you should build a cost-effective *strategy*
  1570. based on multiple layers of defense.  There are three main kinds of
  1571. antivirus software, plus several other means of protection, such as
  1572. hardware write-protect methods (see D4).  When planning your antivirus
  1573. strategy you should also look closely at your backup policies and
  1574. procedures (see 10).
  1575.  
  1576. 1.   ACTIVITY MONITORING programs.  These try to prevent infection
  1577.      before it happens by looking for virus-like activity, such as
  1578.      attempts to write to another executable, reformat the disk,
  1579.      etc.  An alternative term is BEHAVIOR BLOCKER.
  1580.  
  1581.      Examples: SECURE and FluShot+ (PC), and GateKeeper
  1582.      (Macintosh).
  1583.  
  1584.      These programs are considered the weakest line of defense
  1585.      against viruses on a system that does not have memory
  1586.      protection, because in such an environment it is possible for
  1587.      a tunnelling virus (see B12) to bypass or disable them.
  1588.  
  1589. 2.   SCANNERS.  Most look for known viruses by searching your
  1590.      disks and files for "scan strings" or patterns, but a few use
  1591.      heuristic techniques to recognize viral code.  Most now also
  1592.      include some form of "algorithmic scanning" in order to
  1593.      detect known polymorphic viruses.  A scanner may be designed
  1594.      to examine specified disks or files on demand, or it may be
  1595.      resident, examining each program which is about to be
  1596.      executed.  Most scanners also include virus removers.
  1597.  
  1598.      Examples:  FindViru in Dr Solomon's AntiVirus ToolKit, Frisk
  1599.      Software's F-PROT, McAfee's VirusScan (all PC), Disinfectant
  1600.      (Macintosh).
  1601.  
  1602.      Resident scanners:  McAfee's V-Shield, and F-PROT's VIRSTOP.
  1603.  
  1604.      Heuristic scanners:  the Analyse option in F-PROT, TBAV's
  1605.      TbScan and ChkBoot (from Padgett Peterson's FixUtils).
  1606.  
  1607.      Scanners are the most convenient and the most widely used
  1608.      kind of antivirus programs. They are a relatively weak line
  1609.      of defense because even the simplest virus can bypass them if
  1610.      it is new and unknown to the scanner.  Therefore, your virus
  1611.      protection system should not rely on a scanner alone.
  1612.  
  1613. 3.   INTEGRITY CHECKERS or MODIFICATION DETECTORS.  These compute
  1614.      a small "checksum" or "hash value" (usually CRC or
  1615.      cryptographic) for files when they are presumably uninfected,
  1616.      and later compare newly calculated values with the original
  1617.      ones to see if the files have been modified.  This catches
  1618.      unknown viruses as well as known ones and thus provides
  1619.      *generic* detection.  On the other hand, modifications can
  1620.      also be due to reasons other than viruses.  Usually, it is up
  1621.      to the user to decide which modifications are intentional and
  1622.      which might be due to viruses, although a few products give
  1623.      the user help in making this decision.  As in the case of
  1624.      scanners, integrity checkers may be called to checksum entire
  1625.      disks or specified files on demand, or they may be resident,
  1626.      checking each program which is about to be executed (the
  1627.      latter is sometimes called an INTEGRITY SHELL).  A third
  1628.      implementation is as a SELF-TEST, where the checksumming code
  1629.      is attached to each executable file so they check themselves
  1630.      just before execution.  It is generally considered a bad idea
  1631.      to add such code to existing executables (see F8).
  1632.  
  1633.      Examples: ASP Integrity Toolkit (commercial), and Integrity
  1634.      Master and VDS (shareware), all for the PC.
  1635.  
  1636.      Integrity checkers are considered to be the strongest line of
  1637.      defense against computer viruses, because they are not virus-
  1638.      specific and can detect new viruses without being constantly
  1639.      updated.  However, they should not be considered as an
  1640.      absolute protection--they have several drawbacks, cannot
  1641.      identify the particular virus that has attacked the system,
  1642.      and there are successful methods of attack against them too.
  1643.  
  1644. 3a.  Some modification detectors provide HEURISTIC DISINFECTION.
  1645.      Sufficient information is saved for each file so that it can
  1646.      be restored to its original state in the case of the great
  1647.      majority of viral infections, even if the virus is unknown.
  1648.  
  1649.      Examples: V-Analyst 3 (BRM Technologies, Israel), the VGUARD
  1650.      module of V-Care and ThunderByte's TbClean.
  1651.  
  1652. Note that behavior blockers and scanners are virus *prevention* tools,
  1653. while integrity checkers are virus *detection* tools.
  1654.  
  1655. Of course, only a few examples of each type have been given.  All of
  1656. these types of antivirus program have a place in protecting against
  1657. computer viruses, but you should appreciate the limitations of each
  1658. method, along with system-supplied security measures that may or may not
  1659. be helpful in defeating viruses.  Ideally, you should arrange a
  1660. combination of methods that cover each others' weaknesses.
  1661.  
  1662. A typical PC installation might include a protection system on the hard
  1663. disk's MBR to protect against viruses at load time (ideally this would
  1664. be hardware or in BIOS, but software methods such as DiskSecure and
  1665. Henrik Stroem's HS are pretty good).  This would be followed by resident
  1666. virus detectors loaded as part of the machine's startup (CONFIG.SYS or
  1667. AUTOEXEC.BAT), such as FluShot+ and/or VirStop and/or ChkBoot.  A
  1668. scanner such as F-PROT or McAfee's VirusScan and an integrity checker,
  1669. such as Integrity Master, could be put into AUTOEXEC.BAT, but this may
  1670. be a problem if you have a large disk to check, or don't reboot often
  1671. enough.  Most importantly, new files and diskettes should be scanned as
  1672. they arrive *regardless* of their source.  If your system has DR DOS
  1673. installed, you should use the PASSWORD command to write-protect all
  1674. system executables and utilities.  If you have Stacker or SuperStor, you
  1675. can get some improved security from these compressed drives, but also a
  1676. risk that those viruses stupid enough to directly write to the disk
  1677. could do much more damage than normal.  In this case a software write-
  1678. protect system (such as provided with Disk Manager or The Norton
  1679. Utilities) may help.  Possibly the best solution is to put all
  1680. executables on a disk of their own, with a hardware write-protect system
  1681. that sounds an alarm if a write is attempted.
  1682.  
  1683. If you do use a resident BSI detector or a scan-while-you-copy detector,
  1684. it is important to trace back any infected diskette to its source.  The
  1685. reason viruses survive so well is that usually you cannot do this,
  1686. because the infection is found long after the infecting diskette has
  1687. been forgotten due to most people's lax scanning policies.
  1688.  
  1689. Organizations should devise and implement a careful policy that may
  1690. include a system of vetting new software brought into the building and
  1691. free virus detectors for home machines of employees/students/etc who
  1692. take work home with them.
  1693.  
  1694. Other antivirus techniques include:
  1695.  
  1696. 1.   Creation of a special MBR to make the hard disk inaccessible
  1697.      when booting from a diskette (the latter is useful since
  1698.      booting from a diskette will normally bypass any protection
  1699.      measures loaded in the CONFIG.SYS and/or AUTOEXEC.BAT files
  1700.      on the hard disk).
  1701.  
  1702.      Some of these systems won't prevent attack by some MBR virus
  1703.      infections if booting from an infected floppy.  This approach
  1704.      is less important now, as most newer PCs allow you to change
  1705.      the boot order so the first hard drive is tried *before* any
  1706.      of the floppy drives.
  1707.  
  1708. 2.   Use of Artificial Intelligence to learn about new viruses and
  1709.      extract scan patterns for them.
  1710.  
  1711.      Examples: V-Care (CSA Interprint, Israel; distributed in the
  1712.      US by Sela Consultants Corp.), Victor Charlie (Bangkok
  1713.      Security Associates, Thailand; distributed in the US by
  1714.      Computer Security Associates).
  1715.  
  1716. 3.   Encryption of files (with decryption before execution).
  1717.  
  1718. 4.   Diskette "fences".  There are three different approaches to
  1719.      this.  One prevents executables from being accessed from
  1720.      floppy drives while another prohibits the use of unscanned
  1721.      (possibly "unclean") files or diskettes.  A third method uses
  1722.      a non-standard diskette format so diskettes can only be used
  1723.      on (and therefore shared among) machines using the
  1724.      appropriate antivirus software (usually all those within a
  1725.      site or company).  This last method is probably the most
  1726.      common diskette fence and provides better protection against
  1727.      boot sector viruses than the other "fence" types.
  1728.  
  1729.      The workings of the first and third are probably fairly clear
  1730.      from these brief descriptions.  The second approach works by
  1731.      writing special information to normally unused areas of the
  1732.      diskette as part of the scanning process and employing a
  1733.      driver in the users' machines prevents access to files that
  1734.      aren't marked as scanned (or to any part of a diskette that
  1735.      contains unscanned files).  Alternatives include encrypting
  1736.      scanned files and drivers that only allow access to encrypted
  1737.      files, and so on.  One advantage of this second type of
  1738.      system is that you only need scanners for "perimeter
  1739.      checking" machines, reducing the overhead and cost of keeping
  1740.      your scanners up to date.
  1741.  
  1742.      Examples: D-Fence, Virus Fence, TbFence, DiskNet.
  1743.  
  1744.  
  1745. D2)  Is it possible to protect a computer system with only software?
  1746.  
  1747. Not perfectly; although software defenses can significantly reduce your
  1748. risk of being affected by viruses *when applied appropriately*.  All
  1749. virus defense systems are tools--each with its own capabilities and
  1750. shortcomings.  Learn how your system works and be sure to work within
  1751. its limitations.
  1752.  
  1753. Using a layered approach, a very high level of protection/detection can
  1754. be achieved with software only.
  1755.  
  1756. 1.   ROM BIOS--password (access control) and selecting to boot
  1757.      from the hard drive rather than from diskette.  (Some may
  1758.      consider this hardware.)
  1759. 2.   Boot sectors--integrity management and change detection.
  1760. 3.   OS programs--integrity management of existing programs,
  1761.      scanning of unknown programs.  Requirement of authentication
  1762.      values for any new or transmitted software.
  1763. 4.   Locks that prevent writing to a fixed or floppy disk.
  1764.  
  1765. As each layer is added, undetected invasion becomes more difficult.
  1766. Nevertheless, complete protection against any possible attack cannot be
  1767. provided without dedicating the computer to pre-existing or unique
  1768. tasks.  International standardization on the IBM PC architecture is both
  1769. its greatest asset and its greatest vulnerability.
  1770.  
  1771.  
  1772. D3)  Is it possible to write-protect the hard disk with software only?
  1773.  
  1774. The answer is no.  There are several programs that claim to do this, but
  1775. *all* of them can be bypassed with techniques already used by some
  1776. viruses.  Therefore you should never rely on such programs *alone*,
  1777. although they can be useful in combination with other antivirus
  1778. measures.
  1779.  
  1780.  
  1781. D4)  What can be done with hardware protection?
  1782.  
  1783. Hardware protection can accomplish various things, including: write
  1784. protection for hard disk drives, memory protection, monitoring and
  1785. trapping unauthorized system calls, etc.  Again, no single tool will be
  1786. foolproof and the "stronger" hardware-based protection is, the more
  1787. likely it will interfere with the "normal" operation of your computer.
  1788.  
  1789. The popular idea of write-protection (see D3) may stop viruses
  1790. *spreading* to the disk that is protected, but doesn't, in itself,
  1791. prevent a virus from *running*.
  1792.  
  1793. Also, some existing hardware protection schemes can be easily bypassed,
  1794. fooled, or disconnected, if the virus writer knows them well and designs
  1795. a virus that is aware of the particular defense.
  1796.  
  1797. The big problem with hardware protection is that there are few (if any)
  1798. operations that a general-purpose computer can perform that are used by
  1799. viruses *only*.  Therefore, making a hardware protection system for such
  1800. a computer typically involves deciding on some (small) set of operations
  1801. that are "valid but not normally performed except by viruses", and
  1802. designing the system to prevent these operations.  Unfortunately, this
  1803. means either designing limitations into the level of protection the
  1804. hardware system provides or adding limitations to the computer's
  1805. functionality by installing the hardware protection system.  Much can be
  1806. achieved, however, by making the hardware "smarter".  This is double-
  1807. edged: while it provides more security, it usually means adding a
  1808. program in an EPROM to control it.  This allows a virus to locate the
  1809. program and to call it directly after the point that allows access.  It
  1810. is still possible to implement this correctly though--if this program is
  1811. not in the address space of the main CPU, has its own CPU and is
  1812. connected directly to the hard disk and the keyboard.  As an example,
  1813. there is a PC-based product called ExVira which does this and seems
  1814. fairly secure, but it is a whole computer on an add-on board and is
  1815. quite expensive.
  1816.  
  1817.  
  1818. D5)  Does setting a file's attributes to READ ONLY protect it from
  1819.      viruses?
  1820.  
  1821. Generally, no.  While the Read Only attribute will protect your files
  1822. from a few viruses, most simply override it, and infect normally.  So,
  1823. while setting executable files to Read Only a good idea (it protects
  1824. against accidental deletion), it is certainly not a thorough protection
  1825. against viruses!
  1826.  
  1827. In some environments the Read Only attribute does provide some
  1828. additional protection.  For instance, under Novell Netware a user can be
  1829. denied the right to modify file attributes in directories on the server.
  1830. This means that a virus that infects such a user's machine will be
  1831. unable to infect files in those server directories if the files have
  1832. their Read Only attribute set.
  1833.  
  1834.  
  1835. D6)  Do password/access control systems protect my files from viruses?
  1836.  
  1837. All password and other access control systems are designed to protect
  1838. the user's data from other users and/or their programs.  Remember,
  1839. however, that when you execute an infected program the virus in it will
  1840. gain your current rights/privileges.  Therefore, if the access control
  1841. system provides *you* the right to modify some files, it will provide it
  1842. to the virus too.  Note that this does not depend on the operating
  1843. system used--DOS, Unix, or whatever.  Therefore, an access control
  1844. system will protect your files from viruses no better than it protects
  1845. them from you.
  1846.  
  1847. Under DOS, there is no memory protection, so a virus could disable the
  1848. access control system in memory, or even patch the operating system
  1849. itself.  On more advanced operating systems (Unix, OS/2, Windows NT)
  1850. this is much harder or impossible, so there is much less risk that such
  1851. protection measures could be disabled by a virus.  Even so, viruses will
  1852. still be able to spread, for the reasons noted above.  In general,
  1853. access control systems (if implemented correctly) are only able to slow
  1854. down virus spread, not to eliminate viruses entirely.
  1855.  
  1856. Of course, it's better to have access control than not to have it at
  1857. all.  Just be sure to not develop a false sense of security or come to
  1858. rely *entirely* on your access control system to protect you.
  1859.  
  1860.  
  1861. D7)  Do the protection systems in DR DOS work against viruses?
  1862.  
  1863. Partially.  Neither the password file/directory protection available
  1864. from DR DOS version 5 onwards, nor the secure disk partitions from DR
  1865. DOS 6 were intended to combat viruses, but they do so to some extent.
  1866. If you have DR DOS, it is very wise to password-protect your files (to
  1867. stop accidental damage too), but don't depend on it as your only means
  1868. of defense.
  1869.  
  1870. The use of the password command (e.g. PASSWORD/W:MINE *.EXE *.COM) will
  1871. stop more viruses than the plain DOS attribute facility (see D5), but
  1872. that isn't saying much!  The combination of the password system plus a
  1873. disk compression system may be more secure, because to bypass the
  1874. password system a virus must access the disk directly, but under
  1875. SuperStor or Stacker the physical disk will be meaningless to a virus.
  1876. There may be some viruses that, rather than invisibly infecting files on
  1877. compressed disks, very visibly corrupt such disks.
  1878.  
  1879. The main use of the "secure disk partitions" system, introduced in
  1880. DR DOS 6, is to stop people from fiddling with your hard disk while you
  1881. are away from the PC. The way this is implemented, however, may also
  1882. help against a few viruses that look for DOS partitions on a disk.
  1883.  
  1884. Furthermore, DR DOS is not fully compatible with MS/PC-DOS, especially
  1885. when you get down to the low-level tricks that some viruses use.  For
  1886. instance, some internal memory structures are "read-only" in the sense
  1887. that they are constantly updated (for MS/PC-DOS compatibility) but not
  1888. really used by DR DOS, so even if a sophisticated virus modifies them,
  1889. it will not have any effect, or at least not that intended by the
  1890. virus's author.
  1891.  
  1892. In general, using a less compatible system diminishes the number of
  1893. existing viruses that can infect it.  For instance, the introduction of
  1894. hard disks made the Brain virus almost disappear; the introduction of
  1895. the 80286 and DOS 4.0+ made the Yale and Ping Pong viruses next to
  1896. extinct, and so on.
  1897.  
  1898.  
  1899. D8)  Does a write-protect tab on a floppy disk stop viruses?
  1900.  
  1901. In general, yes.  The write-protection on IBM PC (and compatible) and
  1902. Macintosh floppy disk drives is implemented in hardware, not software,
  1903. so viruses cannot infect a diskette when the write-protection mechanism
  1904. is functioning properly (though many "friend of a friend" stories abound
  1905. contesting this).
  1906.  
  1907. But remember:
  1908.  
  1909. 1.   A computer may have a faulty write-protect system (this
  1910.      happens!)--you can test it by trying to copy a file to a
  1911.      diskette that is apparently write-protected.
  1912. 2.   Someone may have removed the tab for a while, allowing a
  1913.      virus on.
  1914. 3.   The files may have been infected before the disk was
  1915.      protected.  Even some diskettes "straight from the factory"
  1916.      have been known to be infected during the production process.
  1917.  
  1918. Thus, you should scan even new, write-protected disks for viruses.  You
  1919. should also scan new, pre-formatted diskettes, as there have been cases
  1920. of infected, shrink-wrapped new diskettes.
  1921.  
  1922.  
  1923. D9)  Do local area networks (LANs) help to stop viruses or do they
  1924.      facilitate their spread?
  1925.  
  1926. Both.  A set of computers connected in a well managed LAN, with
  1927. carefully established security settings, with minimal privileges for
  1928. each user, and without a transitive path of information flow between the
  1929. users (i.e., the objects writable by any of the users are not readable
  1930. by any of the others) is more virus-resistant than the same set of
  1931. computers if they are not interconnected.  The reason is that when all
  1932. computers have (read-only) access to a common pool of executable
  1933. programs, there is usually less need for diskette swapping and software
  1934. exchange between them, and therefore less chances for a virus to spread.
  1935.  
  1936. However, if the LAN has lax security and is not well managed, it could
  1937. help a virus to spread like wildfire.  It might even be impossible to
  1938. remove the infection without shutting down the entire LAN.  Stories of
  1939. LAN login programs, shared copies of which are run on every workstation,
  1940. becoming infected are, unfortunately, not uncommon.
  1941.  
  1942. A network that supports login scripting is inherently more resistant to
  1943. viruses than one that does not *if* this is used to validate the client
  1944. before allowing access to the network.
  1945.  
  1946.  
  1947. D10) What is the proper way to make backups?
  1948.  
  1949. A good backup regime is at the heart of any comprehensive virus defense
  1950. scheme.  No matter what combination of software and hardware defenses
  1951. you install, nor what "policy" you implement, there is always the
  1952. possibility that some new virus will be devised that can beat your
  1953. defenses *or* that someone will fail to follow "proper protocol" with
  1954. "foreign" media or file sources.  In corporate settings, the possibility
  1955. of the latter as a form of directed attack by disgruntled employees
  1956. cannot be overlooked.
  1957.  
  1958. Planning to minimize the impact of a virus infection on your computing
  1959. is much like planning to minimize the effect of an earthquake or fire.
  1960. You cannot be sure where, when or even *if* you will ever be "hit"; the
  1961. potential impact could fall anywhere in a very wide range of possible
  1962. damage; being "completely safe" can involve enormous expense; and you
  1963. cannot adequately test your preparations without exposing yourself to
  1964. serious risk of damage.  Therefore, finalizing on the defense scheme
  1965. that suits you involves deciding on the level of loss you can afford to
  1966. stand and probably settling on a system that, while not "perfectly
  1967. watertight," is "good enough".
  1968.  
  1969. Despite the importance of a good backup scheme, it is really beyond the
  1970. scope of this FAQ sheet to provide a definitive guide to planning your
  1971. backup procedure--that could easily take another document the size of
  1972. this!  All this said however, we provide the following advice as, we
  1973. hope, a good starting point.
  1974.  
  1975. Planning an effective backup scheme really starts with answering some
  1976. important questions.  Consider:
  1977.  
  1978. 1.   Who is dependent on the files on this system?  Is it a home
  1979.      computer mostly used by the kids for games, a standalone
  1980.      workstation running a small business, a networked workstation
  1981.      in a medium-sized company or the same in a large corporate
  1982.      environment, or a server with many (hundreds) of users?
  1983. 2.   How long can the most important user be without access to
  1984.      these files?  One hour, 2, 4, 8, a day, a week?  Remember to
  1985.      assume that your problems will arise at the worst possible
  1986.      moment (like 24 hours before a tax audit is due to start!).
  1987. 3.   What proportion (and volume!) of files are "fixed" (in the
  1988.      sense that they seldom change) versus those that change?  Do
  1989.      all changes have to be backed-up, or is a "once-some-given-
  1990.      time-period" backup acceptable?
  1991. 4.   What type of information is in the regularly changing files?
  1992.  
  1993. The answers to these (and other) questions help shape backup and
  1994. recovery plans and are fairly well understood issues amongst computer
  1995. systems professionals.  Highly critical systems containing crucial data
  1996. will be designed from the outset to have high redundancy (disk
  1997. mirroring, disk arrays, UPSes, maybe even redundant servers), though
  1998. such system options *alone* provide no real protection from virus
  1999. attacks.  You may opt for a backup system that records every change to
  2000. any files on your system (server-only or clients and servers) or regular
  2001. (often nightly) backup of changed data files, and so on.
  2002.  
  2003. When it comes to planning backup regimes with an eye to the possibility
  2004. of recovering from a virus attack, you also have to consider that
  2005. regularly backing-up executables (loosely, "programs") can cause
  2006. problems.  If you do and are infected by a virus, unless you can be
  2007. *absolutely sure* of the date of first infection (despite sounding
  2008. simple, this is not something that can commonly be done!), you may have
  2009. quite a few problems finding the best backup set to restore from, as you
  2010. will probably have several sets including infected executables.
  2011.  
  2012. For home or small business use, it may be best to maintain two kinds of
  2013. backups.  One would contain only your data files and one your operating
  2014. system and program files (issues to consider are covered in the next two
  2015. paragraphs).  This may be facilitated by maintaining a strict separation
  2016. of the two kinds of files, perhaps by putting the operating system and
  2017. programs on one drive or partition and your data files on another.
  2018. While this is probably not practical for many existing machines,
  2019. enforcing adherence to the "rule" that data files should only be placed
  2020. in appropriate sub-directories (folders) within a prescribed data
  2021. directory may not be a bad thing.
  2022.  
  2023. The best way to manage backup of data files depends on the answers to
  2024. too many of the questions listed above for us to give definitive advice
  2025. here.  While planning your backup regime, bear in mind that some viruses
  2026. damage some kinds of data files, while others make small, occasional,
  2027. random modifications as files are written to disk.  While viruses with
  2028. either of these "features" are quite rare, both of these possibilities
  2029. mean that vital data files should probably be backed-up to long-cycle
  2030. media sets as well as to shorter cycle sets and other steps taken to
  2031. ensure you can recreate the sequence of changes.  (For example, retain
  2032. all transaction records so they can be re-entered.)
  2033.  
  2034. You should probably backup executables once after installing them and
  2035. only *after* you are sure they are virus-free according to your current
  2036. antivirus screening procedures.  *Never* make a backup containing
  2037. executables over media that hold *any* of your current backups.  The
  2038. more cautious of us maintain several cycles of executable backups.
  2039. These precautions should ensure you don't face the problem outlined
  2040. several paragraphs ago, and mean that should a newly installed program
  2041. be infected with a virus your current defenses don't detect, you can
  2042. easily restore your system and installed software to how it was before
  2043. the infected software was installed, when you do become aware of its
  2044. presence.  You will probably have to manually reinstall any programs you
  2045. installed subsequent to installing the infected program.
  2046.  
  2047. Having referred to this second kind of backup as "executables only", we
  2048. should point out that a complete system backup is also acceptable for
  2049. this type of backup.  However, note that a sequence of full system
  2050. backups with interim "incremental" backups (when only those files that
  2051. have changed since the last complete backup are saved) is *not* what we
  2052. are advocating.  Such systems tend to be too "broad brush" to be truly
  2053. useful for recovering from an unknown, future virus attack.
  2054. Unfortunately, this tends to be the preferred/recommended backup scheme
  2055. for small-to-medium sized systems (including most personal computers),
  2056. and is typically what most popular backup software for such systems is
  2057. designed to do.  This doesn't mean that popular backup systems and
  2058. software aren't useful, just that you have to exercise some care in
  2059. using them (like excluding executable files from your incremental
  2060. backups).
  2061.  
  2062. Having said all this, there are still a few other problems to consider,
  2063. especially:  Which files should you count as "data" files?  This can be
  2064. problematic as most people immediately think of their word-processor and
  2065. spreadsheet files, and the like, as data, and that's about it.  What
  2066. about the files in which your programs store their configuration
  2067. information?  In a sense, these are as much "your data" as they are
  2068. program files, because they reflect your preferred screen colors and
  2069. layouts, default fonts, personalized button bars and so on.  When you
  2070. look at the time people spend finding the (often obscure) options
  2071. settings in their programs and making them work "just right", and how
  2072. upset they can be if they lose these settings, it makes sense to treat
  2073. such configuration files as you treat other "personal data files" in
  2074. your backup regimes.  Similarly, people tend to treat system
  2075. configuration files (in DOS/Windows PCs CONFIG.SYS, AUTOEXEC.BAT,
  2076. WIN.INI, SYSTEM.INI at a minimum!) as part of the system, often ignoring
  2077. the (sometimes considerable) fine-tuning these configuration files go
  2078. through *between* system and executable backups.
  2079.  
  2080. One last point--it cannot be stressed enough that you *MUST* have a
  2081. full, working copy of the software you need to restore your backups in a
  2082. safe place.  You must be able to guarantee that this software is not
  2083. virus infected should you ever have to use it, *AND* that it is fully
  2084. usable should you be facing a machine that has had its entire hard drive
  2085. "wiped clean".
  2086.  
  2087.  
  2088.  
  2089. ======================================================
  2090. = Section E.   Facts and Fibs About Computer Viruses =
  2091. ======================================================
  2092.  
  2093. E1)  Can boot sector viruses infect non-bootable DOS floppy disks?
  2094.  
  2095. Any DOS diskette that has been properly formatted contains some
  2096. executable code in its boot sector.  (There is some debate as to whether
  2097. this code should be called a program or not.  The important thing here
  2098. is that this code is *executed* at system startup if the diskette is in
  2099. the system's boot drive.)  If a diskette is not "bootable", all that
  2100. boot sector (normally) does is print a message (on a PC, typically
  2101. something like "Non-system disk or disk error; replace and strike any
  2102. key when ready").  However, the boot sector is still executable and
  2103. therefore vulnerable to infection.  Should you accidentally boot your
  2104. machine with a "non-bootable" diskette in the boot drive, and see that
  2105. message, it means that any boot virus that may have been on that
  2106. diskette *has* run, and had the chance to infect your hard drive, or
  2107. whatever.  So, when talking about viruses, the words "bootable" and "non-
  2108. bootable" are misleading.  All formatted diskettes are capable of
  2109. carrying boot sector viruses.
  2110.  
  2111. Most current computers will try to boot from their (first) floppy drive
  2112. before trying to load an operating system off their hard disks.  Because
  2113. of this and the fact that every floppy disk is possibly infected with a
  2114. boot sector virus, it is a *very* good idea to set your computer to try
  2115. to boot from its hard disk.  Many newer PCs offer the option to select
  2116. boot order in their system CMOS setup routines.  If your computer has
  2117. such an option, set it to try to boot from your hard disk first.
  2118.  
  2119.  
  2120. E2)  Can a virus hide in a PC's CMOS memory?
  2121.  
  2122. No.  The CMOS RAM in which PC system information is stored and backed up
  2123. by batteries is accessible through the I/O ports and not directly
  2124. addressable.  That is, in order to read its contents you have to use I/O
  2125. instructions rather than standard memory addressing techniques.
  2126. Therefore, anything stored in CMOS is not directly "in memory".  Nothing
  2127. in a normal machine loads the data from CMOS and executes it, so a virus
  2128. that "hid" in CMOS RAM would still have to infect an executable object
  2129. of some kind in order to load and execute whatever had been written to
  2130. CMOS.  A malicious virus can of course *alter* values in the CMOS as
  2131. part of its payload, but it can't spread through, or hide itself in, the
  2132. CMOS.
  2133.  
  2134. Further, most PCs have only 64 bytes of CMOS RAM and the use of the
  2135. first 48 bytes of this is predetermined by the IBM AT specification.
  2136. Several BIOS'es also use many of the "extra" bytes of CMOS to hold their
  2137. own, machine-specific settings.  This means that anything that a virus
  2138. stores in CMOS can't be very large.  A virus could use some of the
  2139. "surplus" CMOS RAM to hide a small part of its body (e.g. its payload,
  2140. counters, etc).  Any executable code stored there, however, must first
  2141. be extracted to ordinary memory in order to be executed.
  2142.  
  2143. This issue should not be confused with whether a virus can *modify* the
  2144. contents of a PC's CMOS RAM.  Of course viruses can, as this memory is
  2145. not specially protected (on normal PCs), so any program that knows how
  2146. to change CMOS contents can do so.  Some viruses do fiddle with the
  2147. contents of CMOS RAM (mostly with ill-intent) and these have often been
  2148. incorrectly reported as "infecting CMOS" or "hiding in CMOS".  An
  2149. example is the PC boot sector virus EXE_Bug, which changes CMOS settings
  2150. to indicate that no floppy drives are present (see G8 for more details).
  2151.  
  2152.  
  2153. E3)  Can a PC virus hide in Extended or in Expanded RAM in a PC?
  2154.  
  2155. Yes.  If one does though, it has to have a small part resident in
  2156. conventional RAM; it cannot reside *entirely* in Extended or in Expanded
  2157. RAM.  Currently there are no known XMS viruses and only a few EMS
  2158. viruses (Emma is an example).
  2159.  
  2160.  
  2161. E4)  Can a virus hide in a PC's Upper Memory or in High Memory Area?
  2162.  
  2163. Yes, it is possible to construct a virus which will locate itself in
  2164. Upper Memory Blocks (UMBs--640K to 1024K) or in the High Memory Area
  2165. (HMA--1024K to 1088K).  Some viruses (e.g. EDV) do hide in UMBs and at
  2166. least one, Goldbug, will use the HMA if it is available.
  2167.  
  2168. It might be thought that there is no point in scanning in these areas
  2169. for any viruses other than those that are specifically known to inhabit
  2170. them.  However, there are cases when even ordinary viruses can be found
  2171. in Upper Memory.  Suppose that a conventional memory-resident virus
  2172. infects a TSR program and this program is loaded high by the user (for
  2173. instance, from AUTOEXEC.BAT).  Then the virus code will also reside in
  2174. Upper Memory.  Therefore, an effective scanner must be able to scan this
  2175. part of memory for viruses too.
  2176.  
  2177.  
  2178. E5)  Can a virus infect data files?
  2179.  
  2180. Some viruses (e.g., Frodo, Cinderella) modify non-executable files.
  2181. However, in order to spread, the virus code must be executed.  Therefore
  2182. "infected" non-executable files cannot be sources of further infection.
  2183. Such "infections" are usually mistakes, due to bugs in the virus.
  2184.  
  2185. Even so, note that it is not always possible to make a sharp distinction
  2186. between executable and non-executable files.  One person's data can be
  2187. another's code and vice versa.  Some files that are not directly
  2188. executable contain code or data which can, under some conditions, be
  2189. executed or interpreted.
  2190.  
  2191. Some examples from the PC world are OBJ files, libraries, device
  2192. drivers, source files for any compiler or interpreter (including DOS BAT
  2193. files and OS/2 CMD files), macro files for some packages like Microsoft
  2194. Word and Lotus 1-2-3, and many others.  Currently there are viruses that
  2195. infect boot sectors, master boot records, COM files, EXE files, BAT
  2196. files, OBJ files, device drivers, Microsoft Word document and template
  2197. files, and C source code files, although any of the objects mentioned
  2198. above theoretically can be used as an infection carrier.  PostScript
  2199. files can also be used to carry a virus, although no currently known
  2200. virus does this.
  2201.  
  2202. Aside from the above, however, there is an increasing possibility of
  2203. viruses spreading through the sharing of data files.  More and more we
  2204. see the ease with which software producers give their programs the
  2205. ability to embed "objects" of many kinds into document files, and into
  2206. fields in databases and spreadsheets.  Perhaps the best-known of these
  2207. systems are Object Linking and Embedding (OLE) in MS Windows and the
  2208. OpenDoc format.  As these embedded objects often have the ability to
  2209. "display" themselves we see that many files traditionally thought of as
  2210. data-only, will increasingly be containers carrying data and executable
  2211. code.  We are not aware of any virus that specifically targets such
  2212. executable "objects", but it is now a trivial task to embed executable
  2213. files into some kinds of document files so they will be run when the
  2214. icon representing them is clicked in the finished document.  There is
  2215. nothing to prevent infected executables being embedded in this way, and
  2216. thus for viruses to be spread through the distribution of "data files".
  2217.  
  2218.  
  2219. E6)  Can viruses spread from one type of computer to another?
  2220.  
  2221. The simple answer is that no currently known viruses can do this.
  2222. Although some disk formats may be the same (e.g. Atari ST and DOS), the
  2223. different machines interpret the code differently.  For example, the
  2224. Stoned virus cannot infect an Atari ST as the ST cannot execute the
  2225. virus code in the boot sector.  The Stoned virus contains instructions
  2226. for the 80x86 family of CPUs that the 680x0 CPU family (used in the
  2227. Atari ST) can't understand or execute.
  2228.  
  2229. The more general answer is that such viruses are possible, but unlikely.
  2230. Such a virus would be quite a bit larger than current viruses and might
  2231. well be easier to find.  Additionally, the low incidence of cross-
  2232. platform sharing of software means that any such virus would be unlikely
  2233. to spread--it would be a poor environment for virus growth.
  2234.  
  2235. A related, but different, issue is that of viruses running under
  2236. operating system emulators on machines other than those for which the
  2237. operating system was originally designed.  This is covered in some
  2238. detail elsewhere in the FAQ sheet (see C12).
  2239.  
  2240.  
  2241. E7)  Are mainframe computers susceptible to computer viruses?
  2242.  
  2243. Yes.  Numerous experiments have shown that computer viruses spread very
  2244. quickly and effectively on mainframe systems.  To our knowledge,
  2245. however, no non-research computer virus has been seen on mainframe
  2246. systems.  (Despite often being described as such, the widely reported
  2247. Internet Worm of November 1988 was not a computer virus by most
  2248. definitions, although it had some virus-like characteristics.)
  2249.  
  2250. Many people think that computer viruses are impossible on mainframe
  2251. computers, because their operating systems provide means of protection
  2252. (e.g., memory protection, access control, etc.) that cannot by bypassed
  2253. by a program, unlike the operating systems of most personal computers.
  2254. Unfortunately, this belief is false.  As demonstrated by Fred Cohen in
  2255. 1984, access controls are unable to prevent computer viruses--they can
  2256. only slow down the speed with which viruses spread.  If there is a
  2257. transitive path of information flow from one account to another on a
  2258. mainframe computer, then a virus can spread from one account to the
  2259. other, without having to bypass any protections.
  2260.  
  2261. Consider the following example.  The attacker (A) has an account on a
  2262. machine and wants to attack it with a virus.  In order to do this, A
  2263. writes a virus and releases it.  Due to the protection provided by the
  2264. operating system, the virus can only infect the files writable by A.  On
  2265. a typical system, those would be only the files owned by A.
  2266.  
  2267. However, A is not alone on the system.  A works with B on some joint
  2268. projects.  At some time, B might want to check how far A has progressed
  2269. in her/his part of the project.  This might involve running one of the
  2270. programs that A has written--programs that are now all infected with A's
  2271. virus.
  2272.  
  2273. On a sytem with protection based on discretionary access controls (e.g.,
  2274. Unix, VMS, and most other popular OSes), the program that is being
  2275. executed usually runs with the privileges of the user who is executing
  2276. it--not with those of the program's owner.  (In the few instances where
  2277. this is not the case, it presents a different kind of security threat,
  2278. unrelated to viruses.)  That is, when B runs A's infected program, the
  2279. virus in it will run with B's privileges and will be able to infect all
  2280. programs writable by B.
  2281.  
  2282. At some later time, A and B's boss, C, might want to check whether they
  2283. have completed that joint project.  Even if the boss has reasons to
  2284. suspect A (e.g., as a disgruntled employee), s/he is likely to trust B
  2285. and execute one of her/his programs.  This results in the virus running
  2286. with C's privileges (which are likely to be significantly greater than
  2287. those of A and B) and infecting all programs writable by C.  Quite
  2288. possibly, these programs will include many owned by other employees,
  2289. thus creating many more distribution chains that nobody suspects.
  2290.  
  2291. The virus may interfere somehow with C's normal work, which causes C
  2292. (who is probably not very knowledgeable about such things as computer
  2293. security and viruses) to ask the system administrator, D, for help.  If
  2294. D executes one of C's infected programs (and s/he is much more likely to
  2295. trust a respectable person like C--who is quite probably D's boss as
  2296. well--than any of C's employees), this will cause the virus that A wrote
  2297. a long time ago to run with system administrator privileges and do
  2298. whatever it wants with the system--infect other users' files, attack
  2299. other systems, etc.
  2300.  
  2301. A trivial improvement of the above scenario (in terms of speeding up the
  2302. virus' spread) would be for the attacker to place the virus in some kind
  2303. of Trojan Horse--for example, in an attractive game or utility--placed
  2304. in a publicly accessible area.
  2305.  
  2306. Why, then, are there so many fewer viruses for mainframe computers than
  2307. for personal ones?  The answer to this question is complex.  First,
  2308. writing a well-made mainframe virus--one that does not cause problems
  2309. and is likely to remain unnoticed--is not a trivial task.  It requires a
  2310. lot of knowledge about the operating system.  This knowledge is not
  2311. commonly available and the typical youngster who is likely to hack a
  2312. quick-and-dirty PC virus is unlikely to possess it or be in a position
  2313. to learn it.  People who possess this knowledge are likely to use it in
  2314. more constructive, satisfying, and profitable ways.  Second, the culture
  2315. of software exchange in the mainframe world differs considerably from
  2316. that of the PC world--we don't see many VMS users running around with a
  2317. bootable tape of the latest game...  Third, very often it is easier to
  2318. attack a mainframe computer by using some security hole or a Trojan
  2319. Horse, instead of by using a virus.
  2320.  
  2321. So, computer viruses for mainframe computers are definitely possible and
  2322. several already exist (see question F1).  Also, some IBM PC viruses can
  2323. infect any IBM PC compatible machine, even if it runs a "real" OS like
  2324. Unix.  For more information, refer to questions D6 and E7.
  2325.  
  2326. Forms of malware other than computer viruses--notably Trojan Horses--are
  2327. far quicker, more effective, and harder to detect than computer viruses.
  2328. Nevertheless, on personal computers many more viruses are written than
  2329. Trojan Horses.  There are two reasons for this:
  2330.  
  2331. 1.   Since a virus is self-propogating, the number of users to
  2332.      which it can spread (and cause damage) can be much greater
  2333.      than in the case of a Trojan;
  2334.  
  2335. 2.   It's almost impossible to trace the source of a virus since
  2336.      (generally) viruses are not attached to any particular
  2337.      program.
  2338.  
  2339. For further information on malicious programs on multi-user systems, see
  2340. Matt Bishop's paper, "An Overview of Malicious Logic in a Research
  2341. Environment", available by anonymous FTP on Dartmouth.edu (IP =
  2342. 129.170.16.4) as pub/security/mallogic.ps.
  2343.  
  2344.  
  2345. E8)  Some people say that disinfecting is a bad idea.  Is that true?
  2346.  
  2347. Disinfection is completely "safe" only if the disinfecting process
  2348. completely restores the non-infected state of the object.  That is, not
  2349. only must the virus be removed from the object, but the original length
  2350. must be restored exactly, as well as any system attributes (such as time
  2351. and date of last modification, fields in the header, etc).  Sometimes it
  2352. is necessary to be sure that the object is placed on the same sectors of
  2353. the disk that it occupied prior to infection (this is particularly
  2354. important for some system areas and some files from programs which use
  2355. certain kinds of self-checking or copy protection).
  2356.  
  2357. None of the currently available disinfecting programs do all this.  For
  2358. instance, because of the bugs that exist in many viruses and because
  2359. some infection processes involve overwriting (part of) the objects of
  2360. infection, some of the information about the original object may be
  2361. irrevocably destroyed.  Sometimes it is not even possible to detect that
  2362. this information has been destroyed and to warn the user.  Furthermore,
  2363. some viruses corrupt information very slightly and in a random way
  2364. (Nomenklatura, Ripper), so that it is not even possible to tell which
  2365. objects have been corrupted.
  2366.  
  2367. Therefore, it is usually better to replace infected objects with clean
  2368. backups, provided you are certain that your backups are uninfected (see
  2369. D10), or from the original media.  You should try to disinfect files
  2370. only if they contain some valuable data that cannot be restored from
  2371. backups or recompiled from their original source.
  2372.  
  2373.  
  2374. E9)  Can I avoid viruses by avoiding shareware, free software or games?
  2375.  
  2376. No.  There are many documented instances in which even commercial
  2377. "shrink wrapped" software was inadvertently distributed containing
  2378. viruses.  Avoiding shareware, freeware, games, etc, only isolates you
  2379. from a vast collection of software (some of it very good, some of it
  2380. very bad, most of it somewhere in between...).
  2381.  
  2382. The important thing is not to avoid a certain type of software, but to
  2383. be cautious of *any and all* newly acquired software and diskettes.
  2384. Merely scanning all new software media for known viruses would be rather
  2385. effective at preventing virus infections, especially when combined with
  2386. some other prevention/detection strategy such as integrity management of
  2387. programs.
  2388.  
  2389.  
  2390. E10) Can I contract a virus on my PC by performing a "DIR" of an
  2391.      infected floppy disk?
  2392.  
  2393. Assuming the PC you are using is virus free before you perform the DIR
  2394. command, then the answer is "No".
  2395.  
  2396. When you perform a DIR, the contents of the boot sector of the diskette
  2397. are loaded into a buffer for use in determining disk layout etc, and
  2398. certain antivirus products will scan these buffers.  If a boot sector
  2399. virus has infected your diskette, the virus code will be contained in
  2400. the buffer, which may cause some antivirus packages to produce a message
  2401. like "xyz virus found in memory...".  In fact, the virus is not a threat
  2402. at this point since control of the CPU is never passed to the virus code
  2403. residing in the buffer.  Even though the virus is really not a threat at
  2404. this point, this message should not be ignored.  If you get a message
  2405. like this, and then reboot from a clean DOS diskette (see G8) and scan
  2406. your hard-drive and find no virus, then you know that the false positive
  2407. was caused by an infected boot-sector loaded into a buffer, and the
  2408. diskette should be disinfected before use.  The use of DIR will not
  2409. infect a clean system, even if the diskette it is being performed on
  2410. does contain a virus (see C8 also).  Please note, however, that running
  2411. DIR on a diskette can result in the infection of a clean diskette if the
  2412. PC is already infected.
  2413.  
  2414. Despite our categorical "No" answer above, there is a small risk that a
  2415. virus infection could be transferred from a floppy through a DIR
  2416. listing.  If you use an ANSI console driver that allows key remapping,
  2417. it is possible that a specially prepared diskette could reprogram your
  2418. keyboard so that pressing a particular key caused an infected program on
  2419. the diskette to run the next time the reprogrammed key was pressed.  The
  2420. risk of such an attack is very low and can easily be negated following
  2421. the general advice for preventing ANSI bombs (see B14).
  2422.  
  2423. Mac users with system software prior to version 7.0 should be aware of a
  2424. greater threat in their environment.  Various system resources (which
  2425. can contain executable code) are loaded from the automatic access to a
  2426. diskette that is part of the system building its desktop view of the
  2427. diskette's contents.  When such a resource is required, the most
  2428. recently loaded one will be used.  Thus, if a diskette with a virus-
  2429. infected resource in the Desktop file is in your Mac's drive, and an
  2430. uninfected copy of that resource has not subsequently loaded from
  2431. elsewhere, the next time that resource is required the infected copy
  2432. will be executed, along with the virus.  This kind of attack was removed
  2433. with the introduction of version 7.0 (and later) of the system software,
  2434. which handles such things quite differently.  A common Mac virus, WDEF,
  2435. uses this infection path, as do a few others.
  2436.  
  2437. Early versions of AmigaDOS are susceptible to a threat similar to the
  2438. Mac WDEF virus--on inserting a diskette into the drive, the operating
  2439. system runs the Disk Validator from the diskette.  At least one Amiga
  2440. virus, Saddam, attaches itself to Disk Validator to help it spread.
  2441. Version 2.0 of AmigaDOS eliminated the threat of this type of attack by
  2442. removing the need for the Disk Validator.
  2443.  
  2444.  
  2445. E11) Is there any risk in copying data files from an infected floppy
  2446.      disk to a clean PC's hard disk?
  2447.  
  2448. Assuming that you did not boot or run any executable programs from the
  2449. infected disk, the answer generally is no.  There are two caveats:
  2450.  
  2451. 1.   You should be somewhat concerned about checking the integrity
  2452.      of these data files as they may have been destroyed or
  2453.      altered by the virus.
  2454. 2.   If any of the "data" files are interpretable as executable by
  2455.      some other program (such as a Lotus macro) then these files
  2456.      should be treated as potentially malicious until the symptoms
  2457.      of the infection are known.
  2458.  
  2459. The copying process itself is safe (given the above scenario) although
  2460. you should be concerned with what type of files are being copied to
  2461. avoid introducing other problems.
  2462.  
  2463.  
  2464. E12) Can a DOS virus survive and spread on an OS/2 system using the
  2465.      HPFS file system?
  2466.  
  2467. Yes, both file-infecting and boot sector viruses can infect HPFS
  2468. partitions.  File-infecting viruses function normally and can activate
  2469. and do their dirty deeds, and boot sector viruses can prevent OS/2 from
  2470. booting if the primary bootable partition is infected.  Viruses that try
  2471. to address disk sectors directly cannot function under OS/2 because the
  2472. operating system prevents this activity.
  2473.  
  2474.  
  2475. E13) Under OS/2 2.0+, could a virus infected DOS session infect another
  2476.      DOS session?
  2477.  
  2478. Each DOS program is run in a separate Virtual DOS Machine (their memory
  2479. spaces are kept separate by OS/2).  However, any DOS program has almost
  2480. complete access to the files and disks, so infection can occur if the
  2481. virus infects files; any other DOS session that executes a program
  2482. infected by a virus that makes itself memory resident would itself
  2483. become infected.
  2484.  
  2485. Also, bear in mind that generally all DOS sessions share the same copy
  2486. of the command interpreter.  Hence if *it* becomes infected, the virus
  2487. will be active in *all* DOS sessions.
  2488.  
  2489.  
  2490. E14) Can normal DOS viruses work under MS Windows?
  2491.  
  2492. Most of them cannot.  A system that runs exclusively MS Windows is, in
  2493. general, more virus-resistant than a plain DOS system.  The reason is
  2494. that most resident viruses are not compatible with the memory management
  2495. in Windows.  Furthermore, most existing viruses will damage Windows
  2496. applications if they try to infect them as normal (i.e. DOS) EXE files.
  2497. The damaged applications will stop working and this will alert the user
  2498. that something is wrong.
  2499.  
  2500. Virus-resistant however, is by no means virus-proof.  For instance, most
  2501. of the well-behaved resident viruses that infect only COM files (Cascade
  2502. is an excellent example), will work perfectly in a "DOS box".  All non-
  2503. resident COM infectors will be able to run and infect too.  Aside from
  2504. DOS viruses, MS Windows users can also contract several currently known
  2505. Windows-specific viruses, which are able to infect Windows applications
  2506. properly (i.e., they are compatible with the NewEXE file format).
  2507.  
  2508. Any low level trapping of Interrupt 13, as by resident boot sector and
  2509. MBR viruses, can also affect Windows operation, particularly if
  2510. protected disk access (32BitDiskAccess=ON in SYSTEM.INI) is used.
  2511.  
  2512.  
  2513. E15) Can I get a virus from reading e-mail, BBS message forums or
  2514.      USENET News?
  2515.  
  2516. In general terms, the answer is no.  E-mail messages and postings on
  2517. BBSes and News are text data and will not be executed as programs.
  2518. Computer viruses are programs, and must be executed to do anything, so
  2519. the simple act of reading online messages doesn't pose a threat of
  2520. catching a computer virus.
  2521.  
  2522. There are a few provisos to be made.  If your computer uses ANSI screen
  2523. and keyboard controls, you may be susceptible to an ANSI bomb (see B14).
  2524. An ANSI bomb may, merely by being placed in text read on the screen,
  2525. temporarily redefine keys on the keyboard to perform various functions.
  2526. It is, however, very unlikely that you will ever see an ANSI bomb in
  2527. e-mail, or that it could do significant damage while you are reading
  2528. mail.
  2529.  
  2530. Another possibility is that mail can be used to send programs.  To do
  2531. this program files have to be encoded into a special form so the binary
  2532. (8-bit) program files are not corrupted by transfer over the text-only
  2533. (7-bit) e-mail transport medium.  Probably the commonest of these
  2534. encoding schemes is uuencoding, though there are several others.  If you
  2535. receive an encoded program, you normally have to use a decoding program
  2536. or special option in your e-mail program to extract it and decode it
  2537. before it can be run.  Once you have extracted the program though, you
  2538. should then treat it as you would any other program whose source you do
  2539. not know, and test it before you run it.
  2540.  
  2541. A third possibility is with the newer, highly-automated online systems.
  2542. Some of these attempt to make online access much easier for the user by
  2543. automating such features as file transfer and program updates.  At least
  2544. one commercial online service is known to have the capability of sending
  2545. new programs to the user and to invoke those programs while the user is
  2546. still online.  While there is no reason to assume that any service that
  2547. does this *will* infect you, any time things are going on that you are
  2548. not being told about, you are at greater risk.
  2549.  
  2550.  
  2551. E16) Can a virus "hide" in a GIF or JPEG file?
  2552.  
  2553. The simple answer is "no".  The complete answer is more complex.
  2554.  
  2555. GIF and JPEG (.JPG) files contain compressed graphical information.
  2556. Every now and then, rumors arise that is possible to infect those files
  2557. with a virus in such a way, that it will spread when you display one of
  2558. these images.  This is technically impossible--no part of the GIF or
  2559. JPEG format contains code that is executed by the viewer program.
  2560.  
  2561. It *is* possible to use the least significant bit of the color
  2562. information for each pixel in GIF files to store additional information,
  2563. without visibly altering the quality of the picture contained in the
  2564. file.  This is called "steganography" and is sometimes used to transmit
  2565. secretly encrypted messages.  Since a virus is nothing more than
  2566. information, it is possible to "encode" it into a GIF file and transmit
  2567. it this way.  However, the recipients must be aware that the GIF file
  2568. contains such hidden information and take some deliberate steps to
  2569. extract it--it cannot happen against their will.
  2570.  
  2571.  
  2572.  
  2573. ========================================
  2574. = Section F.   Miscellaneous Questions =
  2575. ========================================
  2576.  
  2577. F1)  How many viruses are there?
  2578.  
  2579. It is not possible to give an exact number because new viruses are
  2580. literally being created every day.  Furthermore, different antivirus
  2581. researchers use different criteria to decide whether two viruses are
  2582. different or one and the same.  Some count viruses as different if they
  2583. differ by at least one bit in their non-variable code.  Others group
  2584. viruses in families and do not count the closely related variants within
  2585. a family as different viruses.
  2586.  
  2587. Further, some antivirus researchers have samples in their collections
  2588. that they count as viruses, but that several other experts strongly deny
  2589. are viruses.  Sometimes these are "partial viruses", where a virus has
  2590. not properly infected a host and are therefore non-infective, other
  2591. times they are well-known non-viruses.  As some of these non-viruses are
  2592. known to be in some of the common test sets, some antivirus software
  2593. vendors count them amongst the viruses they detect.
  2594.  
  2595. As of January 1995 there were about 5,600 PC viruses, about 150 Amiga
  2596. viruses, about 100 Acorn Archimedes viruses, about 45 Macintosh viruses,
  2597. several Atari ST viruses, a few Apple II viruses, four Unix viruses,
  2598. three MS Windows viruses, at least two OS/2 viruses and two VMS DCL-
  2599. based viruses.
  2600.  
  2601. Fortunately, few of the existing viruses are widespread.  For instance,
  2602. only about three dozen of the known PC viruses cause most of the
  2603. reported infections and fewer than 200 PC viruses have been found in the
  2604. wild at all.
  2605.  
  2606.  
  2607. F2)  How do viruses spread so quickly?
  2608.  
  2609. This is a very complex issue, and some viruses don't spread quickly at
  2610. all (though talk of them often does!).
  2611.  
  2612. Those that do spread widely are able to do so for a variety of reasons.
  2613. A large target population--millions of compatible computers--helps. A
  2614. large virus population helps.  Vendors whose quality assurance relies
  2615. on, for example, outdated scanners, help.  Users who gratuitously
  2616. install new software on their systems without making any attempt to test
  2617. for viruses help.  All of these things are factors.
  2618.  
  2619.  
  2620. F3)  What is the correct plural of "virus"?  "Viruses" or "viri" or
  2621.      "virii" or "vira" or...
  2622.  
  2623. The correct English plural of "virus" is "viruses".  The Latin word is a
  2624. mass noun (like "air") and, therefore, there is no correct Latin plural.
  2625. Please use "viruses", and if people use other forms, please do *not* use
  2626. Virus-L/comp.virus to correct them.
  2627.  
  2628.  
  2629. F4)  When reporting a virus infection (and looking for assistance), what
  2630.      information should be included?
  2631.  
  2632. People frequently post messages to Virus-L/comp.virus requesting
  2633. assistance with a suspected virus problem.  Quite often the information
  2634. supplied is insufficient for the various experts on the list to be able
  2635. to help at all.  Also, please note that any such assistance from members
  2636. of the list is provided on a voluntary basis; be grateful for any help
  2637. received.  Try to provide the following information in your requests for
  2638. assistance:
  2639.  
  2640. 1.   The date and location (town and country) of suspected
  2641.      infection.
  2642. 2.   The name of the virus (if known)
  2643. 3.   The program (or programs) and version that called the virus
  2644.      by that name.
  2645. 4.   Any other antivirus software that you are running and whether
  2646.      it has been able to detect the virus or not, and if yes, what
  2647.      name it called the virus.
  2648. 5.   Your software and hardware configuration (computer type,
  2649.      kinds of disk(ette) drives, amount of memory and
  2650.      configuration (extended/expanded/conventional), the exact
  2651.      version of your OS, TSR programs and device drivers used,
  2652.      control panels and INITs, etc.).
  2653. 6.   Any "unusual" behavior that has occurred recently and any new
  2654.      software (including upgrades) you have recently installed.
  2655.  
  2656. It is helpful if you can use more than one scanning program to identify
  2657. a virus, and to say which scanner gave which identification.  However,
  2658. some scanning programs leave "scan strings" in memory which will confuse
  2659. others, so it is best to do a "cold reboot" between runs of successive
  2660. scanners, particularly if you are getting conflicting results (see C6).
  2661.  
  2662.  
  2663. F5)  How often should we upgrade our antivirus tools to minimize
  2664.      software and labor costs and maximize our protection?
  2665.  
  2666. This is a difficult question to answer.  Antivirus software is a kind of
  2667. insurance, and these type of calculations are difficult.
  2668.  
  2669. There are two things to watch out for here: the general "style" of the
  2670. software, and the scan strings that scanners use to identify viruses.
  2671. Scanners should be updated more frequently than other software, and it
  2672. is probably a good idea to update a scanner's set of scan strings at
  2673. least once every two months.  In the six or so months prior to January
  2674. 1995, most of the popular PC-based virus scanners typically added
  2675. detection of about 500-600 new viruses or variants--this averages out to
  2676. between two and three new viruses per day!
  2677.  
  2678. Some antivirus software looks for changes to programs or specific types
  2679. of viral "activity", and these programs generally claim to be good for
  2680. "all current and future viral programs".  However, even these programs
  2681. cannot guarantee to protect against all future viruses, as new "attack"
  2682. and anti-antivirus methods are continually being developed by virus
  2683. writers.  Thus, even this type of antivirus software needs to be
  2684. upgraded occasionally.
  2685.  
  2686. Of course, not every antivirus product is effective against all viruses,
  2687. even if upgraded regularly.  Thus, do *not* depend on the fact that you
  2688. have upgraded your product recently as a guarantee that your system is
  2689. free of viruses!
  2690.  
  2691.  
  2692. F6)  What are "virus simulators" and what use are they?
  2693.  
  2694. There are three different kinds of programs that are often called "virus
  2695. simulators". None of the three generate actual viruses.  The first kind
  2696. demonstrate the audio- and video-effects of some real computer viruses.
  2697. The second kind are programs that simulate a virtual environment--a
  2698. virtual computer, with virtual disks, virtual files, and virtual viruses
  2699. on them.  The user of such programs can manipulate the simulated
  2700. objects, letting the simulated viruses infect the simulated files on the
  2701. simulated disks, watching every step of the process, without a danger of
  2702. "real infection".  The third kind are programs that generate files
  2703. containing scan strings used by some scanners to detect real viruses.
  2704. The idea is that those scanners will detect the generated files too,
  2705. thus letting the user get the feeling of what discovering a virus is
  2706. like, but without the danger of risking a real infection.
  2707.  
  2708. There are three ways in which virus simulators are usually used:
  2709.  
  2710. 1) For educational purposes.  The second kind of virus simulators are
  2711. very useful and valuable for this purpose, provided the simulated
  2712. environment is realistic enough.  The first kind are also somewhat
  2713. useful--mainly teaching the users what the video- or audio-effects of
  2714. particular viruses are like.  There is the danger, however, that users
  2715. will get the incorrect impression that *every* computer virus
  2716. demonstrates itself in some visible or audible way.  The third kind of
  2717. virus simulators are not useful for this purpose--they do not show how
  2718. computer viruses work, do not show what computer viruses do, and because
  2719. their virus fragments are not reliably detected as viruses by many good
  2720. scanners, may give the wrong impression of a scanner's value.
  2721.  
  2722. 2) As an installation check that antivirus defenses are installed and
  2723. working.  The first and second kinds of virus simulators are unsuitable
  2724. for this, because they do not trigger any antivirus defenses.  Even the
  2725. third kind of virus simulators have a rather limited value in this
  2726. regard, as the files generated by them often fail to trigger virus
  2727. defenses, which are designed to protect against *real* viruses.  Unlike
  2728. the producers of such simulators, many believe it is the job of the
  2729. producer of an antivirus product to provide the means of checking
  2730. whether their product is installed and working.  This position is based
  2731. on the authors knowing their products better than anyone else and that
  2732. updated check methods will normally be provided as the antivirus
  2733. defenses employed in any given product change.
  2734.  
  2735. 3) As a test of the quality of the antivirus defense--usually a scanner.
  2736. Again, the first two kinds of simulators are unsuitable for this purpose
  2737. because they do not trigger antivirus defenses.  The third kind of virus
  2738. simulators often do, from which many users get the impression that they
  2739. are suitable for these testing purposes.  This is a serious
  2740. misconception.  The files that such programs generate are not real
  2741. viruses; antivirus programs, particularly virus-specific ones like
  2742. scanners, are designed to detect real viruses.  Therefore, one must not
  2743. draw a conclusion from the ability or the inability of a product to
  2744. detect "simulated viruses" of the third kind--the fact that they are
  2745. detected does not necessarily mean that a real virus will be detected,
  2746. and the fact that they are not detected does not mean that the real
  2747. virus it is supposed to represent will not be detected!
  2748.  
  2749. One exception to the above are simulators that do not generate files
  2750. containing scan strings, but which simulate the different kinds of
  2751. attacks that real viruses use, but without being able to replicate.
  2752. Examples of such attacks include different methods of tunnelling,
  2753. stealth, attacks against integrity checkers, and so on.  Such simulators
  2754. are useful for testing antivirus products that are not virus-specific,
  2755. especially if the simulator exercises a wide range of known attacks.
  2756.  
  2757.  
  2758. F7)  I've heard talk of "good viruses".  Is it possible to use a
  2759.      computer virus for something useful?
  2760.  
  2761. A very hotly debated topic that has flared-up dramatically several times
  2762. in Virus-L/comp.virus.  The answer to this is not simple and largely
  2763. hinges on your definition or interpretation of the term computer virus.
  2764.  
  2765. By definition (see B1), viruses do not have to do something "bad"
  2766. (although many people argue that the uninvited "resource wasting" that
  2767. is almost inherent in viral activity is necessarily bad).  From this
  2768. point (and based on his somewhat esoteric definition of the term
  2769. computer virus) Fred Cohen has argued that "good" or "useful" computer
  2770. viruses are a serious possibility.  In fact, Dr. Cohen offered a reward
  2771. of $1000 for the first clearly "useful" virus--despite several potential
  2772. claimants, however, he hasn't paid up.
  2773.  
  2774. Although there has never been a position that was widely agreed upon as
  2775. a result of any of these discussions, many contributors to this forum
  2776. believe that there are serious problems with the idea of implementing
  2777. useful computing functionality through self-replicating programs.
  2778. Vesselin Bontchev's paper originally delivered at the 1994 EICAR
  2779. conference, titled "Are `Good' Computer Viruses Still a Bad Idea?", is
  2780. available by anonymous FTP from ftp.informatik.uni-hamburg.de (IP =
  2781. 134.100.4.42), as pub/virus/texts/viruses/goodvir.zip.  *Anyone* wishing
  2782. to raise this discussion in Virus-L/comp.virus again should read and
  2783. carefully consider this paper before posting.  It contains many strong
  2784. arguments against the idea of "good computer viruses", and some
  2785. prescriptions of how good viruses would have to be implemented and
  2786. distributed to deserve the label "good".  To date no strong arguments
  2787. countering the points in this paper or otherwise arguing in favor of the
  2788. concept of good viruses have been posted to the group.
  2789.  
  2790.  
  2791. F8)  Wouldn't adding self-checking code to your programs be a good idea?
  2792.  
  2793. Every few months somebody suggests the idea of adding a small piece of
  2794. code to existing programs.  This code would check for virus infections
  2795. when the program is executed by comparing a previously computed CRC or
  2796. cryptographic checksum (hash value) of the file in its known clean state
  2797. with its current value.  The idea is that this will detect any virus
  2798. infection immediately, and is thus effective against unknown viruses.
  2799.  
  2800. A simple and intuitively attractive idea--in fact, some antivirus
  2801. programs have included options to do just this.  There are, however,
  2802. some serious flaws with this approach.
  2803.  
  2804. This method cannot prevent the program from getting infected in the
  2805. first place.  Further, if a program that has been protected this way
  2806. becomes infected later, whenever it is run the virus code will be
  2807. activated first.  The virus may then be able to detect or even remove
  2808. the self-checking code, or it might make it totally ineffective by using
  2809. stealth techniques, so the self-checking code only "sees" the original,
  2810. non-infected program.
  2811.  
  2812. Some programs contain an internal self-check--much antivirus software,
  2813. for example.  Such internal code might also be unable to detect stealth
  2814. viruses, but unless the external self-check code uses stealth techniques
  2815. too, the result will be a conflict, where the internal check will notice
  2816. the newly added code and decide that it has been "infected".
  2817.  
  2818. Moreover, this method is ineffective against "companion" viruses that
  2819. don't modify the applications they infect.
  2820.  
  2821. It may not be possible to protect all programs this way.  For example,
  2822. under DOS it is relatively easy to add code of this type to most COM
  2823. files (unless the original program was slightly less than 64K, and the
  2824. resulting file would break that limit).  However, EXE files are more of
  2825. a problem--especially those containing internal overlays, where one
  2826. cannot append the code to the file, as the resulting file might become
  2827. too big to load.  Windows applications are also a problem, as they have
  2828. two different entry points, and special care has to be taken to handle
  2829. that correctly.
  2830.  
  2831. On the other hand, adding internal self-checking to programs as part of
  2832. their development is a good idea.  Although it has the same limitations
  2833. regarding stealth viruses, it does not cause the conflicts described
  2834. above, and can be put in any program at compile-time.  It is also much
  2835. more difficult for viruses to bypass.
  2836.  
  2837.  
  2838.  
  2839. ===================================================================
  2840. = Section G.   Specific Virus and Antivirus Software Questions... =
  2841. ===================================================================
  2842.  
  2843. G1)  I was infected by the Jerusalem virus and disinfected the infected
  2844.      files with my favorite antivirus program.  However, WordPerfect
  2845.      and some other programs still refuse to work.  Why?
  2846.  
  2847. The Jerusalem virus and WordPerfect 4.2 program combination is an
  2848. example of a virus and program that cannot be completely disinfected by
  2849. an antivirus tool.  In some cases such as this, the virus will destroy
  2850. code by overwriting it instead of appending itself to the file.  The
  2851. only solution is to re-install the programs from clean (non-infected)
  2852. backups or distribution media (see D10 and E8).
  2853.  
  2854.  
  2855. G2)  Is my disk infected with the Stoned virus?
  2856.  
  2857. Of course the answer to this, and many similar questions, is to obtain a
  2858. good virus detector.  There are many to choose from, including ones that
  2859. will scan diskettes automatically as you use them.  As Stoned is a boot
  2860. sector infector, remember to check all diskettes, even non-system or
  2861. "data" diskettes (see E1).
  2862.  
  2863. It is possible, if you have an urgent need to check a system when you
  2864. don't have any antivirus tools, to run CHKDSK or MEM and note down the
  2865. values reported (see C1) and then to boot from a known clean system
  2866. diskette and compare the results returned by CHKDSK or MEM.  If the
  2867. total amount of conventional memory reported is different between the
  2868. two boots then you may have a viral problem but this information alone
  2869. cannot tell us if it is Stoned.  If you cannot see the PC's hard disk
  2870. (usually the C: drive) then it is even more likely you have a virus
  2871. problem, though definitely not Stoned.  If you have a "disk editor" type
  2872. program, looking at the boot sector of a suspect floppy, or the MBR of
  2873. the suspect hard drive may be helpful.  If you have Stoned, the first
  2874. byte will indicate the characteristic far jump of the virus (hex: EA)
  2875. instead of the more common short jump (hex: EB) of the boot loader.
  2876. Even if that is the first byte, you could be looking at a perfectly good
  2877. disk that has been "inoculated" against the virus *or* is infected with
  2878. some other virus which makes similar changes, or at a diskette that
  2879. seems safe but contains a totally different type of virus.
  2880.  
  2881.  
  2882. G3)  I was told that the Stoned virus displays the text "Your PC is now
  2883.      Stoned" at boot time.  I have been infected by this virus several
  2884.      times, but have never seen the message.  Why?
  2885.  
  2886. The "original" Stoned message was ".Your PC is now Stoned!", where the
  2887. "." represents the "bell" character (ASCII 7 or "PC speaker beep").  The
  2888. message is displayed with a probability of 1 in 8 *only* when a PC is
  2889. booted from an infected *diskette*.  When booting from an infected hard
  2890. disk, Stoned never displays this message.
  2891.  
  2892. Further, versions of Stoned with no message whatsoever or only the
  2893. leading bell character have become very common.  These versions of
  2894. Stoned are likely to go unnoticed by all but the most observant, even
  2895. when regularly booting from infected diskettes.
  2896.  
  2897. Contrary to some reports, the Stoned virus does *not* display the
  2898. message "LEGALISE MARIJUANA", although such a string is quite clearly
  2899. visible in the boot sectors of diskettes and MBR's of hard disks
  2900. infected with the "original" version of Stoned.
  2901.  
  2902.  
  2903. G4)  I was infected by both Stoned and Michelangelo.  Why has my
  2904.      computer become unbootable?  And why, each time I run my favorite
  2905.      scanner, does it find one of the viruses and say that it is
  2906.      removed, but when I run it again, it says that the virus is still
  2907.      there?
  2908.  
  2909. These two viruses store the original Master Boot Record at one and the
  2910. same place on the hard disk.  They do not recognize each other, and
  2911. therefore a computer can become infected with both of them at the same
  2912. time.
  2913.  
  2914. The first of these viruses that infects the computer will overwrite the
  2915. Master Boot Record with its body and store the original MBR at a certain
  2916. place on the disk.  So far, this is normal for a boot-record virus.  But
  2917. if now the other virus infects the computer too, it will replace the MBR
  2918. (which now contains the virus that has come first) with its own body,
  2919. and store what it believes is the original MBR (but in fact is the body
  2920. of the first virus) *at the same place* on the hard disk, thus
  2921. *overwriting* the original MBR.  When this happens, the contents of the
  2922. original MBR are lost.  Therefore the disk becomes non-bootable.
  2923.  
  2924. When a virus removal program inspects such a hard disk, it will see the
  2925. *second* virus in the MBR and will try to remove it by overwriting it
  2926. with the contents of the sector where this virus normally stores the
  2927. original MBR.  However, now this sector contains the body of the *first*
  2928. virus.  Therefore, the virus removal program will install the first
  2929. virus in trying to remove the second.  In all probability it will not
  2930. wipe out the sector where the (infected) MBR has been stored.
  2931.  
  2932. When the program is run again, it will find the *first* virus in the
  2933. MBR.  By trying to remove it, the program will get the contents of the
  2934. sector where this virus normally stores the original MBR, and will move
  2935. it over the current (infected) MBR.  Unfortunately, this sector still
  2936. contains the body of the *first* virus.  Therefore, the body of this
  2937. virus will be re-installed over the MBR ad infinitum.
  2938.  
  2939. There is no easy solution to this problem, since the contents of the
  2940. original MBR are lost.  The only solution for the antivirus program is
  2941. to detect that there is a problem, and to overwrite the contents of the
  2942. MBR with a valid MBR program, which the antivirus program has to provide
  2943. itself.  If your favorite antivirus program is not that smart, consider
  2944. replacing it with a better one, or try using the boot sector
  2945. disinfection procedure described elsewhere (see C3).
  2946.  
  2947. In general, infection of the same file or area by multiple viruses is
  2948. possible and vital areas of the original may be lost.  This can make it
  2949. difficult or impossible for virus disinfection tools to be effective,
  2950. and replacement of the lost file/area will be necessary.
  2951.  
  2952.  
  2953. G5)  My scanner finds the Filler and/or Israeli Boot virus in memory,
  2954.      but after I boot from a clean floppy it reports no viruses.  Am I
  2955.      infected?
  2956.  
  2957. This is almost certainly a "false positive" (see C5).  One particular,
  2958. popular antivirus product (usually its TSR scanner/monitor VSAFE) leaves
  2959. its scan strings in memory in an unencoded form, and is well-known for
  2960. causing false positives on Filler and Israeli Boot.  Your other scanner
  2961. sees the first's scan strings (at least those for Filler and/or Israeli
  2962. Boot) and reports a virus in memory.  When you boot from a floppy you
  2963. (probably) are not loading the resident scanner, so it doesn't have a
  2964. chance to "booby-trap" your other scanner.  To fix this problem, try
  2965. adding "REM " to the beginning of the line in your AUTOEXEC.BAT or
  2966. CONFIG.SYS file that loads the suspect TSR, and see if the problem
  2967. disappears.
  2968.  
  2969.  
  2970. G6)  I was infected with Flip and now a large part of my hard disk
  2971.      seems to have disappeared.  What has happened?
  2972.  
  2973. Flip has a logic error, probably based on its author only knowing about
  2974. hard disk partitioning schemes under DOS 3.x (where partitions could not
  2975. exceed 32MB in size).
  2976.  
  2977. Part of Flip's infection routine decrements by six the "total number of
  2978. sectors" field in the BIOS Parameter Block (BPB--a table of critical
  2979. disk geometry data) in the DOS boot sector of the boot partition.  For
  2980. partitions of 32MB and under this field is meaningful, but in larger
  2981. partitions, this field is set to zero and a field in the "extended BPB"
  2982. contains the "big number of sectors" for that partition instead.  Not
  2983. knowing about larger partitions, Flip renders the large partitions it
  2984. meets a shade under 32MB.  The fix for this is to use a disk sector
  2985. editor to set the word at offset 13h of the affected DOS boot sector to
  2986. "00 00" (they should be set to "FA FF" if the situation above applies).
  2987. If you don't understand these instructions, do *not* attempt to follow
  2988. them and seek the help of a more technically knowledgeable person.
  2989.  
  2990.  
  2991. G7)  What does the GenB and/or the GenP virus do?
  2992.  
  2993. There is no such thing as *the* GenB or GenP virus.  It is a heuristic
  2994. used by a very popular scanner to detect boot sector viruses and means
  2995. "There is something very suspicious in the boot sector (GenB) or in the
  2996. MBR (GenP), and I am pretty sure that it is a virus, however, I have no
  2997. idea which particular virus it might be".  You should run a scanner
  2998. which has better recognition and identification capabilities (see B15),
  2999. if you want to know which particular virus you have.  One advantage of
  3000. the GenB/GenP report is that you can often use the disinfection utility
  3001. from the same producer to remove the virus, even if no other scanner can
  3002. remove it.  When told to remove the GenB/GenP "virus", the utility scans
  3003. the disk for something that looks like a saved copy of the original boot
  3004. sector or MBR and will put it back in place, thus removing the virus, or
  3005. it writes a good generic MBR if there is an apparently valid partition
  3006. table in the virus MBR.
  3007.  
  3008.  
  3009. G8)  How do I "boot from a clean floppy"?
  3010.  
  3011. "Put it in the A: drive and turn the power on."
  3012.  
  3013. The facetious answer aside, the real question here is usually more one
  3014. of "How do I ensure I have a clean boot floppy?"
  3015.  
  3016. As with so many issues concerning viruses, the important thing is to be
  3017. prepared *in advance*.  As with backups, a current, clean boot disk
  3018. should be a standard part of every personal computer system, as there
  3019. are other occasions than when facing a real or suspected virus infection
  3020. where being able to boot your computer to a "known good" state are
  3021. useful or desirable (e.g. you accidentally delete your disk-compression
  3022. driver from your hard disk).  As with backups, a current, clean boot
  3023. disk is one of the standard parts of a personal computer system most
  3024. commonly missing.
  3025.  
  3026. The important thing in preparing a clean boot diskette, especially where
  3027. it has to be used with a (suspected) virus infection, is that it must
  3028. *not* run a single byte of code from your hard disk.  This means your
  3029. boot floppy must contain all the basic operating system files, device
  3030. drivers and configuration commands necessary to make your system
  3031. minimally usable.  This diskette must be prepared on a system that is,
  3032. itself, guaranteed "clean" and it should be write-protected immediately
  3033. after it is completed.  Aside from a basic, minimal operating system,
  3034. your emergency boot diskette should contain the utilities necessary to
  3035. install your OS to a hard disk *and* basic diagnostic or "fix it"
  3036. programs and your favorite antivirus tools.  Depending upon disk space
  3037. considerations, you may need additional diskettes to hold all these
  3038. utilities.  For example, if you use DOS it is a good idea to copy the
  3039. following utility programs to your emergency boot disk (if your version
  3040. of DOS includes them): FDISK, CHKDSK and/or SCANDISK, FORMAT, SYS, MEM,
  3041. UNFORMAT, UNDELETE, MSD.
  3042.  
  3043. When it comes to rebooting your computer from a clean system disk, it is
  3044. most important that you perform a "cold start".  On a PC, this means
  3045. pressing the reset button or turning the power off on again, *not* by
  3046. pressing Ctrl-Alt-Del.  Regardless of the machine type, if you are
  3047. unsure, use the power off then power on method just described.  It is
  3048. even more important that your machine is correctly configured to try
  3049. booting from the floppy first.  Most contemporary BIOSes have an option
  3050. to select the boot order (A: then C: or C: then A:)--this must be set to
  3051. A: then C: for this procedure, though normally we strongly recommend
  3052. that you set this option to C: then A:.
  3053.  
  3054. As systems change from time to time, you may occasionally need to update
  3055. this most critical of diskettes so it will still boot your system to a
  3056. usable state.  As you may have recently contracted a new virus that
  3057. bypasses your current antivirus precautions, this update process can put
  3058. you at risk of infecting your "clean" emergency boot diskette.  Because
  3059. of this, it is prudent to have two such diskettes.  With system changes
  3060. you would update these in a "leap frog" manner.  This means your
  3061. previous emergency boot diskette might still bring your machine up to a
  3062. minimally useful state (such that you may still be able to make repairs)
  3063. should your updated emergency boot diskette be infected by a previously
  3064. unknown virus.
  3065.  
  3066. Unfortunately, this isn't the whole story either!  A PC virus known as
  3067. EXE_Bug can fake out the boot process by setting the PC's CMOS to look
  3068. as if there are no floppy drives in the machine.  Most BIOS'es don't
  3069. even try to boot from a floppy in this case, and go straight to the hard
  3070. disk, loading the virus from the MBR.  When EXE_Bug first loads into
  3071. memory, it checks to see if there is a diskette in the first floppy
  3072. drive, and if there is, it loads the boot sector from the diskette and
  3073. lets the floppy boot as normal.  Most people don't notice the subtly
  3074. different boot time and drive access order involved in this, so they
  3075. think they have booted clean, when in fact the virus is active in
  3076. memory!  To circumvent this possibility, you have to check the PC's CMOS
  3077. settings before letting the floppy boot proceed, make sure that your PC
  3078. "knows" it has a floppy drive, *and*, with some PCs, make sure that the
  3079. boot order option is set to "A: then C:".  This presents a chicken-and-
  3080. egg situation on some machines, as you may have to boot DOS on the
  3081. machine to be able to run the utility program that lets you change its
  3082. CMOS settings.
  3083.  
  3084. Remember, if you changed your BIOS's boot order option, set it back to
  3085. C: then A: after disinfecting your PC.
  3086.  
  3087.  
  3088. G9)  My PC diagnostic utility lists "Cascade" amongst the hardware
  3089.       interrupts (IRQs).  Does this mean I have the Cascade virus?
  3090.  
  3091. No!  This is quite normal on AT-style (286 and better) PCs (and on a few
  3092. 8086 (XT) class machines).  The original IBM PC design had one
  3093. Programmable Interrupt Controller (PIC) to handle hardware interrupts
  3094. generated when devices like disk controllers, serial and parallel ports,
  3095. LAN adaptors, etc have to be serviced.  While developing the AT, IBM
  3096. decided that the eight Interrupt ReQuest (IRQ) lines the original PIC
  3097. supported were probably insufficient for likely future expansion needs,
  3098. so they added a second PIC.  The two PIC's had to cooperate, so both
  3099. didn't interrupt the CPU concurrently.  This was achieved by having the
  3100. second PIC use an IRQ to signal the first PIC when it has an IRQ to
  3101. service.  IRQs 2 and 9 were used for this and are commonly called the
  3102. "cascade" IRQ, as they allow the second PIC to cascade an IRQ down to
  3103. the first PIC.
  3104.  
  3105.  
  3106. G10) Occasionally the text "welcome datacomp" appears in my Mac
  3107.      documents without me typing it.  Is this a virus?
  3108.  
  3109. Most likely not.  This phenomenon has been reported for a particular
  3110. make/model of third-party Macintosh-compatible keyboard.  It appears to
  3111. be a practical joke, coded into the keyboard's ROM, that causes the
  3112. keyboard to output that text (as if it was typed) after a period of
  3113. keyboard inactivity.  The only practical fix is to replace the keyboard.
  3114. This is, in effect, a hardware (technically "firmware") Trojan Horse--
  3115. the keyboard has features or functions that are not advertised and that
  3116. will be performed without the owner's or user's wish or permission.
  3117.  
  3118.  
  3119. G11) How good are the antivirus tools included with MS-DOS 6?
  3120.  
  3121. While this FAQ sheet avoids answering specific questions about
  3122. particular antivirus software (partly because the ground tends to move
  3123. very quickly!), the antivirus tools included with MS-DOS 6 are very
  3124. widely distributed and accessible.  We will not give a wide-ranging
  3125. answer here, but will point out that Microsoft Corporation does not use
  3126. MSAV but a competitor's product.  We suggest that anyone considering
  3127. using the antivirus tools supplied with MS-DOS 6 as a significant part
  3128. of their virus defense should read the review available by anonymous FTP
  3129. from (amongst others) ftp.informatik.uni-hamburg.de (IP = 134.100.4.42)
  3130. as /pub/virus/texts/viruses/msaveval.zip.
  3131.  
  3132.  
  3133. G12) When I do a "DIR | MORE", I see two files with random names that
  3134.      are not there when I just use "DIR".  On my friends's system they
  3135.      cannot be seen.  Do I have a virus?
  3136.  
  3137. No.  DOS's default commandline interpreter (COMMAND.COM) creates two
  3138. temporary files with unique names for every pipe character ("|") used on
  3139. the command line.  Starting with DOS version 5.0, these files are
  3140. created in the directory pointed to by the TEMP environment variable,
  3141. not in the current directory as they were in earlier DOS versions.  If
  3142. your TEMP setting is invalid or you have an earlier version of DOS you
  3143. will see these files in the current directory when you pipe the output
  3144. of a DIR command through MORE (or any other filter). If you don't see
  3145. these files in the current directory's listing, performing the command
  3146. "DIR | MORE" on the directory specified by the TEMP variable will reveal
  3147. them.
  3148.  
  3149. Generally, you would be better to use "DIR /P" instead of "DIR | MORE",
  3150. as this avoids the creation of the temporary files.  If you use an
  3151. alternative commandline interpreter, none of the above may apply.
  3152.  
  3153.  
  3154. G13) What is the ChipAway virus?  (Or ChipAwayVirus?)
  3155.  
  3156. The ChipAway virus is not a virus at all.  In fact, it is a poorly
  3157. chosen name for a good idea.  Many PCs have an advanced BIOS feature
  3158. that, when activated, prevents any writes to the MBR through BIOS disk
  3159. routines.  If active, this feature can cause problems if you install non-
  3160. DOS operating systems (like OS/2, Windows 95 or Windows NT), as their
  3161. installation routines typically need to write to the MBR, but for
  3162. general purpose computers, it is a good idea to turn on these options,
  3163. if they exist.
  3164.  
  3165. Unfortunately, one of the earliest and most widely available
  3166. implementations of this idea prints a message on screen at each system
  3167. startup to the effect "ChipAwayVirus installed".  This is supposed to
  3168. calm the owner's nerves, making them confident that their BIOS antivirus
  3169. system is working for them.  For fairly obvious reasons, it tends to
  3170. have the opposite effect!
  3171.  
  3172. [End of Virus-L/comp.virus FAQ sheet]
  3173.  
  3174.  
  3175. -----BEGIN PGP SIGNATURE-----
  3176. Version: 2.6.i
  3177.  
  3178. iQCVAgUBMHhJLo2yC8NpBpE5AQHa7gQA1Ye63ZVHxrk5rqMuTfj0468b+8tmdsfi
  3179. UpAdPblOPR44TwTFi6vU9BUYxGBjwoegO4yqufTpxEHlJDeaGBG3T3ACllROmr/4
  3180. 1RqHm0oYh4APKgwZIM7vuWAevU3QFcM1cxY702w/5YD/AMnSXj5rIHfMHBtbYNo9
  3181. PFNR0XgrQ6o=
  3182. =q4G1
  3183. -----END PGP SIGNATURE-----
  3184.