精华内容
下载资源
问答
  • 点击劫持

    2020-02-01 09:20:57
    点击劫持

    点击劫持

    一.点击劫持原理

    点击劫持(click hijacking)也称为 UI 覆盖攻击。它通过一些内容(如游戏)误导被攻击者点击,虽然被攻击者点击的是他所看到的网页,但其实所点击的是另一个置于原网页上面的透明页面。

    (一)页面内容不显示的三种方式:
    1.opacity:
    (1)opacity:0—隐藏 ;1—显示。
    (2)位置在,点击有反应。
    2.visibility:
    (1)visible—可见;hidden—不可见
    (2)位置仍在,但是点击没有反应。
    3.display:
    (1)none—不可见
    (2)元素还有,但位置没了,点击也没有反应。

    (二)Z-index属性:数值越高,界面越靠近用户。
    在这里插入图片描述

    二.点击劫持的防御方法

    1.利用X-FRAME-OPTIONS 机制。——控制页面能否被iframe。
    (1)DENY表示任何网页都不能使用 iframe 载入该网页。
    (2)SAMEORIGIN表示符合同源策略的网页可以使用 iframe载入该网页。

    三.点击劫持和CSRF的区别

    1.CSRF不需要使用iframe,点击劫持需要。
    2.CSRF可以通过使用隐藏的token的方法来进行防御,但是点击劫持不行。
    3.CSRF攻击更加隐蔽,例如一旦用户访问页面,攻击就成功;但点击劫持需要用户在受欺骗的环境下自己进行操作。

    展开全文
  • 点击劫持 出于所有正确的原因,JavaScript安全是一项大业务。 JavaScript使我们可以在前端做一些不可思议的事情,但是其中一些不可思议的事情是为了 评估 邪恶。 Spyjax曾经是这些邪恶的事物之一,但是浏览器似乎...

    点击劫持 ppt

    JavaScript security is a big business and for all of the right reasons.  JavaScript lets us do incredible things on the front end but some of those incredible things are for eval evil.  Spyjax used to be one of those evil things but browsers seem to have figured that out.  One technique I've seen lately is clickjacking -- presenting a link as one URL but then changing the URL quickly to trick the user.  Let me show you what I've seen.

    出于所有正确的原因,JavaScript安全是一项大业务。 JavaScript使我们可以在前端做一些不可思议的事情,但是其中一些不可思议的事情是为了 评估 邪恶。 Spyjax曾经是这些邪恶的事物之一,但是浏览器似乎已经意识到了这一点。 我最近看到的一种技术是点击劫持-将链接显示为一个URL,然后Swift更改URL来欺骗用户。 让我告诉你我所看到的。

    When visiting CNBC, I would occasionally command+click a link to a post to open it in a new window, but Google Chrome would refuse via the popup blocker.  That confused me -- I'm triggering a "native" action, why is the popup blocker hassling me?  Because CNBC was being gangsta:

    访问CNBC时,我偶尔会命令并单击指向帖子的链接以在新窗口中打开它,但是Google Chrome浏览器会通过弹出窗口阻止程序拒绝。 这让我感到困惑-我正在触发“本机”操作,为什么弹出窗口阻止程序会困扰我? 由于CNBC是黑帮,因此:

    
    <a href="/some-url" onmousedown="this.href='/some-other-url';">Misleading Link Title</a>
    
    
    

    The href was set to one URL but JavaScript dynamically changed the href to the "bad" address upon mousedown, thus changing the destination before the use knew it.  This is an incredibly shady practice with only one possible purpose: gaming the user and possibly even search engines.

    href设置为一个URL,但是JavaScript会在鼠标按下时动态地将href更改为“坏”地址,从而在使用者知道它之前就更改了目的地。 这是一种极其阴暗的做法,只有一个可能的目的:游戏用户,甚至可能搜索引擎。

    It's impressive that Chrome detected CNBC's technique and blocked the click. Clickjacking could become a serious issue and I've lost a lot of trust in CNBC.  If you're participating in this practice, it may be best to stop -- the browsers are on to you.

    令人印象深刻的是,Chrome浏览器检测到CNBC的技术并阻止了点击。 点击劫持可能成为一个严重的问题,我对CNBC失去了很多信任。 如果您正在参与此实践,则最好停止操作-浏览器已启动。

    翻译自: https://davidwalsh.name/clickjacking

    点击劫持 ppt

    展开全文
  • 点击劫持漏洞案例ppt

    2019-01-02 20:27:45
    点击劫持---clickjacking
  • ClickJacking点击劫持

    2020-10-21 16:03:51
    文章目录点击劫持(ClickJacking)1 什么是点击劫持2 Flash点击劫持3 图片覆盖攻击4 拖拽劫持与数据窃取5 ClickJacking3.0:触屏劫持6 Click Jacking防御6.1 frame busting6.2 X-Frame-Option7 小结 点击劫持...

    点击劫持(ClickJacking)

    1 什么是点击劫持

    点击劫持是一种视觉欺骗手段。攻击者使用一个透明不可见的iframe,覆盖在一个网页上,然后诱使用户在该网页上操作,用户将在不知情的情况下点击透明的iframe页面。通过调整iframe页面的位置,可以诱使用户恰好点击在iframe页面的一些功能按钮上

    原理很简单,代码示例略。

    点击劫持与CSRF攻击都是在用户不知情的情况下诱使用户完成一些动作。但是在CSRF攻击过程中,如果出现用户交互的页面,则攻击可能无法完成。而点击劫持没有这个顾虑,他利用的就是与用户产生交互的页面。

    2 Flash点击劫持

    一个较为严重的ClickJacking案例,目前Adobe公司已经修复。攻击者构造一系列点击操作,最终控制了用户电脑摄像头。

    过程如下:

    1. 制作一个Flash游戏,诱使用户来玩。游戏内容就是让用户去点击一个CLICK按钮,每次点击后这个按钮的位置都会发生变化。
    2. 在这个上面隐藏了一个看不见iframe。
    3. 某些点击是有意义的某些点击是没有意义的。
    4. 最终一步一步打开了摄像头。

    3 图片覆盖攻击

    Cross Site Image Overlaying,简称XSIO。通过调整图片的style使得,图片能够覆盖在他所指定的任意位置。

    比如在自己的主页上,添加一个谷歌的搜索框控件,后面有个Powered by Google的logo,原本点击会进入谷歌主页,如果覆盖掉那个logo换成自己的img,则会进入其他网站(如钓鱼网站)。

    图片还可以伪装得像一个正常的链接、按钮。或者在图片中构造一些文字,覆盖在关键的位置,用户甚至不需要点击也能达到欺骗的目的,比如利用XSIO修改页面中的联系电话。

    由于<img>标签在很多系统中是对用户开放的,因此在显示中 有很多站点存在被XSIO攻击的可能性。在防御XSIO时,需要检查用户提交的HTML代码中,<img>标签的style属性是否可能导致浮出。

    4 拖拽劫持与数据窃取

    安全研究者Paul Stone在2010BlackHat大会上发表的演讲,提出“浏览器拖拽事件”导致的一系列安全问题。

    很多浏览器开始支持Drag&Drop的API,对象可以是文字或链接,也可以从一个窗口拖拽到另一个窗口,所以拖拽不受同源策略的限制。

    “拖拽劫持”的思路是诱使用户从隐藏的不可见的ifram中拖拽出攻击者希望得到的数据,然后放到攻击者能控制的另一个页面中,从而窃取数据。在JS和Java API的支持下,这个过程会变得非常隐蔽。

    案例:国内安全研究者xisiger曾经构造了一个针对Gmail的POC。(代码见红宝书p132)。

    5 ClickJacking3.0:触屏劫持

    智能手机上的点击劫持—TapJacking。
    从手机OS的角度来看,触屏操作就是一个事件,手机OS捕捉这些事件执行相应操作。

    安全研究者在Android系统中实施TapJacking修改系统安全设置(2010年12月)

    6 Click Jacking防御

    6.1 frame busting

    通过一段JS代码禁止iframe嵌套。

    if(top.location != location){
    	top.location = self.location;
    }
    

    常见的frame busting方式见红宝书P136

    但是由于他本身是JS代码,控制能力不是很强,有很多绕过的方法。

    6.2 X-Frame-Option

    相对更好的一种解决方案,使用一个HTTP头——X-Frame-Option。它有三个值可以选:

    • DENY 浏览器会拒绝当前页面加载任何frame页面
    • SAMEORIGION frame页面地址只能为同源域名下的页面
    • ALLOW-FORM origin 可以加载frame

    除此之外,还有firefox的“Content Security Policy”和NoScript扩展也能防御ClickJacking。

    7 小结

    相比于XSS和CSRF,点击劫持需要诱导用户进行交互,成本更高,所以相对少见一点,但仍然有可能被用作钓鱼欺诈广告作弊等方面。

    展开全文
  • 点击劫持页面.rar

    2020-05-28 07:58:36
    做了一个简单的静态页面,实现点击劫持效果,希望大家可以了解关于网页安全的问题,请不要应用到非法用途,可以研究学习
  • 本发明涉及漏洞防御技术领域,具体地说是一种点击劫持的测试方法及装置。背景技术:点击劫持是一种视觉上的欺骗手段,攻击者使用一个透明的、不可见的iframe,覆盖在一个网页上,然后诱使用户在该网页上进行操作,...

    ed0f0644aaeeec5773df404bb232ca8e.gif

    本发明涉及漏洞防御技术领域,具体地说是一种点击劫持的测试方法及装置。

    背景技术:

    点击劫持是一种视觉上的欺骗手段,攻击者使用一个透明的、不可见的iframe,覆盖在一个网页上,然后诱使用户在该网页上进行操作,此时用户在不知情的情况下点击了透明的iframe页面。该透明的页面可能包含一些危险的动作,比如支付、下载木马等,但实际用户并不能看到该透明的页面,而是看到攻击者想要你看到的看似安全的网站。攻击者通过css调整iframe页面的位置,诱使用户恰好点击在iframe页面的一些功能性按钮上,完成攻击。

    传统的点击劫持检测是遍历网页的按钮,针对所有的网页的按钮,进行逐个测试,对每个页面逐一进行数据的匹配,测试效率低。

    技术实现要素:

    本发明实施例中提供了一种点击劫持的测试方法及装置,以解决现有技术中测试效率低的问题。

    为了解决上述技术问题,本发明实施例公开了如下技术方案:

    本发明第一方面提供了一种点击劫持的测试方法,所述测试方法包括以下步骤:

    创建http会话,获取目标网页源代码,检查响应头中是否存在安全字段x-frame-options;

    若不存在安全字段,则检查网页源代码中的标签,判断标签内是否存在iframe表单;

    若存在iframe表单,则检索所述标签内是否存在button;

    若否,则无点击劫持风险,若是,则提示存在点击劫持风险。

    进一步地,通过网络爬虫获取所述目标网页源代码,通过正则匹配检查是否存在安全字段。

    进一步地,所述检索所述标签内是否存在button的具体过程为:

    定义按钮关键字,所述按钮关键字为button必用关键字;

    查找网页源码中是否存在所述按钮关键字;

    若存在,则存在button,否则不存在button。

    进一步地,其特征是,在提示存在点击劫持风险后,所述方法还包括步骤:

    测试是否存在点击劫持漏洞。

    进一步地,所述测试是否存在点击劫持漏洞的具体过程为:

    对当前网页的所有button进行白名单撞库测试,若所述所有button均在白名单内,则当前网页不存在点击劫持漏洞,否则当前网页存在点击劫持漏洞。

    进一步地,所述测试是否存在点击劫持漏洞的具体过程为:

    对当前网页的所有button进行模拟点击测试,若所有button在模拟点击后均安全,则当前页面不存在点击劫持漏洞,否则当前网页存在点击劫持漏洞。

    本发明第二方面提供了一种点击劫持的测试装置,所述装置包括:

    预测试模块,用于获取目标网页的源代码,依次判断是否存在安全字段x-frame-options、iframe表单和button,根据判断结果确定是否进行漏洞测试;

    漏洞测试模块,用于对网页中的所有button进行漏洞测试,判断当前网页的点击劫持漏洞。

    进一步地,所述预测试模块包括:

    第一预测试单元,用于检查响应头中是否存在安全字段,若是,则结束测试,若否,则转到第二预测单元;

    第二预测试单元,用于判断标签内是否存在iframe表单,若否,则结束测试,若是,则转到第三预测单元;

    第三预测试单元,用于判断标签内是否存在button,若否,则结束测试,若是,则转到漏洞测试模块。

    进一步地,所述漏洞测试模块包括:

    白名单撞库测试单元,用于对当前网页的所有button进行白名单撞库测试,判断当前网页是否存在点击劫持漏洞。

    进一步地,所述漏洞测试模块包括:

    模拟点击测试单元,用于对当前网页的所有button进行模拟点击操作,判断当前网页是否存在点击劫持漏洞。

    本发明第二方面的所述点击劫持的测试装置能够实现第一方面及第一方面的各实现方式中的方法,并取得相同的效果。

    发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:

    本发明通过对点击劫持发生所需要必要条件的分析,在进行测试之前,首先对形成点击劫持风险的必要条件不存在安全字段、标签中存在iframe以及标签中存在button进行测试,若具备上述条件,则证明当网页不存在点击劫持风险,不必逐一对标签中的button进行测试,节省测试时间,大幅提高测试效率。

    附图说明

    为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

    图1是本发明所述方法的流程示意图

    图2是本发明所述装置实施例1的结构示意图;

    图3是本发明所述装置实施例2的结构示意图。

    具体实施方式

    为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。

    点击劫持的必要不充分条件为1.有iframe标签2.有button按钮。另外,x-frame-options通过禁用iframe加载页面防止点击劫持,从而3.x-frame-options可作为无点击劫持的充分不必要条件。在正式确定是否存在点击劫持漏洞时,还要通过传统测试的方法测试,本发明是依据以上3点提供一个预测,过滤掉不可能发生点击劫持的网页,节省掉不必要的测试过程,提高测试效率。实际上基于button和iframe表单已经可以过滤大部分网页。

    如图1所示,本发明点击劫持的测试方法包括以下步骤:

    创建http会话,获取目标网页源代码,检查响应头中是否存在安全字段x-frame-options;

    若是,则无点击劫持风险,若否,执行下一步;

    检查网页源代码中的标签,判断标签内是否存在iframe表单;

    若否,则无点击劫持风险,若是,执行下一步;

    检索所述标签内是否存在button;

    若否,则无点击劫持风险,若是,则提示存在点击劫持风险。

    点击劫持利用的是iframe对网页的覆盖,通过一系列引诱使用户点击按钮来达到攻击的操作,而响应头中的安全字段x-frame-options则是禁止加载frame页面的选项。基于此,首先我们检查是响应头种是否存在安全字段x-frame-options。

    采用抓包工具、发包工具及浏览器等的现有技术即可创建http会话,通过网络爬虫获取目标网页源代码,通过正则匹配或距离向量判断是否存在安全字段。

    通过http会话工具查看到网站的源码从而判断标签是否存在,从而检索会话的网页源码标签内是否存在iframe表单。

    检索标签内是否存在button可通过爬虫结合正则匹配的方法,爬虫是自动化获取网页响应的工具,正则匹配是根据制定字符串查找到文件中的关键字。

    具体过程为:

    定义按钮关键字,其中按钮关键字为button必用关键字;

    查找网页源码中是否存在按钮关键字;

    若存在,则存在button,否则不存在button。

    以上实施例中依次进行安全字段、iframe以及button的校验,能够明显提高测试效率,因网页中只要存在安全字段就不会有点击劫持的风险,且对安全字段的检测,相比于button的检测,工作量更小。

    对于iframe检测的必要性通过举例来说:存在一个有button属性的html文件,且没有安全响应头的话,若不检测iframe,则需要进行点击劫持测试,而实际上该html文件并没有iframe标签,依照本方案并不需要进行点击劫持测试。所以针对此种情况本发明能够提高测试的效率。

    在提示存在点击劫持风险后,还进行是否进行点击劫持漏洞的测试。

    测试是否存在点击劫持漏洞有两种方式,其一方式的具体过程为:

    对当前网页的所有button进行白名单撞库测试,若所有button均在白名单内,则当前网页不存在点击劫持漏洞,否则当前网页存在点击劫持漏洞。

    测试是否存在点击劫持漏洞的另一方式,具体过程为:

    对当前网页的所有button进行模拟点击测试,若所有button在模拟点击后均安全,则当前页面不存在点击劫持漏洞,否则当前网页存在点击劫持漏洞。

    如图2、3所示,本发明的点击劫持测试装置包括预测试模块1和漏洞测试模块2。预测试模块1用于获取目标网页的源代码,依次判断是否存在安全字段x-frame-options、iframe表单和button,根据判断结果确定是否进行漏洞测试。漏洞测试模块2用于对网页中的所有button进行漏洞测试,判断当前网页的点击劫持漏洞。

    预测试模块1包括第一预测单元11、第二预测单元12和第三预测单元13。第一预测试单元11用于检查响应头中是否存在安全字段,若是,则结束测试,若否,则转到第二预测单元;第二预测试单元12用于判断标签内是否存在iframe表单,若否,则结束测试,若是,则转到第三预测单元;第三预测试单元13用于判断标签内是否存在button,若否,则结束测试,若是,则转到漏洞测试模块。

    漏洞测试模块2包括白名单撞库测试单元21,白名单撞库单元21用于对当前网页的所有button进行白名单撞库测试,判断当前网页是否存在点击劫持漏洞。

    漏洞测试模块2模拟点击测试单元22,模拟点击测试单元22用于对当前网页的所有button进行模拟点击操作,判断当前网页是否存在点击劫持漏洞。

    以上所述只是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也被视为本发明的保护范围。

    展开全文
  • web页面点击劫持

    千次阅读 2018-11-14 19:55:07
    今天看到一个google的点击劫持漏洞获得7500美刀,连接如下 https://apapedulimu.click/clickjacking-on-google-myaccount-worth-7500/   点击劫持漏洞,利用UI重叠,视觉上的欺骗的漏洞,用于钓鱼。 了解点击...
  • 点击劫持学习

    2021-02-18 10:23:15
    什么是点击劫持 点击劫持是一种视觉上的欺骗手段。攻击者使用一个透明的、不可见的iframe,覆盖在一个网页上,然后诱使用户在该网页上进行操作,此时用户将在不知情的情况下点击透明的iframe页面。通过调整iframe...
  • 点击劫持ClickJacking

    2019-09-29 07:22:32
    当我们的页面嵌入到一个iframe中时,安全测试提出一个于我而言很新鲜的词汇–点击劫持,会造成安全隐患。 1. 什么是点击劫持点击劫持(ClickJacking)是一种视觉上的欺骗手段。大概有两种方式,一是攻击者使用...
  • 浅析点击劫持攻击

    2019-05-17 14:37:10
    点击劫持(click jacking)估计搞安全的都对这四个字不陌生,一...这种漏洞目前在国内一直不被重视,但前一阵子Facebook和YouTube纷纷爆出点击劫持导致大问题的漏洞,国外才开始关注此问题,但国内依然不理不睬...
  • 点击劫持, clickjacking,也被称为UI-覆盖攻击。这个词首次出现在2008年,是由 互联网安全专家罗伯特·汉森和耶利米·格劳斯曼首创的。它是通过覆盖不可见的框架误导受害者点击。 虽然受害者点击的是他所看到的...
  • web 点击劫持

    2019-01-22 09:52:04
    有一天使用常用扫描工具来扫描指定网址漏洞(允许的安全研究测试),如Acunetix Web Vulnerability Scanner 等 发现点击劫持漏洞 服务器没有返回X-Frame-Options标头,这意味着该网站可能面临点击劫持攻击...
  • 点击劫持(ClickJacking)

    千次阅读 2018-11-03 08:29:26
    点击劫持什么是点击劫持?方法进阶(本质上还是UI覆盖攻击,只是实现手段不一样)防御 什么是点击劫持点击劫持(ClickJacking),又称“UI-覆盖攻击”,通过覆盖不可见的框架误导受害者进行点击而造成的攻击行为。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,075
精华内容 7,230
关键字:

点击劫持