首页 > 其他分享 >CSRF和SSRF

CSRF和SSRF

时间:2023-07-27 22:23:44浏览次数:27  
标签:curlwrappers 请求 SSRF URL 漏洞 CSRF

CSRF和SSRF

一、CSRF

CSRF(Cross-Site Request Forgery)也叫做跨站请求伪造。当用户登录某个网站,并且点击了该网站上面含义恶意代码的链接,就会跳转到第三方网站,这个网站冒用已登录用户的身份,直接对服务器接口发起请求,获得敏感信息等操作。

1. CSRF漏洞的危害

1.修改账户信息

2.利用管理管账号,上传木马文件

3.传播蠕虫病毒(点击、扩散、点击......)

4.和其他攻击手段配合,实现攻击,比如XSS、SQL注入

2. 判断CSRF是否存在

1.怎么确定一个接口地址是否有CSRF漏洞呢?(如果从第三方网站直接调用接口成功)

2.具体怎么对一个接口进行检测,确定是否存在CSRF漏洞?(抓取正常通信请求的数据包,再请求一次)

3.自动检测CSRF漏洞的工具有哪些?(BurpSuite 、CSRFTester、https://github.com/s0md3v/Bolt、https://cloud.tencent.com/product/vss)

3. 防御方案

1.当用户发送重要的请求时需要输入原始密码

2.设置随机Token

3.检验referer来源,请求时判断链接是否为当前管理员正在使用的页面(管理员正在编辑文章,黑客发来恶意的修改密码链接,因为修改密码页面管理员并没有在操作,所以攻击失败)

4.设置验证码

5.限制请求方式只能为POST

二、 SSRF

SSRF(Server-Side Request Forgery)也叫做服务器端请求伪造。通过该漏洞可以入侵从外网无法访问的内部系统,因为服务器端提供了从其他服务器应用获取数据的功能并且没有对目标地址做过滤与限制。

1. 容易出现SSRF的地方

从web功能上寻找

  1. 分享:通过URL地址分享网页内容
  2. 转码服务:通过URL地址把源地址的内容调优使其适合手机屏幕流量
  3. 在线翻译:通过URL地址翻译对应文本的内容。提供此功能的国内公司有百度、有道等
  4. 图片加载与下载:通过URL地址加载或下载图片
  5. 图片、文章收藏功能
  6. 未公开的api实现以及其他调用URL功能。

从URL关键字中寻找

使用谷歌语法搜索关键字:share/wap/url/link/src/source/target/u/3g/display/sourceURI/imagrURL/domain

验证

1.基本判断法(排除法):burp suite抓包,右键打开图片

容易引起SSRF的漏洞

协议 作用 payload
file 查看文件 curl -v 'file:///etc/passwd'
dict 探测端口 http://localhost/ssrf/ssrf1.php?url=dict://127.0.0.1:3306
gopher 反弹shell curl -v
curl_exec() 执行cURL会话
file_get_contents() 将整个文件读入一个字符串
fsockopen() 打开一个网络连接或者一个Unix套接字连接

各种编程语言支持的协议

PHP Java curl Perl ASP.NET
http
https
gopher with curlwrappers before JDK 1.7 before7.49.0不支持 before version 3
tftp with curlwrappers × before7.49.0不支持 × ×
dict with curlwrappers × × ×
file
ftp
pop3 with curlwrappers × ×
rstp with curlwrappers
smb with curlwrappers
smtp with curlwrappers × × ×
telnet with curlwrappers × × ×
imap with curlwrappers × ×
ssh2 受限于allow_url_fopen × × 受限于Net-SSH2 ×

2. SSRF的危害

1.扫描资产

2.获取敏感信息

3.攻击内网服务器

4.访问大文件,造成溢出

5.通过Redis写入WebShell或建立反弹连接

3. 预防SSRF

1.禁用协议

2.限制请求端口

3.设置URL白名单

4.过滤返回信息

5.统一错误信息

标签:curlwrappers,请求,SSRF,URL,漏洞,CSRF
From: https://www.cnblogs.com/-andrea/p/17586258.html

相关文章

  • apache2 静态文件 csrf 错误
    第一步安装header模块sudoaptupdatesudoaptinstallapache2sudoa2enmodheaders第二步apache2配置过滤<FilesMatch"\.(jpg|png|css|js)$"><IfModulemod_headers.c>HeadersetAccess-Control-Allow-Origin"*"</IfMod......
  • SSRF
    简介SSRF(Server-SideRequestForgery:服务器端请求伪造)是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF是要目标网站的内部系统。(因为他是从内部系统访问的,所有可以通过它攻击外网无法访问的内部系统,也就是把目标网站当中间人原理攻击者通过控制内......
  • 攻防世界SSRF_ME
    首先看一下md5截断:substr(md5(captcha),-6,6)=="4c3d26",表示从字符串倒数第6位开始,往后截取6位captcha是验证码的意思,一般是数字,所以可以直接爆破数字importhashlibforiinrange(1000000):ifhashlib.md5(str(i).encode()).hexdigest().endswith('15f494'):......
  • 104.什么是CSRF攻击如何防范CSRF攻击
    104.什么是CSRF攻击?如何防范CSRF攻击?CSRF攻击指的是跨站请求伪造攻击,攻击者诱导用户进入一个第三方网站,然后该网站向被攻击网站发送跨站请求。如果用户在被攻击网站中保存了登录状态,那么攻击者就可以利用这个登录状态,绕过后台的用户验证,冒充用户向服务器执行一些操作。C......
  • SSRF
    参考:https://xz.aliyun.com/t/6235https://portswigger.net/web-security/ssrf0x01SSRF漏洞基础学习1、SSRF概述​ SSRF(Server-SideRequestForgery:服务器端请求伪造)是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF是要目标网站的内部系统。......
  • [第三章 web进阶]Python里的SSRF
    一、运行靶机 发现没有有效界面信息,这个时候查看靶机说明信息,在说明信息里面明确提到访问容器内部的8000端口和urlpath/api/internal/secret即可获取flag 二、根据提示信息访问url由于提示信息中提到urlpath,则可以尝试设置参数名为url?url=http://127.0.0.1:8000/......
  • (ssrf)服务器端请求伪造漏洞总结
    服务器端请求伪造原理:服务端代理用户对用户输入的URL无条件发起请求,并将response返回给用户。用户可以填写内网的任意IP以及端口,用来进行内网嗅探;一般情况下,SSRF攻击的目标是从外网无法访问的内部系统危害大,比较常用,杀伤力非常大,和log4j2差不多是一种由攻击者构造形成由服务......
  • django中使用form表单或者ajax提交数据时如何验证csrftoken
    使用form表单来提交数据时,如何验证csrftokenajax提交数据时验证csrftoken在需要提交的html页面引入以下js文件就行引入csrf.js文件<scriptsrc="{%static'js/csrf.js'%}"></script>文件内容:/***根据cookie的name获取对应的值*@paramname*@returns{null}......
  • Jmeter访问网站返回403(CSRF verification failed. Request aborted.)
    django网站自带CSRF校验,所以jmeter直接请求时会出现校验不通过的情况一、CSRF校验CSRF是指跨站请求伪造,CSRF攻击的流程大概是我们登录网站A后存在本地的cookie,之后打开了另一个危险网站B,这个网站B使用本地cookie向网站A发起请求(该请求不是用户主动发起,是个恶意请求),网站A误以为是......
  • 跨站请求伪造攻击CSRF(四)
    一、跨站请求伪造攻击概述 跨站请求攻击(Cross-siterequestforgery),是指攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证过的网站并运行一些操作。用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。跟跨网站脚本XSS相比,XSS利用的是用户对指定网......