广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP-代码执行函数-命令执行函数
  • 444
分享到

PHP-代码执行函数-命令执行函数

php开发语言网络安全 2023-09-09 19:09:48 444人浏览 独家记忆
摘要

目录 代码执行函数: 1.eval()函数 2.assert()  函数 3.call_user_func()函数  4- create_function()函数  5- array_map()函数 6- call_user_func_ar

目录

代码执行函数:

1.eval()函数

2.assert()  函数

3.call_user_func()函数

 4- create_function()函数

 5- array_map()函数

6- call_user_func_array() 函数

7- array_filter()函数

8、usort()、uasort() 函数

9- preg_replace() 函数

 命令执行函数

1- system()函数

 2-passthru()函数

3- exec()函数 

 4- shell_exec()函数

 5- popen()/proc_open()函数

6- 反引号 ``函数 

 代码执行与命令执行区别

代码执行与命令执行的不同:


代码执行函数:

主要有(9个):eval(),  assert(),  call_user_func(),  create_function(), array_map() call_user_func_array(), array_filter(), uasort(), preg_replace()

1.eval()函数

eval() 函数把字符串按照 PHP 代码来计算命令执行:cmd=system(whoami);

注意这里是POST,所以以火狐的插件HackBar作实验:

 

2.assert()  函数

与eval类似,assert函数是直接将传入的参数字符串当成php代码直接    命令执行:cmd=system(whoami)    菜刀连接密码:cmd

 

3.call_user_func()函数

函数的第一个参数是被调动的函数,剩下的参数(可有多个参数)是被调用函数的参数,也可以这么说传入的参数作为assert函数的参数    命令执行:cmd=system(whoami)    菜刀连接密码:cmd

//post:fun=assert¶=phpinfo();

 

 

 

 4- create_function()函数

创建了一个匿名函数,如果没有严格对参数传递进行过滤,攻击者可以构造特殊字符串传递给create_function()执行任意命令。创建匿名函数执行代码执行命令和上传文件参考eval函数(必须加分号)。

 

//post:func=phpinfo();

 

 

 5- array_map()函数

array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。    命令执行Http://localhost/123.php?func=system   cmd=whoami    菜刀连接http://localhost/123.php?func=assert   密码:cmd

 

6- call_user_func_array() 函数

将传入的参数作为数组的第一个值传递给assert函数    cmd=system(whoami)    菜刀连接密码:cmd

 

7- array_filter()函数

用回调函数过滤数组中的元素:array_filter(数组,函数)    命令执行func=system&cmd=whoami    

 

8、usort()、uasort() 函数

usort() 通过用户自定义的比较函数对数组进行排序。uasort() 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联 。php环境>=<5.6才能用    命令执行:http://localhost/123.php?1=1+1&2=eval($_GET[cmd])&cmd=system(whoami);    

 

9- preg_replace() 函数

preg_replace('正则规则','替换字符','目标字符')执行命令和上传文件参考assert函数(不需要加分号)。将目标字符中符合正则规则的字符替换为替换字符,此时如果正则规则中使用/e修饰符,则存在代码执行漏洞。这里可以使用chr()函数转换ASCII编码来执行代码。 #phpinfo();eval(chr(112).chr(104).chr(112).chr(105).chr(110).chr(102).chr(111).chr(40).chr(41).chr(59))

 

 

 命令执行函数

主要有(7个):system(), passthru(), exec(), shell_exec(),popen()/ proc_popen(),反引号 ``

1- system()函数

作用将字符串作为OS命令执行,自带输出功能。

 

 2-passthru()函数

作用将字符串作为OS命令执行,不需要输出执行结果,且输出全部的内容。

 

3- exec()函数 

作用将字符串作为OS命令执行,需要输出执行结果,且它只会输出最后一行的内容。     //他的输出结果需要打印,system()不用打印

 

 

 4- shell_exec()函数

 

作用将字符串作为OS命令执行,需要输出执行结果,且输出全部的内容。

 

 5- popen()/proc_open()函数

作用该函数也可以将字符串当作OS命令来执行,但是该函数返回的是文件指针而非命令执行结果。该函数有两个参数。> 1.txt";    //此时的$cmd=ipconfig >> 1.txt    popen("$cmd",'r'); //实际上就是 popen("ipconfig >> 1.txt", "r"),把执行结果放入1.txt文件,通过访问1.txt文件查看执行结果。 ?>

 

 

6- 反引号 ``函数 

作用[``]反引号里面的代码也会被当作OS命令来执行或者:

 

 

 

 代码执行与命令执行区别

代码执行与命令执行的不同:

代码执行本质上是调用后端语言(PHP,JAVA……)来执行特定代码,而命令执行本质是调用系统的命令执行的接口,

命令执行漏洞是可以直接调用操作系统命令,代码执行漏洞是靠执行脚本代码调用操作系统命令

参考为:

PHP中常见的命令执行函数与代码执行函数-红烧兔纸的博客

来源地址:https://blog.csdn.net/weixin_47112073/article/details/127440686

--结束END--

本文标题: PHP-代码执行函数-命令执行函数

