最近工作要求解决下web的项目的漏洞问题,扫描漏洞是用的AppScan工具,其中此篇文章是关于链接注入问题的。下面就把这块东西分享出来。

原创文章,转载请注明

-----------------------------------------正题-------------------------

测试类型:
应用程序级别测试

威胁分类:
内容电子欺骗

原因:
未对用户输入正确执行危险字符清理

安全性风险:
■ 劝说初级用户提供诸如用户名、密码、信用卡号、社会保险号等敏感信息
■ 可能会窃取或操纵客户会话和 cookie,它们可能用于模仿合法用户,从而使黑客能够以该用户身份查看或变更用户记录以及执行事务
■ 可能会在 Web 服务器上上载、修改或删除 Web 页面、脚本和文件 
受影响产品:
该问题可能会影响各种类型的产品。

引用:

OWASP 文章
跨站点请求伪造常见问题(FAQ)
跨站点请求伪造培训模块

技术描述:

该软件使用受外部影响的输入来构造命令、数据结构或记录的全部或一部分,但未能对可能修改其解析或解释方式的元素进行无害化处理。
“链接注入”是通过在某个站点中嵌入外部站点的 URL,或者在易受攻击的站点中嵌入脚本的 URL,从而修改该站点的内容。在易受攻击的站点中嵌入
URL 后,攻击者能够将其作为发起针对其他站点(以及针对这个易受攻击的站点本身)的攻击的平台。
其中一些可能的攻击需要用户在攻击期间登录站点。通过从易受攻击的站点本身发起这些攻击,攻击者成功的可能性更高,因为用户更倾向于登录。
“链接注入”脆弱性是未对用户输入进行充分清理所导致的结果,该输入以后会在站点响应中返回给用户。这样一来,攻击者能够将危险字符注入响应中,
从而有可能嵌入 URL,以及做出其他可能的内容修改。
以下是“链接注入”的示例(我们假设站点“www.vulnerable.com”有一个名为“name”的参数,用于问候用户)。
下列请求:HTTP://www.vulnerable.com/greet.asp?name=John Smith
会生成下列响应:

<HTML>
<BODY>
Hello, John Smith.
</BODY>
</HTML>

然而,恶意的用户可以发送下列请求:
HTTP://www.vulnerable.com/greet.asp?name=<IMG SRC="http://www.ANYSITE.
com/ANYSCRIPT.
asp">
这会返回下列响应:

<HTML>
<BODY>
Hello, <IMG SRC="http://www.ANY-SITE.com/ANY-SCRIPT.asp">.
</BODY>
</HTML>

如以上示例所示,攻击者有可能导致用户浏览器向攻击者企图攻击的几乎任何站点发出自动请求。因此,“链接注入”脆弱性可用于发起几种类型的攻击:
[-]跨站点请求伪造
[-]跨站点脚本编制
[-]网络钓鱼

