如何修改可执行文件以使其通过电子邮件附件过滤器通过?

如何修改可执行文件以使其通过电子邮件附件过滤器通过?

我正在尝试通过电子邮件向自己发送一个实用程序(韓國分擴大),因为我无法直接在工作电脑上下载它。当然,我公司的过滤器会阻止我这样做。但该死的,我正在尝试完成一些工作,如果不先拆分它,我无法打开这个 500 MB 的日志文件。(记事本甚至无法处理 100 MB。而 UltraEdit 不知为何崩溃了,尽管它应该能够处理它。)

我用十六进制编辑器 (UltraEdit) 打开了该实用程序的 ZIP 文件,修改了一些位,并将扩展名更改为 JPG。这使其绕过了 Gmail 的无可执行文件规则,但仍被我公司的 Exchange 服务器阻止。

不管我所做的事情是否道德,我很好奇,需要改变哪些部分才能使文件的性质对于过滤器来说无法区分或无法识别(或可识别为良性类型)?

答案1

在大多数情况下,加密文件会使文件难以区分。有相当多的实用程序可以为您执行此操作。我建议在 Linux 上使用 GPG,在 Windows 上使用 TrueCrypt。(是的,我知道 TrueCrypt 不再受支持,但因为你只是想绕过过滤器,所以你应该没问题。)

当然,您可以在十六进制编辑器中打开该实用程序并删除一些“魔法”字节。我认为前 100 个值应该有效,然后将它们复制到一个单独的文件中,您将通过电子邮件将该实用程序本身发送出去(不包括前 100 个字节)。

希望这可以帮助!

答案2

我发现,当我尝试偷偷压缩一个 EXE 时,我不仅需要更改前两个字节(称为“魔术数字”),还需要更改拼出压缩文件名的字节序列。

例如,原始 ZIP 以 开头PK,表示压缩文件:

在此处输入图片描述

我将其更改为BM,指定位图文件:

在此处输入图片描述

原始 ZIP 的拼写也是hjsplit.exe,所以我将其更改为hjsplit.bmp。我还将文件本身重命名为hjsplit.bmp

答案3

对其进行 uuencode 编码。这会将文件转换为纯文本。然后删除第一行(以 开头的行begin 644 filename)。

您现在只拥有常规的纯文本。

邮寄文本,再次添加第一行并进行uudecode。

相关内容