目录
命令注入简介
命令注入漏洞和SQL注入、XSS漏洞很相似,也是由于开发人员考虑不周造成的,在使用web应用程序执行系统命令的时候对用户输入的字符未进行过滤或过滤不严格导致的,常发生在具有执行系统命令的web应用中,如内容管理系统(CMS)等。
命令注入原理
本文以DVWA中的Command Injection为例,查看Command Injection的源代码,如图:
后台代码并未对用户输入的参数ip的值进行过滤就直接与ping命令进行拼接并执行 ,因此我们可以使用常见的命令拼接字符对命令进行拼接,如使用“&”,“|”,“&&”,“||”等,linux系统下还可以使用“;”,“``”。
- 对于shell1 & shell2,既执行shell1的命令也执行shell2的命令;
- 对于shell1 && shell2,在shell1执行成功的情况下执行shell2,shell1执行失败就不会执行shell2,和逻辑与一样;