–DVWA-command injection

原文地址:http://www.fwqtg.net/注入技术-dvwa之命令注入.html

(转载了部分内容)


Command Injection,即命令注入攻击,是指由于Web应用程序对用户提交的数据过滤不严格,导致黑客可以通过构造特殊命令字符串的方式,将数据提交至Web应用程序中,并利用该方式执行外部程序或系统命令实施攻击,非法获取数据或者网络资源等。



一、低等级命令注入

1.1 使用浏览器打开

http://靶机IP:8080/dvwa/login.php,输入admin/admin进行登录

1.3 登录后页面选择Command Execution.

 点击查看源代码。

二、中等级别命令注入

2.1 将dvwa的安全几倍调整为medium。即中等安全防护级别

三、高等级安全防护。

3.1将DVWA的安全等级调整为高级

可以看出此处利用explode()函数将输入的字符串按照“.”打散为数组,在利用is_numeric()函数来验证数组中的元素是否是数字或者数字字符串。同时利用sizeof()函数验证数组中的单元数目是否等于四个。当前面的条件同时满足是才可以执行ping命令。在此种防护级别上不存在任何绕过的可能。

四、命令注入攻击防范措施

通过上面的分析和描述,我们发现PHP中命令注入攻击漏洞带来的危害和影响很严重。防范命令注入攻击漏洞的存在可以通过以下几种方法。

1. 尽量不要执行外部的应用程序或命令。

2. 使用自定义函数或函数库实现外部应用程序或命令的功能。

3. 在执行system、eval等命令执行功能的函数前,确定参数内容。

4. 使用escapeshellarg函数处理相关参数。Escapeshellarg函数会将任何引起参数或命令结束的字符进行转义,如单引号“’”会被转义为“/’”,双引号“””会被转义为“/””,分号“;”会被转义为“/;”,这样escapeshellarg会将参数内容限制在一对单引号或双引号里面,转义参数中所包含的单引号或双引号,使其无法对当前执行进行截断,实现防范命令注入攻击的目的。

5. 使用safe_mode_exec_dir执行可执行的文件路径。将php.ini文件中的safe_mode设置为On,然后将允许执行的文件放入一个目录中,并使用safe_mode_exec_dir指定这个可执行的文件路径。这样,在需要执行相应的外部程序时,程序必须在safe_mode_exec_dir指定的目录中才会允许执行,否则执行将失



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值