[10] Red Kit 의 재미있는 난독화

난독화/난독화 강좌 2013. 11. 27. 03:56

Red Kit randing page에 사용된 난독화 방법 중 일부를 분석해 보자

 

Red Kit에 대해 간단히 소개하면 Blackhole EK 만큼이나 유명한 Web Exploit Tool Kit으로 자바취약점과 PDF 취약점을 이용한다. Red Kit은 이미 2012년부터 Red Kit을 이용한 악성코드 유포가 국내에서도 발견되고 있다고 한다. 

 

Red Kit관련 자료는 아래의 블로그들을 참조바란다.

Malware Must Die 블로그: http://malwaremustdie.blogspot.kr/2012_12_01_archive.html

Mcafee 블로그: http://blogs.mcafee.com/mcafee-labs/red-kit-an-emerging-exploit-pack

Hakawati Security Lab 블로그:

http://hidka.tistory.com/entry/Redkit-Exploit-Tool-Redkit-Landing-Page에-관한-정보

--------------------------------------------------------------------------------------------------

 

아래는 Red Kit randing page의 소스코드 일부이다. Jar 파일과 PDF 파일을 쉽게 확인할 수 있다.

하지만 작년 자료이기 때문에 해당 파일들을 구할 수는 없었다

[그림.1] Red Kit randing page

 

[그림.2] 는 오늘 난독화 공부를 할 부분이다.

[그림.2] 자바 취약점 난독화 데이터 부분

 

자세히 보면 자바 부분의 value 값에서 이상한  점을 발견할 수 있다. 

이 패턴은 Blackhole EK에서 자바 부분에 난독화된 데이터를 value값으로  삽입하는 것과

비슷해 보였다. 내 생각이 맞다면 jar파일 안에는 이부분을 복호화하는 스크립트가 있을 것이다.

 

하지만 JAR 파일을 구할 수 없으니 무식하게 복호화 해보기로 하자

[그림.2] 를 자세히 보면 llobapop 가 반복적으로 사용되는 것을 알 수 있다. 난독화된 데이터에서 이런 경우 대부분이 해당 패턴은 사라진다. (물론 여기서는 추측이다.)

 

llobapop 을 모두 제거하면 [그림.3]의 처럼, llobapop 을 공백으로 바꾸어 주면 [그림.3]의 처럼 되는 것을 확인 할 수 있다.

[그림.3] 말질라를 이용한 특정 패턴 제거

 

JAR파일이 없기 때문에 더이상 진도가 나가지 않았다. 하지만 구글링을 통하여 해당 부분의 복호화 정보를 얻을 수 있었다.

힌트는 llobapop 을 제거 후 3자리씩 쪼개진 데이터에서 첫번째 문자만 남기고 제거한다. 그리고 남은 문자들을 거꾸로(reverse) 정렬하면 복화화된 데이터를 얻을 수 있었다

[그림.4] 첫 번째 문자를 추출 후 거꾸로 정렬

 

간단한 스크립트를 이용하여 구현해 보았다. 

 [그림.5] 첫번째 문자만 남기고 거꾸로 정렬하는 스크립트

 

 [그림.6] 스크립트실행시 결과

 

복호화 결과 추가 접근하는 URL 정보를 얻을 수 있었다. (끝...;;)

 

오늘의 미션!!

JAR 파일에 포함되어 있을 복호화 스크립트를 자바스크립트로 구현해 보자

- value 값을 한번에 복호화하는 스크립트

 <script>

function redkit_de(s){
a = s.replace(/llobapop/g," ");    //-- llobapop 를 모두 찾아 " "으로 변환
a = a.split(" ")  //-- a를 배열로 나누기
b = ""; 

for (i=0;i<a.length;i++){b += a[i].substring(0,1);}   // a의 첫번재 문자들을 b 변수에 저장
c = b.split("").reverse().join("");  //-- b의 값을 거꾸로 정렬하여 c 변수에 저장
alert(c); 

}

redkit_de("복호화할 데이터 넣는 부분");  //-- redkit_de 함수 실행

</script>

 

 

* 연습용 샘플

mynllobapopoynllobapopcgbllobapop.ecllobapopyqtllobapoprnnllobapopocellobapo

ptssllobapopsefllobapopiefllobapopt22llobapop.qwllobapopahtllobapoprhwllobapop

