Emlog漏洞 | 关于明月浩空模版后门事件的分析

【摘要】最近“明月浩空”的模版,爆出了致命后门,小东看来,或许只是作者不小心写成这样的吧!正好最近在深入挖掘Emlog系统的安全问题,顺便给大家普及一下Emlog漏洞的发现、利用以及修复!...

    最近“明月浩空”的模版,爆出了致命后门,小东看来,或许只是作者不小心写成这样的吧!

    正好最近在深入挖掘Emlog系统的安全问题,顺便给大家普及一下Emlog漏洞的发现、利用以及修复!

“明月浩空”模版预览图:

明月浩空模版

此次后门事件,主要爆发在一个文件读取函数上(如图):

PHP当中的file_get_contents()函数用于读取文件的内容,作者本想用于读取图片内容的,不知道为什么要多此一举?

如何利用:

    声明:由于作者已经公布漏洞的存在,因此此处为证明漏洞真实性做必要的描述!

    上述图片中的函数主要意思,就是获取一个文件的链接,如果存在就读取,并输出文件内容,否则跳转到作者的网站???(PS:并不知道为什么要跳转到作者的网站【滑稽】)

Payload:http://127.0.0.1:81/content/templates/lime.me/function/image.php?url=image.php


    作用读取image.php文件的内容,至于读取其他的文件会怎样,留给大家自己想象...

如何修复:

    我想,大多数人应该关注这一点,

    1.购买使用正版的模版,售后有保障;

    2.使用有安全开发经验作者的主题;

    3.关注:第一资源网,哈哈~

    修复的方法很简单,只需要改成如下的代码(此代码参考小健博客):

<?php
	header("Content-Type: image/x-icon; charset=utf-8");
	function curl_get($url)
	{
		$ch=curl_init($url);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36');
		curl_setopt($ch, CURLOPT_TIMEOUT, 30);
		$content=curl_exec($ch);
		curl_close($ch);
		return($content);
	}

	if(isset($_GET["url"]))
		$file=curl_get("".$_GET['url']);
	else
		Header('Location:https://limh.me');
	echo $file;
?>


总结:

    开发者在开发的时候尤其要注意文件读取等相关函数的使用,注意权限的控制,以及变量可控性(过滤),此次分析就到这里,原创文章,转载请注明,网络安全,你我共建,技术交流,合法测试。

    欢迎加入QQ群:127785979一起交流技术!

 小东
 简介:专业团队网站开发、安全运维,合作意向请联系!

扫码关注微信公众号:ITDYBOY,学前端,学安全,从0到1,从1到精通!

扫码关注微信公众号:ITDYBOY

发表评论

游客
送你一朵小花花~

帅人已评(14)

我用的就是这个模版
LV 2 标题党 6年前 (2017-11-02) 回复
@标题党:那可要及时修复
LV 1 爱与诚 6年前 (2017-11-02) 回复
大佬
LV 1 jing 6年前 (2017-11-02) 回复
LV 2 七星伴月 6年前 (2017-11-02) 回复