首页 | 邮件资讯 | 技术教程 | 解决方案 | 产品评测 | 邮件人才 | 邮件博客 | 邮件系统论坛 | 软件下载 | 邮件周刊 | 热点专题 | 工具
网络技术 | 操作系统 | 邮件系统 | 客户端 | 电子邮箱 | 反垃圾邮件 | 邮件安全 | 邮件营销 | 移动电邮 | 邮件软件下载 | 电子书下载

邮件客户端

邮件技巧 | Outlook | Foxmail | Pegasus | Eudora | Becky! | DreamMail | IncrediMail | KooMail | 雷鸟 | 其它工具 | The bat! |
首页 > 邮件客户端 > Outlook/Outlook Express > 找回丢失的Outlook帐户密码 > 正文

找回丢失的Outlook帐户密码

出处:电脑爱好者 作者:浙江嵊州 俞伟明 时间:2005-11-21 10:24:00

许多人习惯于让Outlook记住密码,收邮件时便不必每次都输入邮箱密码,一切让Outlook代劳。但时间一长,马虎的人会把自己的邮箱密码忘记,这样就无法重新设置或者登录Web界面收取邮件了。Outlook绝对不会告诉你邮箱的密码是多少,即使你找到了注册表中Outlook存储帐户和密码信息的键值,由于密码信息都是加密存储的,你还是无法提取密码。我们的对策就是针对邮箱服务中安全机制最薄弱的环节采取行动……

众所周知,POP3协议本质上是一种明文协议,也就是说,虽然Outlook本地存储的密码是加密的,但当它连接到POP3服务器准备收取邮件时,必须以明文的形式提供密码。因此,只要我们开发一个POP3服务器(不必是功能完善的POP3服务器,只要骗过Outlook即可),让Outlook从该服务器收取邮件,Outlook就会乖乖地交出加密得严严实实的密码。实际上,这种办法不仅适用于Outlook,而且适用于所有使用POP3的邮件客户程序,如Outlook Express、Foxmail等。

一、构造POP3服务器

下面我们要用VS.NET 2003和C#开发一个“伪”POP3服务器——之所以说它“伪”,那是因为它只有极其有限的功能,只进行到骗出邮箱密码就停止。

启动VS.NET 2003,新建一个C#项目,项目的模板选择“控制台应用程序”,将项目命名为PServer,点击“确定”创建项目,如图1所示:

图1 新建C#项目

VS.NET自动创建PServer名称空间、 Class1类和Main函数骨架。在Class1.cs文件的顶端using System语句之后加入下列三个语句:

using System.Net;
using System.Net.Sockets;
using System.Text;

接下来的任务就是修改Main函数,使它作为一个POP3服务器监听来自Outlook的请求,当Outlook尝试连接这个PServer服务器时,根据POP3协议的要求,我们确认一下Outlook用户提供的帐户名并要求提供密码,Outlook提供密码后,我们在控制台上输出密码,这样就算完成了任务!

在Main函数中,我们的第一个任务是启动一个POP3服务器。为此,我们要用System.Net.Sockets名称空间定义的类创建一个ipEndPoint,让一个TCP服务器监听该端点,接收来自客户端的请求:

// 在127.0.0.1(本地机器)上创建一个TCP服务器,监听
// 110端口的请求(110是POP3服务器的默认端口)
IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"),110);
TcpListener tcpServer = new TcpListener(ipEndPoint);
tcpServer.Start();

// 等待来自POP3客户程序(如Outlook)的连接请求
TcpClient tcpClient = tcpServer.AcceptTcpClient();

当一个POP3客户程序连接该服务器时,服务器必须按照POP3协议的要求对客户程序作出应答。根据POP3协议RFC 1939规范的定义,服务器首先要做的是返回一个欢迎信息:

// 向客户程序返回欢迎信息
NetworkStream ns = tcpClient.GetStream();
byte[] outbytes = Encoding.ASCII.GetBytes("+OK Welcome" + Environment.NewLine);
ns.Write(outbytes,0,outbytes.Length);

客户程序接收到欢迎信息后,同样也会按照POP3协议的要求发送帐户名称。我们把这个帐户名称记录下来以便以后使用,代码如下:

// 接收和记录邮箱帐户名称
byte[] userBytes = new byte[255];
ns.Read(userBytes,0,userBytes.Length);
                        

收到帐户名称信息后,我们要告诉Outlook说这个名称没有问题,客户程序一收到这个信息就会发送密码,然后我们再把密码也记录下来。实现代码是:

// 告诉客户程序帐户名称正确
outbytes = Encoding.ASCII.GetBytes("+OK" + Environment.NewLine);
ns.Write(outbytes,0,outbytes.Length);

