- A+
(Command Injection)产生的原因
在Web应用中,有时候会用到一些命令执行的函数,如php中system、exec、shell_exec等,当对用输入的命令没有进行限制或者过滤不严导致用户可以执行任意命令时,就会造成命令执行漏洞。
危害
此漏洞可以导致攻击者在服务器上执行任意命令,更高的权限。
连接字符
&:两个命令同时执行
|:执行后面的命令
&&:(判断)当&&前的命令执行成功时(真),才执行&&后面的命令
||:(判断)当||前面的命令执行失败时(假),才执行||后面的命令
命令注入的防御措施:
1、采用白名单,或使用正则表达式进行过滤。
2、不要让用户可以直接控制eval()、system、exec、shell_exec等函数的参数。
3、在进入执行命令函数和方法前,对变量进行过滤,对敏感字符进行转义。
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