黑小子在土司公布了“PageAdmin cms getshell Oday”,并给出了一个漏

洞的利用EXP。经过危险漫步在虚拟机里测试,存在漏洞的是PageAdmin Cms的次最薪版本PageAdmm CmsV2.0,最新版本pageadmin v2.1 20110927不存在这个漏洞了。利用漏洞可以直接获得shell,危害还是很大的。

一、漏洞简介

PageAdmin Cms是集成内容发布、文章、产品、图片、招聘、留言、自定义模型、采集等功能于一体的企业级网站管理系统。

漏洞公布者黑小子已经给出了漏洞分析,这里直接引用:

这个程序有个fckeditor,悲剧就在这里了。不过程序它在upload.aspx里面倒是验证了权限。任意上传<%@ Page language=”c#”Trace=”false”Inherits=”FredCK.FCKeditorV2.Uploader”AutoEventWireup=”false”StylesheetTheme=…’%>但是在connector.aspx这个里面就是一段

<% @Page language=”c#”Trace=”false”Inherits=“FredCK.FCKeditorV2.FileBrowserConnectorfl

AutoEventWireup=”false”StylesheetTheme=…’%>我不会.net所以完全不知道他这个代码是什么意思但是经过测试这个代码一点用处都没有!可以任意文件上传,../../任意跨目录!上传可以本地构造test.html。

我个人的理解就是PageAdmin Cms v2.0用到的FCKeditor存在任意文件上传漏洞,苛且可以自定义上传文件的目录。

二、漏洞利用

为了测试漏洞,我下载了存在漏洞的PageAdminCms V2.0的源代码,在虚拟机里的Windows系统中把PageAdmin Cms V2.O安装了起来。网站在虚拟机里的访问地址。

下面来看漏洞利用方法。PageAdmin Cms V2.0中FCKeditor默认在管理目录master下,虚拟机中connector.aspx的URL。

1、利用test.html上传获得shell

由于FCKeditor存在任意文件上传漏洞,所以可以通过test.html直接上传shell,但程序中的test.html被删除了。删除了不要紧,我从别的没被删除test.html的FCKeditor中复制了一个test.html出来,稍微修改下就可以利用。用记事本打开test.html,搜索connector. aspx,找到后补齐connector.aspx的完整URl。保存对test.html的修改,然后用浏览器打开test.html,会有安全提示,选择“允许阻止的内容”。

“Connector:”选择ASP.Net, “Current Folder”和“Resource Type”都保持默认,通过“浏览”按钮选择要上传的shell,这里我选择了ASPXspy2,点“Upload”后下面显示空白页,好像上传成功了,点“Get Folders and Files”,看到了文件上传上去的名字,在/upload/FCKeditor/File/目录下,访问却提示“无法找到资源”,打开upload\fckeditor目录下,根本没有File子目录,而是有一个目录,也就是当前的年加月份,中间用一连接,打开文件夹,里面有一个文件夹File,打开File文件夹一个.aspx文件躺在那里了。原来shell的地址中FCKeditor和File之间要加一个当前年月的文件夹,访问URL之后找到.aspx文件,就获得了shell。

2、利用EXP获得shell

黑小子给出了一个用PHP写的漏洞利用EXP,可以直接获得shell。EXP的代码就不贴出来了,有想要的朋友们可以来联系我。

把代码保存为文件pacmsexp.php,放到了虚拟机系统中的C盘根目录下。由于EXP是用PHP写的,需要你安装PHP后才能使用,危险漫步的虚拟机的Windoes 系统中已经安装了PHP v5.3。打开命令提示符,切换到C盘根目录下。输入php pacmsexpplip回车后就可以看到EXP的用法了(PHP的安装目录已经被我加进了环境变量path中,所以不用输入php.exe所在的路径)。

EXP的利用格式为:

php pacmsexp.php site path

其中site就是存在漏洞的网站的域名或IP地址,path是PageAdmin Cms V2.0所在的目录。输入php pacmsexp.php 127.0.0.1,回车,会看到一个光标在闪,提示“Exploit Success”,并且已经给出了shell的地址是aspx-'句话木马,密码为90sec.org,用工具连接也获得了shell。

PageAdmin Cms v2.0 getshell Oday以及利用漏洞两种拿shell的方法介绍完了。通过搜索“PoweredbyPageAdlnin V2.0”等能找到可能存在这个漏洞的网站。

