首页 > 其他分享 >RCE代码执行和命令执行

RCE代码执行和命令执行

时间:2023-03-23 19:55:38浏览次数:30  
标签:命令 php exec 漏洞 代码执行 RCE 执行

代码执行

脚本语言:php、python、java等

产生:web源码、thinkphp、eyoucms、wordpress

中间件平台:apache、tomcat、redis

其他环境:php-cgi、jenkins-CI、java RMI

检测

白盒

代码审计

黑盒

漏洞扫描工具、公开漏洞、手工看参数值和功能点:如?echo 123如果返回123则是php脚本

防御

敏感函数禁用、变量过滤或固定、WAF产品

命令执行

产生

1.web源码:Nexus、Webmin、ElasticSerach

2.中间件平台:Weblogic、Apache

3.其他环境:Postgresql、Samba、Supervisord

system函数:执行外部程序并输出资料

漏洞产生情况

1.现实应用(实例)

根据网站不同功能的命令;前端验证则抓包,修改参数;管道符执行多条命令,分号执行多条命令

cat<xx.php的<是输入重定向、tac目的是反向连接文件代码分析;得到的代码在线执行,得到传递的参数名,注入

反引号和exec_shell相同可以执行系统命令;echo `$_request[a]` echo输出的反引号里的内容会被当作命令执行,强行执行(反引号的作用)

公开漏洞:vulhub

不同层面漏洞:工具跑、poc验证 、xp利用

2.网站代码

漏洞形成条件:传参修改变量值、可控变量、漏洞函数

没有可控变量就没有漏洞,可控变量是漏洞的成因

漏洞成因 (将字符串转化为代码执行的函数)

php:eval,assert,call_user_func,call_user_func_array,array_map

python:exec

java:OGNL,SpEL等

命令执行函数:system,exec,shell_exec,passthru,pcntl_exec,反引号

标签:命令,php,exec,漏洞,代码执行,RCE,执行
From: https://www.cnblogs.com/BWTY/p/17245014.html

相关文章

  • jmeter常用的命令行及参数
    一、运行方式分类GUI方式:图形界面方式运行CLI方式:commandline命令行,jmeter的脚本可以通过命令行用命令进行执行二、用命令行执行的优势:1、图形化界面运行的时候会占......
  • Linux shell命令(待完善)
    Django基础python开发的开源的web应用框架优点:快速开发低耦合开发快捷部署方便可重用性高维护成本低等python加Diango是快速开发、设计、部署的最佳组合特点:强大的数据......
  • linux 查看系统资源常见命令
    free内存free命令里面的buffer和cache区别buffers是用来给块设备做的缓冲大小,他只记录文件系统的metadata以及trackingin-flightpages。cached用来给文件做缓......
  • python 之 click 包,设置命令行参数
    原文链接:PythonClick学习笔记 Click 是Flask的团队pallets开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现。恰好我最近在......
  • 命令行实现自动清除浏览器的浏览记录(vbs)
    以下是前辈的经验,我借过来,学习学习,感谢感谢。先看目的,批处理是不行的用VBS很简单vbs例子如下,只需要保存为vbs文件即可,SetobjShell=CreateObject(“Wscript.Shell”......
  • Educational Codeforces Round 116 (Rated for Div. 2)
    题目链接A核心思路这个题目相当的玄学,所以如果遇到实在不会的题目。那么直接从样例入手吧,我们可以从样例发现每次改的都是开头或者最后的一个。于是大胆的猜测啊。会不......
  • 常用命令行连接方式
    以下控制端均以windows为例1.linux下(包含Android等嵌入式linux)1.1adb调试adb是基于usb或以太网wifi等局域网之上的工具,在被控端嵌入式linux端有个监听adbd进程,控......
  • windows命令行下用netsh实现端口转发(端口映射)
    微软Windows的netsh是一个命令行脚本实用工具。使用netsh工具,可以查看或更改本地计算机或远程计算机的网络配置。不仅可以在本地计算机上运行这些命令,而且可以在网络上的远......
  • Codeforces Round 760 (Div. 3) D. Array and Operations(贪心)
    https://codeforces.com/contest/1618/problem/D题目大意:给定一个长度为n的数组a,我们可以进行m次操作:每次操作可以任意选择两个不同的下标的数字x和y,并把它两删除,替换......
  • kubeadm init命令初始化kubernetees集群时如何传入自定义镜像,解决初始化无法pull到国
    众所周知,我们使用kubeadminit初始化一个新的集群的时候,经常因为国外镜像无法pull到而失败,我们可以通过初始化时给命令加上--config=config.yaml参数,给命令传入额外参数,里......