搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
羊村懒王
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
23种Java设计模式
2
2024中国AIGC广告营销产业全景报告
3
软考高项-信息网络安全模拟题_公钥基础设施(pki)也称公开密钥基础设施。以下不属于pki的组成的是()
4
micromamba快速安装(windows版本)_windows mamba
5
上海市计算机学会竞赛平台2021年5月月赛丙组数球数_上海计算机学会竞赛平台五月竞赛题解
6
抖音seo源码,抖音seo优化系统技术一手源头搭建开发_抖音权重查询网站源码
7
46.整理华子面经+笔试+排序算法_华子面试
8
【C语言数据结构】双向循环链表_c语言双向循环链表
9
Wireshark抓包——TCP协议分析_wireshark tcp
10
十二个常见的Web安全漏洞总结及防范措施_web应用常见漏洞
当前位置:
article
> 正文
任意文件下载_若依 文件下载验证
作者:羊村懒王 | 2024-05-19 23:07:36
赞
踩
若依 文件下载验证
https://bbs.ichunqiu.com/thread-23587-1-1.html
前言
本次分享的是web安全漏洞中的任意文件下载,前段时间比较忙,今天抽空写了个简单的下载功能,代码运行的时候有点问题,但是不影响下载程序运行,我也就懒得改了,多多包含哈。
任意文件下载漏洞描述
一些网站由于业务需求,可能提供文件查看或下载的功能,如果对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意的文件,可以是源代码文件、敏感文件等,就会造成任意文件下载漏洞。
任意文件下载漏洞的表现形式
任意文件下载总结来说,有以下三种表现形式:
1、存在文件下载功能
网站文件下载功能形式多种多样,页面功能大致如下:
Url表现形式如下:
http://localhost:8080/javatest/downloadFile.action?jpgPath=/download/&jpgName=test.jpg
如果单从参数命看,表现形式多种多样,当渗透时遇到以下类型可以稍加注意:
&filepath=
&relpath=
&path=
&url=
&name=
&filename=
&src=
&dir=
&data=
......
2、文件名参数可控,并且系统未对参数作过滤或者过滤不全
文件名参数就是要下载的文件名,可以用brupsuite抓包看见,表现形式多种多样,大概如下:
在代码中的表现形式如下,此处文件路径和文件名都是从前端获取,然后执行下载操作:
3.文件内容输出或者保存在本地
当文件内容可被下载任意看见,就会造成任意文件读取漏洞,不在此处讨论,当文件保存后,能被攻击者看见内容,就会造成任意文件下载漏洞,表现形式如下:
下载功能代码如下:
任意文件下载漏洞验证
此处代码存在任意文件下载漏洞,表现形式如下:
当文件正常下载时,brupsuite截图如下:
此处替换文件名为“WEB-INF/web.xml”,下载系统配置文件:
可以看到此时下载文件失败,返回不一样的结果。
但是可以添加“../”跳转目录:
可以看出上面返回web.xml问内容,表示下载成功(若返回下载失败,可以继续添加“../”,直到下载成功,若依旧不成功,可能文件不存在或者无漏洞,自己多试试)。
也可以输入很多“../”,直接回溯到根目录,下载可能存在的系统文件:
部分敏感文件如下:
Linux:
/root/.ssh/authorized_keys
/root/.ssh/id_rsa
/root/.ssh/id_ras.keystore
/root/.ssh/known_hosts
/etc/httpd/conf/httpd.conf
/root/.bash_history
/root/.mysql_history
/proc/self/fd/fd[0-9]*(文件标识符)
/proc/mounts
/porc/config.gz
/etc/passwd
/etc/shadow
/etc/my.cnf
Windows:
C:\Program Files\mysql\my.ini //Mysql配置
C:\Program Files\mysql\data\mysql\user.MYD //Mysql root
C:\Windows\php.ini //php配置信息
C:\Windows\my.ini //Mysql配置信息
C:\boot.ini //查看系统版本
C:\Windows\System32\inetsrv\MetaBase.xml //IIS配置文件
C:\Windows\repair\sam //存储系统初次安装的密码
...
任意文件下载漏洞的修复
漏洞修复可以根据自身业务需要修改,大致修复方法如下:
1、对文件下载进行过滤,过滤掉“./”、“../”、“%”等,代码如下:
当输入“../”时:
但是可以构造完整路径,下载任意文件:
2、对下载的文件路径进行严格控制,只允许下载某部分目录下的文件:
2、对下载文件后缀名做严格控制
程序员学习公众号:
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
【wpsshop博客】
推荐阅读
article
中期1“
小学
数学
教材
解读策略研究”前期
教师
问卷
分析
报告_中
小学
数学
教学
衔接
教师
问卷及
分析
...
书中大量得习题也就是学生在校内与校外生活中亲身经历得,如“快乐得星期天”(认识时间)、电影院找座位(位置)、邮递员送信(...
赞
踩
article
Flink
CDC 实时同步MySQL
数据
到
Kafka
_
flinkcdc
读取
mysql
数据
到kaf...
flink cdc底层就是通过监控
mysql
的binlog日志,实时捕获到一个表或多个表的变更;所以必须开启
mysql
的...
赞
踩
article
Android
获取
当前
系统日期和
时间
_
android
获取
当前
时间
...
/取得
当前
时间
的年月日 时分秒。//月份前面加1,是因为从0开始计算,需要加1操作。// 设置Time Zone资料。/...
赞
踩
article
RabbitMQ
的
5种
模式
与
Activemq
的
2种
模式
...
一、
RabbitMQ
的
5种
模式
1 简单
模式
Hello World 功能:一个生产者P发送消息到队列Q,一个消费者C接收生...
赞
踩
article
Systemd
进程
管理相关...
2019独角兽企业重金招聘Python工程师标准>>> ..._ioschedulingclas...
赞
踩
article
10.1
K
star
!牛逼了!各类开源技术
知识库
速查表
,
推荐人手一份!...
1、前言在当今信息爆炸的时代
,
知识的获取、整理和应用显得尤为重要。随着个人职业发展和学习需求的不断提升
,
搭建一个个人知识...
赞
踩
article
【
github
actions
】
部署
前端
项目
_宝塔面板
部署
github
项目
...
对于
前端
,
部署
一个网站,当我们对网站内容进行修改后再次进行
部署
时,仍然需要手动将打包后的文件上传到服务器,这个过程比较繁...
赞
踩
article
Kafka
源码
分析
-
目录
(收藏关注不迷路)
_
kafka
源码
分析
系列
...
Kafka
源码
分析
目录
_
kafka
源码
分析
系列
kafka
源码
分析
系列
...
赞
踩
article
c++
中超级好用的
json
库
--
json
for
morden
c++
_
c++
json
库
...
c++
中超级好用的
json
库
json
for
morden
c++
_
c++
json
库
c++
json
库
...
赞
踩
article
2021-08-28培训web作业一
sqli
-labs_
hint
:
your
input
is fi...
1-20的第4关联合注入对于这个1-20关,不是说选一个吗?我选第4关:基于报错的双引号注入。输入id=1’发现是”)闭...
赞
踩
article
redhat
7.8配置本地
yum
源
_
redhat
挂载
iso
为
yum
源
...
本方法适用于Redhat7系列本地
yum
源
的配置测试环境:VMware Workstation 16; Redh...
赞
踩
article
Computer
Vision
代码_mva
labview
...
Jia-Bin的
Computer
Vision
Resource的内容(纯copy 备份用)323个ItemTypeTo...
赞
踩
article
秋招
后
端
指导思想_
秋招
后
端
看重
项目
吗...
3.
后
端
工程师技术栈一个应届的
后
端
工程师所需要的具备的能力/经验分为四个级别:必备级:数据结构算法、Java语言基础、...
赞
踩
article
【
Spring
+
Spring
MVC+
Mybatis
】
SSM
框架
的
整合
、思想、工作原理和优缺点
的
略微讲...
SSM
框架
的
整合
、思想、工作原理和优缺点
的
略微讲解_ssm
框架
的
优点ssm
框架
的
优点 ...
赞
踩
article
一文看懂现代
Android
开发
最佳实践_
android
项目
gradle
引入
flow
...
What is MAD?MAD 的全称是 Modern
Android
Development , 它是一系列技术栈和工...
赞
踩
article
Rabbitmq
常用
的
五种
工作
模式
_
rabbitmq
在
工作
中
常用
的
模式
是哪种...
RabbitMQ
常用
的
五种
工作
模式
_
rabbitmq
在
工作
中
常用
的
模式
是哪种
rabbitmq
在
工作
中
常用
的
模式
是哪种 ...
赞
踩
article
linux
下
git
和
git
hub搭建使用教程_
kali
git
配置
git
hub...
一:
linux
下
git
和
git
hub搭建1、注册gihub账号:
git
hub官网:https://
git
hub.com/...
赞
踩
article
谈谈
tcp
慢
启动
与
拥塞
控制_
tcp
的
慢
启动
...
bbr 以 pacing 做
拥塞
控制,但对
慢
启动
机制并没有太大修正,反而完全适配了传统
慢
启动
,bbr startup 和...
赞
踩
article
zookeeper
原理篇-
Zookeeper
会话
机制...
上篇文章我们学习了
Zookeeper
的选举流程和FastLeaderElection选举算法的实现过程,了解了Zooke...
赞
踩
article
中学计算机课
小
课题
,
小
学
信息技术
学科
小
课题
结题
统计表
已
结题
23个一等奖3.doc......
小
学
信息技术
学科
小
课题
结题
统计表
已
结题
23个一等奖3.doc
小
学
信息技术
学科
小
课题
结题
统计表
已
结题
23 个 一等奖 ...
赞
踩
相关标签
java
开发语言
flink
mysql
kafka
android
大数据
运维
javascript
网络
ViewUI
前端
github
中间件
架构
后端
消息队列
c++
json
sql
php
linux
计算机视觉