Buuctf-Web-[ACTF2020 新生赛]Exec 题解&思路总结

启动靶机

在这里插入图片描述

看到题目中这个输入需要ping的地址,就一下想起来再DVWA靶场做过的命令注入题(当然本题也有可能是sql注入,这取决于我们得到的回显)
之前DVWA的题是需要判断出源码未过滤哪些拼接符,然后我们就可以利用这些未过滤的命令拼接符执行命令。
DVWA靶场做过的命令注入

命令注入解释
为什么可以执行命令注入呢?原因是因为后台代码并未对用户输入的参数ip的值进行过滤就直接与ping命令进行拼接并执行 ,因此我们可以使用常见的命令拼接字符对命令进行拼接,如使用“&”,“|”,“&&”,“||”等,linux系统下还可以使用“;”,“``”。

先ping一下本地回环地址127.0.0.1,看到这个回显就可以将此题暂归入命令执行漏洞中了。(毕竟没有出现sql报错啥的)
在这里插入图片描述

根据以往经验,flag一般放在根目录下。所以我们使用常见的命令拼接字符对命令进行拼接,查询下根目录。

我们构造一下查询语句(本题命令拼接符我选了&&&):
[一个ip地址] [命令拼接符] [访问根目录]
127.0.0.1 && ls /
当然大家还可以选其他的命令拼接符,构造的语句也会不同,可以自己尝试。(有些命令拼接符可能被过滤掉了)

以下是常用的命令拼接符

命令拼接符&、&&、|、||等
命令拼接符:
|、||、&、&&的区别:
&:无论左边是false还是true,右边都执行
&&:具有短路效果,左边是false,右边不执行。
|:无论左边是false还是true,右边都会执行
||:具有短路效果,左边是true,右边不执行。
短路效果:逻辑运算符的短路效果逻辑运算符当能得到结果时,就不会再继续运算右边的代码,以节省空间以及一定的性能,称为短路效果。

我们查到flag就在根目录下
在这里插入图片描述
接着我们来访问这个flag

但是这里要注意一点:如果我们直接输入127.0.0.1 & cat flag是访问不到flag的。原因是我们当前所在的目录并不在根目录下。


查找一下当前所在的目录,我们在/var/www/html这个目录
在这里插入图片描述

而flag在根目录下,所以我们要输入cat /flag
我们输入127.0.0.1 & cat /flag成功得到flag
在这里插入图片描述

题目类型:命令注入
思路总结:
1、看回显类型
2、判断哪些命令拼接符未被过滤
3、利用未被过滤的命令拼接符查看文件

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值