本文链接: https://www.lsjlt.com/news/401825.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHP-代码执行函数-命令执行函数
    目录 代码执行函数: 1.eval()函数 2.assert()  函数 3.call_user_func()函数  4- create_function()函数  5- array_map()函数 6- call_user_func_ar...
    99+
    2023-09-09
    php 开发语言 网络安全
  • PHP常见的命令执行函数与代码执行函数
    目录 代码执行函数: 1. eval() GET和POST传参的区别  2. assert() 3. call_user_func() 4. create_function() 5. array_map() 6. call_user_fun...
    99+
    2023-09-05
    php 网络安全 web安全
  • PHP命令执行的函数
    在做面试题的时候发现,自己对PHP命令执行的函数的了解并不是很全面,就想这去学习一下。我也在网上找到了许多的资料,在这里我就相当于一个总结吧。 system(); System()函数的主要功能是在系统权限允许的情况是执行系统命令,w...
    99+
    2023-09-15
    linux 运维 服务器
  • php命令执行函数有哪些
    php中的命令执行函数有System、Exec和Passthru几种System函数System函数作用:php中System函数的作用是用于执行command参数所指定的命令,且打印全部的输出值。System函数语法:system ( s...
    99+
    2022-10-06
  • PHP执行linux命令的6个函数
    一般情况下,很少会用php去执行linux命令,不过特殊情况下,你也许会用到这些函数。以前我知道有二个函数可以执行linux命令,一个是exec,一个是shell_exec。其实有很多的,结合手册内容,介绍以下6个函...
    99+
    2022-06-03
    linux php
  • PHP常用命令执行函数是什么
    这篇文章主要介绍“PHP常用命令执行函数是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP常用命令执行函数是什么”文章能帮助大家解决问题。PHP命令执行函数常配合代码执行漏洞使用, 利用命令...
    99+
    2023-06-30
  • 使用命令行怎么执行PHP代码
    这篇文章将为大家详细讲解有关使用命令行怎么执行PHP代码,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Windows 用户的 PHP 安装:按照步骤在 Windows 操作系统上安装 PHP...
    99+
    2023-06-15
  • 几行代码让Python函数执行快30倍
    目录1、Python 多线程处理的基本指南2、多处理入门3、它为什么如此重要?4、实现5、基准测试Python 是一种流行的编程语言,也是数据科学社区中最受欢迎的语言。与其他流行编程...
    99+
    2022-11-12
  • Web漏洞-命令执行和代码执行漏洞
    命令执行原理 就是指用户通过浏览器或其他辅助程序提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令。 漏洞成因 它所执行的命令会继承WebServer的权限,也就是说可以任意读取、修改、执行We...
    99+
    2023-08-31
    网络安全 web安全 Powered by 金山文档
  • JavaScript函数内部的代码怎么执行
    这篇文章主要介绍“JavaScript函数内部的代码怎么执行”,在日常操作中,相信很多人在JavaScript函数内部的代码怎么执行问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2022-10-19
  • python函数专讲:exec执行函数
    今天的Python学习教程想跟大家说一下exec执行函数...
    99+
    2023-06-02
  • 怎么在JavaScript函数内执行全局代码
    本篇内容主要讲解“怎么在JavaScript函数内执行全局代码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么在JavaScript函数内执行全局代码”吧!先...
    99+
    2022-10-19
  • RCE代码及命令执行(详解)
    RCE代码及命令执行 1.RCE漏洞1.1.漏洞原理1.2.漏洞产生条件1.3.漏洞挖掘1.4.漏洞分类1.4.1.命令执行1.4.1.1.漏洞原理1.4.1.2.命令执行危险函数1.4.1....
    99+
    2023-09-11
    php web安全 安全 网络安全
  • Android中执行java命令的方法及java代码执行并解析shell命令
    android中执行java命令的方法大家都晓得吗,下面一段内容给大家带来了具体解析。 android的程序基于java开发,当我们接上调试器,执行adb shell,就可以...
    99+
    2022-06-06
    JAVA 方法 shell Android
  • CWnd::AssertValid()函数执行出错
    CWnd::AssertValid()函数是MFC框架中的一个成员函数,用来检测CWnd对象是否有效。当调用该函数时,如果检测到CW...
    99+
    2023-08-23
    出错
  • MySQL 对window函数执行sum函数疑似Bug
    MySQL 对window函数执行sum函数疑似Bug 使用MySql的窗口函数统计数据时,发现一个小的问题,与大家一起探讨下。 环境配置: mysql-installer-community-8.0.20.0 问题点:在su...
    99+
    2020-12-26
    MySQL 对window函数执行sum函数疑似Bug
  • python 远程执行命令的详细代码
    1.简单版 # coding: utf-8 import paramiko import re from time import sleep def ssh(): ssh ...
    99+
    2022-11-13
  • javascript中怎么自执行函数
    这期内容当中小编将会给大家带来有关javascript中怎么自执行函数,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。function (window, ...
    99+
    2022-10-19
  • python如何结束执行函数
    在python中使用return语句结束执行函数,具体方法如下:>>> def fun():print 'ok'>>> res=fun()ok>>> type(res)>>> res==NoneTrue>>> def func():prin...
    99+
    2022-10-23
  • python函数嵌套如何执行
    在python中执行嵌套函数的方法执行不带参数的嵌套函数def outer_func():x=1def inner_func():result=x+1print(result)return inner_funcf1=outer_func()...
    99+
    2022-10-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作