%PDF- %PDF- 403WebShell
403Webshell
Server IP : 37.220.80.31  /  Your IP : 3.147.55.35
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64
User : www-root ( 1010)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/rest/tools/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/rest/tools/rest.php
<?php
define("NOT_CHECK_PERMISSIONS", true);

require_once($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/include/prolog_before.php");

use Bitrix\Main\Localization\Loc;
use Bitrix\Rest\Marketplace\Application;
use Bitrix\Rest\Engine\Access;

Loc::loadMessages(__FILE__);

$result = array();
$request = Bitrix\Main\Context::getCurrent()->getRequest();

if($request->isPost() && check_bitrix_sessid() && \Bitrix\Main\Loader::includeModule('rest'))
{
	$action = $request['action'];
	$admin = \CRestUtil::isAdmin();

	switch($action)
	{
		case 'install':
			$code = $request['code'];
			$version = $request['version'];
			$checkHash = $request['check_hash'];
			$installHash = $request['install_hash'];
			$from = $request['from'] ?? null;

			$result = Application::install($code, $version, $checkHash, $installHash, $from);
		break;

		case 'uninstall':
			$code = $request['code'];
			$clean = $request['clean'] == 'true';
			$from = $request['from'] ?? null;

			$result = Application::uninstall($code, $clean, $from);
		break;

		case 'reinstall':
			$id = $request['id'];

			$result = Application::reinstall($id);
		break;

		case 'get_app_rigths':
			$appId = (int) $request['app_id'];

			$result = Application::getRights($appId);
		break;

		case 'set_app_rights':
			$appId = (int) $request['app_id'];
			$rights = $request->getPost('rights');

			$result = Application::setRights($appId, $rights);
		break;

		case 'activate_demo':
			if ($admin)
			{
				if (!\Bitrix\Rest\OAuthService::getEngine()->isRegistered())
				{
					try
					{
						\Bitrix\Rest\OAuthService::register();
						\Bitrix\Rest\OAuthService::getEngine()->getClient()->getApplicationList();
					}
					catch(\Bitrix\Main\SystemException $e)
					{
						$result = [
							'error' => Loc::getMessage('REST_MP_CONFIG_ACTIVATE_ERROR'),
							'error_description' => $e->getMessage(),
							'error_code' => $e->getCode()
						];
					}
				}
				else
				{
					try
					{
						\Bitrix\Rest\OAuthService::getEngine()->getClient()->getApplicationList();
					}
					catch(\Bitrix\Main\SystemException $e)
					{
						$result = [
							'error' => Loc::getMessage('REST_MP_CONFIG_ACTIVATE_ERROR'),
							'error_description' => $e->getMessage(),
							'error_code' => 4
						];
					}
				}

				if (\Bitrix\Rest\OAuthService::getEngine()->isRegistered())
				{
					$queryField = [];
					$loadedBitrix24 = \Bitrix\Main\Loader::includeModule('bitrix24');
					if ($loadedBitrix24)
					{
						$host = '';
						if (defined('BX24_HOST_NAME'))
						{
							$host = BX24_HOST_NAME;
						}
						else
						{
							$server = \Bitrix\Main\Context::getCurrent()->getServer();
							$host = $server->getHttpHost();
						}

						$queryField = [
							'DEMO' => 'subscription',
							'SITE' => $host
						];

						if (function_exists('bx_sign'))
						{
							$queryField['hash'] = bx_sign(md5(implode('|', $queryField)));
						}
					}
					else
					{
						include $_SERVER['DOCUMENT_ROOT'] . '/bitrix/license_key.php';

						if (!empty($LICENSE_KEY))
						{
							$queryField = [
								'DEMO' => 'subscription',
								'SITE' => 'cp',
								'key' => md5($LICENSE_KEY),
								'hash' => md5('cp'. '|' . 'subscription' . '|' . md5($LICENSE_KEY))
							];
						}
					}

					if ($queryField)
					{
						$httpClient = new \Bitrix\Main\Web\HttpClient();
						if ($response = $httpClient->post('https://www.1c-bitrix.ru/buy_tmp/b24_coupon.php', $queryField))
						{
							if (mb_strpos($response, 'OK') === false)
							{
								$result = [
									'error' => Loc::getMessage('REST_MP_CONFIG_ACTIVATE_ERROR'),
									'error_code' => 2,
								];
							}
							else
							{
								$result = ['result' => true];
							}

							if (!$loadedBitrix24)
							{
								require_once( $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/classes/general/update_client.php');
								$errorMessage = '';
								CUpdateClient::GetUpdatesList($errorMessage, LANG);
							}
						}
					}
				}
				elseif (!$result['error'])
				{
					$result = [
						'error' => Loc::getMessage('REST_MP_CONFIG_ACTIVATE_ERROR'),
						'error_code' => 1,
					];
				}
			}
			else
			{
				$result = ['error' => Loc::getMessage('REST_ACTIVATE_DEMO_ACCESS_DENIED')];
			}

			break;


		default:
			$result = array('error' => 'Unknown action');
	}
}

Header('Content-Type: application/json');
echo \Bitrix\Main\Web\Json::encode($result);

require_once($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/include/epilog_after.php");

Youez - 2016 - github.com/yon3zu
LinuXploit