web安全的关键点

来源:互联网 发布:核工业湖州勘察院 知乎 编辑:程序博客网 时间:2024/06/05 03:26

客户端脚本安全与浏览器特性息息相关。浏览器以同源策略为基础,只有加深对同源策略的理解才能抓住浏览器安全的本质。


数据与指令

数据有哪些

浏览器打开的网站是数据的显示,其中有:

  • 服务端存储的(如:数据库、内存、文件系统等)
  • 客户端存储的(如:本地Cookies,Flash Cookies等)
  • 传输中的(如:JSON数据、XML数据等)
  • 文本数据(如:HTML、JavaScript、CSS等)
  • 多媒体数据(如:Flash、MP3等)
  • 图片数据

安全问题的产生

如果数据在流动的时候被污染就会引发安全。
数据的存储、传输、呈现需要执行指令,指令被解释执行产生了对应的数据内容。常见指令有:
SQL指令、JavaScript指令、HTML指令。
正常的数据内容被注入指令内容,并且在解释的过程的中,注入的指令能够被独立执行
如:SQL注入,XSS跨站脚本攻击

浏览器的同源策略

不同域的客户端脚本在没有明确授权的情况下,不能读写对方的资源。

不同域或同域

同域要求两个占=站点同协议、同域名、同端口

客户端脚本

客户端脚本主要指JavaScript、ActionScript,以及JavaScript和ActionScript都遵循的ECMAScript脚本标准。Flash提供通信接口,使得这两个脚本语言可以很方便的互相通信。客户端的攻击几乎都是基于这两个脚本语言进行的,其中JavaScript最为广泛。

授权

黑客站点上的客户端脚本通过AJAX跨域访问

读写权限

资源

只要是数据都可以认为是资源。同源策略里的资源是指web客户端的资源。一般资源包括:

  • HTTP消息头
  • 整个DOM树
  • 浏览器储存(Cookies、Flash Cookies、localStorage等)

信任与信任关系

  • 服务器与服务器
  • 网站与网站
  • web服务的不同子域
  • web层面与浏览器第三方插件
  • web层面与浏览器特殊API
  • 浏览器特殊API与本地文件系统
  • 嵌入的Flash与当前的DOM树
  • 不同的协议之间

社会工程学

伪装攻击以欺骗目标用户
常用的社工辅助技巧:Goole Hack、SNS垂直搜索、各种收集的数据库集合查询等。

0 0