知识大全 国内邮箱服务器严重漏洞

Posted

篇首语:一身转战三千里,一剑曾百万师。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 国内邮箱服务器严重漏洞相关的知识,希望对你有一定的参考价值。

  这几天学习了下邮箱服务器及邮件协议 发现了不少问题 于是就测试了一下各个大型邮箱服务商的服务器 (这个问题应该之前也有人发现的 可能我没找到把)    经过测试发现了一个非常严重的问题(至少我觉得已经非常严重了) 就是可以完全伪造任何人的邮箱地址发送邮件 比如 发送给除 邮箱的大多数邮箱     我测试了QQ 网易 新浪三家的邮箱服务器 都没有做任何的验证(腾讯的稍微好点)     我先说说这个漏洞存在哪里 首先邮箱服务器之间的通信 比如下面这个     A 发送服务器 B接收服务器    A:链接B    B: Wele to Happy you and me SMTP Server     A:HELO     B: ok    A:MAIL FROM:<>    B: ok    A:RCPT TO:<hap>    B: ok    A:DATA    B: Start mail input; end with <CRLF> <CRLF>    A:DATA数据    B: OK    之后就是退出命令    按常理我们应该在A发HELO 的时候去获取A的服务器信息 然后验证是否于当前链接的IP地址符合 但我测试的这三家都没有做任何的验证 也就导致了MAIL FROM 的邮箱可以任意指定     其实我认为当初设计这个协议的时候作者的想法是互相表明了身份后双方都应该验证对方身份是否合法的 但可惜的是以上三家服务商并没有验证( 的邮箱服务器好像不是自己的)     我文采不好也就不多说了 希望各大服务商能尽快修复这个问题带给我们用户一点安全感吧 现在我都不敢相信邮箱内容了 打电话确认了之后才放心     如果小弟有啥不对的地方请各位多多指正 小弟不甚感激    最后付上我测试的邮箱接收和发送的代码 各位大哥大姐也可以去测下 (但测试测试就好了  别做坏事哦)    接受端     class Program        static void Main(string[] args)      var listener = new TcpListener(IPAddress Any )     listener Start()     while (true)  Console WriteLine( 服务已启动 )     var socket = listener AcceptSocket()     ResolveSocket(socket)             static void ResolveSocket(Socket socket)      Console WriteLine( 收到消息 socket RemoteEndPoint) //收到链接    socket Send(System Text Encoding ASCII GetBytes( Wele to Happy you and me SMTP Server /r/n )) //服务器准备完成 并发送欢迎语句    byte[] bytes = new byte[ ];  var count = socket Receive(bytes) //接收    var sendServer = System Text Encoding ASCII GetString(bytes)     Console WriteLine(sendServer)     Console WriteLine( 发件箱服务器 sendServer Split( )[ ]) //获取发送服务器地址    socket Send(System Text Encoding ASCII GetBytes( /r/n )) //发生确认信息    bytes = new byte[ ];  count = socket Receive(bytes)     sendServer = System Text Encoding ASCII GetString(bytes)     //获取到发送邮件的主人地址  Console WriteLine(sendServer)     Console WriteLine( 发件人地址 System Text RegularExpressions Regex Match(sendServer @ /<([/s/S]+)/> ) Groups[ ]) //获取发件人地址    socket Send(System Text Encoding ASCII GetBytes( OK/r/n )) //告诉对方服务器可以接收发件人发来的邮件    bytes = new byte[ ];  count = socket Receive(bytes)     sendServer = System Text Encoding ASCII GetString(bytes) // OK  Console WriteLine(sendServer)     while (sendServer StartsWith( rcpt StringComparison OrdinalIgnoreCase))//循环获取接收此邮件人的信息    Console WriteLine( 收件人地址 System Text RegularExpressions Regex Match(sendServer @ /<([/s/S]+)/> ) Groups[ ]) //获取收件人地址    socket Send(System Text Encoding ASCII GetBytes( OK/r/n )) //告诉对方服务器接收人可以接收发件人发来的邮件    bytes = new byte[ ]; count = socket Receive(bytes) sendServer = System Text Encoding ASCII GetString(bytes) // OK Console WriteLine(sendServer)       if (sendServer StartsWith( data StringComparison OrdinalIgnoreCase))//正式数据    socket Send(System Text Encoding ASCII GetBytes( Start mail input; end with <CRLF> <CRLF>/r/n )) //告诉对方可以开始写入邮件内容了 bytes = new byte[ ]; while ((count = socket Receive(bytes)) == )    sendServer += System Text Encoding ASCII GetString(bytes)     sendServer += System Text Encoding ASCII GetString(bytes)     socket Send(System Text Encoding ASCII GetBytes( OK/r/n )) //告诉对方我接收完成了    bytes = new byte[ ]; socket Receive(bytes)     sendServer += System Text Encoding ASCII GetString(bytes)     Console WriteLine(sendServer Trim()) System IO File WriteAllText( d:// txt sendServer)       socket Send(System Text Encoding ASCII GetBytes( Goodbye /r/n )) //结束此次对话    socket Close()     socket Dispose()        

cha138/Article/program/net/201311/11637

相关参考

知识大全 为什么我在登陆163免费邮箱时总是提示登录邮箱初始化遇到问题,别的电脑都可以登陆进去

为什么我在登陆163免费邮箱时总是提示登录邮箱初始化遇到问题,别的电脑都可以登陆进去系统补一漏洞,升级一下你ie,清除历史记录看看!163免费邮箱登陆找他激活的邮箱哦有163免费邮箱登陆吗?直接注册一

知识大全 sendmail中一种限定用户邮箱大小的实用方法

  目前在Linux/Unix平台上Sendmail因成为缺省安装的邮件服务器而得到非常广泛的应用但是Sendmail本身并不具有限定用户邮箱大小的功能所以如果某些用户长时间不取信或设定了保留邮件副本

知识大全 java实现邮件发送

  要实现邮箱的发送需要一个已知账号和密码的邮箱并且开通了STMPPOP服务常见主流邮箱邮件收取和发送popstmp服务配置汇总介绍一文中详细介绍了各个邮箱开通服务的步骤  &nb

知识大全 专家称PHP语言漏洞是产生严重网络病毒的温床

专家称PHP语言漏洞是产生严重网络病毒的温床  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一项

知识大全 甲骨文进行紧急升级 共发布33个补丁

  月日国际报道当地时间本周二甲骨文公司发布了针对公司众多软件产品安全漏洞的补丁    这次紧急补丁升级行动共发布了个针对甲骨文数据库产品的漏洞补丁个针对应用服务器个针对Collaboration套件

知识大全 什么是电子邮件地址下载游戏时使用

什么是电子邮件地址下载游戏时使用电子邮箱就是一个虚拟的邮箱地址就像是短信接受消息的国内一般都使用QQ邮箱或者网易邮箱什么是电子邮件地址?电子邮件地址电子邮件地址如真实生活中人们常用的信件一样,有收信人

知识大全 求推荐国内服务比较好的航空公司

求推荐国内服务比较好的航空公司?推荐华夏航空公司,因为工作原因,我经常要在贵阳、重庆和咸阳这几个地方飞来飞去,我每次都选择华夏航空的航班,一是服务细致周到,二是航班很准时,三是他们经常会有折扣价,还挺

某公司向计算机个人用户提供免费的安全和杀毒服务,占据了国内网络安全软件市场的半壁江山。该公司的产品和服务之所以免费提供

某公司向计算机个人用户提供免费的安全和杀毒服务,占据了国内网络安全软件市场的半壁江山。该公司的产品和服务之所以免费提供,是因为其提供的产品与服务_____。A、属于公共物品B、价值通过其他形式实现C、

知识大全 解析web文件操作常见安全漏洞(目录、文件名检测漏洞

  做web开发我们经常会做代码走查很多时候我们都会抽查一些核心功能或者常会出现漏洞的逻辑随着技术团队的壮大组员技术日益成熟常见傻瓜型SQL注入漏洞以及XSS漏洞会越来越少但是我们也会发现一些新兴的隐

世界市场是把各个贸易通过市场联系起来的世界范围的商品和服务的交换经济,是国内市场在范围上的延伸

世界市场是把各个贸易通过市场联系起来的世界范围的商品和服务的交换经济,是国内市场在范围上的延伸。_____答案:正确解析:国际市场是通过世界范围的商品交换和商品流通,把各国的市场紧密联系起来的总体,是