前序

首先欢迎来到上传漏洞靶场,由于本人比较菜,请大家阅读时尽量理解一下…
那么本文主要是针对新人,会详细的讲述怎么做,如何实现一些功能,如有不足,希望各位在文章评论处留言…

使用工具

  • 火狐浏览器
  • BurpSuite
  • 蚁剑

    来点介绍吧

    可能读者会和我一样,对于什么是上传漏洞不是很了解,那我们一起去了解一下

    upload-labs是什么?

    upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。

上传漏洞会造成什么危害???

上传漏洞与SQL注入或 XSS相比,其风险更大,如果 Web应用程序存在上传漏洞,攻击者上传的文件是Web脚本语言,服务器的Web容器解释并执行了用户上传的脚本,导致代码执行。如果上传的文件是Flash的策略文件crossdomain.xml,黑客用以控制Flash在该域下的行为。
如果上传的文件是病毒、木马文件,黑客用以诱骗用户或者管理员下载执行。如果上传的文件是钓鱼图片或为包含了脚本的图片,在某些版本的浏览器中会被作为脚本执行,被用于钓鱼和欺诈。甚至攻击者可以直接上传一个webshell到服务器上 完全控制系统或致使系统瘫痪(转载于bilibili

文件上传漏洞原理

大部分的网站和应用系统都有上传功能,而程序员在开发任意文件上传功能时,并未考虑文件格式后缀的合法性校验或者是否只在前端通过js进行后缀检验。
这时攻击者可以上传一个与网站脚本语言相对应的恶意代码动态脚本,例如(jsp、asp、php、aspx文件后缀)到服务器上,从而访问这些恶意脚本中包含的恶意代码,进行动态解析最终达到执行恶意代码的效果,进一步影响服务器安全。(转载于bilibili

了解完这些后,那我们开始正文的学习吧…

准备小马

什么是小马?

一句话木马就是只需要一行代码的木马,短短一行代码,就能做到和大马相当的功能。为了绕过waf的检测,一句话木马出现了无数中变形,但本质是不变的:木马的函数执行了我们发送的命令。

开始准备…

创建文件,并写入一句话木马…
Pass-01教程 - 图1

Pass-01教程正文

首先进入其页面如下图所示:
Pass-01教程 - 图2

进入第一关进行查看,我们上传一个准备好的PHP文件进行测试,过程以及结果如下:
Pass-01教程 - 图3

Pass-01教程 - 图4

由此我们可以得出js限制了我们的文件后缀,查看提示后:
Pass-01教程 - 图5
我们可以初步得出结论:js对文件后缀名做了白名单限制,并且仅仅只在客户端

我们根据这些要整理一下如何绕过js,所以我准备了两个方法,供大家学习,选择

方法一:

找到调试器,删掉里面的js或者修改
Pass-01教程 - 图6

方法二:

这也是我采用的方法,绕过js检测;

思路:

首先上传题目要求的后缀文件,在文件中写入一句话木马,开启BurpSuite进行抓包处理,更改其后缀,在此之后用蚁剑或者菜刀进行连接…

开始上传:

编辑好内容后,更改其后缀,改为.png,如图所示进行操作:Pass-01教程 - 图7

上传时需要打开BurpSuite进行抓包:
Pass-01教程 - 图8
抓包后根据箭头指向的位置改变其后缀,改为php后,在进行释放,从而达到绕过js白名单的目的;

成功绕过后,显示为:
Pass-01教程 - 图9

打开图片链接:
Pass-01教程 - 图10

这时候轮到蚁剑登场了,使用蚁剑添加数据并连接:
Pass-01教程 - 图11
成功进入!
Pass-01教程 - 图12