[악성코드 분석] JavaScript_1

BEEUM·2024년 7월 21일
post-thumbnail

기존 코드

<html><body><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}('0 a="1@3";0 b="4!@#$";0 c="6";0 d="7";0 e="8";0 2=d+e+c+a+b;9("f 5 g h 5 2 i");j.k.l="m://n.o.p";',26,26,'var||KEY|||the|UM|B|EE|alert||||||Find|value|of|variable|window|location|href|https|www|google|com'.split('|'),0,{}))
</script></body></html>

개발자 도구 콘솔로 확인 (console.log())

  • 코드가 실행되지 않도록 eval() 을 제외하고 콘솔에 실행
  • 알람 및 리다이렉션이 실행되지 않도록 해당 부분 제외 후 재실행
  • console.log(KEY) 를 실행하여 KEY 값 확인 가능

KEY : BEEUM1@34!@#$

실제 자바스크립트가 어떻게 동작하는지 분석하는 것보다 개발자 도구로 디버깅하면서 확인하는 것이 빠름

JavaScript Unpacker

  • Unpacker 사이트를 활용하여 난독화 해제

    난독화 해제 사이트를 활용하여 확인도 가능하다

JavaScript Unpacker

profile
정보보안 꿈나무

0개의 댓글