From 11239bbe1a3a42db0dee2bc33632914abd2dbb59 Mon Sep 17 00:00:00 2001 From: Tomasz Kojm Date: Thu, 25 Feb 2010 17:20:50 +0100 Subject: [PATCH] docs: update signatures.pdf - more to come --- ChangeLog | 4 ++ docs/signatures.pdf | Bin 36166 -> 43101 bytes docs/signatures.tex | 100 +++++++++++++++++++++++++++++++++++--------- 3 files changed, 85 insertions(+), 19 deletions(-) diff --git a/ChangeLog b/ChangeLog index df708566c..877684deb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Thu Feb 25 17:20:27 CET 2010 (tk) +--------------------------------- + * docs: update signatures.pdf + Tue Feb 16 16:41:30 CET 2010 (tk) --------------------------------- * libclamav/cvd.c: enable new dsig check for main db diff --git a/docs/signatures.pdf b/docs/signatures.pdf index e33868977eadfc7d88aa501e32c9e968501eebcc..e2a818262c63ac3727deab09cf8f255b98001b8f 100644 GIT binary patch literal 43101 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𝔘~ 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 SB0SNk2$Mz9*SB%DCH)8a`sp12 delta 31227 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 tMWGN0NnQ|CoJaWopTZF1 test.hdb zolw@localhost:/tmp/test$ cat test.hdb 48c4533230e1ae1c118c741c0db19dfb:17387:test.exe \end{verbatim} - That's it! The signature is ready to use: + That's it! The signature is ready for use: \begin{verbatim} zolw@localhost:/tmp/test$ clamscan -d test.hdb test.exe test.exe: test.exe FOUND @@ -83,10 +83,11 @@ PESectionSize:MD5:MalwareName target PE sections into separate files and then run sigtool with the option \verb+--mdb+ - \subsection{Hexadecimal signatures} - ClamAV stores all signatures in a hexadecimal format. By a hex-signature - here we mean a fragment of a malware's body converted into a hexadecimal - string which can be additionally extended with various wildcards. + \subsection{Body-based signatures} + ClamAV stores all body-based signatures in a hexadecimal format. In this + section by a hex-signature we mean a fragment of malware's body converted + into a hexadecimal string which can be additionally extended using various + wildcards. \subsubsection{Hexadecimal format} You can use \verb+sigtool --hex-dump+ to convert any data into a hex-string: @@ -97,7 +98,7 @@ How do I look in hex? \end{verbatim} \subsubsection{Wildcards} - ClamAV supports the following extensions inside hex signatures: + ClamAV supports the following extensions for hex-signatures: \begin{itemize} \item \verb+??+\\ Match any byte. @@ -122,11 +123,15 @@ How do I look in hex? \item \verb+(aa|bb|cc|..)+\\ Match aa or bb or cc.. \item \verb+!(aa|bb|cc|..)+\\ - Match any byte except aa and bb and cc.. + Match any byte except aa and bb and cc.. (ClamAV$\ge$0.96) \item \verb+HEXSIG[x-y]aa+ or \verb+aa[x-y]HEXSIG+\\ Match aa anchored to a hex-signature, see \url{https://wwws.clamav.net/bugzilla/show_bug.cgi?id=776} for - a discussion and examples. + discussion and examples. + \item \verb+(B)+\\ + Match word boundary (including file boundaries). + \item \verb+(L)+\\ + Match CR, CRLF or file boundaries. \end{itemize} The range signatures \verb+*+ and \verb+{}+ virtually separate a hex-signature into two parts, eg. \verb+aabbcc*bbaacc+ is treated @@ -168,7 +173,7 @@ MalwareName:TargetType:Offset:HexSignature[:MinEngineFunctionalityLevel:[Max]] \item 5 = Graphics \item 6 = ELF \item 7 = ASCII text file (normalized) - \item 8 = Disassembler data + \item 8 = Unused \item 9 = Mach-O files \end{itemize} And \verb+Offset+ is an asterisk or a decimal number \verb+n+ possibly @@ -226,6 +231,15 @@ Subsig1;Subsig2;... \item \verb+SubsigN+ is n-th subsignature in extended format possibly preceded with an offset. There can be specified up to 64 subsigs. \end{itemize} + Keywords used in \verb+TargetDescriptionBlock+: + \begin{itemize} + \item \verb+Target:X+: Target file type + \item \verb+Engine:X-Y+: Required engine functionality (range; 0.96) + \item \verb+FileSize:X-Y+: Required file size (range in bytes; 0.96) + \item \verb+EntryPoint+: Entry point offset (range in bytes; 0.96) + \item \verb+NumberOfSections+: Required number of sections in executable (range; 0.96) + \item \verb+Container:CL_TYPE_*+: File type of the container which stores the scanned file + \end{itemize} Modifiers for subexpressions: \begin{itemize} \item \verb+A=X+: If the SUB-EXPRESSION A refers to a single signature @@ -265,11 +279,53 @@ f2aef7d14951684cf04100e8110a00;S2+78:22??232c2d252229{-15}6e6573 (63|64)61706528;S+50:68efa311c3b9963cb1ee8e586d32aeb9043e;f9c58d cf43987e4f519d629b103375;SL+550:6300680065005c0046006900 \end{verbatim} + ClamAV 0.96 introduced support for special macro subsignatures in + the following format: \verb+${min-max}MACROID$+, where \verb+MACROID+ + points to a group of signatures and \verb+{min-max}+ specifies the + offset range at which one of the group signatures should match. + The range is calculated against the match offset of the previous + subsignature. The macro subsignature makes its preceding subsignature + considered a match only if both of them get matched. For more + information and examples please see + \url{https://wwws.clamav.net/bugzilla/show_bug.cgi?id=164}. - \subsection{Signatures based on archive metadata} - Signatures based on metadata inside archive files can provide an effective - protection against malware that spreads via encrypted zip or rar - archives. The format of a metadata signature is: + \subsection{Signatures based on container metadata} + ClamAV 0.96 allows creating generic signatures matching files stored + inside different container types which meet specific conditions. + The signature format is +\begin{verbatim} +VirusName:ContainerType:ContainerSize:FileNameREGEX:FileSizeInContainer: +FileSizeReal:IsEncrypted:FilePos:Res1:Res2[:MinFL[:MaxFL]] +\end{verbatim} + where the corresponding fields are: + \begin{itemize} + \item \verb+VirusName:+ Virus name to be displayed when signature matches + \item \verb+ContainerType:+ one of \verb+CL_TYPE_ZIP+, \verb+CL_TYPE_RAR+, + \verb+CL_TYPE_ARJ+, \verb+CL_TYPE_CAB+, \verb+CL_TYPE_7Z+, + \verb+CL_TYPE_MAIL+, \verb+CL_TYPE_(POSIX|OLD)_TAR+, + \verb+CL_TYPE_CPIO_(OLD|ODC|NEWC|CRC)+ or \verb+*+ to match + any of the container types listed here + \item \verb+ContainerSize:+ size of the container file itself (eg. size of + the zip archive) specified in bytes as absolute value or range \verb+x-y+ + \item \verb+FileNameREGEX:+ regular expression describing name of the target file + \item \verb+FileSizeInContainer:+ usually compressed size; for MAIL, TAR and CPIO == + \verb+FileSizeReal+; specified in bytes as absolute value or range + \item \verb+FileSizeReal:+ usually uncompressed size; for MAIL, TAR and CPIO == + \verb+FileSizeInContainer+; absolute value or range + \item \verb+IsEncrypted+: 1 if the target file is encrypted, 0 if it's not and + \verb+*+ to ignore + \item \verb+FilePos+: file position in container (counting from 1); absolute value + or range + \item \verb+Res1+: when \verb+ContainerType+ is \verb+CL_TYPE_ZIP+ or + \verb+CL_TYPE_RAR+ this field is treated as a CRC sum of the target file + specified in hexadecimal format; for other container types it's ignored + \item \verb+Res2+: not used as of ClamAV 0.96 + \end{itemize} + The signatures for container files are stored inside \verb+.cdb+ files. + + \subsection{Signatures based on ZIP/RAR metadata (obsolete)} + The (now obsolete) archive metadata signatures can be only applied + to ZIP and RAR files and have the following format: \begin{verbatim} virname:encrypted:filename:normal size:csize:crc32:cmethod:fileno:max depth \end{verbatim} @@ -293,11 +349,16 @@ virname:encrypted:filename:normal size:csize:crc32:cmethod:fileno:max depth it inside a database file with the extension of \verb+.fp+.\\ \noindent - To whitelist a specific signature inside main.cvd add the following - entry into daily.ign or a local file local.ign: + To whitelist a specific signature from the database you just add + its name into a local file called local.ign2 stored inside the + database directory. You can additionally follow the signature name + with the MD5 of the entire database entry for this signature, eg: \begin{verbatim} -db_name:line_number:signature_name +Eicar-Test-Signature:bc356bae4c42f19a3de16e333ba3569c \end{verbatim} + In such a case, the signature will no longer be whitelisted when + its entry in the database gets modified (eg. the signature gets + updated to avoid false alerts). \subsection{Signature names} ClamAV uses the following prefixes for signature names: @@ -326,7 +387,8 @@ db_name:line_number:signature_name \end{itemize} Important rules of the naming convention: \begin{itemize} - \item always use a -zippwd suffix in the malware name for signatures of type zmd, + \item always use a -zippwd suffix in the malware name for signatures + of type zmd, \item always use a -rarpwd suffix in the malware name for signatures of type rmd, \item only use alphanumeric characters, dash (-), dot (.), underscores