ar3llobapopvntllobapopeajllobapopuhtllobapopgljllobapopgbvllobapopnfellobapopae

allobapopwefllobapopkdwllobapop/d2llobapop/3fllobapop:42llobapoppefllobapopt21

llobapopt32llobapophfellobapop

 -> 연습용 샘플을 복호화 할 데이터 부분에 넣으면 동작하는 것을 테스트 할수 있습니다.

    연습용 샘플은 연습할 수 있도록 만든 것으로 악성코드가 아닙니다.
 

 

 

 

설정

트랙백

댓글

자바스크립트 정리 8 (정규표현식)

## 정규표현식

 

1. 정규표현식 (특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어)
  1) 형태 ()
    - var test = new RegExp("정규표현식");
    - var test = /정규표현식/; 

 

  2) 정규표현식 검증 메소드

    2-1)  test(); : 검증할 문자열에 포함되었지 검증하여, true 또는 false를 반환  

     ex)

<script>
var kwang = /[0-9]/;     //-- 정규표현식: 숫자가 하나라도 포함되면 true
var vara = kwang.test("ffefafa");   // 검증할 문자열
alert(vara);         //-- 결과값 출력 → 검증할 문자열에 숫자가 없으므로 false 출력
</script>

 

    2-2) exec(); : 검증할 문자열에서 일치하는 문자열을 찾아 반환

 

    2-3) match(/정규표현식/) : 검증할 문자열에서 일치하는 문자열을 찾아 반환

 

    ex)

<script>

//-- exec 예제
var kwang = /\d\s\d\s\d\?/;   //-- 정규표현식
var vara = kwang.exec("1 9 3?43456664efafaefae");   // 검증할 문자열
alert(vara);   //-- 1 9 3? 가 출력됨

 

//-- match 예제
var gue = "kwangguevara.tistory.com";   //-- 검증할 문자열
s = gue.match(/\w\.\w\w/);  //-- 정규표현식
alert(s);   //-- a.ti 가 출력됨

</script>

 

  3) 정규표현식에서 특수 문자 사용

    - 의미가 정해진 기호(+, ^, ?, $ 등)를 일반문자처럼 사용하려면 앞에 \를 써주면 된다

    - /\?/ -- 검증문자열에 ?가 있으면 일치

     물음표(?)는 수량한정자로 \ 없이 /?/로 표기 할 경우 오류가 발생한다.


2. 정규표현식 패턴 정리
 1) /[abc]/ : 검증할 문자열에 대괄호([]) 안의 문자가 하나라도 존재하면 일치 
   - /[1234]/, /[0-9]/, /[a-z]/ ...  [0-9] 은 [0123456789] 와 동일한 표현 

 

 2) /[^abc]/ : 검증할 문자열에 대괄호([]) 안의 문자외의 패턴이 하나라도 존재하면 일치 
   - /[^1234]/, /[^0-9]/, /[^a-z]/ ... [^0-9] 은 숫자외의 문자가 하나라도 있으면 일치

 

 3) /\d/ : 검증할 문자열에 숫자가 존재하면 일치

     /\D/ : 검증할 문자열에 숫자가 존재하면 일치

 

 4) /\w/ : 검증할 문자열에 문자나 숫자가 하나라도 존재하면 일치

     /\W/ : 검증할 문자열에 문자나 숫자이외의 패턴이 하나라도 존재하면 일치

 

 5) /\s/ : 검증할 문자열에 공백, 탭, \n 이 존재하면 일치

   ex)

var kwang = /\d\s\d\s\d/;     //-- 순서에 맞게 패턴이 동일해야 일치
var vara = kwang.test("1 9 3");      //-- [숫자][공백][숫자][공백][숫자] 패턴 
alert(vara);

 

 

설정

트랙백

댓글

자꾸 넘어지다 보면 언젠간은...

작은 진동/명언 2013. 11. 22. 20:27

자꾸 넘어지다 보면 언젠가는 안 넘어지는 날이 오겠지...

 

 - 상속자 드라마 중 -

'작은 진동 > 명언' 카테고리의 다른 글

사랑하라  (0) 2016.10.08
선택을 고민중이면 참고해~  (0) 2013.08.06
인생이란 공평하지 않다  (0) 2013.05.17
만남이란 언제나 그런 것입니다.  (0) 2013.04.30
내가 생각하는 "열정"의 다른 말.  (0) 2013.03.04

