欢迎来到天天文库
浏览记录
ID:9744345
大小:120.00 KB
页数:27页
时间:2018-05-07
《如何利用注射技术攻击邮件服务器?》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、如何利用注射技术攻击邮件服务器? 一、AP和SMTP协议来管理用户和他们的电子邮件之间的交互。从这一点来说,AP服务器支持使用login认证方式的话,那么AP服务器发送如下所示的命令:AUTHLOGIN 同样,这个应用程序还会将用户的各种动作(如访问邮箱、发送/删除电子邮件、退出邮箱等)转换成相应的IMAP和SMTP命令,然后把这些命令发送给相应的邮件服务器。然而,ail应用程序的功能有限,所以用户只能生成该应用程序定义的选项所对应的那些IMAP或者SMTP命令。但是,用户却有可能改变被发送给邮件服务器的那些IMAP和SMTP命令。 下面,就让我们来看一下这种技术的
2、工作原理吧! 二、邮件服务器注射技术原理 与广为人知的诸如SQL注射、LDAP注射、SSI注射、XPath注射、CRLF注射等注射技术类似,邮件服务器注射技术也是通过一个对用户提供的数据没有严格检查的ail应用程序将IMAP命令或者SMTP命令注射到邮件服务器。当通过ail应用程序使用的后台邮件服务器无法直接经由Inter访问时,邮件服务器注射技术格外有用。 要向邮件服务器注入命令,前提条件是允许用户通过ail应用程序访问其端口25(SMTP)和143(IMAP)。 邮件服务器注射来利用一个应用程序的攻击者来说,他们相当于直接访问了被防火墙隔离的原始电子邮件服务端
3、口(即绕过了防火墙)。通过利用这种技术,攻击者可以进行各式各样的活动和攻击,至于到底能做哪些事情,这要取决于被注入命令的服务器的类型。之所以这样说,是因为AP和SMTP协议命令。下面介绍如何利用这两种协议。 在进行IMAP注射时,注入的命令最终是由IMAP服务器执行的,所以命令必须遵循这个协议的格式和规范。AP服务器进行通信,这正是它们容易遭受这种攻击的原因。在用户验证身份的时候,ail应用程序将用户的凭证传送到IMAP服务器,因此,利用IMAP服务器的验证机制,无需在该应用程序中具有一个有效帐户就能够进行IMAP注射。注入IMAP命令之前,用户必须找出跟邮件服务器通信
4、时所用的所有参数,并弄清楚这些参数跟应用程序的功能的关系,如: 认证/登录/退出 邮箱操作(显示、阅读、创建、删除、重命名) 消息操作(阅读、复制、移动、删除) 现在让我们看一个利用消息阅读功能来进行IMAP注射的例子。假定ail应用程序使用参数message_id来存放用户想要阅读的消息的标识符。当一个包含消息标识符的请求发出时,该请求看起来像下面的样子:/read_email.php?message_id= 假如网页read_email.php负责显示有关消息,它直接把请求发给IMAP服务器,而不对用户提供的值做任何检验。这时发给邮件服务器的命令将是下面的样
5、子:FETCH BODY[HEADER] 在这种情况下,我们就可以通过应用程序用来与邮件服务器通信的参数message_id来发动IMAP注射攻击。例如,可以利用下列命令来注入IMAP命令CAPABILITY:/read_email.php?message_id=1BODY[HEADER]%0d%0aZ900CAPABILITY%0d%0aZ901FETCH1 这将导致服务器执行下列IMAP命令:FETCH1BODY[HEADER] Z900CAPABILITY Z901FETCH1BODY[HEADER] 所以该服务器返回的页面显示的是在IMAP服务器中的CAPA
6、BILITY命令的结果:*CAPABILITYIMAP4rev1CHILDRENNAMESPACETHREAD=ORDEREDSUBJECTTHREAD=REFERENCES SORTQUOTAACLACL2=union Z900OKCAPABILITYpleted 三、SMTP注射 这里,我们要向SMTP服务器注射命令,所以注入的命令必须遵循SMTP协议。由于这些活动是使用SMTP协议的应用程序所允许的,所以我们基本上就是去模仿发送电子邮件。要利用SMTP注射,用户必须事先通过认证,所以用户必须有一个有效的ail帐户。 通过SMTP发送电子邮件消息的格式如下:
7、 发送方的e-mail地址 接收方的e-mail地址 主题 消息主体 附件 下面是一个通过存放消息主题的参数来进行SMTP注射的例子。 如前所述,这种技术的使用要求用户是经过认证的,并且可以针对发送电子邮件时的ail参数进行SMTP命令注射。一般的,ail应用程序会提供给用户一个表单,用户必须在表单中提供必要信息,这些信息将被发送给负责创建发送电子邮件所必需的原始SMTP命令的资源。 发送电子邮件的请求一般如下所示:POST/pose.phpHTTP/1.1 ...------------------------
此文档下载收益归作者所有