I noticed that the symbol .
doesn't represent the same hexadecimal number when I tried to tune my YARA rules that I run on VirusTotal
. When I tried to exclude the false positive-generating text string .sample.
, it would not get excluded because .
converted from text representation was 2E
in this case, meanwhile in the string, that was actually contained in the false positives, .
represented 00
.
I assume that when the files are matched, text is converted to hex, the hex string is then matched in a hexdump of a file and the whole hexdump is converted to text in the VT preview.
Then I noticed that there were actually more hexadecimal numbers that were represented as .
in VirusTotal
's text preview. For example, 0A
, 99
, 09
(screenshot).
I tried seeing the text representation of these hex numbers using an online converter (http://www.unit-conversion.info/texttools/hexadecimal/) and some of them were represented as �
or a blank symbol (not a space
symbol, as the number 20
, but just a blank space).
So my questions are - why do different numbers seem to represent the same symbol? In addition, what do the "blank spaces" represent in a file's hexdump?