xss跨站脚本测试

上一篇 / 下一篇  2018-11-12 14:40:05 / 个人分类:xss

测试的时候会涉及到xss测试,下面简要整理下xss的知识

xss跨站脚本特点就是能注入恶意的HTML/JS代码到用户浏览器,劫持用户会话

常用alert来验证网站存在漏洞

如果确认存在漏洞,会随着注入的内容不同而产生危害

<script>alert("xss test");</script>

"/><script>confirm(document.cookie)

比如:窃取cookie,网页挂马,恶意操作,跨站蠕虫等等

分类:

反射型:非持久,一般为一个url,需要用户单击,在url中参数传入

持久型:常存在于评论等交互中,常见于<textarea>这种标签,可用于挂马钓鱼渗透等

简单的探测:

反射型:

1.验证网站是否过滤<>,在输入框输入test<testxss>,然后提交以后只显示test,说明<>可能被过滤

这时候需要进一步验证,查看网站源文件,搜索testxss,如果可搜索到,那就表示<>是可以写入的

2.然后输入<script>alert("xss test");</script>就是一个最简单的反射型xss攻击

持久型:

1. 一般在评论框中输入<script>alert("xss test");</script>以后,发现该语句不就没有被过滤

而且会被浏览器完整的显示出来,经过分析是因为别嵌入到<textarea>中了

所以可以先标签闭合,例如</textarea><script>alert("xss test");</script><textarea>

这种攻击比较严重,假如该评论需要后台管理员审核的话,随着其他xss语句就可以造成更大的危害

2下面这段代码是一个好的简洁的xss注入检测代码。在注入这段代码后,查看页面源代码寻找是否存在看起来像 <XSS verses <XSS这样的输入点从而判断是否存在xss漏洞。

'';!--"<XSS>=&{()}

 

可见,为了防止xss,字符过滤可以有效的较少被攻击的危害,但是xss攻击不止这么简单,

它还可以绕过服务端的xss过滤!!!待续

ps:常用的xss攻击语句列表

https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet 英文

http://drops.wooyun.org/tips/1955 中文

如果可以发现最基础的xss可以执行,那么就可以注入其他有害的操作或者获取信息

例如一些javacript事件:onerror,onfocus,onclick,ontimeout。。。

http://wenku.baidu.com/link?url=q9-QLRlKm788Hdn7F0-Fy2Ujqg8N995-DLk4cS_cXdds1h9lQIvtGf78KbUM55GtKiS6qTwd--Aj6YSsEh2YmiB4VZ611J3pwdj0AeSeApi

--------------------------------------------------------------------------

1.关键字拆分(Tab,空格,Enter)

2.属性值转码(把字母或者字符转换成ascii码值,例如t转码成&#116)

 


TAG:

 

评分:0

我来说两句

Open Toolbar