// 接收和记录帐户密码
byte[] pwdBytes = new byte[255];
ns.Read(pwdBytes,0,pwdBytes.Length);
                        

接下来要做的就是获取字节数组的内容,将它们转换成字符串,然后输出到控制台:

// 在控制台上显示出帐户名称、密码
Console.WriteLine("帐户名称:" + Encoding.ASCII.GetString(userBytes));
Console.WriteLine("帐户密码:" + Encoding.ASCII.GetString(pwdBytes));

既然已经获得了密码,服务器的任务已经完成了,现在可以关闭它。强行关闭服务器会导致客户程序显示错误信息,不过这里我们并不在乎。关闭服务器的代码是:

// 关闭服务器
ns.Close();
tcpClient.Close();
tcpServer.Stop(); 

将上面的所有代码依次输入Main函数,编译一下就得到了一个PServer.exe执行文件,它就是我们的伪POP3服务器。PServer.exe体积很小,发行版只有16 KB。

二、获得密码

首先启动PServer.exe,让我们的伪POP3服务器开始监听来自客户程序的请求。

启动Outlook,点击菜单“工具→电子邮件帐户”,选择“查看或更改现有电子邮件帐户”,找到要恢复密码的电子邮件帐户,点击“更改”打开它的属性对话框,如图2,把POP3服务器设置为localhost:

图2 更改Outlook电子邮件帐户

在Outlook中接收一下邮件,如图3所示,Outlook 将报告说服务器中断了连接,不必理睬。

图3 Outlook已经把密码发送到伪POP3服务器了

现在PServer.exe已经得到帐户的密码了,如图4所示,abc帐户的密码原来是abcdefg:

图4 伪POP3服务器返回的用户名和密码

三、利用嗅探工具

基于POP3密码在网络上以明文形式传递这一事实,我们还可以利用嗅探工具分析TCP/IP通信过程获得帐户密码。如果你没有VS.NET开发工具,那么可以用这种办法获得密码。即使你拥有VS.NET,也可以用嗅探工具了解POP3通信的详细情况,加深对POP3通信的理解,这对我们用编程的方式利用POP3协议大有好处。

能够分析TCP/IP通信过程的嗅探工具很多,Ethereal就是一款著名的免费跨平台分析工具。下面我们就以它为例,看看POP3通信步骤和截获POP3密码的过程。

http://www.ethereal.com/distribution/win32/下载WinPcap驱动程序和Ethereal的Windows版软件包(两者大小分别约300 KB和8.1 MB),安装WinPcap,再安装Ethereal。

启动Ethereal,选择菜单Capture→Start,在图5界面中,Interface栏选择与Internet通信的那块网卡,点击OK。

图5 Ethereal

启动Outlook,用遗忘密码的帐户收一下邮件(不必将帐户的POP3服务器改成localhost),然后在Ethereal中点击Stop按钮。图6显示了一次试验的结果:

图6 嗅探结果

Ethereal的嗅探结果详细地显示了Outlook与服务器通信的过程。正如我们前面介绍的,从No 6(图七最左栏的编号)记录开始,客户程序和服务器之间建立了POP3通信联系:No 6服务器应答说OK,表示服务器运行正常,可以提供服务,No 7客户程序发送一个请求USER ltt,即告知服务器邮箱帐户的名称ltt,No 8是TCP通信数据,在此我们不必理会,No 9记录服务器应答说“+OK”(帐户名称没问题),并要求提供ltt帐户的密码,No 10记录客户程序发送消息“PASS llll”,其中llll就是要寻找的密码,No 11记录服务器回答说OK,No 12记录客户程序发送请求STAT,STAT命令要求服务器以规范的格式返回邮件数量、占用空间,No 13记录服务器回答说邮件数量0、占用空间0,最后,No 14记录客户程序发送QUIT结束会话请求,No 15记录服务器结束会话——这就是一次完整的POP3通信过程。

遇到密码丢失的情况,动动脑筋另辟蹊径,其实你自己就能够把握一切。

源程序可以在 这里 下载。

