| [组图]Ce-Admin新闻发布系统漏洞分析 | ★★★ |
| Ce-Admin新闻发布系统漏洞分析 | ||
| 作者:哽咽 文章来源:本站原创 更新时间:2007-2-8 5:31:44 【字体:小 大】 | ||
Ce-Admin原版下载地址:http://down.chinaz.com/s/15868.asp J111版图片程序下载地址:http://www.lwcode.com/codeinfo/1045.html 52mt版图片程序下载地址:http://www.indowns.com/Soft/1/25/2005/200512265441.html lc520版图片程序下载地址:http://www.soucode.com/Software/Catalog18/7102.html 玩乐吧版本,程序演示地址:http://www.ebpv.com 由于存在的安全隐患都是相同的,我主要对原版程序文件进行漏洞分析,其他版本则进行简单介绍。 1、原版漏洞分析 来看del.asp中删除分类功能的代码:
图1:删除分类部分代码 通过提交如下url可以删除id为15并且名称为“security”的分类:(新闻的分类名称可以在首页找到,分类ID则可以进行构造和枚举,一般是1-50之内的数字) 另外,上述代码并没有对ID进行合法性验证,可以导致注入,但是因为不容易取得ID和分类名称之间的对应关系,所以很难被攻击者利用。通过分析,ID和分类名的对应只可以通过提交上述“url1”来确认,但是如果确认,这个分类也就被删除了,再者攻击者没有权限进行分类的添加,所以无法继续利用。 再看del.asp中删除新闻功能的代码:
图2:删除新闻部分代码 需要两个参数,一个是类型News,一个是生成的新闻页面文件名File_Name,type固定,而新闻的文件名file_name可以根据首页新闻的URL得到,所以通过提交如下url可以删除数据库中记录以及生成的html文件: 由于未进行来源的验证,本地构造表单可以进行新闻的添加和修改,来看这部分代码:
图3:新闻添加功能部分代码 需要4个参数,构造表单如下, Post地址为:http://target/ce-dmins/save.asp?Type=add
对指定ID新闻的修改只需要将上述表单的post地址改为: 这里的ID可以在html新闻页面的源文件里找到:
* 管理目录下save.asp导致网站web路径暴露漏洞
* session欺骗漏洞
可以构造包含如下内容的asp文件,浏览后再访问ce-admins下的admin_index.asp即可进入管理页面。 * 所带ewebeditor编辑器session欺骗漏洞
可以构造包含如下内容的asp文件,浏览后再访问uploadfile下的Admin_Default.asp即可进入管理页面。 * 所带ewebeditor编辑器admin_uploadfile.asp目录遍历以及文件删除漏洞
缓解因素:首先需要取得ewebeditor的后台权限。 * 所带ewebeditor编辑器upload.asp文件上传漏洞
设置任何情况均不允许上传asp文件,但是我们可以突破,既然程序会把asp替换,那我们在上传文件设置里设置允许上传扩展名为aaspsp的文件,因为程序检查扩展名时把asp替换为Null,那么aaspsp就变成asp,就可以上传asp文件了
当然我们还可以设置允许上传asa、cer等也能被asp.dll解析的文件来达到目的。 注:以上ewebeditor编辑器的漏洞在最新免费版本2.8修正版中也存在,商业版未做测试。
其他修改版本中的玩乐吧版,直接把数据库改成了#$%mmpic%$#.asp(j111版改为j111mm.asp),初衷是为了防止下载,虽然通过http://target/data/#$%mmpic%$#.asp 不能下载,但是用flashget下载如下url则可以下载: Ce-Admin的密码是明文的,所以下载数据库后用access打开可以得到管理员密码直接登陆管理页面,然后添加新闻,或者构造表单添加新闻,在标题内输入一句话asp木马:发布后,http://target/data/#$%mmpic%$#.asp成了webshell,可以上传其他asp木马进行其他非授权的活动,甚至提升权限得到系统管理权限。
check.asp内容如下:
* session欺骗漏洞 对于session欺骗,相关的是cookie欺骗,相对来说session比cookie更安全一些,因此我们不建议你改用cookie验证。建议选择设置比较安全的虚拟主机,并加强对服务器的安全管理。 * 目录遍历漏洞 * ewebeditor上传漏洞
因为很多虚拟主机是全能主机,可以同时支持asp、aspx、jsp、cgi、php,因此也需要把这些过滤掉,上述语句是把asp等替换为”error”。 * 另外,建议你把程序默认的管理员账户以及数据库文件名进行修改,不建议你把数据库改成asp来防止下载,如果一定要改成asp,那么安全的方法如下:
添加数据库记录,ALT+T选择对象—>由文件创建-->选择刚才新建的文本,插入后显示如下:
这样设置的原因是:asp会对进行解析,因为符号未闭合发生错误,可有效防下载。 |
||
|
||
| 文章录入:哽咽 责任编辑:哽咽 | ||
您现在的位置: 













