精华内容
下载资源
问答
  • 实现匿名邮件发送

    2006-02-23 09:05:59
    实现匿名邮件发送,还可以文本加密 6
  • 匿名电子邮件转发系统

    千次阅读 2013-11-27 22:13:15
    本书最后这一章将介绍如何使用网络中的匿名电子邮件转发系统来保护个人隐私。读者可能要问,既然有了PGP为何还要用电子邮件转发系统?道理很简单,通常所说的保护通信隐私,主要指保护通信内容,通信双方可以采取统....
    源:http://jwc.cuit.edu.cn/Jxgl/Help/Cert/4Nmzf.htm
    
    评:
    4.网络信息安全与PGP加密技术
     
    4.11 国际互联网上的匿名转发系统

    本书最后这一章将介绍如何使用网络中的匿名电子邮件转发系统来保护个人隐私。读者可能要问,既然有了PGP为何还要用电子邮件转发系统?道理很简单,通常所说的保护通信隐私,主要指保护通信内容,通信双方可以采取统一的加密措施;例如使用PGP软件便可以达到这种保护目的:但是,加密信息内容,并不能隐藏用户与谁通信这一事实。当然,如果是在网络新闻上刊登求助文章或参加讨论,没有特定的通信对象,就用不着采取加密措施。但是,有的场合.发信人的真实身份也可能是需要保护的重要信息。匿名转发系统通过隐藏通信人真实身份,起到保护通信人隐私的作用。这是言论自由在信息社会里的自然延伸。本章将讨论选择转发系统的原则和考虑因素,介绍几种典型的电子邮件转发系统的操作与使用。读者在理解这些之后,可根据需要选择合适的系统。把PGP加密技术与电子邮件转发系统相结合,可以达到更大程度的保密。
    4.11.1 匿名电子邮件转发系统的原理

    匿名电子邮件转发系统通过转发电子邮件,隐匿通信人一方或双方的身份,以达到保护通信人及通信信息的目的。它在通信双方之间扮演着中间人或中转站的角色。其基本原理如图所示。

    邮件通过转发系统之后,发信人电子邮件地址被替换成匿名帐号;回信通过转发系统之后,回信人电子邮件地址也被替换为另一匿名帐号。这样,在互不知道对方身份的情况下。双方可以建立起长期的通信联系。当然如果通信者在信中透露自己的真实身份,那是他自己的事,转发系统将无能为力。转发系统类似于邮电局所提供的邮政信箱,发信人和回信人的匿名帐号相当于邮政信箱号码。通信人可以通过邮政信箱进行联系,却不透露或不必知道双方的真实身份和地址。根据用户的不同选择,电子邮件转发系统可以用来隐匿发信人、回信人,或两者的身份。根据转发系统的不同,通信内容可以由转发系统或用双方约定的方法进行加密。

    匿名转发系统的工作原理

    匿名转发系统绝非计算机时代的特殊产物。长久以来,在现实社会生活中,已经存在许多类似的匿名转发系统或匿名交流信息的方法。说明人们对于不透露身份表达观点的需求是十分强烈的。邮政信箱系统是最为典型的匿名转发系统。通信者可以通过邮政信箱与他人保持长期的联系,却不必透露自己的姓名、住址和单位等。邮政信箱广泛地应用于一些保密部门。许多商业机构也通过邮政信箱与顾客保持联系,即使单位搬迁,通信地址仍可以长期保持不变。邮政信箱还可应用于私人通信、征友或征婚。此外,无记名投票、匿名投诉信、匿名向报社投稿,以及以笔名出版图书等,都是一些匿名通信的实例。这些合法的用途也正是在国际互联网上出现匿名电子邮件转发系统的原因。

    实际上,在社会生活中具有隐瞒身份、发表看法的能力,是相当重要的。芬兰电子邮件转发系统Penet的创始人,Helsingius曾说过,前苏联对任何拥有复印机和打字机的人,规定必须到司法部门注册,提供字样,以备将来调查和追查。这无异于要求任何文件都经过签字、任何言论都经过录音一样,令人感到十分震惊和惶恐不安。不能在必要的时候隐匿身份,就不可能有真正的自由。

    毫无疑问,电子邮件转发系统只是许多社会需要和已有设施的自然延展。在国际互联网上,人们跨越地区的限制组成所谓“虚拟社区";更加迫切地需要寻求这种保护。电子邮件转发系统可以用来讨论一些比较敏感的问题,从而受到人们的普遍欢迎。任何个人,包括社会名流,都可以通过它,在隐匿自己真实身份、地位,或在隐匿自己的性别、个性等的情况下,与他人交往,以探索在平常生活中不可能有的亲身体验。专业技术人员也可以使用匿名转发系统,表达对公司产品的不同见解,或就技术问题求助他人。这或许是由于所处的地位,或不愿承认自己的不足,而羞于启齿。有的公司规定员工在求助于他人帮助解决系统存在技术问题时,不得透露公司的名称,以免被人利用,造成公司持股人的恐慌。匿名转发系统的应用数不胜数,总之,在某些特定的场合下,不显露身份地自由通信是十分重要的。匿名转发系统正可以满足人们长久以来的这些实际需要。
    4.11.2 选择匿名转发系统的考虑因素

    虽然各种电子邮件转发系统的用途大致相同.但具体的工作方式、对用户提供的保护以及性能指标等,多互不相同,用户必须认真了解,才能正确地选择和使用。冒然使用一个不熟悉的系统通信可能会闹出笑话,甚至造成名誉和经济上的损失。

    从用户角度出发,选择匿名电子邮件转发系统;应当考虑以下几个方面的情况:(1)系统实现匿名的方式;(2)系统的信息加密功能;(3)系统及管理人员的声誉,以及(4)系统的可靠性和性能指标。下面就这几方面分别进行讨论。
    (1)系统实现匿名的方式

    电子邮件转发系统实现匿名的方法,大致有两种:一是使用地址对照数据库,二是使用回复块(Reply Block)。

    使用电子邮件地址对照数据库的方法相对比较简单。它储存着用户真实地址与他的匿名帐号的对照表。例如;芬兰的Penet转发系统,使用类似于下表的数据库。这种使用地址对照数据库的转发系统,它的系统安全性都集中在数据库上。数据库的泄密,就必然会暴露所有用户的身份。

    Penet转发系统的帐号数据库
    匿名帐号 用户真实电子邮件地址
    an28333 Fcheng@aol.com
    ...... ......
    an345768 Zhao@aol.com
    ...... ......

    第二种实现匿名的方式是使用回复块。它的技术比较先进,但操作使用则稍许复杂,需要结合PGP等加密软件的应用。这种转发系统不存储任何用户的真实地址。发信人把真实的回信地址(发信人地址),用转发系统的公开钥匙加密以后,构成一个“回复块”,随通信内容一起发送给转发系统。转发系统把通信内容和回复块转发给收信人,而自己并不存储任何信息。回信时,回信人需要把回复块夹在回信中,发给转发系统。转发系统用自己的秘密钥匙解密以后,取出真实的回信地址,再把回信按此地址转发给原来的发信人。真实的回信地址只有在转发回信时使用,过后也不留任何痕迹。这种转发系统的整体保密性比较高。当然在使用上也相对较为繁琐复杂,用户必须会使用PGP系统等公开密钥加密系统。

    需要提醒读者的是,转发系统是否永久性地存储通信人真实地址,并非是影响信息安全性的唯一因素。保密性还与转发系统是否自动做通信记录有关。有些系统对所有通信的内容都做记录,然后删除过时的记录。这样的转发系统是不好的。另外有一些系统虽然不记录通信内容,但却记录通信往来的情况,这样的系统还算勉强可用。最后,真正好的、可信赖的转发系统,只对通信往来做一些统计记录,作为系统维护的参考。读者只有在了解各个系统的运行管理方式之后,才能根据需要作出合理的选择。
    (2)系统的信息加密功能

    在通信内容的保护方面,匿名转发系统大致可分为带加密的和不带加密的两种。简单的转发系统不能加密通信内容;至多可以转发经用户加密的信件。换句话说,只有通信双方统一采取加密措施后,才能保证通信内容的秘密。有时这是相当困难甚至是不可行的。例如,用户在网络新闻上刊登文章,就无法使用加密。即使用户提供自己的公开钥匙,也不能指望回信人都使用PGP或别的公开密钥加密系统来加密回信。

    使用不带加密的转发系统是有风险的。发信人发出的信件到达转发系统之前的通信,因为没有加密,可以被任何人,包括发信方的系统管理员所阅读。同时,来自转发系统的回信也是公开的。在有的情况下,发信和回信的内容有可能对发信人构成威胁。另一方面,收件人发回的复信,情况也是一样。如图所示。

    针对上述问题,在转发器与发信人之间和转发器与收信人之间的通信,应当采取加密措施。比较高级的匿名电子邮件转发系统,都支持通信内容的加密。当然,它们的操作和使用也变得更为复杂。一般情况下,它的使用过程如下:

    ①发信人选择一把会话钥匙,用来加密将来的回信,用转发系统的公开钥匙加密会话钥匙和通信内容,一并寄出;

    ②转发系统收到信件以后,用自己的秘密钥匙解开会话钥匙和通信内容,然后将明文的信件转发给收信人,或公布在网络新闻上;

    ③回信经过转发系统用会话钥匙加密,然后以密文的形式,转发给发信人;

    ④发信人用会话钥匙解开回信,阅读其内容。



    使用不带加密的转发系统会有风险

    由于在发信人和转发系统之间的通信采用了加密技术,因此即使是系统管理员也无法了解通信内容。至于收信人与转发系统之间的通信是否加密,完全由收信人自己决定。一般来说,它只能对收信人而不是发信人构成威胁,除非发信人向对方透露了不该透露的信息,让人能把通信与发信人联系起来。
    (3)系统及管理人员的声誉

    俗话说,若要人不知,除非己莫为。此话一点不假。要想在国际互联网上绝对地隐匿真实身份,几乎是不可能的。为什么呢?匿名通信和伪造假信件不同。伪造假信件往往不需要得到回信,因此比较容易,只要伪造出假地址即可。而匿名通信不仅要能发出信件,还要能够收到回信。既然要求得到回信,转发系统必须知道发信人在网络上的真实地址。换言之;至少转发系统需要知道发信人的真实身份,否则无法将回信转回发信方,除非发信人不关心回信与否。因此不论转发系统使用电子邮件地址对照表,还是回复块,都需知道通信人的真实地址。这点十分重要,它意味着只要转发系统的管理人员愿意,总可以发现并公布任何转发系统用户的真实身份。用户的安全就完全落在转发系统管理人员的手里。

    要了解电子邮件转发系统是否值得信赖,主要依靠长期的观察。如果系统一贯具有良好声誉,应当值得信赖。但是,电子邮件转发系统的声誉,并不仅仅取决于维护人员的诚实,也与系统所在地区有关,因为世界各地对隐私权保护的法律是不相同的。如果有司法部门介人,系统管理人员可能不得不交出某人的真实身份。

    如果用户对保密的要求较高,对某一转发系统又不十分信任,那么,可以采用把多个转发系统串联成串的办法来发送匿名邮件。其中任何一个转发系统如有信息泄露,都不会直接殃及到发信人,这将有效地提高保护能力。但是,经过的转发系统的环节越多,通信的可靠性和质量也就越差。不仅通信发送速度变慢,而且任何一个转发系统失灵,发送信件就无法完成。这是追求高保密所必须考虑付出的代价。
    (4)系统可靠性与性能指标

    匿名电子邮件转发系统的可靠性,主要有两个方面:一是指系统能够不停顿地提供匿名转发服务的能力,二是指系统能够长期提供稳定的服务。前一个指标显然应当越高越好。有的转发系统暂停运行是属于正常的情况。因为转发系统常由个人或组织免费提供,受到所在机构管理条例的约束。比如,有的在周末可能要关闭,让系统管理员能够维护系统。可靠性的第二方面主要是指在数月乃至数年的时间范围内转发系统都能够工作。这对有长期联络关系的用户尤为重要。一旦转发系统突然停止运行,用户的全部联系就中断了。通信双方互不知道对方真实身份,在无准备的情况下失去联系后,再想恢复通信也就十分困难,有时甚至是不可能的。

    转发系统能否长期运行主要受到经济条件和法律条例的限制。例如在美国的电子邮件转发系统,多数难于长期维持正常运行。因为很容易被起诉有违法行为,转发系统的所有者因交付不起巨额的律师费用,不得不自认倒霉,关闭整个系统。相反,北欧国家的隐私保护法比较严格,不容许轻易就个人通信内容起诉。在强大的法律庇护下,许多转发系统能够常年运行,赢得了较高的声誉。

    信息中转造成的通信延迟,是匿名转发系统的重要性能指标。延迟原因一般比较复杂,发信方与转发系统在网络上的距离是一个因素,但转发系统的运行方式和收发负荷似乎更为重要。一些转发系统在收到通信以后并不马上转发.而是集中到一起,定期(有的为几分钟,或数小时不等)一并发出。另外如果转发系统收发负荷太重,信件需要排队等候相当的时间,方能被转发出去。最后,如果转发系统被用来刊登网络新闻,转发系统将文章张贴在哪个网络新闻服务器上,对用户能够在自己常用网络上到什么时候才能看到文章有很大的影响。

    转发系统的通信延迟常常给用户带来诸多不便,降低了通信往来的速度。有的收发负荷很重的系统,例如Penet转发系统,有时通信延迟可能会长达数小时,甚至数天。当然,这也说明Penet转发系统多么受人欢迎。要了解各个转发系统的这些性能,最好通过转发尝试。如果某个系统的性能不能令人满意,可改换使用其它的转发系统。有人曾用软件定期监测过一些电子邮件转发系统的运行数据,可作为读者初步选择的依据。但由于监测点与读者在网络上的位置不同,这些结果不见得完全适用于读者的情况。想了解详细情况的读者,可以参看下列网址:http://www.cs.berkeley.edu/~raph/remailer-list.html
    4.11.3 有关匿名转发系统的争议

    社会上对转发系统的争议超过对加密技术的争议。虽然匿名信件在社会上存在已很久远,但匿名电子邮件的出现却受到不少非难。一方面用户在匿名转发系统的保护下,讨论一些比较敏感和禁忌的问题,常会触及到某些个人或组织机构的利益。另一方面转发系统也被一些人利用来从事反社会的或违法的活动,例如宣传新nacui主义。这些都是匿名转发系统的阴暗面,是遭到反对的重要原因。

    但是,绝大多数用户利用匿名转发系统从事的活动是合法的,它们丰富了社会的多元文化。许多转发系统的创始人,都坚信匿名的重要性,不能因噎废食。转发系统大多以个人出资的方式运行,免费提供匿名转发服务。尽管如此,许多匿名转发系统还是屡遭厄运;以至不便公开服务器的物理位置。转发系统的管理人员也常呼吁用户,为了他人,请负责。守法地使用转发系统,不要滥用。

    有人利用匿名电子邮件转发系统从事非法活动,这是事实c但是,Helsingius认为,转发系统并未对犯罪起到推波助澜的作用,至少不比电话、传真机和普通信件的这种作用更大。匿名转发系统没有故意阻碍执法过程;执法部门可以经法庭授权,通过正常的途径,从转发系统获得某些通信人的地址。

    另一方面,转发系统的管理人员,要极力保持用户对系统的信任。声誉好的系统不仅不作通信记录,而且允许用户随时把自己从系统的数据库中取消。一般没有法律要求转发系统必须记录用户的身份,因此,转发器的工作不仅合法,而且保护了用户的安全,是十分负责的。这恐怕就是Penet转发系统为什么能够成为匿名转发系统之王,赢得50万用户支持的原因吧。

    1995年曾发生了一起影响颇广的事件,就是芬兰的Penet转发系统被牵涉到美国的一桩诉讼案中。事情是这样的:在美国;“科学学”是一个有争议的宗教,有自己的教会。有关该教的新闻常引起一些激烈的辩论。为了阻止散布反对者的观点,科学学教会采用了一套计谋。只要持不同见解者引用该教的材料,他们马上可以宣称该材料受到版权法的保护,反对者有侵权行为。不少反对者使用芬兰的Penet匿名转发系统参加激烈的辩论,科学学教会对此十分憎恨。1995年,Penet的主人Helsingius不断接到来自美国科学学教会的来信,教会甚至派人到芬兰进行交涉,说有人从教会内部的电子邮件系统窃取了有版权法保护的宗教材料,通过Penet匿名转发系统在国际互联网上散布。Helsingius回答说,他对此无能为力,因为在芬兰,通信自由受到法律的严格保护。最后,教会通过美国洛杉矾警察局和国际刑警组织,与芬兰警方联系。芬兰警方凭着一张“搜查证”和计算机"查收证。,找到了Helsingius,准备没收转发系统的计算机设备。如果这样,计算机上的数据库将会被没收、暴露。经过交涉,最后被迫交出了一个用户的地址。此事自然造成Penet用户的恐慌,担心过去的匿名通信可能会给自己招来麻烦。Helsingius只得发布新闻,公开事情的缘委。同时,Penet系统增加了从数据库中删除通信地址的功能,用户可以从转发系统上消去自己的地址。Penet的系统管理人员博得了众多的同情,因为这起争纷完全不是他们或匿名转发系统的责任。芬兰警方也认为,类似的事件如果再发生,即使得到某个用户的地址,也不能保证它是真实的,因为在国际互联网上伪造一个地址实在太容易了。Penet涉及的这个案件,是国际互联网上第一件有政府介入的案例,在许多报章上均有分析和报道。有兴趣的读者可以参考当年3月的《时代》周刊。从这实例可以看到用户不要把匿名转发系统当做提供无限自由的屏障。人的自由总是有所限制的;在任何国家都不能无视社会公德和法律的制绚。即便使用匿名转发系统,用户也必须对自己的行为负责。一般来说,只要能够遵纪守法,使用Penet这样有威望的匿名转发系统是比较安全的。
    4.11.4 网上的主要匿名转发系统

    由于种种原因,匿名转发系统长期稳定地提供电子邮件匿名转发服务,并不是件容易的事。很多转发系统都昙花一现,当然,新系统也不断建立。在过去的几年里,世界上总有20多个匿名电子邮件转发系统在运行。其中有一些系统长期保存下来,赢得了较好的声誉。所有的匿名转发系统都提供免费服务。似乎人们已经公认,收费转发系统的可信度反而更加值得怀疑。

    被称为“匿名电子邮件转发系统之王一的,是位于芬兰赫尔辛基的Penet转发系统。Penet系统在国际互联网上巳有四、五年的历史。创建人Helsingius拥有自己的公司,提供国际互联网服务,用其部分盈利来维护这个转发系统,购买设备和网络带宽。成立时,Penet的服务范围拟为斯堪的纳维亚的北欧用户,但出人意料地受到世界各地人士的欢迎。今天Penet系统已经拥有50多万用户,每天处理大约8000多件通信业务。Penet采用数据库记录和翻译电子邮件的地址,不带加密功能,但可以中转经过PGP加密的信件。这个系统的保密性较差,但使用简便,因此很受用户欢迎。据称,每天经Penet系统处理的通信量,超过了其它所有转发系统在l个月内转发数量的总和,尽管有些转发系统在保密技术上比Penet更加先进。由于收发负荷很重,Penet转发系统的通信延迟时间较长。电子邮件被延迟数小时是常事,刊登的匿名网络新闻,有时可能需要好几天才能传播到发信人的网络上。

    有10多个电子邮件匿名转发系统来自美国的加密技术激进组织Cypherpunks。它们具有新一代的高技术,分布在许多知名大学或公司里。大多是学生和公司雇员经过允许,利用学校或公司的系统资源而建立起来的。不像Penet系统的创建人Helsingius有自己的公司,有绝对的控制和决定权。因此,许多系统不能长期稳定运行,或因人员变化、离开而关闭,或者迫于压力而停止,极个别的系统还做较详细的通信记录。正如前文所述,信息的安全性最终还是要取决于很多非技术因素。

    Cypherpunks的转发系统多是很先进的,在技术性能和保密能力上远远超过了Penet系统。它们不仅转发匿名电子邮件和网络新闻,而且自带加密功能。采用回复块回信,不永久记录用户真实身份。它要求用户使用PGP加密系统,因此稍显复杂。大多数转发系统的收发负荷都不大,转发延迟时间较少。它们接受几乎相同的指令,但其中也有一两个系统有较大的差异,可以提供更为灵活的选择。为了方便不熟悉PGP和转发系统的用户,Cypherpunks还提供友好的万维网匿名通信界面,用户可以在万维网浏览器中亘接起草短小的信件。匿名信经Netscape公司的SSL(Secure Socket Layer)协议加密以后、发送给转发系统,整个操作过程简单方便。
    展开全文
  • 本系列文章旨在对于有一定网络安全基础的人员,在日常工作中扫描出来的各种漏洞,如何进行验证,以区分该漏洞是否存在或是扫描器误报。...匿名用户邮件转发 二、漏洞验证 1. 利用 metasploit 验证 启动 ka...

    本系列文章旨在对于有一定网络安全基础的人员,在日常工作中扫描出来的各种漏洞,如何进行验证,以区分该漏洞是否存在或是扫描器误报。请勿应用非法途径。


    一、漏洞描述

    所用工具:metasploit
    利用 metasploit 中的 auxiliary/scanner/smtp/smtp_relay 模块进行测试
    匿名用户邮件转发

    二、漏洞验证

    1. 利用 metasploit 验证

    1. 启动 kali 中的 metasploit
      root@kali:~# msfconsole
    2. 使用 auxiliary/scanner/smtp/smtp_relay 模块
      msf > use auxiliary/scanner/smtp/smtp_relay
    3. 查看模块信息
      msf auxiliary(scanner/smtp/smtp_relay) > show options
    4. 设置测试 IP,进行测试
      通过下图发现此IP有 匿名用户邮件转发 漏洞

    三、修复建议

    1、服务最小化
    2、禁止邮件转发或者限制可信主机使用邮件转发功能。

    参考链接:

    https://docs.microsoft.com/zh-cn/exchange/mail-flow/connectors/allow-anonymous-relay?view=exchserver-2019

    展开全文
  • 基本思想是创建一个匿名平台来回答您的个人电子邮件链中可能出现的问题。 你可以在查看网站 我使用的技术: 后端 Ruby/轨道 设计(认证) PostgreSQL 山魈(电子邮件) 前端 jQuery 图表JS 字体真棒(图标) ...
  • 如何匿名发送邮件

    千次阅读 2008-12-05 22:04:14
    邮件的源代码在接收邮件的客户端都可以看到,里面有发件人字段,邮件接收者只能通过这个字段来识别发件人。这个字段可以轻易伪造。 邮 件由SMTP服务器发送,SMTP服务器通常要认证,也就是要提供用户名和密码,邮件...

    邮件的源代码在接收邮件的客户端都可以看到,里面有发件人字段,邮件接收者只能通过这个字段来识别发件人。这个字段可以轻易伪造。

    邮 件由SMTP服务器发送,SMTP服务器通常要认证,也就是要提供用户名和密码,邮件会经过多个邮件服务器,像驿站一样,最后到达目的邮件服务器。 SMTP服务器上会留下邮件是从哪里来的证据。从客户机到SMTP服务器一般是明文传输,在公司网关设立上网审计可以记录局域网内的SMTP和POP记 录。邮件服务器之间也是明文传输。

    国家级别的审计,会要求网通、电信这些运营商,以及国家网络出口设立审计。这样,当不法分子在网上 散布不利言论时,可在迅速定位,并由公安机关将之一举抓获。但是这些还有远远不够,有的时候,政府会要求网站提供数据,比如使用163的邮箱发送邮 件,163是会保留一些记录的,并且需要和国家配合。但是一些国外的服务提供商就难控制一些,政府对Yahoo、MSN等常用的服务能做到一定的控制。

    匿名发送邮件,首先需要注册一个匿名的邮箱。并且在注册的过程中不能暴露身份,比如注册时的IP地址,然后在发送的时候也不能暴露IP地址。有以下办法:
    1、使用Tor或其他隐藏IP地址的手段注册和发送邮件。如果使用webmail,最好能够屏蔽javascript、flash、acticex、jre等,因为这些东西可能会忽略浏览器的代理设置。
    2、使用hushmail。这是一个安全的电子邮件服务,需要JRE。

    对于公司这种级别的审计,使用安全连接的邮件服务器就很好,公司无法知道邮件的内容,但是可以知道你访问了哪个邮件服务器。
    使用https,例如gmail,可以绕过局域网内的上网审计。gmail的smtp可以配置TLS,也就是客户机到gmail服务器是加密的,但邮件服务器之间不是加密的。gmail的IMAP也要配置SSL加密。

    需 要注意有些安全产品声称能够对SSL或SSH这些加密的连接进行审计,例如堡垒主机,实际上他们的做法是替换了服务器的证书。在堡垒主机通常应用在企业内 部网络,即使知道堡垒主机替换了服务器的证书,也必须通过堡垒主机访问业务服务器。而对公网服务器这种情况,认准服务器的证书,SSL无法破解 的,google的证书是有签名的,如果发现被替换,就不要继续了。

    Sniffer或者嗅探类产品,无法对加密链路进行审计。

    展开全文
  • C# 发送匿名邮件

    2011-07-26 11:50:00
    用C#打造匿名邮件群发软件 masepu(本文已发表于黑客防线,转载请注明出处) 电子邮件攻击是最常见的网络攻击手法之一,黑客们通过电子邮件发送木马、病毒或是包含有攻击性或信息获取脚本的特定html代码,使邮箱使用...

    用C#打造匿名邮件群发软件

    masepu(本文已发表于黑客防线,转载请注明出处)

    电子邮件攻击是最常见的网络攻击手法之一,黑客们通过电子邮件发送木马、病毒或是包含有攻击性或信息获取脚本的特定html代码,使邮箱使用者打开这类邮件就会导致信息泄露甚至电脑被控制。而这种攻击手法常常要和“社会工程学”结合起来,信件要求伪装成邮箱使用者熟悉的发信人,以迷惑对方使其放松警惕,来达到获得重要信息和控制对方电脑的目的。为了深入的了解这种攻击方法,前段时间我打算在网上找一个免费好用的匿名邮件群发软件,来实际测试发送伪造信件的效果,结果上网转了一大圈也没找到一个称心如意的,不是收费就是试用,插件广告一大堆,想来邮件群发软件是被所谓的“邮件营销”用的太多太滥,难得找到好用而且免费的了。仔细想想有这时间精力去网上瞎找,还不如自己写一个合适的匿名群发器呢。有了源代码就掌握了主动权,以后想怎么改都行,再不用看那些“垃圾”邮件群发器的“脸色”了。哈哈,自己动手,丰衣足食,让我们准备好Visual Stdio.NET开发环境,开始编写属于自己的匿名邮件群发软件。
    一、匿名发送原理
     现在广泛使用的邮件发送协议是ESMTP,是由SMTP协议发展而来,SMTP协议由于没有身份认证等功能早已不被邮件服务提供商采用,当然如果我们自己架设邮件发送服务器的话可以使用该协议,因为该协议不用身份认证就可以实现完全的匿名邮件发送。现在还有很多免费邮件服务提供商让用户通过网页登录的方式来进行邮件的收发,这种WebMail的方式和上面所说的SMTP协议方式不在本文讨论之列,本文程序采用的ESMTP协议是被现在流行的邮件服务提供商广泛采用的邮件发送协议。在开始编程之前我们首先需要一个支持该协议的邮箱用于发信测试,现在大家使用的大部分邮箱都支持的。在这里我选163、新浪信箱进行测试。下面我们就通过telnet方式手工发送一封匿名邮件,以了解ESMTP协议和匿名效果(注:前面带“>”号的是输入命令)
    >telnet smtp.163.com 25     //163邮件发送服务器的域名和端口
    220 163.com Anti-spam GT for Coremail System (163com[20081010])
    >HELO VVVVVV                //告诉服务器我的机器名,当然是伪造的
    250 OK
    >AUTH LOGIN                 //要求输入用户名密码
    334 dXNlcm5hbWU6
    >aWAsDSFc                   //Base64编码过的用户名
    334 UGFzc3dvcmQ6
    >GzlzNMUz                   //Base64编码过的密码
    235 Authentication successful        //提示认证成功
    >MAIL FROM:<xxxxxx@163.com>  //发件地址,这个必须是与上面输
          //入的用户名对应的邮箱地址,163服务器会验证,否则无法发信。
    250 Mail OK
    >RCPT TO:<liuhua@sina.com>   //真实的收件人地址
    250 Mail OK
    >DATA      //要求发送邮件内容
    354 End data with <CR><LF>.<CR><LF>
    >From: "fajianren" <fanjianren@163.com>     //伪造的发信人地址
    >To: "shoujianren" <shoujianren@sina.com>    //伪造的收信人地址
    >Subject: helloo Helloo        //邮件主题
    >tfffffffffffffffff           //邮件正文
    >
    >.                             //输入结束标志
    250 Mail OK queued as smtp2,DNGowLD7TkkxNiZKCZ+FCg--.33908S3 1244018310
    >quit                          //退出
    221 Bye

    现在我们登录到收件箱发现已经收到了这封伪造邮件,单从表面上看,我们是分辨不出它的真伪。原因在于ESMTP协议本身存在问题,它允许邮件发送者自己填写发件人和收件人的地址和姓名而并不检查,这就导致了伪造电子邮件的出现。
     

    二、C#编写匿名群发
    下面,开始编程实现匿名邮件群发功能。这里使用C#中封装好的TcpClient类,它可以直接为TCP网络服务提供客户端连接,不用再使用复杂的socket套接字接口类了。收件人列表和发件帐户列表分别存放和显示在richTextBox和ListView控件中,以实现使用不同帐户发送大量邮件的功能。这样做是为了避免同一邮箱帐户在同一段时间内因发送大量邮件而被邮件服务提供商锁定。以下是程序匿名发送部分的一些代码:
      for (int i = 0; i < richTextBox2.Lines.Length; i++)  //发送次数
      {//建立与SMTP服务器的套接字
        TcpClient SmtpServ = new TcpClient(SMTPHoststr, 25);
        NetworkStream NetStrm = SmtpServ.GetStream();
        StreamReader RDStrm = new StreamReader(SmtpServ.GetStream());
        Data = "HELO server " + CRLF; //在这里我们就默认叫server吧
        szData = System.Text.Encoding.ASCII.GetBytes(Data.
                              ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    //发送要求认证命令
    Data = "AUTH LOGIN " + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    //发送base64编码过的用户名
    byte[] b = System.Text.Encoding.ASCII.GetBytes(namestr);
    string s = Convert.ToBase64String(b);
    Data = s + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    //发送base64编码过的密码
    b = System.Text.Encoding.ASCII.GetBytes(passwordstr);
    s = Convert.ToBase64String(b);
    Data = s + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    //发送发件人信息
    Data = "MAIL FROM: " + "<" + Senderstr + ">" + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length); 
    //发送接收人信息
    Data = "RCPT TO: " + "<" + richTextBox2.Lines[i].ToString() + ">" + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    listBox1.Items.Add(RDStrm.ReadLine());
    //发送Data命令
    Data = "DATA" + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    //发送数据内容 其中包括伪造的发、收件人地址和姓名;
    Data = ChangeString + "SUBJECT: " + textBox4.Text + CRLF + MIMEString + 
           CRLF + richTextBox1.Text + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    Data = CRLF + "." + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    //退出SMTP服务器
    Data = "QUIT " + CRLF;
    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
    NetStrm.Write(szData, 0, szData.Length);
    // 关闭连接
    NetStrm.Close();
    RDStrm.Close();
      }
    以上只是部分代码,整个程序编写完成后能够实现通过输入多个支持ESMTP协议的邮箱帐户向大量邮箱发送匿名邮件的功能。
    三、程序效果
    通过该程序向多个不同的邮件服务提供商邮箱发送匿名测试邮件,包括yahoo、hotmail、gmail、yeah、163、126、qq、sina邮箱(申请这么多种信箱搞测试,累呀),测试发件帐户选用的是163信箱,邮件的查看方式采用的是登录到邮箱页面上直接查看,结果表明,除了发送到hotmail邮箱的匿名测试邮件在打开后会显示真实的发信人邮箱地址外其余均能够正常实现匿名。
            效果
    邮箱   发件人名 发件邮箱 收件人名 收件邮箱
    雅虎中国    
    雅虎    
    hotmail    
    gmail    
    yeah    
    163    
    126    
    QQ    
    sina    
    四、防范方法
    如何有效的防范这些匿名的邮件,以避免被网络钓鱼邮件所欺骗呢?最有效的方法就是仔细分析可疑邮件的邮件头信息。在邮件头中包含的Received字段可以显示出邮件发送的完整轨迹。在邮件被发往目的地的过程中,每个中转服务器都会在邮件头中增加一条Received字段,这样一个邮件中就会有多条Received字段。所以要追踪到邮件的来源,可以采用自下向上的分析各条Received字段的方法。我们以发往sina的匿名邮件头为例,来探寻一下匿名邮件发送者的真面目。Received: from server (unknown [221.13.187.11])
    by smtp11 (Coremail) with SMTP id D8CowLBL1IdlSypKdmHpBA--.12983S2;
    这是第一条(自下而上)记录,虽然服务器名称显示的是我伪造的,可后面紧跟的IP地址却是我的真实地址,这个地址可以让匿名邮件发送者完全暴露,无处可逃(当然发送匿名邮件时使用代理的话,这个地址就是代理的IP地址了)。
    Received: from m12-15.163.com ([220.181.12.15])
      by irxd5-185.sinamail.sina.com.cn with ESMTP; 06 Jun 2009 18:56:41 +0800
    上面第二条记录显示这封邮件被名为m12-15.163.com的服务器传送,显然如果这封匿名信件显示的发件地址不是来自163的话,那么它就一定是伪造的了。像这样对每一条Received字段进行分析,我们就可以掌握完整的邮件发送轨迹。在这封邮件的最上面有一条记录:Return-path:<xxxxxx@163.com>, 它完全暴露了真实发件人的电子信箱地址。当然并不是每个邮件服务提供商邮件中都有此字段。此外,我们可以再看看Message-ID字段:Message-Id: <4B3A4A67.05B67A.08726@m12-15.163.com>从这条记录可以看出,发信账户属于163。通过以上方法,我们可以识别出大部分的匿名邮件。当然,如果匿名邮件发送者通过代理来发送邮件,我们就很难找到它的真实发件IP地址了,同时Message-ID字段,信件发送时间都可以伪造,不同的邮件服务提供商邮件头所包含的信息也不尽相同,有时候一封精心伪造的邮件是很难识别出来的,需要涉及到很多知识,这里就不多说了。
    五、总结和改进
    文章中仔细分析和解决了邮件匿名和群发的问题。但对于邮件发送的内容编码没有仔细处理,如果需要发送非ASCII文本信息的话就需要事先对发送内容进行编码,如采用Base64编码的话就需要在DATA命令后发送Content-
    Transfer-Encoding:Base64命令,同时信件内容要进行Base64编码,这样就可以正常发送非ASCII内容信息的邮件了。同时程序没有太多的异常处理代码,也没有采用多线程发送,有需要的朋友可以自己加上。(本程序采用C#在Visual Stdio.net 2005下编译通过。)

    转:http://blog.csdn.net/masepu/article/details/5331031 

    展开全文
  • 通过多重RSA加密签名实现了邮件服务器的匿名性,并确保了邮件交互的保密性与不可抵赖性。对邮件系统结构、邮件收发机制进行了详尽的安全性分析。最后结果表明,该邮件系统能彻底分散存储和处理压力,能抵抗拒绝服务...
  • Leak让你匿名发送电子邮件

    千次阅读 2014-08-11 13:43:53
    Leak是一项让你向别人发送匿名电子邮件网络服务。你只需要输入收件人的电邮地址,选择你跟收件人的关系(朋友以及同事等),然后把消息发送出去。 考虑到市面上大多是专注于广播的匿名分享网络,我们感觉
  • cnn-dailymail, 获取 cnn/daily邮件数据集( 非匿名)的代码 这里代码生成 cnn/daily邮件摘要数据集的非匿名版本,如 ACL 2017论文所使用的 指针发生器网络 。 它将数据集处理为代码所期望的二进制格式的二进制格式。...
  • 互联网刚兴起时,美国杂志纽约客(The New Yorker)...从那时起,由于网络的虚拟性和匿名性,每个人都可以选择成为“双面人”。而随着社交媒体的兴起,越来越多的用户选择将个性化的信息分享到社交网络服务(social ...
  • 最近根据项目的需要,需要一个邮件发送的功能,在网络上查找了很久,结果让人非常的遗憾,都没有找到一篇能完全解决的。网上的都是 只言片语 我非常郁闷,下定决心将这个问题解决。总共使用了6步就解决问题。 一、...
  • 这是作者2020年参加清华大学、Coremail、奇安信DataCon举办的比赛,主要是关于钓鱼和异常邮件识别研究。非常感谢举办方让我们学到了新知识,DataCon也是我比较喜欢和推荐的大数据安全比赛,这篇文章2020年10月就进了...
  • 通过网络进行选举的一站式商店 这实现了 LHCb 实验中使用的选举程序。 选举是相当匿名的。 每个参与者都可以验证结果,选举的完整性依赖于很大一部分选民检查他们的选票是否正确计算。 设置选举 要开始新的选举,请...
  • DDOS入门介绍(一):DDOS简介

    万次阅读 多人点赞 2017-05-27 15:58:31
    定义分布式拒绝服务(DDoS:...通常该攻击方式利用目标系统网络服务功能缺陷或者直接消耗其系统资源,使得该目标系统无法提供正常的服务。。攻击的方式DDoS攻击通过大量的请求占用大量网络资源,以达到瘫痪网络的目的。攻
  • 一百五十五名参与者被要求进行在线匿名调查,询问有关网络钓鱼的问题。 结果提供了计算机专业和非计算机专业之间的人口统计学和相关性。 结果表明,在将来的研究中,应将某人的专业作为网络钓鱼的一个单独因素。 这...
  • ###匿名公共p2p社交网络 ###概念Paradox 中有 2 个配置文件 - 匿名和公开。 两个配置文件的数据传输都经过安全加密。 所有用户数据(除了关于昵称、自我描述、邮件的信息,如果指定)仅存储在用户自己的本地数据库中...
  •  senderPromptLadbel.setText("(支持匿名邮件发送)");  senderPromptLadbel.setBounds(new Rectangle(366, 58, 135, 29));  receiverLabel.setFont(standardFont);  receiverLabel.setText("收件人:");  ...
  • Delphi实现匿名邮件发送
  • 测试开发笔记

    万次阅读 多人点赞 2019-11-14 17:11:58
    (Security Testing) 118 安装测试 119 GUI测试(Graphical user interface) 120 可用性测试(Usability testing) 120 异常性测试 121 文档测试 121 备份测试 121 配置测试 121 网络测试 121 第十三章 用例设计 ...
  • ...在网络中订立种种规则,不许下载、不许用IM、不许访问受限网站等,让我们无法尽情的享受Internet带给我们的乐趣。想不想神不知归不觉的突破这些限制,在网管眼皮子底下自由自在的上网呢?用The
  • 用C#打造匿名邮件群发软件

    千次阅读 2010-02-27 01:24:00
    用C#打造匿名邮件群发软件masepu(本文已发表于黑客防线,转载请注明出处)电子邮件攻击是最常见的网络攻击手法之一,黑客们通过电子邮件发送木马、病毒或是包含有攻击性或信息获取脚本的特定html代码,使邮箱使用者...
  • 目录 应用层协议概要 应用协议的定义 应用协议与协议的分层 相当于OSI中第5、第6、第7层的协议 ...电子邮件的工作机制 邮件地址 MIME SMTP 试用SMTP命令 POP 试用POP命令 IMAP 应用层协议概要...
  • 匿名”, “授权-所有用户” 去访问ftp 的时候突然说 “服务器不允许匿名登录” ,就跟下面这个图片一样 好家伙,既然不能匿名登录,那我们就不匿名登录,乖乖重新设置了ftp,然后填入对应的用户和密码(这里的用户...
  • 因此知道电子邮件的应用程序的原理也是非常有必要的,在这一个专题中将介绍电子邮件应用程序的原理、电子邮件应用程序中涉及的协议和实现一个简答的电子邮件收发器程序。 一、邮件应用程序基本知识 1.1 ...
  • linux命令大全

    千次阅读 2015-12-24 08:44:14
    10. linux电子邮件与新闻组命令 ... 173 archive . 173 ctlinnd(control the internet news daemon) 173 elm .. 173 getlist 174 inncheck(inn check) 174 mail 175 mailconf 175 ...
  • 恶意邮件智能监测与溯源技术研究

    千次阅读 2020-04-25 21:39:00
    导读:近年因电子邮件安全问题引起的恶性网络事件影响范围越来越广、造成后果越来越恶劣。传统邮件监测技术无法应对高级持续性威胁。基于此,提出新一代智能恶意邮件监测与溯源的系统框架,将多元行为分析、威胁情报...
  • 邮件过滤技术

    千次阅读 2019-06-06 13:18:54
    电子邮件是一种通过网络提供信息交互的通信方式。 完整的电子邮件一般包括邮件地址、主题、正文和附件。 电子邮件的格式有:SMTP、POP3、MUA、MTA。 MUA(Mail User Agent):电子邮件系统的构成之一,接受用户输入...
  • 深入学习TCPIP协议

    千次阅读 2013-09-03 17:14:01
    5.4.2 每个网络有多个RARP服务器 49 5.5 小结 49 第6章 ICMP:Internet控制报文协议 50 6.1 引言 50 6.2 ICMP报文的类型 50 6.3 ICMP地址掩码请求与应答 52 6.4 ICMP时间戳请求与应答 53 ...
  • 【Linux网络编程】网络基础知识

    千次阅读 多人点赞 2019-11-10 17:25:13
    00. 目录 文章目录00. 目录01. 网络基础知识02.... 01. 网络基础知识 1)什么是链接?...链接是指两个设备之间的连接。它包括用于一个设备能够与另...骨干网络是集中的基础设施,旨在将不同的路由和数据分发到各种网络。...
  • 100 个网络基础知识普及,看完成半个网络高手

    万次阅读 多人点赞 2019-09-23 11:38:54
    1)什么是链接? 链接是指两个设备之间的连接。它包括用于一个设备...骨干网络是集中的基础设施,旨在将不同的路由和数据分发到各种网络。它还处理带宽管理和各种通道。 4)什么是 LAN? LAN 是局域网的缩写。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 25,924
精华内容 10,369
关键字:

匿名网络邮件