当勒索软件在扫描步骤中搜索受害者的文件时,勒索软件如何知道文件的类型?
它可以检查文件名(例如book.pdf
)或文件签名。
我想知道的是,当我更改文件名的扩展名(例如book.pdf
--> book.customEX
)时,我认为勒索软件应该无法找到我的文件,因此也无法加密文件。
我可以给一些意见或建议吗?
当勒索软件在扫描步骤中搜索受害者的文件时,勒索软件如何知道文件的类型?
它可以检查文件名(例如book.pdf
)或文件签名。
我想知道的是,当我更改文件名的扩展名(例如book.pdf
--> book.customEX
)时,我认为勒索软件应该无法找到我的文件,因此也无法加密文件。
我可以给一些意见或建议吗?
首先,并非所有勒索软件都是平等的:就像任何软件一样,有些勒索软件写得很好,而有些写得不好。您可以在wikipedia/ransomware上获得主要勒索软件变种的概述。一些勒索软件——尤其是 CryptoLocker——确实使用文件扩展名列表来决定要加密哪些文件,为什么不呢?有足够知识更改文件扩展名的用户可能有备份,并且无论如何都不会付钱给你。正如@usr 指出的那样,您仍然可以通过简单的方法吸引很多人。也就是说,一些勒索软件,如 CryptoWall,非常复杂,虽然我不知道它是如何工作的,但我可以推测出什么是可能的。
正如你所说,文件通常包含一个“文件签名”——文件开头附近的一个简短的十六进制代码,表明它是什么类型的文件。以下是来自维基百科的这些“神奇数字”的两个列表:[1],[2]。
Windows 操作系统本身在很大程度上依赖于文件名中的文件扩展名,并且众所周知,如果您更改它,它会变得很脆弱,但这并不意味着所有软件都需要如此糟糕。
例如,有一个标准的 Unix 实用程序file
,它会查看幻数并告诉你它是什么类型的文件,勒索软件没有理由不能做同样的事情。
恶意程序将通过其签名检测您的文件
有一个例子(image.png):
hexdump -C image.png | head
样本输出:
00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR|
00000010 00 00 02 4a 00 00 00 bc 08 06 00 00 00 87 77 81 |...J..........w.|
00000020 b4 00 00 00 01 73 52 47 42 00 ae ce 1c e9 00 00 |.....sRGB.......|
00000030 00 04 67 41 4d 41 00 00 b1 8f 0b fc 61 05 00 00 |..gAMA......a...|
00000040 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........|
00000050 2b 0e 1b 00 00 24 b1 49 44 41 54 78 5e ed 96 8d |+....$.IDATx^...|
00000060 ae 5d 29 08 85 fb fe 2f dd 09 e9 30 e3 a5 8a 88 |.])..../...0....|
00000070 20 e8 e6 4b 48 7b e4 6f 01 bb 49 7f fd 2e 8a a2 | ..KH{.o..I.....|
00000080 28 8a a2 28 ba d4 7f 94 8a a2 28 8a a2 28 06 d4 |(..(......(..(..|
00000090 7f 94 8a a2 28 8a a2 28 06 d4 7f 94 8a a2 28 8a |....(..(......(.|
我会将我的更改image.png
为您的自定义扩展名customEX
,然后我将获得 hexdump
我再一次跑 hexdump -C image.customEX | head
有输出:
00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR|
00000010 00 00 02 4a 00 00 00 bc 08 06 00 00 00 87 77 81 |...J..........w.|
00000020 b4 00 00 00 01 73 52 47 42 00 ae ce 1c e9 00 00 |.....sRGB.......|
00000030 00 04 67 41 4d 41 00 00 b1 8f 0b fc 61 05 00 00 |..gAMA......a...|
00000040 00 09 70 48 59 73 00 00 0e c4 00 00 0e c4 01 95 |..pHYs..........|
00000050 2b 0e 1b 00 00 24 b1 49 44 41 54 78 5e ed 96 8d |+....$.IDATx^...|
00000060 ae 5d 29 08 85 fb fe 2f dd 09 e9 30 e3 a5 8a 88 |.])..../...0....|
00000070 20 e8 e6 4b 48 7b e4 6f 01 bb 49 7f fd 2e 8a a2 | ..KH{.o..I.....|
00000080 28 8a a2 28 ba d4 7f 94 8a a2 28 8a a2 28 06 d4 |(..(......(..(..|
00000090 7f 94 8a a2 28 8a a2 28 06 d4 7f 94 8a a2 28 8a |....(..(......(.|
如您所见,文件的签名保持不变,可以从List_of_file_signatures进行验证
89 50 4E 47
0D 0A 1A 0A
我可以给一些意见或建议吗?
您需要定期创建数据的安全备份(外部硬盘...),并将设备与 PC 物理断开连接。
我删除的勒索软件通常会寻找常见的文件扩展名。当他们找到匹配项时,他们会运行加密脚本并移动到下一个文件。
他们还可以查看文件的标题,但抓取扩展名可能已经足够破坏性了。
除非编写得非常糟糕,否则勒索软件会将引导文件与非引导文件区分开来。然而,这种识别是基于默认设置的,这可能会给像我这样拥有他们编写的引导加载程序/引导扇区的人带来问题。勒索软件可能会加密这些文件,因为它无法识别它们。但是,加密常规引导文件可能是个好主意。勒索软件可能会用模仿 Windows 或 Grub/Grub2 引导加载程序的引导加载程序替换引导加载程序,但能够读取这些加密的引导文件。这样,可以使计算机在支付价格之前无法启动。
勒索软件可能会检查幻数。