# MKCMS v5.0 任意密码重置漏洞
### 一、漏洞简介
### 二、漏洞影响
MKCMS v5.0
### 三、复现过程
漏洞出现在/ucenter/repass.php第1-44行:
“`php
debug = false;
$mailType = “HTML”; //信件类型,文本:text;网页:HTML
$email = $email; //收件人邮箱
$emailTitle = “”.$mkcms_name.”用户找回密码”; //邮件主题
$emailBody = “亲爱的”.$username.”:
感谢您在我站注册帐号。
您的初始密码为123456
如果此次找回密码请求非你本人所发,请忽略本邮件。
——– “.$mkcms_name.” 敬上
“;
// sendmail方法
// 参数1是收件人邮箱
// 参数2是发件人邮箱
// 参数3是主题(标题)
// 参数4是邮件主题(标题)
// 参数4是邮件内容 参数是内容类型文本:text 网页:HTML
$rs = $smtp->sendmail($email, $smtpMail, $emailTitle, $emailBody, $mailType);
if($rs==true){
echo ‘‘;
}else{
echo “找回密码失败”;
}
}
}
}
?>
“`
本质上来说此处是一个逻辑问题,程序未通过邮箱等验证是否为用户本身就直接先在第13-14行把用户密码重置为123456了,根本没管邮件发送成功没有。

### poc
构造如下poc.html,并访问poc.html,然后用123456密码登录即可
“`html
“`
参考链接
https://xz.aliyun.com/t/4189#toc-1
https://cisk123456.blogspot.com/2019/04/mkcms-v50.html













请登录后查看评论内容