链接注入(便于跨站请求伪造)(AppScan扫描结果)的更多相关文章

  1. WordPress A Forms插件HTML注入漏洞和跨站请求伪造漏洞

    漏洞名称: WordPress A Forms插件HTML注入漏洞和跨站请求伪造漏洞 CNNVD编号: CNNVD-201308-281 发布时间: 2013-08-20 更新时间: 2013-08- ...

  2. web前端安全 XSS跨站脚本 CSRF跨站请求伪造 SQL注入

    web安全,从前端做起,总结下web前端安全的几种技术: 1,XSS XSS的全称是Cross Site Scripting,意思是跨站脚本,XSS的原理也就是往HTML中注入脚本,HTML指定了脚本 ...

  3. 关于XSS(跨站脚本攻击)和CSRF(跨站请求伪造)

    我们常说的网络安全其实应该包括以下三方面的安全: 1.机密性,比如用户的隐私被窃取,帐号被盗,常见的方式是木马. 2.完整性,比如数据的完整,举个例子,康熙传位十四子,被当时四阿哥篡改遗诏:传位于四子 ...

  4. Web安全测试之跨站请求伪造(CSRF)篇

    跨站请求伪造(即CSRF)被Web安全界称为诸多漏洞中“沉睡的巨人”,其威胁程度由此“美誉”便可见一斑.本文将简单介绍该漏洞,并详细说明造成这种漏洞的原因所在,以及针对该漏洞的黑盒测试与灰盒子测试具体 ...

  5. WebGoat学习——跨站请求伪造(Cross Site Request Forgery (CSRF))

    跨站请求伪造(Cross Site Request Forgery (CSRF)) 跨站请求伪造(Cross Site Request Forgery (CSRF))也被称为:one click at ...

  6. xss(跨站脚本攻击),crsf(跨站请求伪造),xssf

    我们常说的网络安全其实应该包括以下三方面的安全: 1.机密性,比如用户的隐私被窃取,帐号被盗,常见的方式是木马. 2.完整性,比如数据的完整,举个例子,康熙传位十四子,被当时四阿哥篡改遗诏:传位于四子 ...

  7. 跨站请求伪造(Cross Site Request Forgery (CSRF))

    跨站请求伪造(Cross Site Request Forgery (CSRF)) 跨站请求伪造(Cross Site Request Forgery (CSRF)) 跨站请求伪造(Cross Sit ...

  8. 跨站请求伪造和cookie伪造

    CSRF(Cross-site request forgery跨站请求伪造,也被称成为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站 ...

  9. ASP.NET Core 防止跨站请求伪造(XSRF/CSRF)攻击 (转载)

    什么是反伪造攻击? 跨站点请求伪造(也称为XSRF或CSRF,发音为see-surf)是对Web托管应用程序的攻击,因为恶意网站可能会影响客户端浏览器和浏览器信任网站之间的交互.这种攻击是完全有可能的 ...

随机推荐

  1. iOS中model出来一个控制器的尺寸怎么设置?

    在xib的控制器里添加self.preferredContentSize = CGSizeMake( , ) 就能修改xib在界面上显示的大小- (void)viewDidLoad { [super ...

  2. java中hashCode()方法的作用

    hashcode方法返回该对象的哈希码值.      hashCode()方法可以用来来提高Map里面的搜索效率的,Map会根据不同的hashCode()来放在不同的位置,Map在搜索一个对象的时候先 ...

  3. POJ 1811 Prime Test(Miller-Rabin & Pollard-rho素数测试)

    Description Given a big integer number, you are required to find out whether it's a prime number. In ...

  4. JSon_零基础_004_将Set集合对象转换为JSon格式的对象字符串,返回给界面

    将Set集合对象转换为JSon格式的对象字符串,返回给界面 需要导入的jar包: 编写:servlet: package com.west.webcourse.servlet; import java ...

  5. paper 10:支持向量机系列七:Kernel II —— 核方法的一些理论补充,关于 Reproducing Kernel Hilbert Space 和 Representer Theorem 的简介。

    在之前我们介绍了如何用 Kernel 方法来将线性 SVM 进行推广以使其能够处理非线性的情况,那里用到的方法就是通过一个非线性映射 ϕ(⋅) 将原始数据进行映射,使得原来的非线性问题在映射之后的空间 ...

  6. 《zw版·Halcon-delphi系列原创教程》halconxlib控件列表

    <zw版·Halcon-delphi系列原创教程>halconxlib控件列表 Halcon v11.01版,com控件,安装后,共有75个控件,      不过最重要的控件,只有两个,T ...

  7. linux计划任务运行php文件的方法

    在linux下,借助crontab,设置计划任务每天6点10分执行filename.php文件,写入一行时间到log日志中. 创建计划任务的脚本: dos2unix /path/to/filename ...

  8. Android 带checkbox的listView 实现多选,全选,反选,删除

    activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&qu ...

  9. Android侧滑

    人人客户端有一个特效还是挺吸引人的,在主界面手指向右滑动,就可以将菜单展示出来,而主界面会被隐藏大部分,但是仍有左侧的一小部分同菜单一起展示. 据说人人客户端的这个特效是从facebook客户端模仿来 ...

  10. PHP人民币金额数字转中文大写的函数

    <?php header("Content-Type:text/html;charset=utf-8"); error_reporting(2); function cny( ...