【问题标题】:Extracting the files from a windows pgp executable self extracting archive on linux [closed]从Linux上的Windows pgp可执行自解压存档中提取文件[关闭]
【发布时间】:2023-11-03 01:14:01
【问题描述】:

我有一位客户(通过他们的旧系统)向我发送了一个包含一些数据的文件。问题是他们通过 PGP 对其进行加密,然后创建一个可执行的自解压文件来封装它。

我正在尝试摆脱 Windows 进程来执行此提取,并且他们 - 坦率地说 - 没有足够的技术或动机来改变他们的提取方面。

我的问题是 - 有哪些基于 linux 的实用程序(和示例命令)可以让我获取这个可执行文件并提取数据,而无需在 Windows 平台上运行 exe?

请不要回答“你应该能够使用 gpg”。请给出我需要使用的示例命令,因为我在文档中找不到它们。

这是一个类似的(可能完全相同的问题)和我不想要的答案类型:How can I decrypt a PGP Self Decrypting Archive programatically?"just use gpg"

【问题讨论】:

  • 我有点失望,这个问题由于“离题”而被关闭,查看常见问题解答:*.com/faq#questions 这“符合”要求 - 主要是“软件常用的工具”程序员”可以解决上述问题。我同意没有代码 sn-p 因为...我不知道要编写什么代码来执行上述操作。
  • 我不相信这是题外话,但你不能声称这是一个很好的问题。 gpg有什么问题?如果它没有任何问题,您在使用它时遇到了什么问题?如果您想使用其他东西,您调查了什么?你遇到了什么问题?
  • 我同意这绝对不是一个好问题!我已经开始看 gpg 但是......我不知道从哪里开始 :-/ 到目前为止我已经搜索了 docos 无济于事..
  • 从我读到的有关 PGP SDA 文件的信息中,提供它们是为了方便将加密文件传递给没有 PGP(或 gpg)的人。您最好的选择是安装 gpg (gnupg.org),创建您自己的密钥对并将您的公钥发送给您的客户。这样,他们可以直接使用您的密钥加密文件并发送结果,而无需将其包装在此 SDA 中。收到加密文件后,您可以通过多种方式进行解密。
  • @BobDuell - 我知道最好的方法是让客户改变他们的方式......但基本上这是一个遗留系统,高度政治化,需要让高层参与进来,只是为了让一个人生活有点简单(即我)。如前所述,他们缺乏进行这种改变的技术能力和动力(即对他们来说没有任何东西)。无论如何,感谢您确认我认为最好的行动方案。

标签: linux windows gnupg pgp


【解决方案1】:

我不知道有什么工具可以做到这一点。我也找不到 SDA 的规范。它们似乎正是另一个答案所说的:EXE 存根围绕一个加密的 zip 文件。

您的流程可能如下所示:

  1. 解析可执行文件,找到存储加密 zip 的数据部分,然后将其解压缩。
  2. 使用 GPG 解密 zip 文件。

您可能希望使用脚本执行第 1 步。 Python 具有pefile 模块,可让您检查 Windows 可执行文件。其他语言也有类似的库。

或者,您可以使用 wine 运行 SDA。

【讨论】:

  • 不幸的是,我们试图避免以任何形式运行可执行文件 - 即使在葡萄酒沙箱中(如果我说实话,这将开始向我们的史前安全团队提出更多问题) .我很感激你的回答。看起来好像当权者宣布这个问题不在主题范围内(不确定为什么,因为他们也不必留下解释)。我本来希望我正在尝试做的事情不会那么复杂,但它看起来好像超出了这里的专家范围(是的,这是一个重新打开问题来回答它的邀请!)
  • @Richard:这是一个框架问题,真的。现在,您的问题并不是真正的编程问题......不过,它几乎是。顺便说一句,您可以提供这些 PGP SDA 之一吗?