(我知道你们都喜欢干货,所以也没亏待你们,请到文末吧,成果附件已上传~)
本文原创作者:Laimooc(原名xoanHn)
鄙人宗旨:
本人秉着爱学习爱恶搞爱研究爱进步并且遵纪守法的心态写下这篇文章,目的在于和各位信息安全爱好者共进步共繁荣。
脚本功能与优点:
一句话:记录用户对程序的访问日志,就这么简单。然而这个日志被人修改过:a、后缀名可控制 b、日志内容可控制 c、是否生成日志可控制 d、免杀
脚本研究综述:
1、利用xss打cookie的一点知识;
2、利用程序访问日志记录的一点知识;
3、利用php脚本的一些神奇特点(如单引号与双引号有何区别)等;
4、大家在修缮脚本的时候也可以放大你的脑洞就和打ctf那般,祝高升~
研究思路过程:
在某天的某个时刻,我辗转反侧,选择了起床学习,拿出了我以前修改的记录日志文件和以前的打cookie的脚本文件,开始了研究。
正常的日志文件一般就是:用如下FINECMS举例:访问控制、日志的特点、print。一个日志文件就是这么简单,大家也可以用这个文件进行修改。鄙人用的是另一个文件,日志的特点写在了一个类文件中。
如下我的:
本来这脚本研究出来有段时间了,但是一直在我的仓库里睡觉,今天就公之于众,让大家一块进步,大佬们有更好的思路,可以留言给我。
其实我这两个脚本之间还有很大的不足,但是交给大家修改吧:比如require_once 可以用include;class文件可以把功能都利用起来或者并入log文件;get换成post或者其他等。
Class文件完整版研究如下:
Log文件见附件,核心,哈哈。
脚本运用演示:
1】先来一张D盾 主机卫士 安全狗共同扫描的结果图示:
2】正常运行日志脚本
是不允许的。
3】带入访问控制参数访问日志脚本(log.php?c=1)
会发现有txt后缀的日志文件生成。
4】带入后缀名控制参数访问日志脚本(log.php?c=1&php=.php)
5】带入内容控制参数访问日志脚本{(log.php?c=1&php=.php)(POST:content=<?php phpinfo()?>)}
访问生成的脚本试试看(生成格式log_日期.txt.php: log_20171014.txt.php),对于日志生成的位置我是控制在了网站根目录
6】content参数用一句话试试看
Success。此处有挑战:生成的日志文件会被干掉,因为你直接php脚本里面是最直接的一句话,so。It’s Not bypass. 但是大家可以想想办法哦,加密?编码?包含?大马?
好了,研究到此结束。再见