설정

트랙백

댓글

Blackhole EK sample analysis 3

Web Exploit Kit/Blackhole EK 2013. 11. 18. 22:46

5) main.php (wkxxxk.in/main.php)

- Blackhole Exploit Toolkit 2.0 Main으로 세 부분의 코드로 구분하여 확인

첫 번째 부분: “frame1.php” 페이지로 이동시키는 부분

두 번째 부분: PDF 취약점을 이용한 악성파일 다운로드 시도     

세 번째 부분: java 취약점을 이용한 악성파일 다운로드 시도

 

첫 번째 부분 분석

 ≫ “blank.php” 와 동일한 패턴으로 난독화되어 있으며, “frame1.php” 페이지로 유도

A. 난독화 코드의 key 값을 찾은 후 “docment.write”를 이용하여 난독화 해제

    - “%(HEX) %(HEX)… “ 형태의 쉘코드 값을 확인

[그림 9-1. main.php 첫 번째 부분 난독화]

 

B. A에서 얻은 결과값에서 “%”를 모두 제거 후 malzilla Tool을 이용하여 XOR 연산

 - malzilla Tool을 사용하여 “http” 문자열의 Key 값을 찾아 XOR 연산

   - iframe 태그로 “wkmyk.in/frame1.php?src=14…” 연결 확인

[그림 9-2. main.php 첫 번째 부분 난독화]

 

≫ frame1.php 분석: “frame1.php”특정페이지로 접속을 시도하는 부분과 취약점을 이용하여  쉘코드를 실행하는 두 부분으로 이루어져 있다

A. iframe 태그를 이용하여 “frame2.php”으로 연결을 시도

  ⇒ “frame2.php접속 시 해당페이지는 존재하지 않음 (404 Not Found)

[그림 10-1. frame1.php 소스]

 

B. 취약점을 이용하여 쉘코드를 실행시키는 것으로 추정되지만, 코드가 손상되어 재현되지 않음

[그림 10-2. frame1.php 소스]

 

두 번째 부분 분석 (PDF 취약점)

 PDF 취약점을 이용한 ~/content/ap2.php (e8a11.pdf) 파일이 실행되어 악성코드에 감염

 A. PDF 파일에 삽입된 난독화 코드 복호화

  

[그림 11. ap2.php 복호화 과정]

 

세 번째 부분 분석 (Java 취약점)

- Java 취약점이 존재할 경우 Gam.jar 파일과 value 값을 이용하여 악성코드 유포지로 이동

- 제작자가 자신만의 키 값을 이용하여 value 값을 난독화

- “Secret Decoder Ring” Tool을 사용하여 악성코드 유포지 확인

[그림 12. main.php 세 번째 부분 난독화]

☞ Key값은 해당 툴을 이용하여 이미 알려진 정보(value값과 악성코드 유포지)를 역 분석하여 찾을 수 있음

 

블로그의 특성상 난독화 부분만 다루었다. 전체 분석보고서는 아래의 볼라벤소모임 블로그에서 다운로드

   가능합니다

   - http://thebolaven.tistory.com/entry/4차-문서-blackhole-exploit-toolkit-20-분석

'Web Exploit Kit > Blackhole EK' 카테고리의 다른 글

Blackhole EK sample analysis 2  (0) 2013.11.18
Blackhole EK sample analysis 1  (1) 2013.11.18

설정

트랙백

댓글

Blackhole EK sample analysis 2

Web Exploit Kit/Blackhole EK 2013. 11. 18. 21:39

q  악성코드 분석

 

1.    요약

[그림 1. 악성코드 흐름도]

    사용자가 위/변조된 사이트(gxxxxx.co.kr/index.html) 접속 후 Blank.php 페이지 접속

   blank.php 코드의 특정조건(port:80 )에 맞으면 악성코드 유포지(Index_old.php) 302 redirect 

    시키고, 다르면 정상페이지로 이동

  paros 등을 사용하여 분석 시 어렵게 하기 위한 행위로 추정

   Index_old.php 코드에 의해 navigator.useragent 환경을 체크하여 복호화 수행

   Index2.php 코드는 러시아 성인사이트로 접속과 동시에 다양한 취약점을 내포하고 있는 main.php (blackhole exploit toolkit) 코드로 이동

   main.php 코드는 Java, PDF 취약점 존재 시 최종 악성파일을 다운받아 실행되도록 구현

   최종 악성파일(info.exe) 감염 시 외부로 SMTP 트래픽을 발생

 

