# ReversingLabs malware naming standard

> Outlines the standardized naming conventions used by ReversingLabs to identify and classify malware, ensuring consistency and clarity in threat reporting.

The ReversingLabs detection string consists of three main parts separated by dots. 
All parts of the string will always appear (all three parts are mandatory).

```
platform-subplatform.type.familyname
```

1. The first part of the string indicates the **platform** targeted by the malware. 

   This string is always one of the strings listed in the [Platform string](#platform-string) table. 
   If the platform is Archive, Audio, ByteCode, Document, Image or Script, then it has a subplatform string. 
   Platform and subplatform strings are divided by a hyphen (`-`). 
   The lists of available strings for Archive, Audio, ByteCode, Document, Image and Script 
   subplatforms can be found in their respective tables.

2. The second part of the detection string describes the **malware type**. 
   Strings that appear as malware type descriptions are listed in the [Type string](#type-string) table. 

3. The third and last part of the detection string represents the malware family name, 
   i.e. the name given to a particular malware strain. 

   Names "Agent", "Gen", "Heur", and other similar short generic names are not allowed. 
   Names can't be shorter than three characters, and can't contain only numbers. 
   Special characters (apart from `-`) must be avoided as well. 
   The `-` character is only allowed in exploit (CVE/CAN) names (for example CVE-2012-0158). 

#### Examples

If a trojan is designed for the Windows 32-bit platform and has the family name "Adams", 
its detection string will look like this:

```
Win32.Trojan.Adams
```

If some backdoor malware is a PHP script with the family name "Jones", 
the detection string will look like this:

```
Script-PHP.Backdoor.Jones
```

Some potentially unwanted application designed for Android that 
has the family name "Smith" will have the following detection string:

```
Android.PUA.Smith
```

Some examples of detections with invalid family names are:

```
Win32.Dropper.Agent
ByteCode-MSIL.Keylogger.Heur
Script-JS.Hacktool.Gen
Android.Backdoor.12345
Document-PDF.Exploit.KO
Android.Spyware.1a
Android.Spyware.Not-a-CVE
Win32.Trojan.Blue_Banana
Win32.Ransomware.Hydra:Crypt
Win32.Ransomware.HDD#Cryptor
```

#### Platform string

The platform string indicates the operating system that the malware is designed for. 
The following table contains the available strings and the operating systems for which they are used.

| String      | Short description                                                                          |
| ----------- | ------------------------------------------------------------------------------------------ |
| ABAP        | SAP / R3 Advanced Business Application Programming environment                             |
| Android     | Applications for Android OS                                                                |
| AOL         | America Online environment                                                                 |
| Archive     | Archives. See [Archive subplatforms](#archive-subplatforms) for more information.          |
| Audio       | Audio. See [Audio subplatforms](#audio-subplatforms) for more information.                 |
| BeOS        | Executable content for Be Inc. operating system                                            |
| Boot        | Boot, MBR                                                                                  |
| Binary      | Binary native type                                                                         |
| ByteCode    | ByteCode, platform-independent. See [ByteCode subplatforms](#bytecode-subplatforms) for more information. |
| Blackberry  | Applications for Blackberry OS                                                             |
| Console     | Executables or applications for old consoles (e.g. Nintendo, Amiga, ...)                   |
| Document    | Documents. See [Document subplatforms](#document-subplatforms) for more information.       |
| DOS         | DOS, Windows 16 bit based OS                                                               |
| EPOC        | Applications for EPOC mobile OS                                                            |
| Email       | Emails. See [Email subplatforms](#email-subplatforms) for more information.                |
| Firmware    | BIOS, Embedded devices (mp3 players, ...)                                                  |
| FreeBSD     | Executable content for 32-bit and 64-bit FreeBSD platforms                                 |
| Image       | Images. See [Image subplatforms](#image-subplatforms) for more information.                |
| iOS         | Applications for Apple iOS (iPod, iPhone, iPad…)                                           |
| Linux       | Executable content for 32 and 64-bit Linux operating systems                               |
| MacOS       | Executable content for Apple Mac OS, OS X                                                  |
| Menuet      | Executable content for Menuet OS                                                           |
| Novell      | Executable content for Novell OS                                                           |
| OS2         | Executable content for IBM OS/2                                                            |
| Package     | Software packages. See [Package subplatforms](#package-subplatforms) for more information. |
| Palm        | Applications for Palm mobile OS                                                            |
| Script      | Scripts. See [Script subplatforms](#script-subplatforms) for more information.             |
| Shortcut    | Shortcuts                                                                                  |
| Solaris     | Executable content for Solaris OS                                                          |
| SunOS       | Executable content for SunOS platform                                                      |
| Symbian     | Applications for Symbian OS                                                                |
| Text        | Text native type                                                                           |
| Unix        | Executable content for the UNIX platform                                                   |
| Video       | Videos                                                                                     |
| WebAssembly | Binary format for executable code in Web pages                                             |
| Win32       | Executable content for 32-bit Windows OS's                                                 |
| Win64       | Executable content for 64-bit Windows OS's                                                 |
| WinCE       | Executable content for Windows Embedded Compact OS                                         |
| WinPhone    | Applications for Windows Phone                                                             |

##### Archive subplatforms

| String                             | Short description                                            |
| ---------------------------------- | ------------------------------------------------------------ |
| ACE                                | WinAce archives                                              |
| AR                                 | AR archives                                                  |
| ARJ                                | ARJ (Archived by Robert Jung) archives                       |
| BZIP2                              | Bzip2 archives                                               |
| CAB                                | Microsoft Cabinet archives                                   |
| GZIP                               | GNU Zip archives                                             |
| ISO                                | ISO image files                                              |
| JAR                                | JAR (Java ARchive) archives                                  |
| LZH                                | LZH archives                                                 |
| RAR                                | RAR (Roshal Archive) archives                                |
| 7ZIP                               | 7-Zip archives                                               |
| SZDD                               | Microsoft SZDD archives                                      |
| TAR                                | Tar (tarball) archives                                       |
| XAR                                | XAR (eXtensible ARchive) archives                            |
| ZIP                                | ZIP archives                                                 |
| ZOO                                | ZOO archives                                                 |
| *Other Archive identification*     | All other valid [Spectra Core](/General/AnalysisAndClassification/SpectraCoreAnalysis) identifications of Archive type |

##### Audio subplatforms

| String                           | Short description                                          |
| -------------------------------- | ---------------------------------------------------------- |
| WAV                              | Wave Audio File Format                                     |
| *Other Audio identification*     | All other valid Spectra Core identifications of Audio type |

##### ByteCode subplatforms

| String | Short description |
| ------ | ----------------- |
| JAVA   | Java bytecode     |
| MSIL   | MSIL bytecode     |
| SWF    | Adobe Flash       |

##### Document subplatforms

| String                              | Short description                                            |
| ----------------------------------- | ------------------------------------------------------------ |
| Access                              | Microsoft Office Access                                      |
| CHM                                 | Compiled HTML                                                |
| Cookie                              | Cookie files                                                 |
| Excel                               | Microsoft Office Excel                                       |
| HTML                                | HTML documents                                               |
| Multimedia                          | Multimedia containers that aren't covered by other platforms (e.g. ASF) |
| Office                              | File that affects multiple Office components                 |
| OLE                                 | Microsoft Object Linking and Embedding                       |
| PDF                                 | PDF documents                                                |
| PowerPoint                          | Microsoft Office PowerPoint                                  |
| Project                             | Microsoft Office Project                                     |
| Publisher                           | Microsoft Office Publisher                                   |
| RTF                                 | RTF documents                                                |
| Visio                               | Microsoft Office Visio                                       |
| XML                                 | XML and XML metafiles (ASX)                                  |
| Word                                | Microsoft Office Word                                        |
| *Other Document identification*     | All other valid Spectra Core identifications of Document type |

##### Email subplatforms

| String | Short description                     |
| ------ | ------------------------------------- |
| MIME   | Multipurpose Internet Mail Extensions |
| MSG    | Outlook MSG file format               |

##### Image subplatforms

| String                           | Short description                                            |
| -------------------------------- | ------------------------------------------------------------ |
| ANI                              | File format used for animated mouse cursors on Microsoft Windows |
| BMP                              | Bitmap images                                                |
| EMF                              | Enhanced Metafile images                                     |
| EPS                              | Adobe Encapsulated PostScript images                         |
| GIF                              | Graphics Interchange Format                                  |
| JPEG                             | JPEG images                                                  |
| OTF                              | OpenType Font                                                |
| PNG                              | Portable Network Graphics                                    |
| TIFF                             | Tagged Image File Format                                     |
| TTF                              | Apple TrueType Font                                          |
| WMF                              | Windows Metafile images                                      |
| *Other Image identification*     | All other valid Spectra Core identifications of Image type   |

##### Package subplatforms

| String                             | Short description                                            |
| ---------------------------------- | ------------------------------------------------------------ |
| NuGet                              | NuGet packages                                               |
| DEB                                | Debian Linux DEB packages                                    |
| RPM                                | Linux RPM packages                                           |
| WindowStorePackage                 | Packages for distributing and installing Windows apps        |
| *Other Package identification*     | All other valid Spectra Core identifications of Package type |

##### Script subplatforms

| String                            | Short description                                            |
| --------------------------------- | ------------------------------------------------------------ |
| ActiveX                           | ActiveX scripts                                              |
| AppleScript                       | AppleScript scripts                                          |
| ASP                               | ASP scripts                                                  |
| AutoIt                            | AutoIt scripts (Windows)                                     |
| AutoLISP                          | AutoCAD LISP scripts                                         |
| BAT                               | Batch scripts                                                |
| CGI                               | CGI scripts                                                  |
| CorelDraw                         | CorelDraw scripts                                            |
| Ferite                            | Ferite scripts                                               |
| INF                               | INF Script, Windows installer scripts                        |
| INI                               | INI configuration file                                       |
| IRC                               | IRC, mIRC, pIRC/Pirch Script                                 |
| JS                                | Javascript, JScript                                          |
| KiXtart                           | KiXtart scripts                                              |
| Logo                              | Logo scripts                                                 |
| Lua                               | Lua scripts                                                  |
| Macro                             | Macro (e.g. VBA, AmiPro macros, Lotus123 macros)             |
| Makefile                          | Makefile configuration                                       |
| Matlab                            | Matlab scripts                                               |
| Perl                              | Perl scripts                                                 |
| PHP                               | PHP scripts                                                  |
| PowerShell                        | PowerShell scripts, Monad (MSH)                              |
| Python                            | Python scripts                                               |
| Registry                          | Windows Registry scripts                                     |
| Ruby                              | Ruby scripts                                                 |
| Shell                             | Shell scripts                                                |
| Shockwave                         | Shockwave scripts                                            |
| SQL                               | SQL scripts                                                  |
| SubtitleWorkshop                  | SubtitleWorkshop scripts                                     |
| WinHelp                           | WinHelp Script                                               |
| WScript                           | Windows Scripting Host related scripts (can be VBScript, JScript, …) |
| *Other Script identification*     | All other valid Spectra Core identifications of Script type  |

#### Type string

This string is used to describe the general type of malware.
The following table contains the available strings and describes what each malware type is capable of. For a catalog of common software weaknesses that enable malware, see [CWE](https://cwe.mitre.org/) maintained by MITRE. CISA maintains advisories on actively exploited vulnerabilities at [cisa.gov/known-exploited-vulnerabilities](https://www.cisa.gov/known-exploited-vulnerabilities).

| String      | Description                                                  |
| ----------- | ------------------------------------------------------------ |
| Adware      | Presents unwanted advertisements                             |
| Backdoor    | Bypasses device security and allows remote access            |
| Browser     | Browser helper objects, toolbars, and malicious extensions   |
| Certificate | Classification derived from certificate data                 |
| Coinminer   | Uses system resources for cryptocurrency mining without the user's permission |
| Dialer      | Applications used for war-dialing and calling premium numbers |
| Downloader  | Downloads other malware or components                        |
| Dropper     | Drops malicious artifacts including other malware            |
| Exploit     | Exploits for various vulnerabilities, CVE/CAN entries        |
| Format      | Malformations of the file format. Classification derived from graylisting, validators on unpackers |
| Hacktool    | Software used in hacking attacks, that might also have a legitimate use |
| Hyperlink   | Classifications derived from extracted URLs                  |
| Infostealer | Steals personal info, passwords, etc.                        |
| Keylogger   | Records keystrokes                                           |
| Malware     | New and recently discovered malware not yet named by the research community |
| Network     | Networking utilities, such as tools for DoS, DDoS, etc.      |
| Packed      | Packed applications (UPX, PECompact…)                        |
| Phishing    | Email messages (or documents) created with the aim of misleading the victim by disguising itself as a trustworthy entity into opening malicious links, disclosing personal information or opening malicious files. |
| PUA         | Potentially unwanted applications (hoax, joke, misleading...) |
| Ransomware  | Malware which encrypts files and demands money for decryption |
| Rogue       | Fraudulent AV installs and scareware                         |
| Rootkit     | Provides undetectable administrator access to a computer or a mobile device |
| Spam        | Other junk mail that does not unambiguously fall into the Phishing category, but contains unwanted or illegal content. |
| Spyware     | Collects personal information and spies on users             |
| Trojan      | Allows remote access, hides in legit applications            |
| Virus       | Self-replicating file/disk/USB infectors                     |
| Worm        | Self-propagating malware with exploit payloads               |
