首頁 >後端開發 >PHP問題 >php混淆有多少種

php混淆有多少種

(*-*)浩
(*-*)浩原創
2019-10-18 10:34:243284瀏覽

php混淆有多少種

混淆方法:

#兩個檔案採用了4種混淆方法對程式碼進行混淆

1、局部變數追加亂碼   (推薦學習:PHP影片教學

對於局部變量,在經過轉為無意義單字符後,在變量名後追加多個'\xEF\xBD\xBD'字符,並在其中混雜一些其他不可見字符(7E以後的),給人以亂碼的感覺,單實際上並無影響。局部變數可以任意命名,只要能分辨出來就好。

2、利用unicode加轉義符號顯示字串,採用十進位和十六進位兩種方式進行顯示,避免直觀看到。

php可以使用如"\150\157\155\145\120\141\164\150"(十進位)或"\x73\x79\x73\x74\x65\x6d\x4c \x6f\x67"(十六進位)在檔案中作為變數名稱。這種方式直接

3、利用php字串可以當函數名,將常用函數名隱藏

使用了

$GLOBALS全域變數

define巨集函數

base64_decode函數

以及自訂不可逆函數_kstr2()函數

#4 、使用字串連接符號來連接被分割並轉換的字串

其中_kstr2()程式碼還原後的結果如下

   function _kstr2($str) {
        $len = strlen($str);
        $result = '';
        $baseChar = ord($str[0]) - 30;
        for ($str = 1; $str < $len; $str+= 2) {
            if ($str + 1 < $len) {
                $result.= chr(ord($str[$str + 1]) + $baseChar );
                $result.= chr(ord($str[$str]) + $baseChar );
            } else {
                $result.= chr(ord($str[$str]) + $baseChar );
            }
        }
        return $result;
    }
}

以上是php混淆有多少種的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn