数据泄露可能是内部人员和黑客的主要目标。因此,你就需要思考如何发送这些数据。
大多数公司对这方面的问题几乎没有什么防护措施(例如,中间人代理和TLS拦截),检测通常也少的可怜……但有时,这可能是一个挑战。
对于工作和业余爱好,我围绕数据混淆和隐蔽通道编写了大量的工具,并总是在为构建更好的安全检测和改善响应时间做努力。
本文我们将讨论如何将数据嵌入到自定义SSL证书中,并通过mTLS针对一个远程侦听服务来使用它。
这是作为POC而写的,也是我在Go中的编写第一个程序。
从 TLS 到 mTLS?
TLS(安全传输层协议)是一种加密协议,用于在客户端和服务器之间提供通信安全性。为此,证书颁发机构(“CA”)会为服务器颁发一个签名证书,以向客户端证明其身份。该客户端可以检查证书,并查看签名的CA是否真正受信任。
虽然TLS主要是对服务器进行身份验证,但Mutual TLS添加了客户端的身份验证,该身份验证将由受信任的CA提供签名证书。
x509 证书滥用
X509证书可以使用主题别名或SAN进行扩展。
这意味着我们可以在证书创建期间添加字面量(literal)值,这些值可以是从电子邮件,IP到DNS名称的任何内容。
同样,可以在此SAN中添加任何内容