Sh4n3e

써니나타스 : Level 5 본문

Wargame/SuNiNaTaS

써니나타스 : Level 5

sh4n3e 2017. 7. 8. 00:31


우리는 소스에서 이상한 점을 발견해야 한다. 또한 Hint의 숫자를 나중에 Unpacking한 소스에 이용해야 한다.

<script>

eval(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[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}('g l=m o(\'0\',\'1\',\'2\',\'3\',\'4\',\'5\',\'6\',\'7\',\'8\',\'9\',\'a\',\'b\',\'c\',\'d\',\'e\',\'f\');p q(n){g h=\'\';g j=r;s(g i=t;i>0;){i-=4;g k=(n>>i)&u;v(!j||k!=0){j=w;h+=l[k]}}x(h==\'\'?\'0\':h)}',34,34,'||||||||||||||||var|result||start|digit|digitArray|new||Array|function|PASS|true|for|32|0xf|if|false|return'.split('|'),0,{}))         

</script>

이 소스는 Packing Script언어임을 알아야 한다.

http://www.strictly-software.com/unpacker 다음의 사이트를 통해 unpacking을 할 수 있다.


패킹된 결과이다.

var digitArray = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');

function PASS(n) {

          var result = '';

          var start = true;

          for (var i = 32; i > 0;) {

                    i -= 4;

                    var digit = (n >> i) & 0xf;

                    if (!start || digit != 0) {

                              start = false;

                              result += digitArray[digit]

                    }

          }

          return (result == '' ? '0': result)

}


Unpacking한 소스를 통해 받아낸 9c43c20c코드를 통해서 페이지에 입력해서 넣는다.


'Wargame > SuNiNaTaS' 카테고리의 다른 글

써니나타스 : Level 6  (0) 2017.07.08
써니나타스 : Level 4  (0) 2017.07.08
써니나타스 : Level 3  (0) 2017.07.08
써니나타스 : Level 2  (0) 2017.07.04
써니나타스 : Level 1  (0) 2017.07.03
Comments