導航:首頁 > 編程語言 > phpeval加密

phpeval加密

發布時間:2023-02-11 06:01:29

『壹』 php加密後門特徵,如何找出後門

這個特徵是你的掃描器自定的,你可以看到後面還有一列特徵
裡面的字元串就是掃描器,掃讀源碼發現該文件內有該字元串,才會列出的

其實這種類型的判斷並不準確,但可以大致鎖定范圍

PHP中eval函數的確是PHP後門中常用的招數

『貳』 PHP解密 eval( base64_decode

這兩個函數在php中是用得對php代碼進行加密與解密碼的base64_encode是加密,爾base64_decode是解密了,下面我們看兩個簡單實例。

base64_encode語法: string base64_decode(string data);
*/

$str='='; //定義字元串
echo base64_decode($str); //www.111cn.net一聚教程網 //輸出解碼後的內容/*

base64_encode語法: string base64_encode(string data);
*/

$str='www.111cn.net一聚教程網'; //定義字元串
echo base64_encode($str); // = //輸出編碼後的內容

看一下這個會不會對你有幫助。

『叄』 php源碼怎麼加密

一、無需任何PHP擴展的加密

此類加密的代表有 威盾PHP加密專家、PHP在線加密平台、PHP神盾 等。

此類加密都是以eval函數為核心,輔以各式各樣的字元串混淆和各種小技巧,來達到加密目的(更准確的說,應該算是混淆)。下面以一個簡單的hello world為例來說明此類加密的大體過程。

<?php

echo "hello world";

首先 ,我們把這段代碼變為通過eval執行的

<?php

eval('echo "hello world";');

然後 ,我們再進行一些轉換,比如說base64編碼

<?php

eval(base64_decode('ZWNobyAiaGVsbG8gd29ybGQiOw=='));

就這樣子,我們的第一個加密過的php代碼新鮮出爐了。。。

上面這個例子非常非常簡單,基本上任何有一點php語言基礎甚至別的語言基礎的人都能輕松的看懂並解密。因此,我們需要一些方法讓這個加密至少看上去不是那麼簡單。

二、同時採用多種編碼函數

除了剛才提到的base64,php還有許多內置的編碼函數,例如urlencode、gzcompress等。把這些函數混合使用可以提高解密的復雜度(不是難度),此外還可以使用strtr來制定自己的編碼規則。 使用變數來代替函數名 使用特定字元來命名變數

這兒所說的特定字元是一些極其相似的字元,如I和1,0和O。試想一下滿屏都是O和0組成的變數,並且每一個的名字長度都在10個字元以上。。。 判斷文件自身是否被修改

這個功能看似容易,對文件做一下摘要再進行下對比即可知道是否被修改了,但是如何才能在文件內把摘要嵌入進去呢?我沒有找到完美的方案,但一個變通的方案還是很容易的。。。

<?php

$code = substr(file_get_contents(__FILE__), 0, -32);

$hash = substr(file_get_contents(__FILE__), -32);

if (md5($code) !== $hash) {

exit('file edited');

}

當然,你可以把這個校驗字元串放在別的位置來提高破解的難度。有了這個,別人想破解你的程序可就得多費一點功夫了。。。

既然知道了原理,那解密自然也就非常簡單了,總體來說就三步:

把eval替換為輸出,比如echo 根據編碼規則把字元串還原 如果文件未解密完全,從第一步開始繼續

當然,實際上的解密過程並沒有這么簡單,比如說如果加密的時候使用了gzcompress,那得到的數據將會包含一些二進制數據,而採用一般的文本編輯器打開時這些數據都會顯示為亂碼,並且在保存時丟失部分數據。解決方法很簡單也很麻煩,那就是使用二進制(16進制)方式打開、修改和保存。

『肆』 PHP中給源代碼加密的幾種方法

<?php
function encode_file_contents($filename) {
$type=strtolower(substr(strrchr($filename,'.'),1));
if ('php' == $type && is_file($filename) && is_writable($filename)) { // 如果是PHP文件 並且可寫 則進行壓縮編碼
$contents = file_get_contents($filename); // 判斷文件是否已經被編碼處理
$contents = php_strip_whitespace($filename);

// 去除PHP頭部和尾部標識
$headerPos = strpos($contents,'<?php');
$footerPos = strrpos($contents,'?>');
$contents = substr($contents, $headerPos + 5, $footerPos - $headerPos);
$encode = base64_encode(gzdeflate($contents)); // 開始編碼
$encode = '<?php'."\n eval(gzinflate(base64_decode("."'".$encode."'".")));\n\n?>";

return file_put_contents($filename, $encode);
}
return false;
}

//調用函數
$filename = 'dam.php';
encode_file_contents($filename);
echo "OK,加密完成!"
?>

<?php

function RandAbc($length = "") { // 返回隨機字元串
$str = "";
return str_shuffle($str);
}

$filename = 'index.php'; //要加密的文件
$T_k1 = RandAbc(); //隨機密匙1
$T_k2 = RandAbc(); //隨機密匙2
$vstr = file_get_contents($filename);
$v1 = base64_encode($vstr);
$c = strtr($v1, $T_k1, $T_k2); //根據密匙替換對應字元。
$c = $T_k1.$T_k2.$c;
$q1 = "O00O0O";
$q2 = "O0O000";
$q3 = "O0OO00";
$q4 = "OO0O00";
$q5 = "OO0000";
$q6 = "O00OO0";
$s = '$'.$q6.'=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");$'.$q1.'=$'.$q6.'{3}.$'.$q6.'{6}.$'.$q6.'{33}.$'.$q6.'{30};$'.$q3.'=$'.$q6.'{33}.$'.$q6.'{10}.$'.$q6.'{24}.$'.$q6.'{10}.$'.$q6.'{24};$'.$q4.'=$'.$q3.'{0}.$'.$q6.'{18}.$'.$q6.'{3}.$'.$q3.'{0}.$'.$q3.'{1}.$'.$q6.'{24};$'.$q5.'=$'.$q6.'{7}.$'.$q6.'{13};$'.$q1.'.=$'.$q6.'{22}.$'.$q6.'{36}.$'.$q6.'{29}.$'.$q6.'{26}.$'.$q6.'{30}.$'.$q6.'{32}.$'.$q6.'{35}.$'.$q6.'{26}.$'.$q6.'{30};eval($'.$q1.'("'.base64_encode('$'.$q2.'="'.$c.'";eval(\'?>\'.$'.$q1.'($'.$q3.'($'.$q4.'($'.$q2.',$'.$q5.'*2),$'.$q4.'($'.$q2.',$'.$q5.',$'.$q5.'),$'.$q4.'($'

『伍』 php7代碼如何加密

我們先寫出函數:

<?php

function encode_file_contents($filename) {

$type=strtolower(substr(strrchr($filename,'.'),1));

if ('php' == $type && is_file($filename) && is_writable($filename)) { //

如果是PHP文件 並且可寫 則進行壓縮編碼

$contents = file_get_contents($filename); // 判斷文件是否已經被編碼處

$contents = php_strip_whitespace($filename);

// 去除PHP頭部和尾部標識

$headerPos = strpos($contents,'<?php');

$footerPos = strrpos($contents,'?>');

$contents = substr($contents, $headerPos + 5, $footerPos -

$headerPos);

$encode = base64_encode(gzdeflate($contents)); // 開始編碼

$encode = '<?php'." eval(gzinflate(base64_decode("."'".

$encode."'"."))); ?>";

return file_put_contents($filename, $encode);

}

return false;

}

調用此函數:

$filename = 'result1.php';

encode_file_contents($filename);

echo "OK,加密完成!";

?>

3

測試是否加密成功:文件名為result1.php,運行代碼

4

運行成功。

『陸』 php代碼怎麼加密最好,不能破解的那種

無論怎麼混淆,它最終都是靠執行eval來運行其代碼的。
所以我們只要在php中載入runkit擴展,啟用runkit.internal_override選項,然後另寫一個php文件來rename掉eval,然後自己實現一個function eval($code) {echo $code;},然後include這個文件。接著只要訪問一下那個文件,這個加密的文件就會自己輸出自己解密後的代碼了。
http://php.net/manual/zh/function.runkit-function-rename.php
這種解密的思路稱為「通過劫持eval破解程序加密」。

『柒』 誰知道這個是php代碼怎麼加密的,謝謝

用base64_encode()加密, 層層嵌套,比較簡單。

解開後是這樣的:

$icnd=$_GET["icnd"];
echo'<center><iframesrc="http://embed.yt-mp3.com/watch?v='.$_GET['icnd'].'&amp;downloadbtn=true"style="width:320px;height:100px;border:0px;"></iframe></center>';
echo'<center><br>poweredby<atarget="_blank"href="http://www.italianddl.tk">italianddl.tk</a></center>';
閱讀全文

與phpeval加密相關的資料

熱點內容
安卓java調用python 瀏覽:395
java標准時間 瀏覽:137
華為伺服器湖北渠道商雲主機 瀏覽:30
韓式面部護理解壓視頻 瀏覽:301
pdf換成jpg圖片 瀏覽:897
dh加密演算法 瀏覽:107
安卓手機如何隱藏微信信息提示 瀏覽:632
nodejs解壓縮 瀏覽:262
直流雙轉子壓縮機 瀏覽:952
pythonxmlstring 瀏覽:822
用私鑰加密之後可以用公鑰解密 瀏覽:788
ug如何啟動伺服器 瀏覽:444
csgo防抖動命令 瀏覽:960
如何弄到手機app頁面的源碼 瀏覽:441
androidwindows7破解版 瀏覽:363
解壓視頻動畫怎麼拍 瀏覽:748
連漲啟動源碼 瀏覽:163
小奔運動app網路異常怎麼回事 瀏覽:449
php開啟壓縮 瀏覽:307
伺服器主機如何設置啟動 瀏覽:284