De-obfuscate PHP malware/viruses and tampering code on Wordpress to original readable code.
*Please note that not all obfuscation codes can be decoded.<?php namespace Mgt\Varnish\Controller\Adminhtml\Queue; class Information extends \Magento\Backend\App\Action { const SQL_LIMIT_URL_QUEUE = 500; protected $jsonHelper; protected $storeManager; protected $urlQueueCollection; public function __construct(\Magento\Backend\App\Action\Context $context, \Magento\Framework\Json\Helper\Data $jsonHelper, \Magento\Store\Model\StoreManagerInterface $storeManager, \Mgt\Varnish\Model\ResourceModel\UrlQueue\Collection $urlQueueCollection) { goto Dd14a; Dd14a: parent::__construct($context); goto e0dc2; Ac831: $this->storeManager = $storeManager; goto ea3cd; e0dc2: $this->jsonHelper = $jsonHelper; goto c45bd; c45bd: $this->urlQueueCollection = $urlQueueCollection; goto Ac831; ea3cd: } public function execute() { goto F7e85; d4b36: $response = $this->getResponse(); goto E60f2; b5a4d: $urlsInQueue = $this->getUrlsFromQueue(); goto cb711; cad13: return $response; goto Ac430; cb711: $data = ["\156\165\x6d\142\x65\x72\x4f\146\x55\162\154\163" => $numberOfUrls, "\143\157\x6e\x74\145\156\x74" => implode("\74\x62\162\76", $urlsInQueue)]; goto d4b36; F7e85: $numberOfUrls = $this->urlQueueCollection->getSize(); goto b5a4d; E60f2: $response->representJson($this->jsonHelper->jsonEncode($data)); goto cad13; Ac430: } public function getUrlsFromQueue() { goto Dbd5b; Ac13b: foreach ($this->urlQueueCollection as $url) { goto ac83b; Cebb7: $url = sprintf("\45\163\57\x25\x73", rtrim($store->getBaseUrl(), "\57"), ltrim($url->getPath(), "\x2f")); goto E784d; F4485: bbf9b: goto D1f66; d1b2f: $store = $this->storeManager->getStore($storeId); goto Cebb7; E784d: $urls[] = $url; goto F4485; ac83b: $storeId = $url->getStoreId(); goto d1b2f; D1f66: } goto E08e4; c0228: $this->urlQueueCollection->setPageSize(self::SQL_LIMIT_URL_QUEUE); goto bc2ca; E08e4: b74b6: goto E53db; E53db: return $urls; goto B97e2; b97cc: $this->urlQueueCollection->addOrder("\x70\x72\151\157\162\x69\x74\171"); goto c0228; bc2ca: $this->urlQueueCollection->load(); goto Ac13b; Dbd5b: $urls = []; goto b97cc; B97e2: } }
<?php namespace Mgt\Varnish\Controller\Adminhtml\Queue; class Information extends \Magento\Backend\App\Action { const SQL_LIMIT_URL_QUEUE = 500; protected $jsonHelper; protected $storeManager; protected $urlQueueCollection; public function __construct(\Magento\Backend\App\Action\Context $context, \Magento\Framework\Json\Helper\Data $jsonHelper, \Magento\Store\Model\StoreManagerInterface $storeManager, \Mgt\Varnish\Model\ResourceModel\UrlQueue\Collection $urlQueueCollection) { parent::__construct($context); $this->jsonHelper = $jsonHelper; $this->urlQueueCollection = $urlQueueCollection; $this->storeManager = $storeManager; } public function execute() { $numberOfUrls = $this->urlQueueCollection->getSize(); $urlsInQueue = $this->getUrlsFromQueue(); $data = ["numberOfUrls" => $numberOfUrls, "content" => implode("<br>", $urlsInQueue)]; $response = $this->getResponse(); $response->representJson($this->jsonHelper->jsonEncode($data)); return $response; } public function getUrlsFromQueue() { $urls = []; $this->urlQueueCollection->addOrder("priority"); $this->urlQueueCollection->setPageSize(self::SQL_LIMIT_URL_QUEUE); $this->urlQueueCollection->load(); foreach ($this->urlQueueCollection as $url) { $storeId = $url->getStoreId(); $store = $this->storeManager->getStore($storeId); $url = sprintf("%s/%s", rtrim($store->getBaseUrl(), "/"), ltrim($url->getPath(), "/")); $urls[] = $url; } return $urls; } }
Malware detection & removal plugin for WordPress
(C)2020 Wordpress Doctor All rights reserved.