设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 运营中心 > 建站资源 > 策划 > 正文

学习手册:窥探Web前端黑客技术(2)

发布时间:2019-04-08 13:36 所属栏目:20 来源:绿盟科技
导读:钓鱼也是一种非常古老的攻击方式了,其实并不太算前端攻击。可毕竟是页面级别的攻击,我们也来一起聊一聊。我相信很多人会有这样的经历,QQ群里面有人发什么兼职啦、什么自己要去国外了房子车子甩卖了,详情在QQ空

钓鱼也是一种非常古老的攻击方式了,其实并不太算前端攻击。可毕竟是页面级别的攻击,我们也来一起聊一聊。我相信很多人会有这样的经历,QQ群里面有人发什么兼职啦、什么自己要去国外了房子车子甩卖了,详情在QQ空间里啦,之类的连接。打开之后发现一个QQ登录框,其实一看域名就知道不是QQ,不过做得非常像QQ登录,不明就里的用户们,就真的把用户名和密码输入了进去,结果没登录到QQ,用户名和密码却给人发过去了。

其实这种方式,在前端也有利用。

常见的钓鱼方式有:

  • 黑客通过钓鱼网站设下陷阱,大量收集用户个人隐私信息,贩卖个人信息或敲诈用户;
  • 黑客通过钓鱼网站收集、记录用户网上银行账号、密码,盗窃用户的网银资金;
  • 黑客假冒网上购物、在线支付网站、欺骗用户直接将钱打入黑客账户;
  • 通过假冒产品和广告宣传获取用户信任,骗取用户钱财;
  • 恶意团购网站或购物网站,假借“限时抢购”、“秒杀”、“团购”等,让用户不假思索地提供个人信息和银行账号,这些黑心网站主可直接获取用户的个人资料和网银账号密码信息,进而获利。

下面,,我们就来试试如果利用前端进行一次逼真的钓鱼。

首先,我们在xx空间里分享一篇文章,然后吸引别人去点击。

接着,我们在cheat.php这个网站上面,将跳转过来的源网页地址悄悄的进行修改。

于是,在用户访问了我们的欺骗网站后,之前的tab已经悄然发生了变化,我们将其悄悄的替换为了钓鱼的网站,欺骗用户输入用户名、密码等。

钓鱼网站,伪装成XX空间,让用户输入用户名与密码。

这种钓鱼方式比较有意思,重点在于我们比较难防住这种攻击,我们并不能将所有的页面链接都使用js打开。所以,要么就将外链跳转的连接改为当前页面跳转,要么就在页面unload的时候给用户加以提示,要么就将页面所有的跳转均改为window.open,在打开时,跟大多数钓鱼防治殊途同归的一点是,我们需要网民们的安全意识提高。

前端安全三大类:

Web前端安全主要包括跨站脚本(XSS)、跨站请求伪造(CSRF)、界面操作劫持这三大类。

4. 跨站脚本(XSS)

XSS(cross-site scripting跨域脚本攻击)攻击也是最常见的WEB攻击之一,其重点是“跨域”和“客户端执行”。

XSS发生在目标网站中目标用户的浏览器层面上,当用户浏览器渲染整个html文档的过程中出现了不被预期的脚本指令并执行时,XSS就会发生。

也可以通俗地总结XSS为:想尽一切办法将你的脚本内容在目标网站中目标用户的浏览器上解析执行即可。

输入x的值未经任何过滤就直接输出,可以提交:

http://www.a.com/xss/reflect.php?x=

服务器端解析时,echo就会完整地输出 到响应体中,然后浏览器解析执行触发。

攻击过程:

  • 客户端收集用户数据(如留言、发布文章功能)
  • 攻击者将留言内容写入了可执行的JavaScript代码
  • 将上面的数据未经处理直接存入数据库
  • 其他用户查看该网站,看了上面包含了可执行的JavaScript代码的文章和评论

其他用户就会在浏览器客户端执行攻击者注入的JavaScript代码

XSS有几种不同的分类办法,例如按照恶意输入的脚本是否在应用中存储,XSS被划分为“存储型XSS”和“反射型XSS”,如果按照是否和服务器有交互,又可以划分为“Server Side XSS”和“DOM based XSS”。

无论怎么分类,XSS漏洞始终是威胁用户的一个安全隐患。攻击者可以利用XSS漏洞来窃取包括用户身份信息在内的各种敏感信息、修改Web页面以欺骗用户,甚至控制受害者浏览器,或者和其他漏洞结合起来形成蠕虫攻击,等等。总之,关于XSS漏洞的利用,只有想不到没有做不到。

5. 跨站请求伪造(CSRF)

CSRF(cross-site request forgery),翻译为跨站请求伪造,与XSS非常相似,但XSS是利用用户对当前网站的信任来发起攻击,而CSRF是利用网站对用户的信任来发起攻击。

对于CSRF来说,它的请求有两个关键点:跨站点的请求与请求是伪造的。

跨站点请求的来源是其他站点,比如,目标网站的删除文章功能接收到来自恶意网站客户端(JavaScript、Flash、HTML等)发出的删除文章的请求,这个请求就是跨站点的请求,目标网站应该区分请求来源。

如果请求的发出不是用户的意愿,那么这个请求就是伪造的。

场景:

  • 目标网站A:www.a.com
  • 目标网站B:www.b.com

目标网站A上有一个删除文章的功能,通常是用户单击“删除链接”时才会删除文章,这个链接是www.a.com/blog/del?id=1,id代表不同的文章。

CSRF思路,步骤如下:

在恶意网站B上编写一个CSRF页面(www.b.com/csrf.htm),

考虑用代码:

  1. img src=http://www.a.com/blog/del?id=1/> 

向目标网站A发出一个GET请求的方法。

然后欺骗已经登录目标网站A的用户访问www.b.com/csfr.htm页面,攻击发生。

这里攻击过程有三个关键点:跨域发出了一个GET请求、可以无JavaScript参与、请求是身份认证后的。

6. 界面操作劫持

有个词叫做防不胜防,我们在通过iframe使用别人提供的内容时,我们自己的页面也可能正在被不法分子放到他们精心构造的iframe或者frame当中,进行点击劫持攻击。

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读