PageAdmin Cms V2.0 getshell 0day的更多相关文章

  1. 【原创】风讯DotNetCMS V1.0~V2.0 SQL注入漏洞

      文章作者:rebeyond 注:文章首发I.S.T.O信息安全团队,后由原创作者友情提交到乌云-漏洞报告平台.I.S.T.O版权所有,转载需注明作者. 受影响版本:貌似都受影响. 漏洞文件:use ...

  2. .NET PageAdmin CMS

    .NET PageAdmin CMS 完全破解步骤(非简单去版权) 其实当初我的目的是很纯洁的,只是想找一个简单的网站生成模板,由于对.net更熟悉一点,就去搜索了.net框架的CMS,看它的介绍挺强 ...

  3. PageAdmin CMS网站建设教程:如何实现信息的定时发布

    PageAdmin Cms发布文章时候有一个上线时间设置和下线时间设置,网站编辑人员可以利用这个功能来实现定时发布,在信息发布界面,如下图: 设置后就会自动加入定时任务中,注意这个功能需要再系统设置& ...

  4. GO 前后端分离开源后台管理系统 Gfast v2.0.4 版发布

    更新内容:1.适配插件商城,开发环境从后台直接安装插件功能:2.代码生成细节修复及功能完善(支持生成上传文件.图片及富文本编辑器功能):3.增加swagger接口文档生成:4.更新goframe版本至 ...

  5. [Android]Android端ORM框架——RapidORM(v2.0)

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5626716.html [Android]Android端ORM ...

  6. JuCheap V2.0响应式后台管理系统模板正式发布beta版本

    JuCheap V1.* 查看地址: http://blog.csdn.net/allenwdj/article/details/49155339 经过半年的努力,JuCheap后台通用响应式管理后台 ...

  7. python gettitle v2.0

    #!/usr/bin/env python # coding=utf-8 import threading import requests import Queue import sys import ...

  8. ".NET Compact Framework v2.0 could not be found."

    参考: http://blog.csdn.net/godcyx/article/details/7348431 问题原因: That's a known issue where VS can't di ...

  9. 【JS】heatmap.js v1.0 到 v2.0,详细总结一下:)

    前段时间,项目要开发热力图插件,研究了heatmap.js,打算好好总结一下. 本文主要有以下几部分内容: 部分源码理解 如何迁移到v2.0 v2.0官方文档译文 关于heatmap.js介绍,请看这 ...

随机推荐

  1. win10自带邮箱添加网易企业邮箱

    开始-邮件-账户-添加账户-高级安装程序-internet电子邮件-然后输入网易企业邮箱的用户名和相关服务器设置就行了 接收服务器 pop.qiye.163.com发送服务器 smtp.qiye.16 ...

  2. 如何使用AB PLC仿真软件Studio 5000 Logix Emulate

    前言:在学习PLC编程或程序开发过程中,如果身边没有实体PLC,又想验证程序逻辑,这时,仿真软件是不错的选择.针对AB PLC的仿真软件Studio 5000 Logix Emulate,有的同学说: ...

  3. word20161226

    1. condensed 英[kən'denst]美[kənˈdɛnst]v. (使) 变稠或变浓,浓缩( condense的过去式和过去分词 ); (使) 凝结; 简说,摘要,简述;[例句]The ...

  4. powerdesigner添加mysql的字符集支持

    一般建模可能都会用到:powerdesigner 但是,在建表的时候,我一直没有找到: DEFAULT CHARACTER SET COLLATE 两个选项.因此,想了个方法,点击:工具栏->d ...

  5. .Net Core---- 通过EPPlus批量导出

    前台代码: 前台代码是在.net core bootstrap集成框架上的(这是效果浏览地址:http://core.jucheap.com[效果地址来自:http://blog.csdn.net/a ...

  6. java集合(list,set,map)

    集合 集合与数组 数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用. ...

  7. uboot、内核、根文件系统启动流程

    [1]Uboot的启动流程  Uboot的启动分为两个阶段.  第一阶段:设置异常向量表,设置ARM核为svc模式,关cache和关mmu,  关看门狗,初始化时钟,串口,内存,初始化栈空间,清bss ...

  8. thinkPHP中M()和D()的区别

    在实例化的过程中,经常使用D方法和M方法,这两个方法的区别在于M方法实例化模型无需用户为每个数据表定义模型类,如果D方法没有找到定义的模型类,则会自动调用M方法.通俗一点说:M实例化参数是数据库的表名 ...

  9. pandas合并merge-【老鱼学pandas】

    本节讲述对于两个数据集按照相同列的值进行合并. 首先定义原始数据: import pandas as pd import numpy as np data0 = pd.DataFrame({'key' ...

  10. 在SOUI中使用线性布局

    SOUI 2.5.1.1开始支持线性布局(LinearLayout). 要在SOUI布局中使用线性布局, 需要在布局容器窗口里指定布局类型为vbox | hbox, (vbox为垂直线性布局, hbo ...