写点什么

DVWA 通关记录 2 - 命令注入 Command Injection

作者:Todd-Lee
  • 2022 年 8 月 02 日
  • 本文字数:466 字

    阅读完需:约 2 分钟

命令注入

简单来说,命令注入最基本的就是掌握如下若干命令连接符的意义,然后根据实际情况选择。

需要提一个小的注意点,如果返回的是 64 位包,那么 unix 体系的操作系统的概率大,如果是 32 位包,windows 体系的概率大。当然整个返回体也不是很一样,可以根据这个来尝试后边的命令。


分号 ;

命令依次执行 , 如果前面命令执行失败,后边命令直接执行,所以这个是比较常用的方式,不需要等待前面 ping 的时间。

比如 ping 127.0.0.1;tail /etc/passwd

返回结果:


|| 逻辑或

这个比较好理解,这种情况,左侧命令执行成功就直接返回了,因为 true || false 结果为 true,所以只要左侧成功,右侧就被“短路”了。

&& 逻辑与

与上方|| 相对,如果左侧执行失败,则右侧不会执行。因为 false&&true 结果为 false,这种情况下 右侧依然被“短路”。


& 后台执行

在 linux 平台上,如果命令后边跟一个 & 则意味着该命令后台执行。

所以 ping 127.0.0.1&tail /etc/passwd 意味着,ping 在后台执行,只返回了后边命令:


| 管道符

前面命令的输出,作为后边命令的输入,经常使用管道符作筛选使用,比如

x|tail /etc/passwd|grep "www-data"


发布于: 刚刚阅读数: 3
用户头像

Todd-Lee

关注

还未添加个人签名 2017.10.17 加入

还未添加个人简介

评论

发布
暂无评论
DVWA 通关记录 2 - 命令注入 Command Injection_Todd-Lee_InfoQ写作社区