APP渗透测试 头像上传漏洞检测与修复

简介: 多客户网站以及APP在上线运营之前都会对网站进行渗透测试,提前检测网站是否存在漏洞,以及安全隐患,避免因为网站出现漏洞而导致重大的经济损失,客户找到我们SINE安全做渗透测试服务的时候,我们都会对文件上传功能进行全面的安全测试,包括文件上传是否可以绕过文件格式,上传一些脚本文件像php,jsp,war,aspx等等,绕过上传目录,直接上传到根目录下等等的一些漏洞检测。

多客户网站以及APP在上线运营之前都会对网站进行渗透测试,提前检测网站是否存在漏洞,以及安全隐患,避免因为网站出现漏洞而导致重大的经济损失,客户找到我们SINE安全做渗透测试服务的时候,我们都会对文件上传功能进行全面的安全测试,包括文件上传是否可以绕过文件格式,上传一些脚本文件像php,jsp,war,aspx等等,绕过上传目录,直接上传到根目录下等等的一些漏洞检测。

0eb30f2442a7d9338a860318cf61a21673f0015a.jpeg

那什么是文件上传漏洞?我们SINE安全来给大家讲解一下:简单来说,文件上传就是可以上传一些文件到网站以及APP里,大部分的网站都只允许上传图片格式文件,以及文档类的文件,之所以要做渗透测试就是要检测该上传功能是否存在漏洞,程序源代码里有没有对POST过来的上传数据进行安全校验,以及文件后缀名的检查,有些客户网站并没有做安全校验,导致可以直接上传webshell(也叫网站木马后门)到网站中。


当文件上传功能出现漏洞就可以直接执行网站木马文件,该webshell可以对网站代码进行操作,上传,下载,编辑,以及数据库操作,执行恶意的远程代码到服务器中,都是可以的,相当于网站的管理员权限了,该漏洞的危害性较大。可能会导致用户的数据泄露,以及数据库被篡改。


根据我们SINE安全多年的渗透测试经验来看,客户网站存在文件上传漏洞的地方总结如下:


1.会员上传头像功能


7af40ad162d9f2d3dd7a870727fef2166227cc83.jpeg


2.上传文档功能


3.提交意见反馈+截图上传


4.添加文章的图片上传


2cf5e0fe9925bc31cb5ccf97cecdf5b4cb137050.jpeg


5.留言功能上传图片


aa64034f78f0f7361fed38c68447cb1ceac413f9.jpeg


存在的上传漏洞类型:文件扩展名绕过漏洞,以及文件解析漏洞,content-type绕过漏洞,文件名大小写绕过上传漏洞,文件头绕过漏洞,JS前端绕过上传漏洞,我们SINE安全渗透测试这么多客户当中,出现JS前端绕过漏洞频率最多,很多程序员在设计代码过程中,只对JS前端的访问用户做了安全校验,并没有对网站后端做安全校验,导致可以直接修改后缀名进行上传脚本文件。我们来举例看下:


adaf2edda3cc7cd9223fc26eb613593ab80e910b.jpeg


首先该上传功能在前台网站当中是公开的,任何一个注册的会员都可以上传,在更换头像这里,可以自定义选择图片进行上传,我们通过抓包截图post的数据包,并修改数据库里的filename值,将扩展名修改为jsp,php就可以直接上传到网站中。


关于渗透测试中文件上传漏洞的修复办法是:对文件上传的格式做白名单设置,值允许上传jpg,png,gif,等的图片格式文件,如果后缀名不是以上三种,直接返回上传失败,再一个对文件代码做安全校验,不仅仅是在JS里做判断,还要在后端做安全校验,对上传的目录地址进行锁定,指定上传的目录地址,对图片的文件夹目录做无执行脚本权限,防止运行JSP,PHP,ASP等脚本的webshell文件。网站前期上线之前一定要做渗透测试,全方位的检测网站存在哪些漏洞,提前修复,促使后期网站平台的发展有序进行,不会因为漏洞而导致业务终止。

相关文章
|
5月前
|
安全 Java 程序员
Web安全性测试系列(三)文件上传漏洞核心原理详解
Web安全性测试系列(三)文件上传漏洞核心原理详解
|
11天前
|
SQL 安全 关系型数据库
接上篇文章,在测试宝塔 WAF 的未授权访问漏洞时无意间还发现了一个 SQL 注入漏洞
接上篇文章,在测试宝塔 WAF 的未授权访问漏洞时无意间还发现了一个 SQL 注入漏洞,品相还不错,可执行任意 SQL 语句。 总之,吃了一惊,一个防 SQL 注入的工具居然也有 SQL 注入漏洞。 请看这段代码
330 0
|
2月前
|
SQL 安全 网络安全
【Web渗透测试】—Web漏洞
【Web渗透测试】—Web漏洞
|
2月前
|
监控 安全 算法
漏洞测试与防护:监控局域网络的软件实用指南(Swift)
在当今数字时代,使用监控局域网络的软件维护网络安全至关重要。为了保护局域网络免受潜在威胁,漏洞测试和防护措施是必不可少的。本文将介绍一种基于Swift编程语言的软件实用指南,帮助您监控局域网络并加强安全性。
200 0
|
3月前
|
安全 Shell Windows
#windowsxpsp3系统MS08-067漏洞测试
#windowsxpsp3系统MS08-067漏洞测试
21 0
|
3月前
|
安全 网络协议 Shell
#windowsxpsp3系统MS10-046漏洞测试
#windowsxpsp3系统MS10-046漏洞测试
29 0
|
3月前
|
安全 Windows
#windowsxpsp3系统MS12-020漏洞测试
#windowsxpsp3系统MS12-020漏洞测试
31 0
|
5月前
|
安全 小程序 测试技术
关于近期小程序测试的常见漏洞演示
本章节将为大家介绍一下小程序常见的漏洞的展示案例,包括支付业务逻辑漏洞、任意用户登录漏洞、水平越权漏洞等高危漏洞
|
6月前
|
iOS开发
scenePhase 的作用 -- 检测 APP 是否在后台
SwiftUI 提供了一个名为 `scenePhase` 的 环境变量,它在应用程序在前台、后台和非活动状态之间切换时会自动更新。你可以在 App 结构体本身或任何 SwiftUI 视图中观察这些状态的变化。
scenePhase 的作用 -- 检测 APP 是否在后台
|
9月前
|
SQL 安全 前端开发

相关产品

  • 云迁移中心