php에서 실행되는 특정부분 스크립트 난독화 방법 질문합니다.
https://sir.kr/g5_tip/4437">https://sir.kr/g5_tip/4437
이 글을 참고해서 적용하려고 합니다.
다만 이런 경우 어떻게 사용하는지 몰라 글 남깁니다.
도움주시면 정말 감사하겠습니다.
</p><p><span style="white-space:pre"> </span>if($img == 'check') return $is_type;</p><p>
</p><p><span style="white-space:pre"> </span>$jw_id = apms_id();</p><p><span style="white-space:pre"> </span>$jwplayer_script = '';<span style="white-space:pre"> </span></p><p><span style="white-space:pre"> </span>if($is_type == 'audio' && !$img && !$caption) {</p><p><span style="white-space:pre"> </span>$jwplayer_script .= '<script type="text/javascript"></p><p><span style="white-space:pre"> </span> jwplayer("'.$jw_id.'").setup({</p><p><span style="white-space:pre"> </span>file: "'.$file.'",</p><p><span style="white-space:pre"> </span>title: "'.$title.'",</p><p><span style="white-space:pre"> </span>width: "100%",</p><p><span style="white-space:pre"> </span>height: "40",</p><p><span style="white-space:pre"> </span>repeat: "file"</p><p><span style="white-space:pre"> </span>});</p><p><span style="white-space:pre"> </span> </script>'.PHP_EOL;</p><p><span style="white-space:pre"> </span>} else if($is_type == 'plist') {</p><p><span style="white-space:pre"> </span>$plist_set = 'aspectratio: "16:9"';</p><p><span style="white-space:pre"> </span>if($cnt > 1) {</p><p><span style="white-space:pre"> </span>$plist_set = G5_IS_MOBILE ? 'aspectratio: "16:9", listbar: { position: "right", size:150 }' : 'aspectratio: "16:9", listbar: { position: "right", size:200 }';</p><p><span style="white-space:pre"> </span>}</p><p><span style="white-space:pre"> </span>$jwplayer_script .= '<script type="text/javascript"></p><p><span style="white-space:pre"> </span>jwplayer("'.$jw_id.'").setup({</p><p><span style="white-space:pre"> </span>playlist: "'.$file.'",</p><p><span style="white-space:pre"> </span>width: "100%",</p><p><span style="white-space:pre"> </span>'.$plist_set.'</p><p><span style="white-space:pre"> </span>});</p><p><span style="white-space:pre"> </span> </script>'.PHP_EOL;</p><p><span style="white-space:pre"> </span>} else {</p><p><span style="white-space:pre"> </span>$img = $img ? 'image: "'.$img.'",' : '';</p><p><span style="white-space:pre"> </span>$caption = $caption ? 'tracks: [{file: "'.$caption.'"}],' : '';</p><p><span style="white-space:pre"> </span>$jwplayer_script .= '<script type="text/javascript"></p><p><span style="white-space:pre"> </span>jwplayer("'.$jw_id.'").setup({</p><p><span style="white-space:pre"> </span>file: "'.$file.'",</p><p><span style="white-space:pre"> </span>title: "'.$title.'",</p><p><span style="white-space:pre"> </span>'.$img.'</p><p><span style="white-space:pre"> </span>'.$caption.'</p><p><span style="white-space:pre"> </span>aspectratio: "16:9",</p><p><span style="white-space:pre"> </span>width: "100%"</p><p><span style="white-space:pre"> </span>});</p><p><span style="white-space:pre"> </span> </script>'.PHP_EOL;</p><p><span style="white-space:pre"> </span>}</p><p>
</p><p><span style="white-space:pre"> </span>$jwplayer = '';</p><p><span style="white-space:pre"> </span>if($jwplayer_script) {</p><p><span style="white-space:pre"> </span>if(!defined('APMS_JWPLAYER6')) {</p><p><span style="white-space:pre"> </span>define('APMS_JWPLAYER6', true);</p><p><span style="white-space:pre"> </span>$jwplayer .= '<script type="text/javascript" src="'.G5_PLUGIN_URL.'/jwplayer/jwplayer.js"></script>'.PHP_EOL;</p><p><span style="white-space:pre"> </span>$jwplayer .= '<script type="text/javascript">jwplayer.key="'.APMS_JWPLAYER6_KEY.'";</script>'.PHP_EOL;</p><p><span style="white-space:pre"> </span>}</p><p><span style="white-space:pre"> </span>$jwplayer .= '<div id="'.$jw_id.'">Loading the player...</div>'.PHP_EOL;</p><p><span style="white-space:pre"> </span>$jwplayer .= $jwplayer_script;</p><p><span style="white-space:pre"> </span>$jwplayer .= '<div class="h15"></div>'.PHP_EOL;</p><p><span style="white-space:pre"> </span>}</p><p>
</p><p><span style="white-space:pre"> </span>return $jwplayer;</p><p>}</p><p>
여기서 어떻게 새롭게 코드를 짜야
<script type="text/javascript">
var playerInstance = jwplayer('myElement');
playerInstance.setup({
too: 'tumblr_video',
video: 'mp3 jpg png',
tux: 'tumblr_video',
file: 'https://vt.media.tumblr.com/tumblr_video.mp4" target="_blank" style="box-sizing: border-box; background: 0px 0px; color: rgb(0, 0, 0); text-decoration-line: none; cursor: pointer;">https://vt.media.tumblr.com/tumblr_video.mp4',
ted: '',
width: '100%',
tip: 'tumblr_video.mp4',
height: '380',
url: '',
taq: 'tumblr_video.mp4',
});
</script>
원래 이렇게 출력되던 스크립트를
<script type="text/javascript">
eval(function(p,a,c,k,e,d){e=function(c){return c};if(!''.replace(/^/,String)){while(c--){d[c]=k[c]||c}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('37 1=17(\'16\');1.15({14:\'13\',10:\'11-3.0 9 8 7\',6:\'5\',4:\'18://12.19.29.0/36.35\',34:\'33\',32:\'31%\',30:\'28\',21:\'27\',26:\'25://24.0/23@22.0\',20:\'2\',});',10,38,'com|playerInstance|tumblr_video|soft|file|tumblr_video|tux|png|jpg|mp3|video|elim|vt|tumblr_video.mp4|too|setup|myElement|jwplayer|https|media|taq|height|naver|http|url|380|tumblr_video|tumblr|tip|100|width|tumblr_video|ted|mp4|tumblr_video|var'.split('|'),0,{}))
</script>
이렇게 출력할 수 있나요?
도움주시면 점심값이라도 사례하겠습니다.
감사합니다.
답변 2개
php-packer 쓰시려구요?
Dean Edwards란 사람이 만든거고, 한 5년전인가 오래전부터 알려진 유명한 공개 난독화 툴이예요
자기 사이트에 툴을 만들어놓은건데, 그 툴에 대한 공개소스예요~
그거 만든사람이 당연히 사이트에 난독화 푸는 기능도 아주 쉽게 공개해놓았고,
대부분 사람들이 소스가 난독화되어있는거 만나면, 이 사이트에 찾아와서 난독화소스넣고 풀어서 쓰는데요? 그래서 유명무실한건데~~
난독화푸는 unpacker 주소예요.
(아주 많이 알려진 유명한 주소예요~ php-packer보다 더 많이 알려진 주소예요.)
http://dean.edwards.name/unpacker/">http://dean.edwards.name/unpacker/
위 주소들어가서 위에 난독화된 자바스크립트소스 붙여넣고 unpack버튼 눌러보세요~ 그대로 다 보여요
</span></p><p><span style="color: rgb(51, 51, 51); font-family: dotum, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255);">eval(function(p,a,c,k,e,d){e=function(c){return c};if(!''.replace(/^/,String)){while(c--){d[c]=k[c]||c}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('37 1=17(\'16\');1.15({14:\'13\',10:\'11-3.0 9 8 7\',6:\'5\',4:\'18://12.19.29.0/36.35\',34:\'33\',32:\'31%\',30:\'28\',21:\'27\',26:\'25://24.0/23@22.0\',20:\'2\',});',10,38,'com|playerInstance|tumblr_video|soft|file|tumblr_video|tux|png|jpg|mp3|video|elim|vt|tumblr_video.mp4|too|setup|myElement|jwplayer|https|media|taq|height|naver|http|url|380|tumblr_video|tumblr|tip|100|width|tumblr_video|ted|mp4|tumblr_video|var'.split('|'),0,{}))</span><span style="font-size: 14.6667px;"> </span></p><p><span style="color: rgb(51, 51, 51); font-family: dotum, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255);">
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
http://closure-compiler.appspot.com/home">http://closure-compiler.appspot.com/home
에서 작업하시면 됩니다만
암호화는 아니라는 것을 이해하셔야 하고
이렇게 js 를 압축하는 방법은 많습니다
답변에 대한 댓글 1개
이건 안되네요
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
바로 뚫리는것보다 좀 귀찮게 하려구요