客户端脚本安全

###一下案例均来自白帽子讲Web安全-吴翰清 一书中

这篇主要是记录下一些内容中的简单概念,其中书中涉及很多实例代码,这边不具体叙述。

客户端脚本安全

XSS攻击

XSS:跨站脚本攻击,英文全称为Cross Sie Script 本来缩写是CSS,但是为了和层叠样式CSS做区分,所以在安全领域叫做XSS
XSS攻击,通常指用户通过HTML注入篡改了网页,插入恶意的脚本,从而在用户浏览网页的时候,控制用户浏览器的一种攻击 ,从一开始这种攻击的案例是跨域的,所以叫做跨站脚本,但是发展到今天,由于JavaScript的强大功能,以及网站前端应用的复杂化,是否跨域以及不在重要

XSS根据效果分为三个类型

  • 第一种反射性:只是简单的把用户输入的数据“反射”给浏览器.黑客往往需要诱使用户点击一个恶意链接,才能攻击成功
 
 
 

".$input."
"; ?>

上面这段是根据用户提交的参数显示到页面上

http://127.0.0.1/hello.php?param=hello(显示一个hello)
http://127.0.0.1/hello.php?param=(在火狐浏览器弹出alert)

这段在chrome浏览器上,显示被浏览器拦截,但是在火狐浏览器上弹出了框,不同浏览器对此有些做出了处理

  • 储存小XSS:储存型XSS会把用户输入的数据储存到服务器端,这种XSS具有很强的稳定性,场景,黑客写下一篇包含恶意的javaScript的代码文章,然后访问该文章的用户,都会在他们的浏览器中执行这段恶意的JavaScript代码,这种叫做储存型的XSS攻击
  • DOM Based XSS,通过修改DOM节点形成的xss,从效果上也是反射性XSS,但是因为形成的原因比较特别

	
		
		
		
	

	
		

通过输入的内容形成超链接

构造数据
' onclick=alert(/xss/) //

//另一种利用方式,构造一个新事件,闭合掉标签,并插入新的html标签
'><'

在各自浏览器上f12,查看修改后的html内容

XSS攻击进阶

XSS攻击成功后,攻击者能够对用户当前浏览的页面植入恶意脚本,通过恶意脚本,控制用户的浏览器,这些用以完成各种具体功能的恶意脚本,被称为 XSS Payload(实际上就是JavaScript脚本

常见的案例cookie挟持

//先加载一个远程脚本
http:///www.a.com/test.htm?abc=">
                    
                    

你可能感兴趣的:(系统安全)