中文在线一区二区_欧美在线综合_久久久久久综合_欧美一区二区三区视频_国产免费看_国产福利精品一区

這是一個很笨的加密器

我們可以經常在某些經過加密文件的php文件代碼格式大體如下:

xxx_loader_lable
<?php
if(!function_exists("xxx_loader")){
   die('xxx_loader not install');
}
//encrypt part
xxxxxxxxxxx

我們就以swoole_loader為例子,它加密后的文件格式大體如下

SWOOLEC<?php extension_loaded('swoole_loader') or die(' Loader ext not installed');?>
//encrypt part
xxxxxxxxxxxxxxxxxxxxx

這個文件。正常情況下,php是無法解析的。但是呢,zend_vm的一些接口,允許我們載入某些文件的時候,對文件進行預處理。因此我的拓展需要做的事情就是,如果遇到這樣格式的文件,那么我把他解析為以下兩部分:

  • 部分1
    <?php
    if(!function_exists("xxx_loader")){
    die('xxx_loader not install');
    }
  • 部分2
    //encrypt part
    xxxxxxxxxxx

因此,code就是我經過加密后的目標字符串,顯然,我們需要完成的一個步驟就是、字符串到代碼的轉變。而這個時候,如果有敏感的同學,就會想到一個東西,那就是 eval()。因此以上代碼等價于:

<?php
if(!function_exists("xxx_loader")){
   die('xxx_loader not install');
}
eval(encrypt part);

但是實際上,并沒有這么簡單,如果我需要實現對機器授權的限制,那么應該是這樣的。

$info = xxx_loader->decode(encrypPart);
$license = $info->licenseCheck();
if($license){
    eval($info->realyCode);
}

因此,如何保護我這個xxx_loader的實現邏輯,或者是加密秘鑰,成為了代碼加解密的關鍵。但是用php的話,容易出現,被逆向比如目前場景的php混淆,很容易破解。 因此就有人提出想法,如果我把這個加密的函數協程php拓展編譯成so動態庫文件,然后so在做加殼混淆,不就完美的解決了嗎。畢竟、so加殼混淆的方案,可是非常成熟的。

主站蜘蛛池模板: 国产一区二区三区在线免费 | 国产精品久久久久久久久久免费看 | 久久综合久色欧美综合狠狠 | 中文字幕三区 | 精品伊人| 亚洲成人精品视频 | 亚洲精品乱码久久久久久金桔影视 | 成人精品在线视频 | 中文日韩在线 | 91精品啪啪 | 中文字幕在线免费 | 久久久中文 | 欧美日韩国产不卡 | 毛片区| 君岛美绪一区二区三区在线视频 | 欧美中文字幕在线 | 福利片在线 | 午夜视频网站 | 三级av在线| 亚洲午夜精品视频 | 在线播放亚洲 | 亚洲www视频 | 国户精品久久久久久久久久久不卡 | 二区三区在线观看 | 精品久久99 | 国产色区 | 自拍视频在线 | 一区二区三区在线免费视频 | 日韩在线免费观看网站 | 日韩三区 | 久久久精品一区二区 | 美色阁av | 高清中文字幕av | 国产美女精品人人做人人爽 | 久久精品国产清自在天天线 | 欧美视频在线观看不卡 | 日韩成人在线电影 | 精品国产一区二区三区在线观看 | 男女精品视频 | 久久影视精品 | www.欧美精品 |