Command injection(命令注入)

安全   2025-07-07 14:51   165   0  




一、什么是命令注入

命令注入是一种安全漏洞,发生在未对用户输入做出限制而直接拼接用户输入,攻击者可以利用命令注入漏洞执行任意命令,使用特殊符号(&、&&、|和||)绕过预期命令并执行其他命令

二、命令注入实践(DVWA)

1、级别Low

查看源码,发现这段代码在ping语句后面未做任何监测

10265_3nic_7068.png

使用命令ping 127.0.0.1 & whoami测试,在执行ping127.0.0.1的同时执行后面拼接的命令

10265_jnwq_3825.png


2、级别Medium

查看源码,发现这么段代码对输入做了简单的防护,把&&;转换成空格,使命令失效,但并未对|||做防护,所有可以使用|||

10265_nvnm_1604.png

使用命令127.0.0.1 | whoami测试,直接执行whoami

10266_pyzo_2071.png

3、级别High

查看源码,增加被限制的特殊符号,但在| 处多了一个空格

10266_kari_5540.png

使用命令127.0.0.1 |whoami测试,仍然能执行whoami(注意空格

10266_nowq_1351.png

4、级别Impossible

查看源码,这段代码拆分了用户输入的IP地址,并分别判断每位是否是数字且是否有其他参数,然后再组合成IP地址执行相关操作,规避注入的风险。

10266_fwnm_8902.png





博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。