“alert to win” writeup

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“alert to win” writeup相关的知识,希望对你有一定的参考价值。

地址:http://escape.alf.nu/

level 0: 注意补全,");alert(1)//
level 1: 通过添加反斜线使用来转义的反斜线变为字符,\\");alert(1)//
level 2: 双引号,反斜杠都被转义了……没想到办法,就搜了搜,原来可以直接不管双引号而闭合<script>标签,可能优先级不同吧,</script><script>alert(1)//
level 3: JSON.stringify() 方法可以将任意的 JavaScript 值序列化成 JSON 字符串。<a> 标签的href属性可执行js代码,尝试补全双引号,插入自己的js代码,直接插入会被转义,使用URLencode可绕过,%22),alert(1)(%22
level 4: 这个题需要仔细地观察正则式,注意到 " 仅仅替换了一次,<a>标签中不能有空白符比较难用,而 <img> 标签中的第二个匹配文本允许除换行符以外的任意字符,这个就比较好用了,注意闭合引号就好了,[[1|2"" onload=alert(1) "]]
level 5: 这是第4题的升级版," 全部被替换了,因此第4题的方法行不通了,对"进行编码也行不通,百思不得其解啊,无奈看了看评论,得到解答 [[1|http://onload=‘alert(1)‘]],原来是同时利用 <img> 标签跟 <a> 标签啊!看看输出的源码就会发现,成功绕过了 "
level 6: 以 # 作为分隔符输入两个参数,如果 # 前面是 Element 结果就是创建一个新的节点,具体什么节点由 # 后面指定,而如果 # 前面是 Comment,那么 # 后面就变成注释内容,闭合注释符号然后写入自己的代码即可, Comment#><script>alert(1)</script><!
level 7: 仍然是以 # 作为分隔符输入两个参数,对第一个参数做正则匹配,注意匹配的字符中包括单引号 ,这是本题的关键,使用单引号和注释符号来隔离 json 字符串中碍事的字符,就可以构造出来了,‘#‘;alert(1)//
level 8: 使用 Data URI,插入一个 html 文档,</script><script src=data:text/html,%61%6c%65%72%74(1)>

目前只做到 level 8,未完待续

?

以上是关于“alert to win” writeup的主要内容,如果未能解决你的问题,请参考以下文章

alert to win不完全攻略

“alert to win” writeup

alert to win 9

alert to win 4

20171027中alert to win 第13,14,15,16题

20171025中alert to win 脚本渲染自建