← All papers

Possible Macro Virus Attacks and How to Prevent Them

[Bontchev96] Proc. 6th Int. Virus Bull. Conf., 1996, pp. 97–127.

Abstract: Computer viruses written in the macro language of powerful office packages, particularly of Microsoft Word for Windows are a relatively new phenomenon. Most of the viruses of this kind known to date rely heavily on the availability of the so-called "auto" macros (macros which execute automatically when the document containing them is opened or closed) in order to spread. This has created, among some anti-virus producers, the illusion that macro viruses have to depend on the auto macros in order to replicate. Based on this erroneous assumption,  some companies have developed inadequate antivirus products and protection schemes. This paper demonstrates that the assumption is false—that there are many other ways which a WordMacro virus can use to get control and replicate successfully. The paper describes all these methods known to the author, emphasizes that they pose a problem mostly to the anti-virus programs of the generic kind (i.e., not to the virus-specific scanners), and explains what measures have to be taken in order to block these attacks reliably.

This page is under construction.

1. Introduction

Back to the Table of Contents

2. Macro Virus Attacks

Back to the Table of Contents

2.1. Attacks Against Heuristic Analyzers

Back to the Table of Contents

2.1.1. System Macros

Back to the Table of Contents

2.1.2. Menu Replacement

Back to the Table of Contents

2.1.3. Button Redefinition

Back to the Table of Contents

2.1.4. Key Shortcuts

Back to the Table of Contents

2.1.5. The FieldMacro Attack

Back to the Table of Contents

2.1.6. On-the-Fly Macro Construction

Back to the Table of Contents

2.1.7. Language Version-Independent Macro Viruses

Back to the Table of Contents

2.1.8. Corrupted Macro Bodies

Back to the Table of Contents

2.1.9. Dispersed Macro Viruses

Back to the Table of Contents

2.2. Attacks Against Integrity Checkers

Back to the Table of Contents

2.2.1. Infection of the STARTUP Directory

Back to the Table of Contents

2.2.2. Add-In Global Templates

Back to the Table of Contents

2.2.3. Companion Macro Viruses

Back to the Table of Contents

2.2.4. Avoiding Infection of the Global Templates

Back to the Table of Contents

2.2.5. Direct-Action Macro Viruses

Back to the Table of Contents

2.3. Attacks Against Scanners

Back to the Table of Contents

2.3.1. On-The-Fly Encryption of the Document

Back to the Table of Contents

2.3.2. Document to Macro Conversion

Back to the Table of Contents

2.3.3. Polymorphic Macros

Back to the Table of Contents

2.3.4. Chained Macros

Back to the Table of Contents

2.3.5. "Mating" Macro Viruses

Back to the Table of Contents

2.3.6. Macro Virus Mutators

Back to the Table of Contents

2.3.7. Parasitic Macro Viruses

Back to the Table of Contents

2.3.8. Stealth Macro Viruses

Back to the Table of Contents

2.3.9. Richard’s Problem

Back to the Table of Contents

2.3.10. Igor’s Problem

Back to the Table of Contents

2.4. Attacks Against Behavior Blocking

Back to the Table of Contents

2.4.1. Bypassing the ReadOnly Attribute of the Global Template

Back to the Table of Contents

3. Macro Trojan Attacks

Back to the Table of Contents

3.1. The MACROBUTTON Attack

Back to the Table of Contents

3.2. The Macro Name Conflict Attack

Back to the Table of Contents

3.3. The OLE Attack

Back to the Table of Contents

4. WinWord Version 7.0a

Back to the Table of Contents

5. Conclusion

Back to the Table of Contents

6. References

Back to the Table of Contents

Appendix A

Back to the Table of Contents

Appendix B

Back to the Table of Contents