我想使用python(pySocks和imaplib)从零开始实现透明的IMAPS(SSL / TLS)代理。
用户和代理位于同一网络中,邮件服务器位于外部(例如:gmail服务器)。端口993上的所有流量都被重定向到代理。用户应使用他最喜欢的电子邮件应用程序检索他的电子邮件(例如:thunderbird)。代理应该接收命令并将其发送到用户/服务器,并且应该能够读取检索到的电子邮件的内容。
但是,由于流量是加密的,我不知道如何获取用户的帐号和密码(不使用数据库)或如何在不知道帐号和密码的情况下阅读电子邮件的内容用户。
在寻找解决方案几天后,我仍然没有任何跟踪。也许这是不可能的?如果你有任何曲目,我很乐意阅读它。
谢谢。
答案 0 :(得分:0)
您必须将您的代理实施为中间人攻击。这意味着有两种不同的SSL / TLS加密通信通道:一种在客户端和代理之间,一种在代理和服务器之间。这意味着:
设置完成后,代理只需传递所有命令和响应,并即时处理收到的邮件。
我承认这不是一个完整的答案,但完整的答案将远远超出SO的范围,我希望它可以通往它。如果您后来陷入实际实施阶段,请随时在此处提出更准确的问题。