Security and Protecting Against Malicious Code

Several security measures and practices can protect you against malicious code.

Overview

Malicious executable code, also known as malware or viruses, has become more common and can impact users of 3ds Max. If allowed to spread, malware can result in loss of intellectual property and reduced productivity.

The most common vulnerability results from allowing malicious executable code such as MAXScript, embedded in data files such as a scene file (.max) to automatically load into and execute in 3ds Max. Compiled (C++, C#) or scripted (MAXScript, Python) plugins and tools could also pose a risk. Some malicious scripts spread by editing or creating a new script in 3ds Max’s scripts\startup folder, adding code to it to load the malicious script.

Vulnerable Files

Malicious executable code can be included in the following types of files:

Recommendations

The following best practices will reduce your vulnerability to malicious executable code:

Digital Signatures for Executable Files

A digital signature is a block of encrypted information added to certain files to identify the originator (author) and indicate whether a file has been altered since the digital signature was applied.

Executable binary or text (script) files with digital signatures provide the following benefits:

Invalid Digital Signatures

A digital signature will become invalid for the following reasons:

  • The file was modified after the digital signature was attached.
  • The file was corrupted in transit or when the digital signature was attached.
  • The digital certificate was revoked by the certificate authority.

Note: Renaming a file does not invalidate its digital signature. Also, a digital signature remains valid even after the expiration of the certificate used to generate it.

Digital Signatures and Binary Files Associated With 3ds Max

The following file types in the 3ds Max product distribution are executable, and have been digitally signed to better protect you: EXE, DLL, DLZ, DLU, DLO, DLM, DLC, DLI, DLT, DLE, DLV, DLK, DLB, DLF, DLR, BMF, BMI, BMS, FLT, GUP, DLH, DLN, DLA, DLS, DLY, DLX.

The digital signature for executable files can be accessed by right-clicking the file, clicking Properties, the Digital Signatures tab, the name of the signer and the Details button, and then View Certificate. Note that the file extension must be .DLL for this to work, so the recommended approach is to make a copy of the file and change its extension to .DLL, then check the File Properties.

For example, this is what this File Properties dialog looks like for 3dsmax.exe:

Digital Signatures and MAXScript files

All MAXScript files shipped with 3ds Max are signed with a digital certificate. A signed script allows users to confirm who wrote the script, and whether changes were made to it after it was signed.

File types that can be signed are:

  • MAXScript files: .ms, .mxs, .mcr
  • MAXScript resource files: .ms.res, .mxs.res, .mcr.res

3ds Max also ships with a verification tool, AdskSignTool.exe, which you can use to verify these files.

You can view a general usage message by running AdskSignTool without any arguments.

See Verifying Signed Scripts for additional informations.