CSRF漏洞解释,原理
CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。
原理:
CSRF攻击攻击原理及过程如下:
1 | 1. 用户打开浏览器,访问受信任银行网站,输入用户名和密码请求登录网站; |
这是原理, 攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。
参考:https://www.jianshu.com/p/ffb99fc70646
防御方案
1、当用户发送重要的请求时需要输入原始密码
2、设置随机Token
3、检验 referer 来源,请求时判断请求链接是否为当前管理员正在使用的页面(管理员在编辑文章,黑客发来恶意的修改密码链接,因为修改密码页面管理员并没有在操作,所以攻击失败)
4、设置验证码
5、限制请求方式只能为 POST
随机token
Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。
SSRF漏洞解释,原理
参考:https://www.t00ls.net/articles-41070.html
SSRF(Server-Side Request Forgery 服务器请求伪造)
目标:从外网无法访问的内部系统
形成原因:服务端提供了从其他服务器获取信息的功能,但没有对内网目标地址做过滤与限制
挖掘:从web功能上寻找 参考:https://blog.csdn.net/kuiguowei/article/details/79070999
1)分享:通过URL地址分享网页内容
2)转码服务: 通过URL地址把原地址的网页内容调优使其适合手机屏幕浏览 http://101.201.64.215:8088/
3)在线翻译:通过URL地址翻译对应文本的内容。提供此功能的国内公司有百度、有道等
4)图片加载与下载: 通过URL地址加载或下载图片
5)图片、文章收藏功能
6)未公开的api实现以及其他调用URL的功能
私有地址:
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
上传图片、视频方式
1、本地上传
2、远程上传
利用各种协议进行探针:
http://192.168.80.134/phpmyadmin/
file://C:/www.txt
dict://192.168.80.134:3306/info
ftp://192.168.80.134:21
实验
Pikachu-CSRF实验
Pikachu-CSRF防御-token测试
SSRF漏洞本地靶场演示_HttpFileServer应用测试
参考:https://blog.csdn.net/weixin_30527323/article/details/94862967
http://192.168.80.134:8080/?search==%00{.exec|cmd.exe /c net user test1234 1234 /add.}
涉及资源
https://www.jianshu.com/p/ffb99fc70646 CSRF漏洞原理
https://www.t00ls.net/articles-41070.html SSRF漏洞
本地测试代码: