403Webshell
Server IP : 89.108.64.180  /  Your IP : 216.73.216.229
Web Server : Apache/2.4.41 (Ubuntu)
System : Linux 89-108-64-180.cloudvps.regruhosting.ru 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User : www-root ( 1010)
PHP Version : 8.0.30
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/sadovaya-gelendgik.ru/wp-content/plugins/wp-reset/libs/pCloud/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/sadovaya-gelendgik.ru/wp-content/plugins/wp-reset/libs/pCloud/App.php
<?php

namespace pCloud;

class App {

	public static function loadAppInfoFile($appInfoPath) {
		if (!file_exists($appInfoPath)) {
			throw new Exception("Application config file not found");
			
		}
		return json_decode(file_get_contents($appInfoPath));
	}

	public static function getAuthorizeCodeUrl($config) {
		self::validParams($config, ["appKey"]);

		$params = [
			"client_id" => $config->appKey,
			"response_type" => "code"
		];


		if (isset($config->redirect_uri) && !empty($config->redirect_uri)) {
			$params["redirect_uri"] = $config->redirect_uri;
		}

		return "https://my.pcloud.com/oauth2/authorize?".http_build_query($params);
	}

	public static function getToken($appInfoPath, $credentialPath) {
		$appInfo = self::loadAppInfoFile($appInfoPath);

		self::validParams($appInfo, ["appKey", "appSecret", "code"]);

		$params = [
			"client_id" => $appInfo->appKey,
			"client_secret" => $appInfo->appSecret,
			"code" => $appInfo->code
		];

		$url = "https://api.pcloud.com/oauth2_token?".http_build_query($params);

		$curl = curl_init($url);

		curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

		$response = curl_exec($curl);

		if (strpos(curl_getinfo($curl, CURLINFO_CONTENT_TYPE), "application/json") !== false) {
			$response = json_decode($response);
		}

		if ($response->result == 0) {
			$token = ["access_token" => $response->access_token];
			if (!file_put_contents($credentialPath, json_encode($token, 128))) {
				throw new Exception("Couldn't write access_token");
			}
		} else {
			throw new Exception($response->error);
		}
	}

	private static function validParams($params, $keys) {
		foreach ($keys as $key) {
			if (!isset($params->$key) || empty($params->$key)) {
				throw new Exception("\"{$key}\" not found");
			}
		}
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit