分类: C/C++
2011-09-12 10:45:08
成为历史或即将成为历史的-moz-binding(FF)、expression(IE)、@import(IE)、background属性里的javascript伪协议等带来的跨站攻击,有些还在疯狂的跑啊,比如expression,IE8就已经放弃了它。
等到哪天CSS3流行止来了,相应的攻击技巧也会熟练止来,随灭CSS3与用户界面的交互性变强,新的攻击向量也就来了。CSS3增加了属性选择符,利用这个的攻击思道可以看下面的PPT。下面是CSS3选择符的列表:
选择符类型 表达式 描述
子串匹配的属性选择符 E[att^=“val”] 匹配具有att属性、且值以val开尾的E元素
子串匹配的属性选择符 E[att$=“val”] 匹配具有att属性、且值以val结尾的E元素
子串匹配的属性选择符 E[att*=“val”] 匹配具有att属性、且值中含有val的E元素
结构性伪类 E:root 匹配文档的根元素。在HTML中,根元素永近是HTML
结构性伪类 E:nth-child(n) 匹配父元素中的第n个子元素E
结构性伪类 E:nth-last-child(n) 匹配父元素中的倒数第n个结构子元素E
结构性伪类 E:nth-of-type(n) 匹配同类型中的第n个同级兄弟元素E
结构性伪类 E:nth-last-of-type(n) 匹配同类型中的倒数第n个同级兄弟元素E
结构性伪类 E:last-child 匹配父元素中最后一个E元素
结构性伪类 E:first-of-type 匹配同级兄弟元素中的第一个E元素
结构性伪类 E:only-child 匹配属于父元素中唯一子元素的E
结构性伪类 E:only-of-type 匹配属于同类型中唯一兄弟元素的E
结构性伪类 E:empty 匹配没有任何子元素(包括text节点)的元素E
目标伪类 E:target 匹配相关URL指向的E元素
UI元素形态伪类 E:enabled 匹配所有用户界面(form表单)中处于可用形态的E元素
UI元素形态伪类 E:disabled 匹配所有用户界面(form表单)中处于不可用形态的E元素
UI元素形态伪类 E:checked 匹配所有用户界面(form表单)中处于选中形态的元素E
UI元素形态伪类 E::selection 匹配E元素中被用户选中或处于高亮形态的部分
否定伪类 E:not(s) 匹配所有不匹配简单选择符s的元素E
通用兄弟元素选择器 E ~ F 匹配E元素之后的F元素
在CSS里停止CSRF呢?至少我在使用,可以这样:
发止一个get型的CSRF攻击:)。其实想想CSRF的攻击原理就可以很容易扩充CSRF使用面。比如:在flash9中,一些flash 9的组件,比如UILoader、ScrallPane等都有source属性。我们是可以设置其source为某个具有“CSRF性质”的URL,然后发止get型的CSRF攻击。