[Outlook] profile在注册表里的秘密。

This article will also be published in english: http://www.cnblogs.com/LarryAtCNBlog/p/3944901.html

 

身为IT有时候要从user的outlook profile中抓取一些信息,如PST的名字,存放位置什么的。此为前提。

用outlook的com object写一些命令或脚本当然可以很轻松做得到,但是执行效率略低是一方面,对com object的使用又是另一方面。

而且com object只能从本地端user登陆过后来执行,因为user的outlook profile是存放于HKEY_CURRENT_USER这个键当中,其他用户自然也就无法加载该user的profile然后用com object接口读到相应的信息。

实际上这种需求直接分析注册表是最为简单,从后台也可以偷摸做。对注册表做一些遍历或者是分析,因此从效率上来说应该是更加快速的。

outlook的profile在注表中的位置如下,

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles

当然,打开之后其实是相当不友好的,如下图,

观察一下就能发现,都是16进制 - 0到9 a-f,其实它们是给MAPI方便调用的,对用户或者说非这方面专家来说是很不友好的。

但是,它们中某些数据的确能够抓到我们最开始提及的PST文件的信息,我们需要的就是分析这些16进制的字符串,

经过一些总结后,这些16进制键中,部分是随机生成,部分是固定通用的,根据一些分析下面的几个键应该是通用的,后面也括包括了它们的作用,这里本人水平有限,没有研读MSDN的资料(又不搞这方面开发,读个球球呀),于是浅显地自己实际试验了一下,得出以下结果。

f86ed2903a4a11cfb57e524153480001    删掉后无异常,也未自动生成
9207f3e0a3b11019908b08002b2a56c2    providers
9375CFF0413111d3B88A00104B2A6676    Signature
8503020000000000c000000000000046    不可删除,需要有value 0102300b,否则报错,具体作用不明
5acf76a3665511cea39a00aa004acafa    删掉后无异常,也未自动生成
3517490d76624c419a828607e2a54604    删掉后无异常,会自动生成
13dbb0c8aa05101a9bb000aa002fc45a    和outlook anywhere有关
0a0d020000000000c000000000000046    outlook最近使用的一些配置
{D9734F19-8CFB-411D-BC59-833E334FCB5E}    删掉后无异常,会自动生成

PST文件的路径呢,其实就在providers所在的键值中,如下图,PST和其它的mailbox等,都存在一个01023d00的value中。

这个value打开之后,它的data全都是16进制的单字节,下面是一些特性,

1. 每两行为一组,可以刚好分为一组或多组,也就是说,总的字结数,肯定是16的倍数。

2. 每两行合并成一个16进制字符串,该字符串其实就是profile的一个subkey。

3. 每个从第2步合成的字符串上来说,都是一个provider,说白了就是我们在outlook上看到的mailboxes或者是挂载的PST,如下图,

像我这种有节操的运维,当然公司的一些信息我要打码,能看明白就行了,

上面说了3点,其实用一张图能更明白表达我想说的是什么(咦!~感觉前面3点白说了),

一看就懂了,是吧,下面我们打开F67F21B*****这个key来看一下里面的内容,其中有一个叫001f3001的value,它的data如图,说明了这个provider是一个PST文件,那它的路径在哪呢?在001f6700这个value里放着,请看下图,

providers的value里,包括了很多mailbox或者挂载的PST,还有public folder之类一般看不到的folder,一切都是按上面PST的方法一样,能够读出来。

现在有个问题,其它的一些value代表了什么?又是怎么知道01023d00这个value存着providers的?其它还有很多key是干嘛用的?

关于这几个问题,我自认水平糙,智商不高加上先天缺陷,无法一一解答,贴一个MSDN链好了。

http://msdn.microsoft.com/en-us/library/bb415650.aspx

还有另一个在网上找到的站点,信息已经过时,而且是德文(Google翻译告诉我的),但依然有一定参考价值,

http://www.msxfaq.de/clients/mapireg.htm

那捕获PST的脚本有么?遗憾,没有,因为是某BBS里有人提到过怎么从注册表里找PST的问题,我才研究了一下,本身我没有该需求,也就没有编写任何的script。

 

转载于:https://www.cnblogs.com/LarryAtCNBlog/p/3944826.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Outlook邮箱注册是一个比较严格的过程,尤其是如果打算批量注册账号时。根据引用,Outlook作为Microsoft Office家族的一部分,***点,在同一i///p下大量注册账号会导致账号被锁定,无法使用。因此,如果打算批量注册Outlook邮箱来处理业务,最好配合Adspower这个指纹浏览器,它可以修改i///p数据,确保每个账号都有独特的档案信息,并在独立的浏览器环境中运行,以达到防关联的效果。 如需注册Outlook邮箱,您可以按照以下步骤进行操作: 1. 打开Outlook邮箱的注册页面。 2. 点击“创建帐户”或类似的按钮,开始注册过程。 3. 输入您想要的用户名和密码,并确保密码符合安全要求。 4. 提供您的个人信息,例如姓名、生日和所在地,以完成帐户设置。 5. 阅读并同意服务条款和隐私政策。 6. 根据需要选择额外的安全选项,例如添加备用电子邮件地址或手机号码。 7. 完成验证码验证过程,以确认您不是机器人。 8. 单击“注册”或类似的按钮以完成Outlook邮箱注册过程。 请注意,以上步骤仅供参考,具体的注册流程可能会因地区和Outlook版本的不同而有所差异。建议您根据实际情况进行操作,并确保遵守相应的注册规定和政策。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Outlook邮箱注册教程 不信你看完还不懂](https://blog.csdn.net/Pencil2038/article/details/129128205)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值