前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【原创】基础篇 -- RCE漏洞总结

【原创】基础篇 -- RCE漏洞总结

作者头像
Power7089
发布2020-07-27 16:01:47
7.9K0
发布2020-07-27 16:01:47
举报

作者:小仙人

介绍:安全武器库运营团队核心成员,享受星球原创文章待遇

声明

本篇文章为星球团队成员原创文章,已申请原创权限,如其他公众号有需要转文,请联系信安旅程运营人员。

引言

开篇之前,我想和大家说一下我的学习思路,我记得在刚入行网络安全的那会,看到的前辈写的一篇学习心得,对我影响颇深。再加之我的一位好友指引,使得我养成一个记笔记的习惯。毕竟,好记性不如烂笔头嘛,知识点这么多,即使我第一次看的印象再深刻也好,若是隔一段时间没利用,那么,我一样也会忘记,所以像我这样的老人家,这样的记性,只好这样记录了。

所以现在我每研究一个漏洞/攻击手段,我都会按照以下思路去进行。

1. 什么是XXX漏洞?漏洞的原理是什么?

2. 为什么会产生这个漏洞?根本的原因是什么?

3. 怎么挖掘这个漏洞?怎么验证漏洞是否存在?怎么利用这个漏洞?

4. 漏洞利用的前提条件是什么?漏洞影响的范围?漏洞造成的危害有多大?

5. 如果在甲方公司,自己公司站点受到此攻击,我应该如何应急响应修复?

6. 如何提前防范这个漏洞?如何进行加固?

所以以前上学的时候体育老师说的好,只要搞懂What、Why、How,语文考试随便高分。

1. 什么是远程代码执行漏洞

远程命令/代码执行漏洞,简称RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。RCE分为远程命令执行ping和远程代码执行evel。

2. 漏洞产生的根本原因

服务器没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令。

3. 如何挖掘RCE漏洞

黑盒测试:网站中有特殊功能,比如Ping、数据库备份等等。

白盒测试:查看命令执行函数是否做过滤。命令执行函数如下:

PHP代码执行函数:eval()、assert()、preg_replace()、create_function()、array_map()、call_user_func()、call_user_func_array()、array_filter()、uasort()

PHP命令执行函数:system()、exec()、shell_exec()、pcntl_exec()、popen()、proc_popen()、passthru()

4. 挖到这个漏洞能做什么

  • 远程命令、代码执行(单凭这一点能做的事情就不少,如下)
  • 获取敏感数据、文件、服务器信息
  • 写入恶意文件Getshell

5. 如何利用此漏洞

在网上你会发现有很多关于RCE的文章基本都是白盒检测出来的,但是往往渗透测试过程中,我们都是黑盒测试的。但是黑盒挖掘RCE漏洞太难了,很少有特征点,要理解参数的意义才有可能黑盒测试到。留意下一章......

6. 漏洞造成的危害

RCE漏洞造成的危害不言而喻,高危漏洞。能直接获取服务器的控制权(既然服务器都拿下了,为所欲为。)

7. 发现此漏洞,该怎么修复

  • 通用的修复方案,升级插件/框架/服务最新版。
  • 如若必须使用危险函数,那么针对危险函数进行过滤。

8. 如何防范此漏洞

  • 在进入执行命令函数前进行严格的检测和过滤;
  • 尽量不要使用命令执行函数,不能完全控制的危险函数最好不使用;
  • 对于eval函数,一定要保证用户不能轻易接触eval的参数或者用正则严格判断输入的数据格式;
  • 上云WAF当然最稳,哈哈哈。

注:漏洞的影响范围和利用的前提条件要视情况而定,例如Struts2著名的RCE漏洞,直至现在2020年,以前很多一些旧的漏洞已经不复存在,我们只好理解其中的原理即可。

若感兴趣的可以去了解一下由深信服千里日安全实验室写的这篇文章。

传送:https://www.freebuf.com/vuls/168609.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员阿甘 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库备份服务
数据库备份服务(Database Backup Service,简称 DBS)是为用户提供连续数据保护、低成本的备份服务。数据库备份拥有一套完整的数据备份和数据恢复解决方案,具备实时增量备份以及快速的数据恢复能力,它可以为多种部署形态的数据库提供强有力的保护,包括企业 IDC 数据中心、其他云厂商数据库及腾讯公有云数据库。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档