RCE远程命令执行——CTF写题记录

目录

简单的知识清单

运算符

常见Linux系统命令

[ACTF2020 新生赛]Exec

[GXYCTF2019]Ping Ping Ping

[攻防世界]command_execution


简单的知识清单

运算符

command1&&command2 只有1执行2才会执行

command1&command2 两个都会执行

command1||command2 1执行2就不执行,1不执行2执行

command1|command2 1的输出结果作为2的输入执行

command1;command2 两个命令依次执行

常见Linux系统命令

ls 展示当前目录所有文件

ls / 根目录

cat [filename] 输出文件 不在当前目录下要指定路径

find  [路径]-name “查询值” 可以帮助我们在不知道文件目录时来查找

例:find / -name "f*" 查找f开头的文件

       find / -name "*.txt" 查找后缀是.txt的文件

[ACTF2020 新生赛]Exec

进去之后页面显示一个搜索框让输入ping的地址。

直接ping一下自己的主机

命令正常执行,直接127.0.0.1;ls尝试爆当前目录下文件

命令顺利执行,继续爆根目录文件

发现flag,直接cat /flag,得到flag

[GXYCTF2019]Ping Ping Ping

进入之后页面有显示/?ip=可知应该是有文件包含,我们直接尝试?ip=127.0.0.1

发现执行了ping的命令,直接尝试RCE。

发现flag.php就在当前目录下,使用cat指令

发现过滤了空格符,尝试使用${IFS}绕过空格。

好像又过滤了一些符号,换一种绕过试试$IFS$1。

发现对于flag字段也存在过滤,同时经过测试发现无法使用反斜杠\进行绕过。

那就尝试一下RCE拼接吧!

构造下面的paylaod

?ip=127.0.0.1;b=g;cat$IFS$1fla$b.php

发现成功运行了,但是页面上没有显示flag,打开源文件。

发现flag值。

[攻防世界]command_execution

这题和第一道题十分相像,进去之后也是一个界面让你输入Ping的地址,然后直接可以进行运算符拼接执行命令。

当我们查找根目录文件时发现并没有我们想要的flag。这个时候就要用到find命令了。

直接127.0.0.1|find / -name "*flag*",查找含有flag字段的文件。

发现/home目录下有flag.txt文件,尝试用cat输出

成功获取flag。

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值