ランサムウェアがスキャン手順で被害者のファイルを検索するとき、ランサムウェアはどのようにファイルの種類を知ることができますか?
ファイル名を確認できます(例:book.pdf
)またはファイルの署名。
私が思っているのは、ファイル名の拡張子を変更したときです(たとえば、book.pdf
-> book.customEX
)、ランサムウェアはファイルを見つけられないはずなので、ファイルの暗号化もできません。
意見やアドバイスはありますか?
まず、すべてのランサムウェアが同じように作成されているわけではありません。他のランサムウェアと同様に、一部のランサムウェアは適切に作成されていますが、一部のランサムウェアは作成が不十分です。 wikipedia/ransomware で、主要なランサムウェアの亜種の概要を確認できます。一部のランサムウェア(特にCryptoLocker)は、ファイル拡張子のリストを使用して暗号化するファイルを決定しますが、それはなぜですか?ファイル拡張子を変更するのに十分な知識があるユーザーは、おそらくバックアップがあり、とにかくお金を払うことはありません。 @usrが指摘するように、単純なアプローチで多くの人を獲得できます。そうは言っても、CryptoWallのような一部のランサムウェアは非常に洗練されており、どのように機能するのかはわかりませんが、何が可能か推測できます。
あなたが言うように、ファイルはしばしば「ファイル署名」-それがどのタイプのファイルであるかを示す、ファイルの先頭近くの短い16進コードを含みます。ウィキペディアからのこれらの「マジックナンバー」の2つのリストを次に示します: [1] 、 [2] 。
Windows OS自体は、ファイル名のファイル拡張子に大きく依存しており、変更した場合に非常に壊れやすくなりますが、すべてのソフトウェアがそれほどひどいものである必要はありません。
たとえば、マジックナンバーを調べてファイルの種類を通知する、標準のUnixユーティリティ file
があります。ランサムウェアが同じことを行えない理由はありません。
悪意のあるプログラムは signatures によってファイルを検出します
例があります(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
意見やアドバイスはありますか?
データの安全なバックアップを定期的に作成し(外付けHDDなど)、デバイスをPCから物理的に切断する必要があります。
私が削除したランサムウェアは通常、一般的なファイル拡張子を探します。一致を見つけると、暗号化スクリプトを実行して次のファイルに移動します。
また、ファイルのヘッダーを確認することもできますが、拡張機能を取得することはおそらく十分なダメージを与えます。