Server IP : 104.21.38.3 / Your IP : 172.70.92.184 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,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,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/wwwroot/coircraft.com/wp-content/plugins/wordfence/lib/ |
Upload File : |
<?php class wfWebsiteEphemeralPayloadRetrievalException extends RuntimeException { } class wfWebsiteEphemeralPayloadExpiredException extends wfWebsiteEphemeralPayloadRetrievalException { const STATUS = 404; public function __construct() { parent::__construct('Ephemeral payload expired', self::STATUS); } } class wfWebsiteEphemeralPayloadRateLimitedException extends wfWebsiteEphemeralPayloadRetrievalException { const STATUS = 429; public function __construct() { parent::__construct('Request limit reached', self::STATUS); } } /** * Utilities related to the Wordfence website (wordfence.com) */ class wfWebsite { private static $INSTANCE = null; private $url; private function __construct($url) { $this->url = trailingslashit($url); } public function getUrl($relative) { return $this->url . $relative; } public function retrievePayload($token, &$expired) { $url = $this->getUrl("api/ephemeral-payload/$token"); $response = wp_remote_get($url); $status = wp_remote_retrieve_response_code($response); if (!is_wp_error($response) && $status === 200) { return wp_remote_retrieve_body($response); } switch ($status) { case wfWebsiteEphemeralPayloadExpiredException::STATUS: throw new wfWebsiteEphemeralPayloadExpiredException(); case wfWebsiteEphemeralPayloadRateLimitedException::STATUS: throw new wfWebsiteEphemeralPayloadRateLimitedException(); default: throw new wfWebsiteEphemeralPayloadRetrievalException('Failed to retrieve ephemeral payload', (int) $status); } } public static function getInstance() { if (self::$INSTANCE === null) self::$INSTANCE = new self(WORDFENCE_WWW_BASE_URL); return self::$INSTANCE; } public static function url($relative) { return self::getInstance()->getUrl($relative); } }