The MASM Forum Archive 2004 to 2012

Project Support Forums => MASM32 => AV Software sh*t list. => Topic started by: v104 on February 23, 2011, 04:33:01 AM

Title: Let's collect all how-to for making MASM32 compiled apps avoid false positives
Post by: v104 on February 23, 2011, 04:33:01 AM
Guys,
My boss wants me to develop software that'll be deployed on many customer's systems. He doesn't care what language I use as long as it works. With this in mind, I want to be sure I've got the full picture. Here's what I found so far:

my exe a virus?
http://www.masm32.com/board/index.php?topic=15207.0

Getting assembled programs not to be detected as a virus.
http://www.masm32.com/board/index.php?topic=10344.0
Title: Re: Let's collect all how-to for making MASM32 compiled apps avoid false positiv
Post by: hutch-- on February 23, 2011, 05:01:57 AM
Its reasonably straight forward, on later OS version use BOTH a manifest file and a version control block. Avoid any dirty trick like the plague (standard MZ and PE headers only) and use fully documented API functions for your tasks. There is no surefire way to avoid false positives with any software but if you keep your software well designed and well behaved you will rarely get any problems. The other factor of course is make sure your software is absolutely virus and trojan free.
Title: Re: Let's collect all how-to for making MASM32 compiled apps avoid false positiv
Post by: jj2007 on February 23, 2011, 05:34:22 AM
Quote from: hutch-- on February 23, 2011, 05:01:57 AMIts reasonably straight forward, on later OS version use BOTH a manifest file and a version control block.

Is there any minimalistic example for that technique?

By the way, is it possible to embed the manifest into the resource file without using an external xml file?
This does not work in rsrc.rc:

1 RT_MANIFEST
BEGIN
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<description>JJ's toys</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>
END
Title: Re: Let's collect all how-to for making MASM32 compiled apps avoid false positiv
Post by: hutch-- on February 23, 2011, 07:09:09 AM
Probably because RC.EXE does not have a MANIFEST notation that I have seen.


1 24 "jjtoys.xml"
Title: Re: Let's collect all how-to for making MASM32 compiled apps avoid false positives
Post by: v104 on February 26, 2011, 04:34:37 PM
I'd like to see a minimalist example myself.
Title: Re: Let's collect all how-to for making MASM32 compiled apps avoid false positiv
Post by: hutch-- on February 27, 2011, 12:10:18 AM
Thats simple to do, write one that include BOTH a manifest file and a version control block.