首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们能用内存中的密钥解密捕获的恶意软件(Meterpreter) HTTPS/SSL通信吗?

我们能用内存中的密钥解密捕获的恶意软件(Meterpreter) HTTPS/SSL通信吗?
EN

Security用户
提问于 2016-10-18 14:38:07
回答 2查看 1.9K关注 0票数 8

我们网络上的一台机器被Meterpreter破坏了。

在建立连接时,我们有来自整个妥协期间的流量捕获和受感染机器的内存转储。

我们能解码我们捕获的HTTPS/SSL通信量吗?

到目前为止,我们已经使用波动率的垃圾插件提取一些公共证书,但没有明显的私人证书。当然,由于连接仍然建立,私钥肯定在内存的某个地方?

TLS版本是TLSv1 1.0。算法标识符为sha256WithRSAEncryption。

EN

回答 2

Security用户

发布于 2017-11-29 04:46:44

是的,你可以提取钥匙。私钥和对称密钥存在于密码库的存储器(例如OpenSSL)中。您必须提取对称密钥才能解密TLS通信量。OpenSSL将其保存在结构SSL->session->master_key中。如果您不知道具体使用的是什么库,一种简单的蛮力方法是从内存中提取所有适当大小的缓冲区,并尝试用每个缓冲区解密TLS流,直到成功为止。

您也可以使用GDB,如从OpenSSL应用程序中提取主密钥中所描述的那样,它可以为您提供可以插入Wireshark的预主控秘密。虽然这个答案集中在实时内存转储上,但是如果你有一个核心程序,它应该也会工作得很好。使用波动性转储进程内存,该进程内存链接到TLS库,然后您可以在该库上使用GDB。如果没有使用调试符号编译OpenSSL,则可能需要使用蛮力方法。

票数 2
EN

Security用户

发布于 2017-08-30 23:02:10

这在某种程度上取决于您在记忆中仍然获得的数据类型,以及握手过程中经过协商的TLS-特性。Wireshark可以帮助您解密流量,如果您可以提供,例如,TLS-通道的主要秘密。

票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/140092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档