CRLF 注入攻击介绍和防范

目录

 

1、什么是CRLF攻击

2、CRLF注入的关键概念

3、通过实例解释CRLF注射

4、CRLF注入的修复建议


1、什么是CRLF攻击

 

CRLF的含义是“carriage return/line feed”,意思就是回车和换行。这是两个ASCII字符,分别排在第十三和第十位。

CRLF指的是特殊字符元素“回车”和“换行”。这些元素嵌入在HTTP标头和其他软件代码中,以表示行尾(EOL)标记。许多互联网协议,包括MIME(电子邮件),NNTP(新闻组),更重要的是HTTP,使用CRLF序列将文本流分割为离散元素。Web应用程序开发人员根据CRLF所在的位置拆分HTTP和其他标头。当攻击者能够将CRLF序列注入HTTP流时,就会出现漏洞。通过引入这种意外的CRLF注入,攻击者能够恶意利用CRLF漏洞来操纵Web应用程序的功能。

CRLF注射的更正式名称是CRLF序列的不正确中和。因为CRLF注入经常用于分割HTTP响应,所以它也可以被指定为HTTP响应分裂或HTTP头中的CRLF序列的不正确中和。

CRLF 注入,从基本层面来说,是一种更强大的攻击方式。在意想不到的位置添加行末命令,攻击者可以注入代码进行破坏。根据 Veracode 的研究,这些破坏包括:网站篡改、跨站脚本攻击、浏览器劫持等。尽管这类攻击可能比其他攻击更容易防范,但若是忽视这一攻击,就会酿成大祸。

2、CRLF注入的关键概念

RLF注入是一种软件应用程序编码漏洞,当攻击者在不期望的情况下注入CRLF字符序列时会发生该漏洞。当CRLF注入用于拆分HTTP响应头时,它被称为HTTP响应拆分。CRLF注入漏洞是由数据输入引起的,这些数据输入未被中和,不正确地被中和或未被无法识别。

攻击者提供特制的文本流和CRLF注入,以欺骗Web应用程序执行意外和可能有害的操作,范围从中到高。攻击者通过注入CRLF序列来利用CRLF注入漏洞,以便将文本流拆分为嵌入Web应用程序不期望的文本序列。这些意外的CRLF注入可能导致安全漏洞并造成财产损失。

CRLF注入利用了应用程序层的安全漏洞。例如,通过利用HTTP响应中的CRLF注入漏洞,攻击者可以修改应用程序数据,破坏完整性并利用以下漏洞:

  • XSS或跨站点脚本漏洞
  • 代理和Web服务器缓存中毒
  • 网站污损
  • 劫持客户的会话
  • 客户端Web浏览器中毒

3、通过实例解释CRLF注射

让我们通过查看CRLF攻击的最基本示例之一来检查CRLF注入如何造成损害:将伪条目添加到日志文件中。假设易受攻击的应用程序接受未经过清理或未正确中和的数据并将其写入系统日志文件。攻击者提供以下输入:

Hello, World<CR><LF>DATABASE ERROR: TABLE CORRUPTION

由于此错误是假的,因此系统管理员可能会浪费大量时间来排除不存在的错误。攻击者可以使用此类型的特洛伊木马分散管理员的注意力,同时攻击其他地方的系统。

说明CRLF注入如何导致严重损害的另一种方法是通过接受文件名作为用户输入的应用程序,然后对该文件执行相对无害的命令,例如“ls -a”。如果应用程序由于不正确的中和或未经过数据输入而容易受到CRLF注入攻击,则攻击者可以提供以下输入:

fname<CR><LF>/bin/rm -rf / 

如果应用程序在linux / unix系统上以root权限运行,则此CRLF注入攻击可能会清除整个文件系统。

4、CRLF注入的修复建议

幸运的是,CRLF注射很容易预防:

  • 始终遵循永不信任用户输入的规则。
  • 清理并中和所有用户提供的数据或正确编码HTTP标头中的输出,否则这些输出将对用户可见,以防止注入CRLF序列及其后果。

本文来源:https://www.veracode.com/security/crlf-injection

https://blog.csdn.net/zhouwei1221q/article/details/47399773

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值