本系列题目来源:CTFSHOW: https://ctf.show/challenges
想搞好代码审计,必须要搞懂其中一些危险函数危险应用,以及过滤不足,
故以 CTF 来练习。
直接payload
过滤了 php ,所以不能用 php 开头的伪协议了。
可以使用 data协议·。
data:// — 数据(RFC 2397)
自 PHP 5.2.0 起 data:(? RFC 2397)数据流封装器开始有效
受限于 allow_url_fopenNo
受限于 allow_url_includeYes
payload:
过滤了 、,也就是 php 伪协议、data 协议。
可以包含日志文件getshell
抓包在 UA 字段换成想要的代码,然后包含访问,就 getshell了。
payload:
同样包含日志文件getshell,
这里把点过滤了,就不能包含日志文件了。
但是我们可以包含 session 文件。
poc:
把上述代码保存为html或者php文件后,在上传任意一个文件。抓包,在把cookie改为使得session文件为 ,然后设置开始一直上传。
紧接着抓取,
如图,包含文件,竞争,在没删除前访问到。
得到,接下来构造上传文件包得到flag.竞争。
https://blog.csdn.net/qq_46091464/article/details/108021053
https://www.freebuf.com/vuls/202819.html
这里出现了
说明上一关的利用 *** 已经不能使用了。
等等,。。。这两函数是在刚开始的,在接收函数之前,与上传临时文件也没关系,所以还是可以用上关 *** 的。。。。。。
在文件包含之前删掉/tmp下所有文件,但同样存在条件竞争。
同样条件竞争。
define('INCLUDE_PATH','/include/');
set_include_path(INCLUDE);
这样当我们引用 include 中的文件 如 conn.php, *** arty_config.php 时,我们直接可以这样写
include_once('conn.php');
include_once(' *** arty_config.php');
同样条件竞争。
总结一下条件竞争
不同变量死亡绕过。
就可以绕过/
正好是正好是6个字节,加2为,4的倍数,正好可以bse64解码。
构造
利用过滤器
构造:
成功回显phpinfo();
还可以使用 过滤器。
构造
虽然
但访问3.php,成功显示phpinfo页面。
可以参考这里
https://yanmie-art.github.io/2020/09/05/%E6%8E%A2%E7%B4%A2php%E4%BC%AA%E5%8D%8F%E8%AE%AE%E4%BB%A5%E5%8F%8A%E6%AD%BB%E4%BA%A1%E7%BB%95%E8%BF%87/
正则匹配黑名单。
发现过滤的还是比较多,但是没有过滤 : 那我们就可以使用PHP伪协议就是 这里使用的是 data://text/plain;base64,poc 其实和79差不多 只是注意的是编码成base64的时候要去掉 =
实际上就是去掉base64后的=,作为填充使用,不影响结果
kali里面然后分离出一张png图片
这里过滤了几个过滤器,常用的base64肯定不能用了。
因为header 定了,所以他给我们返回的是
这里直接
但奈何页面只返回一个上图页面,本想着另存为,但保存不了。
那么就抓包看看响应包了。
直接出flag了。
但是我刚开始是F12抓包的,看到的是 编码后的flag,懵逼了一会,才看出了是base64,但没想到为啥。。。。
应该是返回base64编码解码成视频。。。
找到解码直接就是flag.
同样可以使用
详情看这里 https://yanmie-art.github.io/2020/09/05/%E6%8E%A2%E7%B4%A2php%E4%BC%AA%E5%8D%8F%E8%AE%AE%E4%BB%A5%E5%8F%8A%E6%AD%BB%E4%BA%A1%E7%BB%95%E8%BF%87/
死亡绕过不同变量
这里过滤了 那就是 了。
过滤了不能使用 了,
但是还是可以使用
可以使用
https://www.php.net/manual/en/filters.convert.php
原理:对原有字符串进行某种编码然后再解码,这个过程导致最初的限制exit;去除。
构造
可以看到原先的死亡语句已经变成了
https://yanmie-art.github.io/2020/09/05/%E6%8E%A2%E7%B4%A2php%E4%BC%AA%E5%8D%8F%E8%AE%AE%E4%BB%A5%E5%8F%8A%E6%AD%BB%E4%BA%A1%E7%BB%95%E8%BF%87/
题目来源:
https://www.amanctf.com/challenges/detail/id/5.html
打开题目啥也没有,F12,看到有
页面显示
传参
文件包含,但是包含的文件被自动化加上了 后缀.
f12看到还有
访问是一个文件上传功能点。显然这道题考点文件上传+文件包含getshell。
测试这个功能点是可以上传的,但是只能上传jpg,gif等图片后缀格式。
做题做的有突然想到可以先文件包含看看题目源码。
可以看到文件包含匹配、并且长度不能大于70.最后include时还加上指定后缀。-
文件上传限制后缀和MIME类型。并且上传之后先检测最后一个后缀,然后传到目录。
这里做了好久百度可好久,考点是协议。
解法构造一句话php文件,然后压缩,然后改后缀为,然后上传,最后
https://www.cnblogs.com/Byqiyou/p/10187672.html---
中国通过世界粮食计划署向埃塞俄比亚提供援助 新华社亚的斯亚贝巴2月10日电(记者汪平)中国驻埃塞俄比亚大使馆10日代表中国政府向联合国世界粮食计划署埃塞俄比亚办事处捐赠200万美米,用于购买...
引言 根据百度知道网站推广的公司愈来愈多,殊不知,把握推广技巧的公司则根据百度搜索推广得到了非常好的推广效果,而不了解推广技巧的公司则尝遍了百度知道的酸心,那麼,怎样才可以利用百度知道做好网络推广?...
来源:数据猿 作者:jean 今天,周六,微信又一次玩“失踪”,大部分人跑微博上吐槽,微信登录不上! 小编和大家一样:关机、重启、卸载、重装!微信还是登不上(旋转、跳跃、我不停歇!) 于是,我开始慌了...
一、黑客推荐笔记本电脑(黑客用平板电脑还是笔记本电脑)方法总结 1、黑客一般使用什么笔记本电脑?你是不是买外星人本了,哈哈,主要是外星人本和其他的不一样,本身配置高,内部做功用料非常好,最主要的,它...
跟着经济程度的不绝成长,各行各业的飞速的成长,创业行业的不绝繁荣,不仅是饮食改良产生了改变。此刻的饮品行业成长也是雷霆万钧的变革着的。其实饮品行业的成长前景很是辽阔。那么与此同时,公共加盟商创业者也是...
5月11日消息,据国外媒体报道,赛门铁克本周四表示,黑客可利用Windows自动升级功能在用户计算机中植入恶意程序。 赛门铁克称,Windows自动升级模块中的文件传输组件“后台智能传输服务(BIT...