Heim php教程 php手册 教你如何解密 “ PHP 神盾解密工具 ”

教你如何解密 “ PHP 神盾解密工具 ”

Jun 13, 2016 am 09:30 AM
解密

其实对神盾解密并没有那么感兴趣,只是看到了作者把工具又加密了,感觉不爽。研究了一下,其实解密没那么复杂。

利用php_apd扩展很轻松地就这把这搞定了。只有四句代码。

<&#63;php
rename_function('gzuncompress','new_gzuncompress');
override_function('gzuncompress', '$arg', 'print(new_gzuncompress($arg)); return new_gzuncompress($arg);');
 
require_once 'decryption.php';
decryption('decryption.php');
Nach dem Login kopieren

该工具的核心代码:decryption.php

<&#63;php
function decryption($fileName) {
  /**
   * 解码函数
   * @param string $str 待解码字符串
   * @param string $flg 是否解析后解码
   * @return string   已解码字符串
   */
  function decode($str, $flg = '') {
    if($flg === '') {
      $ret = $str;
    } else {
      $ret = '&#1775;'; $i = 0; $l = strlen($str);
      while($i++ < $l) {
        $c = ord($str[$i-1]);
        $ret .= $c<245 &#63; ( $c>136 &#63; chr($c/2) : $str[$i-1] ) : "";
      }
    }
    return base64_decode($ret);
  }
   
  $err = '解码遇到错误,请联系教主处理该文件!';
  $str = file_get_contents($fileName);
  $path = pathinfo($fileName);
  $dirname = $path['dirname']; // 文件所在目录
  $baseName = $path['filename']; // 文件名
   
   
  if (preg_match('|IN_DECODE_(\w{32})|s', $str, $arr)) {
    // 防止解密自己,其实方法都已经告诉你了,自己动手解码才快乐
    $arr[1] === '761b5f52db6dff7ce91344e99dcedab7' && die("err: [-1] - 请勿试图用本工具解密本工具!");
  } else {
    die("err: [-1] - 没有发现神盾特征,你确定这是神盾加密?");
  }
   
  // 匹配代码主题部分
  // '';@\$[\x00-\xff]+\(\\'([\x00-\xff]+&#63;)\\'\.\(
  preg_match('|\'\';@\$[\x00-\xff]+\(\\\\\'([\x00-\xff]+&#63;)\\\\\'\.\(|s', $str, $arr) || die("err: [0] - ".$err);
  $code = $arr[1];
 
  // 匹配中间加密部分
  preg_match('|\(\'([\x00-\xff]+)\',\'|s', $code, $arr) || die("err: [1] - ".$err);
  $key = base64_decode(decode($arr[1], "decode"));
 
  $code = preg_replace('|\'\.[\x00-\xff]+\'\)\)\.\'|s', $key, $code);
 
  // 匹配尾部被加密代码
  preg_match('|=\'(x[\x00-\xff]+)\'\)\);|s', $str, $arr) || die("err: [2] - ".$err);
  $core = $arr[1];
 
  // 匹配验证key
  preg_match('|[\w+/=]{59}=|s', $arr[1], $arr) || die("err: [3] - ".$err);
  $key = $arr[0];
 
  $core = str_replace($key, '', $core); // 去除key
  $suffix = gzuncompress($core); // 得到 base64 的末尾部分
 
  // 解码
  $code = gzuncompress(base64_decode($code . $suffix));
 
  // 匹配干净的代码
  if (preg_match('|<!--<\&#63;php endif;\&#63;>(<\&#63;php[\r\n]{1,2}[\x00-\xff]+\&#63;>)<\&#63;php \$GLOBALS\[|s', $code, $arr)) {
    $code = $arr[1];
  }
 
  // 写到文件
  $source = $dirname . DIRECTORY_SEPARATOR . $baseName . "_source.php";
  file_put_contents($source, $code);
  die("解密成功,已经保存为: " . $source);
}
Nach dem Login kopieren

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Aufdecken der Ursachen des HTTP-Statuscodes 460 Aufdecken der Ursachen des HTTP-Statuscodes 460 Feb 19, 2024 pm 08:30 PM

Aufdecken der Ursachen des HTTP-Statuscodes 460

ThinkPHP6-Datenverschlüsselung und -entschlüsselung: Schutz der Sicherheit sensibler Daten ThinkPHP6-Datenverschlüsselung und -entschlüsselung: Schutz der Sicherheit sensibler Daten Aug 25, 2023 pm 10:52 PM

ThinkPHP6-Datenverschlüsselung und -entschlüsselung: Schutz der Sicherheit sensibler Daten

So richten Sie die Wortentschlüsselung ein So richten Sie die Wortentschlüsselung ein Mar 20, 2024 pm 04:36 PM

So richten Sie die Wortentschlüsselung ein

Vollständige Liste der PHP-Verschlüsselungs- und Entschlüsselungsfunktionen: sichere Anwendungsmethoden von MD5, SHA1, Base64_encode und anderen Funktionen Vollständige Liste der PHP-Verschlüsselungs- und Entschlüsselungsfunktionen: sichere Anwendungsmethoden von MD5, SHA1, Base64_encode und anderen Funktionen Nov 18, 2023 pm 04:18 PM

Vollständige Liste der PHP-Verschlüsselungs- und Entschlüsselungsfunktionen: sichere Anwendungsmethoden von MD5, SHA1, Base64_encode und anderen Funktionen

Offengelegte Java-Entwicklungsfähigkeiten: Implementierung von Datenverschlüsselungs- und -entschlüsselungsfunktionen Offengelegte Java-Entwicklungsfähigkeiten: Implementierung von Datenverschlüsselungs- und -entschlüsselungsfunktionen Nov 20, 2023 pm 05:00 PM

Offengelegte Java-Entwicklungsfähigkeiten: Implementierung von Datenverschlüsselungs- und -entschlüsselungsfunktionen

Entschlüsselung der vom PyCharm-Interpreter hinzugefügten Tricks Entschlüsselung der vom PyCharm-Interpreter hinzugefügten Tricks Feb 21, 2024 pm 03:33 PM

Entschlüsselung der vom PyCharm-Interpreter hinzugefügten Tricks

Detaillierte Einführung in die Verschlüsselungs- und Entschlüsselungsmethoden von Vim-Text in CentOS Detaillierte Einführung in die Verschlüsselungs- und Entschlüsselungsmethoden von Vim-Text in CentOS Dec 31, 2023 pm 02:49 PM

Detaillierte Einführung in die Verschlüsselungs- und Entschlüsselungsmethoden von Vim-Text in CentOS

PHP und XML: So verschlüsseln und entschlüsseln Sie Daten PHP und XML: So verschlüsseln und entschlüsseln Sie Daten Aug 07, 2023 am 09:46 AM

PHP und XML: So verschlüsseln und entschlüsseln Sie Daten

See all articles