文章分类 - 网安 / upload-labs
文件上传的靶场
摘要:查看提示(条件竞争) 查看源码 先通过move_uploaded_file把文件保存,然后再去判断后缀名是否合法,合法就重命名,如果不合法再删除。 在多线程情况下,就有可能出现还没处理完,我们就访问了原文件,这样就会导致被绕过防护。下面是我随便找的之前的某一关,很明显看到之前代码是先改名,再移动保存
阅读全文
摘要:查看源码(条件竞争) 查看源码 msg = null; if (isset($_POST['submit'])){ // 获得上传文件的基本信息,文件名,类型,大小,临时文件路径 _FILES['upload_file']['nam
阅读全文
摘要:查看提示 查看源码 这里直接传图片马也是OK的。过程同pass-15。 扩展 exif_imagetype()函数是PHP中的内置函数,用于确定图像的类型。 用法: int exif_imagetype( string filename,该参数保存图
阅读全文
摘要:查看提示 查看源码 其实和14题没什么区别,就是从只读取图片的两个字节变成了getimagesize()检查是否为图片文件! 用第二种方法制马 所以这里直接传图片马也是OK的。 扩展 getimagesize() 函数用于获取图像大小及相关信息,成功返回一个数组,失败则返回 FALSE 并产生一条
阅读全文
摘要:查看提示 查看源码 准备图片马(2种方法) (1)需要用到利用windows 命令 格式:图片/b + 木马文件/a 生成的图片 copy:将文件复制或者是合并,/b的意思是以前边图片二进制格式为主,进行合并,合并后的文件依旧是二进制文件,实用于图像/声音等二进制文件。/a的意思是指定以ASCII格
阅读全文
摘要:查看提示(POST 00截断) 查看源码 这题也可以用%00截断,但是这次的save_path是用post方法得到的 先上传2.php,然后通过burp抓包,对其进行相应的修改 这次需要在二进制中进行修改,因为post不会像get对%00进行自动解码。 然后需要对其Hex进行修改 修改成功后,%就消
阅读全文
摘要:查看提示(GET 00截断) 查看源码 这里是一个白名单过滤,只允许上传,jpg,png,gif三种格式文件。 在进行move_uploaded_file前,$img_path是利用GET['save_path']和随机时间进行拼接的。 对于构造文件存储路径利用了get传入,导致服务器最终存储的文件
阅读全文
摘要:查看提示(双写后缀名绕过) 查看源码 利用str_ireplace()函数把不允许的后缀名都删除了,并且不区分大小写,典型双写绕过的例子,把上传的文件名中包含php的字符删去,所以我们可以使用双写后缀嵌套进行绕过。 用burp抓包,对后缀名进行双写即可 放包,访问文件即可
阅读全文
摘要:查看提示(双写后缀特殊符号绕过) 查看源码 这里是白名单检测,以上一关的点空格点的方法可以直接进行绕过 这题除了没有重命名,把所有的限制都加上了,所以这里也没法办法用解析漏洞。但是这里其实有一个很严重的漏洞,那就是没有做循环处理。如果后缀名为info.php. .,这样构造就可以成功绕过了 此时用b
阅读全文
摘要:查看提示 查看源码(Windows文件流特性绕过) 和前面一样,还原了代码,同时也减少了一行关键的代码。 少了这么一行 DATA', '', DATA,利用这个特性将用burp抓包,然后将后缀改为.p
阅读全文
摘要:查看提示(.绕过) 查看源码 和之前一样,只是换了一行代码,把去掉首尾空的代码加上,把去掉结果的.代码去掉了,所以用burp抓包修改后缀为.php.就可以成功绕过了 放包,然后访问即可
阅读全文
摘要:查看提示(空格绕过) 查看源码 没有对文件名的首尾去空 上传正常的php文件,burp抓包后在文件后缀后加一个空格 放包,然后去访问即可
阅读全文
摘要:根据网上资料某博主做的题目并贴出源码发现,做此关卡的时候是除去掉如下代码 所以实际只要除去上述代码即可绕过,这是本关卡作者考察的目的(实际上它就是Pass-06的关卡,写到后面才发现) 查看提示( 大小写绕过) 查看源码(源码和上一关差不多) (1)还是黑名单,且加上了.htaccess,但没有将后
阅读全文
摘要:先查看源码,发现过滤了许多后缀名 这关查看提示,可以知道黑名单中限制了很多后缀,但是没有.htaccess,我们可以上传.htaccess文件更改apache配置 htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。 通过htaccess文件,可以帮我们实现:网页3
阅读全文
摘要:这些靶场进去的页面都一样,所以先看一下提示 再分析一下源码 可以看到很多有中文备注的信息,这些就是防护规则 $deny_ext的原理就是所提到的"黑名单",黑名单过滤也是一种不安全的方式,黑名单中定义了一系列的不安全的扩展名,服务器在接收到文件后,与黑名单做对比,从而决定是否要过滤上传的文件。 意思
阅读全文
摘要:进入这题,发现和第一题长的一模一样,然后查看源码 源码加上提示,可以知道这是mime头检测,上传前需要点击右上角的清空上传文件,也可以自己在PHPstudy所对应的upload目录中删除上传的文件 此时上传文件用burp抓包 该关卡检测的就是这里,简单来说content-type就是来标识该文件是个
阅读全文
摘要:题目描述 虽然在实站中,我们不可能看到后台源码,但现在是自己练习,可以看源码,对其源码进行分析,从而积累经验,当然,如果有经验了可以自己按照自己解题的思路来一步一步的尝试,从而知道后台过滤了什么。 可以看到是用JS来编写,这是基于“JS本地验证”绕过,其实也就是:客户端js检查类型的上传漏洞是Web
阅读全文