0

重複の可能性:
暗号化せずに PHP コードを保護するための最良のソリューション

PHPですべての関数名を難読化しても大丈夫/許容できるかどうか、誰か教えてもらえますか?

たとえば、これはオンライン ツールを使用して機能するようです。

オリジナル:

if(file_exists($file)){chmod($file,0644);echo"good";}

難読化:

$x0c="\143hm\x6f\144"; $x0d="\x66\x69\x6ce\x5f\x65\170\151\x73\164\x73"; 
if($x0d($x0b)){$x0c($x0b,0644);echo"go\x6fd";}?>

私の質問:

  1. file_exists または chmod 関数がなくなったことに注意してください。ただし、これはどの PHP インストール セットアップ/バージョンでも機能しますか?
  2. このメソッドを使用して、次のような任意の PHP 関数を実行できます: file()、eval()、base64_decode()、file_get_contents(); str_rot13(), strpos(), touch(), filemtime() ?
  3. これは Windows、Linux などのサーバーで動作しますか?
4

1 に答える 1

0
  1. file_exists または chmod 関数がなくなったことに注意してください。ただし、これはどの PHP インストール セットアップ/バージョンでも機能しますか?
  2. このメソッドを使用して、file()、eval()、base64_decode()、file_get_contents(); などの任意の php 関数を実行できます。str_rot13(), strpos(), touch(), filemtime() ?
  3. これは Windows、Linux などのサーバーで動作しますか?

はい、はい、はい。

PHPですべての関数名を難読化しても問題ない/許容できるかどうか、誰か教えてもらえますか?

いいえ、いいえ、そして地獄いいえ。

したがって、このコードは機能しますが、いくつかの大きな問題があります。

  1. 難読化すればするほど、コードは遅くなります。人生の単純な事実.
  2. 上級ユーザーにとって、すべての作業を単純に元に戻すのは簡単なことです。著作権侵害対策としてソースを難読化しようとしている場合は、気にする必要はありません。
  3. 悪いことをしようとしてソースを難読化しようとしている場合は、このようなものが「間違った」見た目であるとして親指のように突き出ているため、簡単に削除できることに注意してください。
  4. disable_functions最後に、関数の名前を隠しても、PHP の組み込み構成設定をバイパスすることはできません。
于 2012-12-21T05:46:46.370 に答える