Server IP : 15.235.198.142 / Your IP : 216.73.216.155 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ballsack 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/rhodeworks/wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/ |
Upload File : |
<?php class wfWafApiException extends Exception { } class wfWafMissingApiKeyException extends wfWafApiException { } class wfWafApi { private $waf; private $apiKey; public function __construct($waf) { $this->waf = $waf; $this->apiKey = $this->getConfig('apiKey'); if (empty($this->apiKey)) throw new wfWafMissingApiKeyException('No API key is available'); } private function getConfig($key) { return $this->waf->getStorageEngine()->getConfig($key, null, 'synced'); } private function guessSiteUrl() { return sprintf('%s://%s/', $this->waf->getRequest()->getProtocol(), $this->waf->getRequest()->getHost()); } private function guessSiteUrlIfNecessary($configKey) { $url = $this->getConfig($configKey); if (!$url) $url = $this->guessSiteUrl(); return $url; } private function getSiteUrl() { return $this->guessSiteUrlIfNecessary('siteURL'); } private function getHomeUrl() { return $this->guessSiteUrlIfNecessary('homeURL'); } private function buildQueryString($additionalParameters = array()) { $parameters = array( 'k' => $this->apiKey, 's' => $this->getSiteUrl(), 'h' => $this->getHomeUrl(), 't' => microtime(true), 'lang' => $this->getConfig('WPLANG') ); $parameters = array_merge($parameters, $additionalParameters); return http_build_query($parameters, '', '&'); } private function buildUrl($queryParameters, $path = '') { return WFWAF_API_URL_SEC . $path . '?' . $this->buildQueryString($queryParameters); } public function actionGet($action, $parameters = array()) { $parameters['action'] = $action; $url = $this->buildUrl($parameters); $response = wfWAFHTTP::get($url); if ($response === false) throw new wfWafApiException('Request failed'); return $response; } }