2016-04-08 5 views
1

私のテスト用PHPファイルの難読化をしようとしているGruntについて知りました。ぼんやりしたぼかしを使った難読化されたPHPの構文エラー

は、ここで元のコード、単純なハロー世界の作男、かすんで使って難読化

<?php 
echo 'hello world'; 

<?php eval("?>".base64_decode("PD9waHANCmVjaG8gJ2hlbGxvIHdvcmxkJzs=")."<?"); ?> 

とエラー:

Parse error: syntax error, unexpected '<' in D:\Projects\Grunter\hazed\index.php(1) : eval()'d code on line 2 

はここに私のGruntfile

ています
module.exports = function(grunt){ 
    grunt.initConfig({ 
     hazy: { 
      php: { 
       expand: true, 
       cwd: '', 
       dest: 'hazed', 
       src: [ '*.php' ] 
      } 
     }, 
     watch: { 
      scripts: { 
       files: ['*.php'], 
       tasks: ['hazy'] 
      } 
     } 
    }); 

    grunt.loadNpmTasks('grunt-hazy'); 
    grunt.loadNpmTasks('grunt-contrib-watch'); 
}; 

私は間違っていますか?プラグインのバグですか?

答えて

4

evalで実行された復号化されたコードを見ると、これが表示されます。

?><?php 
echo 'hello world';<? 

だから、あなたが見ることができるように、あなたがPHPタグを閉じて、それは新しいものを開くには、いくつかのテキストをエコー、その後、最初の1を閉じずに別のタグを開こうとします。

テストスクリプトで閉じるPHPタグを追加しようとすると、うまくいくと思います。

+0

それを考えなかった、ありがとう!私はあなたに答えを受け入れるでしょう – iceman2992

+0

問題はありません:)。おそらく正しい方法ですが、ハントの開閉タグが一致していないかどうかチェックしていないからです。 –

+0

彼はobfuscatorを実行する前に彼のプログラムが働いていました。その後、それは動作しませんでした。それはバグの難読化です。 –

関連する問題