2. 상세분석

1) index.html (gxxxxx.co.kr/index.html)

- 해커가 삽입한 페이지로 악성파일 다운로드를 유도하는 “blank.php” 와 정상 사이트의

 메인 페이지인 “main.php” 로 이동되게 구성

[그림 2. index.html 소스코드]

현재 해당사이트는 조치되어 index.html 페이지는 존재하지 않음

 

2) blank.php (gxxxxx.co.kr/blank.php)

- 특정조건(Port:80) 에 의해 맞으면 302 Redirection 기법으로 “index_old.php” 페이지로 이동

[그림 3. Blank.php 접속화면]

 

3) index_old.php (wkxxxk.in/index_old.php -> wkxxxk.in/blank.php)

- index_old.php 코드에 의해 이동된 blank.php 파일은 난독화된 페이지로 “index2.php” 페이지로

접속을 유도하는 역할

- “navigator.useragent” 함수에 의해 분석자의 환경이 조건에 맞지 않는 경우 동작하지 않음

실제 분석 시 일부 코드를 수정하여 난독화 진행

[그림 4. Index_old.php 난독화]

 

4) index2.php (wkxxxk.in/index2.php)

- “blank.php” 와 동일한 방식으로 난독화된 페이지로 다양한 취약점을 내포하고 있는 “main.php” 페이지로 접속을 유도하는 역할

[그림 5. index2.php 난독화]

'Web Exploit Kit > Blackhole EK' 카테고리의 다른 글

Blackhole EK sample analysis 3  (0) 2013.11.18
Blackhole EK sample analysis 1  (1) 2013.11.18

설정

트랙백

댓글

Blackhole EK sample analysis 1

Web Exploit Kit/Blackhole EK 2013. 11. 18. 21:27

## 해당 내용은 2012년 11월 볼라벤소모임 활동을 하면서 분석한 내용입니다.

 

q  개요

2012 9 Blackhole Exploit Toolkit의 최신버전인 Ver2.0에 대한 정보가 해외 보안사이트에서

확인 되었습니다. 그리고 9월 말 국내에서 Blackhole Exploit Toolkit 2.0을 이용한 악성코드 유포로

의심되는 이벤트가 발생되어 분석 및 공유합니다

[그림 1. Blackhole Exploit Toolkit 정보]

 

[ Blackhole Exploit Toolkit 2.0 참고 사이트 ]

http://malware.dontneedcoffee.com/2012/09/blackhole2.0.html#!/2012/09/blackhole2.0.html

 

q  악성코드 유포 흐름

 

1.    악성코드 유포 흐름도

- 해커가 Webhosting 업체를 장악 후 서비스를 받는 하위 웹사이트들을 이용하여 악성코드 유포

[그림 2. 악성코드 유포 흐름도]

√ 해커가 웹 호스트 업체 서버 장악 및 악성코드 유포지 선점

√ 사용자가 해당 업체에서 서비스 받는 웹사이트 접속 시 악성코드 유포지로 이동 (302 Redirection)

√ 악성코드 유포지로부터 악성파일이 설치되어 개인정보 유출

 

2.    확인된 악성코드 유포지 LIST (2012 10월 기준)

[그림 3. 악성코드 유포지 현황]

 

q  악성코드 분석

 

1.    요약

[그림 4. 악성코드 흐름도]

    사용자가 위/변조된 사이트(gxxxxx.co.kr/index.html) 접속 후 Blank.php 페이지 접속

   blank.php 코드의 특정조건(port:80 )에 맞으면 악성코드 유포지(Index_old.php) 302 redirect 

    시키고, 다르면 정상페이지로 이동

  paros 등을 사용하여 분석 시 어렵게 하기 위한 행위로 추정

   Index_old.php 코드에 의해 navigator.useragent 환경을 체크하여 복호화 수행

   Index2.php 코드는 러시아 성인사이트로 접속과 동시에 다양한 취약점을 내포하고 있는 main.php (blackhole exploit toolkit) 코드로 이동

   main.php 코드는 Java, PDF 취약점 존재 시 최종 악성파일을 다운받아 실행되도록 구현

   최종 악성파일(info.exe) 감염 시 외부로 SMTP 트래픽을 발생

 