相关文章 热门文章
  • Outlook 2003与Exchange 2010结合使用中可能出现的问题及建议的解决方法
  • 自定义 Outlook Web App (OWA) 2010的登录和注销页
  • 配置Exchange 2010+Outlook 2010自动发现功能
  • 在Outlook的POP/IMAP4帐号中配置LDAP通讯录
  • Outlook 2003的运行模式和较大信息的处理
  • 自动产生邮件配置文件 使用CIW来自定义Outlook 2003安装过程
  • Outlook使用技巧
  • 在GAL中通过“职务”搜索联系人
  • 在安装Office之后配置Outlook地址簿
  • 在Outlook 2003邮件合并中打印输出时让姓氏大写
  • Outlook将不同邮件分类存放
  • Outlook 2010挖出盖茨入监照片做用户头像
  • outlook、foxmail备份教程
  • 精通Outlook Express
  • Outlook技巧六则
  • Outlook Express错误代码表
  • Outlook 可以接收但不能发送邮件
  • Outlook崩溃后如何抢救其中的邮件数据
  • 如何恢复outlook硬删除的文件
  • Outlook Express使用技巧大全(上)
  • 如何恢复在outlook express中误删除的邮件
  • Outlook Express使用技巧大全(下)
  • 如何恢复Outlook Express中误删的邮件
  • 将Outlook Express通讯簿联系人复制到 Outlook
  • 自由广告区
     
    最新软件下载
  • SharePoint Server 2010 部署文档
  • Exchange 2010 RTM升级至SP1 教程
  • Exchange 2010 OWA下RBAC实现的组功能...
  • Lync Server 2010 Standard Edition 标..
  • Lync Server 2010 Enterprise Edition...
  • Forefront Endpoint Protection 2010 ...
  • Lync Server 2010 Edge 服务器部署文档
  • 《Exchange 2003专家指南》
  • Mastering Hyper-V Deployment
  • Windows Server 2008 R2 Hyper-V
  • Microsoft Lync Server 2010 Unleashed
  • Windows Server 2008 R2 Unleashed
  • 今日邮件技术文章
  • 腾讯,在创新中演绎互联网“进化论”
  • 华科人 张小龙 (中国第二代程序员 QQ...
  • 微软推出新功能 提高Hotmail密码安全性
  • 快压技巧分享:秒传邮件超大附件
  • 不容忽视的邮件营销数据分析过程中的算..
  • 国内手机邮箱的现状与未来发展——访尚..
  • 易观数据:2011Q2中国手机邮箱市场收入..
  • 穿越时空的爱恋 QQ邮箱音视频及贺卡邮件
  • Hotmail新功能:“我的朋友可能被黑了”
  • 入侵邻居网络发骚扰邮件 美国男子被重..
  • 网易邮箱莫子睿:《非你莫属》招聘多过..
  • 中国电信推广189邮箱绿色账单
  • 最新专题
  • 鸟哥的Linux私房菜之Mail服务器
  • Exchange Server 2010技术专题
  • Windows 7 技术专题
  • Sendmail 邮件系统配置
  • 组建Exchange 2003邮件系统
  • Windows Server 2008 专题
  • ORF 反垃圾邮件系统
  • Exchange Server 2007 专题
  • ISA Server 2006 教程专题
  • Windows Vista 技术专题
  • “黑莓”(BlackBerry)专题
  • Apache James 专题
  • 分类导航
    邮件新闻资讯:
    IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮
    电子邮箱 | 反垃圾邮件|邮件客户端|网络安全
    行业数据 | 邮件人物 | 网站公告 | 行业法规
    网络技术:
    邮件原理 | 网络协议 | 网络管理 | 传输介质
    线路接入 | 路由接口 | 邮件存储 | 华为3Com
    CISCO技术 | 网络与服务器硬件
    操作系统:
    Windows 9X | Linux&Uinx | Windows NT
    Windows Vista | FreeBSD | 其它操作系统
    邮件服务器:
    程序与开发 | Exchange | Qmail | Postfix
    Sendmail | MDaemon | Domino | Foxmail
    KerioMail | JavaMail | Winwebmail |James
    Merak&VisNetic | CMailServer | WinMail
    金笛邮件系统 | 其它 |
    反垃圾邮件:
    综述| 客户端反垃圾邮件|服务器端反垃圾邮件
    邮件客户端软件:
    Outlook | Foxmail | DreamMail| KooMail
    The bat | 雷鸟 | Eudora |Becky! |Pegasus
    IncrediMail |其它
    电子邮箱: 个人邮箱 | 企业邮箱 |Gmail
    移动电子邮件:服务器 | 客户端 | 技术前沿
    邮件网络安全:
    软件漏洞 | 安全知识 | 病毒公告 |防火墙
    攻防技术 | 病毒查杀| ISA | 数字签名
    邮件营销:
    Email营销 | 网络营销 | 营销技巧 |营销案例
    邮件人才:招聘 | 职场 | 培训 | 指南 | 职场
    解决方案:
    邮件系统|反垃圾邮件 |安全 |移动电邮 |招标
    产品评测:
    邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端
    广告联系 | 合作联系 | 关于我们 | 联系我们 | 繁體中文
    版权所有:邮件技术资讯网©2003-2010 www.5dmail.net, All Rights Reserved
    www.5Dmail.net Web Team   粤ICP备05009143号