《(CVE-2018-19986)D-Link DIR-818LW&828命令注入漏洞.docx》由会员分享,可在线阅读,更多相关《(CVE-2018-19986)D-Link DIR-818LW&828命令注入漏洞.docx(11页珍藏版)》请在优知文库上搜索。
1、(CVE-2018-19986) D-Link DIR-818LW&828 命令注入漏洞一、漏洞简介D-LinkDIR-822和D-LinkDlR-818LW都是中国台湾友讯(D-Link)公司的一款无 线路由器。D-Link DIR-818LW Rev.A 2.05.B03 和 DIR-822 Bl 202KRb06 中的 RemOtePOM参数存在命令注入漏洞。该漏洞源于外部输入数据构造可执行命令过 程中,网络系统或产品未正确过滤其中的特殊元素。攻击者可利用该漏洞执行非法 命令。二、漏洞影响D-Link DIR-818LW Rev.A 2.05.B03DIR-822 Bl 202KRb06
2、三、复现过程漏洞分析原理D-Link DIR-818LW Rev.A 2.05.B03 和 DIR-822 Bl 202KRb06 中,通过 HNAPl 协 议访问SetROUterSettingS时,RemOtePOrt参数存在操作系统命令注入漏洞。在 SetROllterSettings.php源码中,RemOtPOrt参数没有经过任何检查,直接存放于 $path_inf_wanl.web,并且在 iptwan.php 中的 IPTWAN_build_command 函数 中使用$Path_inf_wanl.7web变量作为iptables的参数,同样未做检查。构造 SetRouterSe
3、ttings.Xml,使 RemotePort 中包含如 telnetd 的 shell 命令,利用该 漏洞执行非法操作系统命令。./etc/templates/hnap/SetRouterSettings.php:$path_inf_wanl = XNODE_getpathbytarget(, “inf,,uid, $WAN1, 0);#$WAN1 = WAN-1;$nodebase=/runtime/hnap/SetRouterSettings/;JremotePort = query($nodebase.RemotePort);set($path_inf_wanl.web, Jremot
4、ePort);./etc/services/IPTABLES/iptwan.phpfunction IPTWAN_build_command($name)$path = XNODE2getpathbytarget(,i inf, ,uid, $name, 0);$web = query ($path./web);#web 作为 iptables 的参数写入$_GLOBALS“START” if (query($path.7inbfilter) !=,)$inbfn = cut (query ($path. ,inbf ilter), 1, $hostip = query($path.webal
5、lowhostv4ip);if ($hostip !=,) if (query ($path. ,inbfilter) !=) fwrite( a$_GLOBALSSTARfwrite(, : ,y 布(E M) . t 27(M7). M5H Rrot Tirawrer Rrocml HnX Kr Server SfYrMn Dt: frl, )1 0c ItM 2,3:“ 9rtf TrEoco0ing: CM-Z Cetnt-ty*: tatal; c*aryt tmiM *Mrku* Languaye* 7aivc tln,2.*0MW9=utf-t*Mp: EnVeIoPeZMto.
6、tfS.M2lVliMa lmCMaIaUS: x9FW/mmw. 9. org2W ITlMLScMm.ml*vM*M9*chMM. ml.0rfMMMX*9*发送方收到之后,login的action由request变成了 login,即发送用户名密码的过 程,密码是由用户私钥处理过的数据。1,C*trl rtcL rc ort: M7f. (M Agrt: N. tq: 1. Act. 1. I MtAcct*t-g tw. ruew AccF : M_w,n*f . 一/: 0-& X HI :0 . 一金 KNl石i6;0三6 二;;.wTJnTWr4* Met4J-rAlawMltS
7、S7.M (KNT. Hfe1卬 OtfBM.; H IvZJ W O br (l*4 Vll*)t MM4 Vyi C(5U (WlX IJTTTJ 4 J*t). 0t: :3:“,:1:3 (:InternMoc w W bye cap*vrd (4Y blt) m Iatefface (Mrw 4. $rc 1; IM t. Dt: It? IM 2 Trani” Snteu PCcol, Src Hrt: M Dt RKt: X X: W5. Act: R LOT: * 0 ly3 TO ErH (W /”): K(H) MSrvr o(: *r M toe m n m” m Trf
8、r inneing* ciw*e1/11ITlM tlM HMetj .N)TCM WCM*) fMlJM! WfrM J4l iMPtTWrMt. . Nm t cfUie4 r*p0Mtll tata: Itl toytt .RtElMt RirtUp LjRQMtl ”3WfSMR4t.aOnCMlJv*. Sf 6 A wep f vw1o9 im : uy /-.sw*/2Mi/njcMM iMtMo 3f9f MNM S or fe: / VScMb *!.+:一*.:iMt :理解HNAP为了再深入理解HNAP,查看htdocsCgibin二进制文件,简化流程如下:hnap_main()memset(acStackl708j0,0100);getenv(HTTP_AUTHORIZATION);soapaction = getenv(HTTP_SOAPACTION)