'Web Exploit Kit > Blackhole EK' 카테고리의 다른 글

Blackhole EK sample analysis 3  (0) 2013.11.18
Blackhole EK sample analysis 2  (0) 2013.11.18

설정

트랙백

댓글

Magnitude Exploit Kit 샘플 구해봅니다 ㅜㅜ

난독화/이것 저것 2013. 11. 17. 02:33

오랫만에 들어간 Kahu Security 에서 "Deobfuscating Magnitude Exploit Kit" 글을 보았다.

Magnitude EK 처음 보는 툴킷인데 이미 해외에서는 유명한 것 같다

 

분석내용을 보면 자바스크립트 부분은 간단해보이고, 자바 부분이 좀 복잡해 보이고 상당히 재미있어 보인다

이런건 분석해보아야 한다!!! 그래서 샘플구하려고 구글과 jsunpack 최근 샘플 다 찾아보았다.

OTL 2시간 뻘짓하고 살포시 포기했다.

 

혹시라도 Magnitude EK 샘플 구하신 분은 공유 부탁드립니다. 꾸벅!!

 

카후시큐리티 Magnitude EK 분석 바로가기

- http://www.kahusecurity.com/2013/deobfuscating-magnitude-exploit-kit/

 

 

설정

트랙백

댓글

자바스크립트 정리 7 (이벤트)

## 이벤트

1. 이벤트 뛰우기 예제


ex1) 버튼 클릭시 경고창 뜨는 예제

<html>
<head>
<script>
function test(){
alert("goodjob!!");
}
</script>
</head>
<body>
<input type="button" value="click" onclick="test();"/>
</body>
</html>

 

ex2) 버튼 누르면 구구단의 9단을 반복하도록 하는 예제
<html>
<head>
<script>
var test=0;
</script>
</head>
<body>
<input type="button" value="click" onclick="i=9;test++;result=test*i;alert('9곱하기'+test+'는'+result);" />
</body>
</html>


=> 누를때 마다 구단 진행

 

2. 이벤트 종류
- 클릭
1) 클릭 이벤트: onclick (대부분 지원)
2) 더블클릭 이벤트: ondblclick (대부분 지원)

 

- 포커스
3) 포커스를 얻을때: onfocus (<button>, <input>, <label>, <select>, <textarea>, <body>)
4) 포커스를 읽을때: onblur (<button>, <input>, <label>, <select>, <textarea>, <body>)

 

ex) 포커스 얻을때, 읽을때
<html>
<body>
<input type="textaea" onfocus="alert('on')" onblur="alert('off')" />
</body>
</html>

 

- 마우스
5) 마우스 버튼 늘렀을때 : onmousedown (대부분 지원)
6) 마우스 버튼 땟을때 : onmouseup (대부분 지원)
7) 마우스 움직였을때 : onmousemove (대부분 지원)
8) 마우스를 요소밖으로 움직였을때 : onmouseout (대부분 지원)
9) 마우스를 요소위로 움직였을때 : onmouseover (대부분 지원)

 

 

## 더 많은 자바스크립트 이벤트 보기 ↓↓↓↓↓↓↓

 ▶ http://www.technote.co.kr/php/technote1/board.php?board=apple2&command=body&no=257

설정

트랙백

댓글

자바스크립트 정리 6 (객체)

## 객체

1. 객체 (프로퍼티와 메소드)
 1) 호출 및 접근
   - 객체이름.함수이름();     //-- 객체안의 함수 호출
   - 객체이름.메소드이름();   //-- 객체안의 메소드 호출
   - 객체이름.개체데이터이름   //-- 객체의 데이터(프로퍼티)에 접근

 

[참고] 객체지향 언어에서의 용어
 - 함수를 메소드(Method)라는 용어를 사용
 - 객체안의 데이터를 프로퍼티(property)라는 용어를 사용

 

 * 'this.메소드'에서 this의 의미
   - 자바스크립트를 객체기반 프로그램과 객체지향 프로그램에서 메소드가 소속된 객체를 의미한다.


## 클래스

1. 클래스 (객체의 틀, 비슷한 부류의 객체들의 공통성을 모은 것)
  - 역활: 객체를 만드는 틀을 제공
    -> A.class -> A-1 객채를 만들때 필요한 정보를 가지고 있음
  - 클래스를 통해서 만들어진 객체를 인스턴스라고 함

 

