shell bypass 403
Cubjrnet7 Shell
: /home/eklavya/.trash/administrator.1/components/com_akeebabackup/platform/Joomla/Filter/ [ drwxr-xr-x ]
<?php /** * @package akeebabackup * @copyright Copyright (c)2006-2024 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 3, or later */ namespace Akeeba\Engine\Filter; // Protection against direct access defined('_JEXEC') || die(); use Akeeba\Engine\Factory; use Akeeba\Engine\Platform; /** * Add site's main database to the backup set. */ class Sitedb extends Base { public function __construct() { // This is a directory inclusion filter. $this->object = 'db'; $this->subtype = 'inclusion'; $this->method = 'direct'; $this->filter_name = 'Sitedb'; // Add a new record for the core Joomla! database $configuration = Factory::getConfiguration(); if ($configuration->get('akeeba.platform.override_db', 0)) { $options = [ 'port' => $configuration->get('akeeba.platform.dbport', ''), 'host' => $configuration->get('akeeba.platform.dbhost', ''), 'user' => $configuration->get('akeeba.platform.dbusername', ''), 'password' => $configuration->get('akeeba.platform.dbpassword', ''), 'database' => $configuration->get('akeeba.platform.dbname', ''), 'prefix' => $configuration->get('akeeba.platform.dbprefix', ''), 'ssl' => [ 'enable' => $configuration->get('akeeba.platform.dbencryption', '0') == 1, 'cipher' => $configuration->get('akeeba.platform.dbsslcipher', ''), 'ca' => $configuration->get('akeeba.platform.dbsslca', ''), 'capath' => $configuration->get('akeeba.platform.dbsslcapath', ''), 'key' => $configuration->get('akeeba.platform.dbsslkey', ''), 'cert' => $configuration->get('akeeba.platform.dbsslcert', ''), 'verify_server_cert' => $configuration->get('akeeba.platform.dbsslverifyservercert', 0) == 1, ], ]; $driver = '\\Akeeba\\Engine\\Driver\\' . ucfirst($configuration->get('akeeba.platform.dbdriver', 'mysqli')); } else { $options = Platform::getInstance()->get_platform_database_options(); $driver = Platform::getInstance()->get_default_database_driver(true); } // This is the format of the database inclusion filters $options['ssl'] = $options['ssl'] ?? []; $options['ssl'] = is_array($options['ssl']) ? $options['ssl'] : []; $entry = [ 'host' => ($options['host'] ?? null) ?: null, 'port' => ($options['port'] ?? null) ?: null, 'socket' => ($options['socket'] ?? null) ?: null, 'username' => $options['user'] ?? null, 'password' => $options['password'] ?? null, 'database' => $options['database'] ?? null, 'prefix' => $options['prefix'] ?? '', 'dumpFile' => 'site.sql', 'driver' => $driver, 'dbencryption' => ($options['ssl']['enable'] ?? false) ? 1 : 0, 'dbsslcipher' => ($options['ssl']['cipher'] ?? '') ?: '', 'dbsslca' => ($options['ssl']['ca'] ?? '') ?: '', 'dbsslcapath' => ($options['ssl']['capath'] ?? '') ?: '', 'dbsslkey' => ($options['ssl']['key'] ?? '') ?: '', 'dbsslcert' => ($options['ssl']['cert'] ?? '') ?: '', 'dbsslverifyservercert' => ($options['ssl']['verify_server_cert'] ?? false) ? 1 : 0, ]; // We take advantage of the filter class magic to inject our custom filters $this->filter_data['[SITEDB]'] = $entry; parent::__construct(); } }