Hunter Black Hat SEO
Server:LiteSpeed
System:Linux raton.hozzt.com 4.18.0-553.144.1.lve.el8.x86_64 #1 SMP Thu Jul 16 08:31:06 UTC 2026 x86_64
User:altinkayamarble (1260)
PHP:7.4.33
Disabled:symlink, show_source, system, virtual, shell_exec,passthru, exec, popen, proc_open, proc_close, proc_nice, proc_terminate,proc_get_status, pfsockopen,allow_url_fopen, posix_getpwuid, eval,posix_setsid, posix_mkfifo, posix_setpgid,posix_setuid, posix_uname,posix_kill,apache_child_terminate, apache_setenv,define_syslog_variables,escapeshellarg, escapeshellcmd, leak, dl, fp, fput,ftp_connect, ftp_exec,ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist,highlight_file, ini_alter, ini_get_all, ini_restore, inject_code
Upload Files
File: /home/altinkayamarble/www/wp-content/plugins/akeebabackupwp/app/Solo/Pythia/Oracle/Joomla.php
<?php
/**
 * @package   solo
 * @copyright Copyright (c)2014-2022 Nicholas K. Dionysopoulos / Akeeba Ltd
 * @license   GNU General Public License version 3, or later
 */

namespace Solo\Pythia\Oracle;

use Solo\Pythia\AbstractOracle;

class Joomla extends AbstractOracle
{
	/**
	 * The name of this oracle class
	 *
	 * @var  string
	 */
	protected $oracleName = 'joomla';

	/**
	 * The installer name which corresponds to the CMS recognized by this Oracle
	 *
	 * @var  string
	 */
	protected $installerName = 'angie';

	/**
	 * Does this class recognises the CMS type as Joomla?
	 *
	 * @return  boolean
	 */
	public function isRecognised()
	{
		if (!@file_exists($this->path . '/configuration.php'))
		{
			return false;
		}

		if (!@is_dir($this->path . '/administrator/components/com_admin'))
		{
			return false;
		}

		if (!@is_dir($this->path . '/libraries/joomla') && !@is_dir($this->path . '/libraries/src'))
		{
			return false;
		}

		return true;
	}

	/**
	 * Return the database connection information for this CMS / script
	 *
	 * @return  array
	 */
	public function getDbInformation()
	{
		$ret = array(
			'driver'	=> 'mysqli',
			'host'		=> '',
			'port'		=> '',
			'username'	=> '',
			'password'	=> '',
			'name'		=> '',
			'prefix'	=> '',
		);

		$fileContents = file($this->path . '/configuration.php');

		foreach ($fileContents as $line)
		{
			$line = trim($line);

			if ((strpos($line, 'public') === 0) || (strpos($line, 'var') === 0))
			{
				if (strpos($line, 'public') === 0)
				{
					$line = substr($line, 6);
				}
				else
				{
					$line = substr($line, 3);
				}
				$line = trim($line);
				$line = rtrim($line, ';');
				$line = ltrim($line, '$');
				$line = trim($line);
				list($key, $value) = explode('=', $line);
				$key = trim($key);
				$value = trim($value);

				if ((strstr($value, '"') === false) && (strstr($value, "'") === false))
				{
					continue;
				}

				$value = $this->parseStringDefinition($value);

				switch (strtoupper($key))
				{
					case 'DB':
						$ret['name'] = $value;
						break;

					case 'DBPREFIX':
						$ret['prefix'] = $value;
						break;

					case 'DBTYPE':
						$ret['driver'] = $value;
						break;

					case 'USER':
						$ret['username'] = $value;
						break;

					case 'PASSWORD':
						$ret['password'] = $value;
						break;

					case 'HOST':
						$ret['host'] = $value;
						break;

				}
			}
		}

		return $ret;
	}

}