zoukankan      html  css  js  c++  java
  • CTFHUB-技能树-Web-SSRF(上)

    SSRF(服务端请求伪造)
    形成原因:由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制,导致攻击者可以传入任意的地址来让后端服务器对其发送请求,并返回对该目标地址请求的数据
    在PHP中:某些函数的不当使用会导致SSRF:如file_get_conntents()、fsockopen()、curl_exec()
    file_get_conntents():把文件写入字符串,当url是内网文件时,会先把这个文件的内容读出来再写入,导致了文件读取
    fsockopen():实现获取用户指定url的数据(文件或者html),这个函数会使用socket跟服务器建立tcp连接,传输原始数据
    curl_exec:通过file、dict、gopher三个协议来进行渗透
    危害:获取web应用可达服务器服务的banner信息,以及收集内网web应用的指纹识别,根据这些信息再进行进一步的渗透
    攻击运行在内网的系统或应用程序,获取内网系统弱口令进行内网漫游,对有漏洞的内网web应用实施攻击获取webshell
    利用由脆弱性的组件结合ftp://、file://、dict://等协议实施攻击
    漏洞发生点:
    通过url地址分享网页内容
    文件处理、编码处理、转码等服务
    在线翻译
    通过url地址加载与下载图片
    图片、文章收藏功能
    未公开的api实现及其他调用url的功能
    网站邮箱收取其他邮箱邮件功能
    从url关键字寻找:share,wap,url,link,src,source,target,u,3g,display,sourceURL,imageURL,domain等

    这一部分关于

    内网访问

    伪协议读取文件

    端口扫描

    内网访问
    根据提示

    构造:

    得到flag

    伪协议读取文件
    提示

    file伪协议上一篇讲过了用法,此题运用file协议读取
    构造:

    端口扫描
    提示

    这题运用了dict协议
    dict协议运用:
    curl:一种命令行工具,作用是发出网络请求,获取数据
    curl -v ‘dict://ip:端口’:显示HTTP通信的整个过程,包括端口连接和HTTP request头信息
    dict协议是一个字典服务器协议,通常用于让客户端使用过程中能够访问更多的字典源,在SSRF中如果可以使用此协议,就可以轻易获取目标服务器端口上运行的服务版本等信息(远程利用)

    用bp的intruder模块进行测试


    ③start attack
    扫描出8237端口,注意这里每个人测出来的端口会不同,最后构造payload访问得到flag

  • 相关阅读:
    Spring Boot教程(三十)使用Spring-data-jpa(1)
    Spring Boot教程(二十九)使用JdbcTemplate操作数据库
    Spring Boot教程(二十八)通过JdbcTemplate编写数据访问
    Spring Boot教程(二十七)整合Spring Security
    Spring Boot教程(二十六)使用Spring Security安全控制
    Spring Boot教程(二十五)返回JSON格式
    gl 绘制多边形的函数解析 分类: OpenGL(转)
    OpenGL超级宝典笔记——画三角形(转)
    OpenGL_Qt学习笔记之_03(平面图形的着色和旋转)(转)
    OpenGL超级宝典笔记——贝塞尔曲线和曲面(转)
  • 原文地址:https://www.cnblogs.com/Web-Fresher/p/13723103.html
Copyright © 2011-2022 走看看