DVWA系列之24 high级别上传漏洞

简介:

最后再来分析high级别的代码:

image

这里首先有一条语句需要理解:

$uploaded_ext = substr($uploaded_name, strrpos($uploaded_name, '.') + 1);

在这条语句里,首先利用strrpos() 函数来查找“.”在变量$uploaded_name中出现的位置,然后将得到的数值加1,最后利用substr()函数从变量$uploaded_name的指定位置截取部分字符串。

总之,这条语句的作用就是从我们所上传的文件名中截取出扩展名部分。

接下来就用if语句来判断这个扩展名是否是大写或小写的jpg/jpeg,如果不是的话则不允许上传,因而这里就是定义了一份白名单,这也是安全性比较高的一种防御措施。

最后总结一下,如果要挖掘上传漏洞,那么就可以在网页代码中搜索$_FILES这个用于接收上传文件的变量,或是搜索move_uploaded_file这个用于执行上传操作的函数,然后再分析是否采取了过滤措施。

上传漏洞作为一种主流的攻击方式,其形式是非常多样的,单纯就DVWA中这种上传漏洞而言,定义白名单就是一种不错的防御方式。



本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1732397

相关文章
|
5月前
爆破、批量PoC扫描工具 -- POC-T
爆破、批量PoC扫描工具 -- POC-T
35 0
|
Web App开发 移动开发 安全
WordPress插件wp-file-manager任意文件上传漏洞(CVE-2020-25213)
WordPress插件WPFileManager中存在一个严重的安全漏洞,攻击者可以在安装了此插件的任何WordPress网站上任意上传文件并远程代码执行。
486 1
|
存储 移动开发 开发框架
关于 SAP UI5 应用附件上传的病毒扫描功能 virus scan profile
关于 SAP UI5 应用附件上传的病毒扫描功能 virus scan profile
|
安全 PHP
ctfshow-萌新-web10( 利用命令执行漏洞获取网站敏感信息)
ctf.show 萌新模块 web10关,这一关考察的是命令执行漏洞的利用,闯关者需要知道3个以上PHP命令执行函数的使用,推荐使用 passthru()
240 0
ctfshow-萌新-web10( 利用命令执行漏洞获取网站敏感信息)
|
安全 Oracle 前端开发
(CVE-2018-2894)Weblogic任意文件上传漏洞复现 文末附演示视频
(CVE-2018-2894)Weblogic任意文件上传漏洞复现 文末附演示视频
245 0
|
安全 应用服务中间件
Weblogic 漏洞批量扫描工具
Weblogic 漏洞批量扫描工具
|
移动开发 安全 关系型数据库
Weblogic任意文件上传漏洞(CVE-2018-2894)复现
Weblogic任意文件上传漏洞(CVE-2018-2894)复现 漏洞背景 WebLogic管理端未授权的两个页面存在任意上传getshell漏洞,可直接获取权限。
3504 0
|
数据安全/隐私保护
DVWA-CSRF-low级别
是一个修改密码的页面 , 输入两次相同的密码即可修改密码 , 我们先看源码 , 获取了输入框的密码后 , 从Cookie中获取了当前登录的用户名 , 就直接修改密码 , 修改之前并没有验证用户身份
114 0
DVWA-CSRF-low级别
|
安全 PHP
ctfshow-萌新-web9( 利用命令执行漏洞读取网站敏感文件)
ctf.show 萌新模块 web9关,这一关考察的是命令执行漏洞的利用方式,使用PHP的命令执行函数执行系统命令,读取网站根目录下的配置文件,获取flag
476 0
ctfshow-萌新-web9( 利用命令执行漏洞读取网站敏感文件)
|
安全
ctfshow-萌新-web11( 利用命令执行漏洞获取网站敏感文件)
ctf.show 萌新模块 web11关, 这一关考察的是命令执行漏洞的利用, 源码中过滤了一部分命令执行函数和文件查看的命令, 推荐使用 passthru()函数配合 more命令获取敏感文件中的flag
375 0
ctfshow-萌新-web11( 利用命令执行漏洞获取网站敏感文件)