2. 클래스 프로퍼티
  - 클래스 프로퍼티로 정의하면 클래스에만 생기고 객체에는 생기지 않는다.
  - 클래스 프로퍼티는 해당 클래스의 모든객체에서 공유할 수 있다.
    => 동일한 프로퍼티가 모든 객체에 생기면 비효율 적이기 때문에
 1) 형태
    - 클래스이름.클래스프로퍼티이름 
 
3. 인스턴트 프로퍼티
 1) 형태
    - 객체이름.프로퍼티이름

 

4. 클래스 메소드와 인스턴스 메소드
 1) 형태
   - 클래스이름.클래스메소드이름();   //-- 클래스 메소드 호출
   - 객체이름.인스턴스메소드이름();   //-- 인스턴스 메소드 호출
 2) 차이점
   - 클래스메소드: 객체의 프로퍼티 값을 사용하지 않아도 되는 메소드를 사용
     -> 모든 객체에 동일하게 적용되는 메소드를 사용
   - 객체의 프로퍼티 값을 사용해야하는 메소드에 해용
     -> 객체의 구분이 필요한 메소드에 사용

 

5. 객체로 구성되는 객체
   - 객체 안에 객체들로 구성된 객체의 메소드를 호출하는 방법
    -> 객체1.객체1-1.객체1-1-1.객체1-1-1-1();  //-- 점(.)을 이용하여 구분해서 호출
   - 객체 안의 객체들로 구성된 객체의 프로퍼티 접근 방법
    - 객체1.객체1-1.객체1-1-1.객체1-1-1-1 = 13;

설정

트랙백

댓글

자바스크립트 정리 5 (함수)

## 함수

1. 함수 형태

  1)  형태 (선언)

    - var 함수이름 = function() { }  또는  var 함수이름 = function(매개인자) { } 
    - function 함수이름() { }  또는  function 함수이름(매개인자) { }  

  2) 호출

    - 함수이름() -- 매개인자가 없을 경우

    - 함수이름(매개인자)  -- 매개인자가 있을 경우

 

2. 내장함수 : 자바스크립트에서 이미 정의 해놓은 함수

  1) alert() : 데이터를 경고창을 뛰워 보여줌
  2) document.write() :  데이터를 웹브라우져 화면에 출력

  3) eval() : 실행함수
  4) confirm() : 경고창으로 뜨며, 사용자에게 확인을 받을때 사용
     → 확인을 누를 경우 true 값을 반환하고, 취소를 누를경우 false 값을 반환한다
  5) prompt() : 사용자에게 문자열 입력을 받아 프로그램에 이용할 때 사용
     ex) prompt("매개인자1","매개인자2")  --  아래 그림 참조
 

 

  6) isFinite() : 매개인자가 유한한 수이면 true, 무한하거나 숫자가 아니면 false

  7) isNaN() : 매개인자가 숫자면, false를 숫자가 아니면 true를 반환

   * 이외에도 다양한 내장함수가 있다.

 

3. 전역변수와 지역변수

  - 전역변수: 모든 함수 에서 공유하는 변수
  - 지역변수: 함수 안에서 변수를 정의하며, 그 함수 안에서만 사용가능한 변수

  ex)

  <script>

   var s = "전역변수";     //-- 전역변수 선언

   function a(){

   var s = "지역변수";    //-- 함수안에서 지역변수 선언

   alert(s);     //-- 지역변수가 출력된다.         

   }

   function b(){

   alert(s);    //-- 전역변수가 출력된다.

   }

   a();  //-- 함수 a 실행

   b();  //-- 함수 b 실행

  </script>

 

[참고] ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

위의 예제에서 지역변수 선언 부분을 var s = "지역변수"가 아닌 s = "지역변수" 로 하면 b 함수

실행 시 "지역변수"가 출력된다.

s = "지역변수" 는 s변수를 선언하는게 아닌, s변수에 "지역변수" 문자를 할당 한다는 의미이기

때문이다.

 

 

* 함수에 대해서는 이미 난독화 공부에서 정리했기 때문에 그외의 부분만 정리하였다.

 자세한 내용이 궁금하다면 아래 링크를 참조하기 바란다 

 - 바로가기 : http://kwangguevara.tistory.com/19

설정

트랙백

댓글