web安全中的浏览器扩展

      浏览器扩展的作用

      采用浏览器扩展之后,很多之前在服务器的验证工作,可以在浏览器扩展里面实现,减小了服务器的承载负担,提高服务器的响应能力。另外,数据在浏览器扩展里面进行处理,比javascript或者html限制要隐蔽的多,客户端看不到扩展对数据是如何加工处理的。因此通过浏览器扩展入手查找web漏洞,往往效果不错


    常见的浏览器扩展技术

    java   java applet在jvm中运行

    flash   flash在flash虚拟机中运行,flash主要用户传输动画内容

    silverlight   运行在浏览器沙箱中提供精简的.net体验,C#是常用的开发语言


    攻击浏览器扩展的方法

    1. 拦截浏览器扩展请求和响应的数据,这种方法的好处是快速和简单,这种方法遇到的挑战和克服方法:

a. 通信数据很可能已经被加密或者模糊处理,或者采用了特有的序列化

java序列化的特征:Content-Type: application/x-java-serialized-object   burpsuite的dser插件可以将受到的java序列化数据转化为xml格式,xml格式的数据被修改之后再转化为序列化数据进行发送

flash序列化的特征:Content-Type: application/x-amf                 burpsuite支持对amf格式的序列化数据处理

silverlight序列化的特征:Content-Type: application/soap+msbin1   burpsuite的wcf插件可以支持对silverright格式的序列化处理

b. 只查看业务流量,可能会忽略一些关键逻辑

c. 正常使用拦截代理服务器的时候可能会遇到障碍,可能抓取的数据不全

            有时候虽然浏览器设置了使用代理服务器拦截流量,但是有时候可能是客户端组件http代理或者ssl有问题,实际上没有流量拦截。

    第一种情况是客户端组件由于没有调用浏览器的api自己发送了http请求,这种情况需要设置pc的host文件,同时代理服务器设置为支持匿名代理,并且自动重定向到正确的目标主机

    第二种情况是客户端组件可能不接受代理服务器提供的ssl证书。可以将代理服务器配置为使用一个主CA证书,并在计算机的可信证书库中安装该CA证书

    第三种情况是客户端组件有可能采用http通信方式之外的其它通信方式,这种情况可以使用网络嗅探器或者功能挂钩工具修改通信数据,例如Echo Mirage


     2. 反编译浏览器扩展,根据浏览器扩展的字节码生成浏览器扩展的源代码,进行分析

   


    

你可能感兴趣的:(web安全中的浏览器扩展)