검색결과 리스트
분류 전체보기에 해당되는 글 57건
- 2013.04.30 만남이란 언제나 그런 것입니다.
- 2013.04.28 Dadong’s JSXX 0.44 VIP Part II
- 2013.04.28 Dadong’s JSXX 0.44 VIP Part I 2
- 2013.03.15 dadong's 0.44 Decoding Tool
- 2013.03.04 내가 생각하는 "열정"의 다른 말.
- 2013.02.26 phpMyAdmin 취약점 웹서버 스캐닝 툴 ZmEu
- 2013.02.26 혁명이란
글
만남이란 언제나 그런 것입니다.
만남이란 언제나 그런 것입니다.
정말.....
그런 것 같습니다.
'작은 진동 > 명언' 카테고리의 다른 글
자꾸 넘어지다 보면 언젠간은... (0) | 2013.11.22 |
---|---|
선택을 고민중이면 참고해~ (0) | 2013.08.06 |
인생이란 공평하지 않다 (0) | 2013.05.17 |
내가 생각하는 "열정"의 다른 말. (0) | 2013.03.04 |
혁명이란 (0) | 2013.02.26 |
글
Dadong’s JSXX 0.44 VIP Part II
1. 카후시큐리티(kahusecurity.com)의 복호화 방법 재현
1) 카후시큐리티 소개
- 난독화 등 Malicious 컨텐츠를 분석하여 공유하는 보안프로젝트 그룹으로,
다른 분석가들보다 빠르고 창의적인 방법으로 분석하는 것으로 유명하다
[참고] Java 0-Day Using Latest Dadong’s JS Obfuscator
http://www.kahusecurity.com/2012/java-0-day-using-latest-dadongs-js-obfuscator
2) 카후시큐리티의 Dadong’s JS Obfuscator 복호화 방법 소개
① Dadong’s 0.44 실행 시 스크립트의 복호화 기능이 특정 변수에 저장되는 것을 이용
② 변수에 ‘alert’ 등의 자신의 코드를 삽입하여 복호화 시도
③ Dadong’s 0.44의 변조방지기능 때문에 복호화 부분은 수정하지 않고, 데이터
부분에서 실행 함수가 저장되는 변수 부분을 변조하여 난독화 해지
☞ 상세내용은 [참고 2]에서 확인 할 수 있습니다
3) 카후시큐리티 복호화 방법 따라하기
① 스크립트를 실행하는 함수가 저장되는 변수 확인
[그림 1] 스크립트를 실행하는 함수가 저장된 변수 확인
② 난독화된 데이터의 첫 부분 복호화 시 아래의 그림처럼 변화는 것을 확인
[그림 2] 난독화된 코드의 일부 복호화
③ ‘PDIK6’ 변수에 실행함수가 저장되므로 ‘PDIK6=alert’으로 임의로 수정하여 복호화된 데이터를 경고창으로 확인 한다
(변조방지기능 때문에 난독화된 데이터 부분 수정 시도)
≫ 데이터의 길이를 유지하기 위해 공백을 이용하여 글자수를 맞춘다
PDIK6=alert ;
≫ 난독화된 데이터 패턴을 계산하여 ‘PDIK6=alert ;’의 값을 구한다
PDIK6=pVYAmQ8; ⇒ 25491BC74F2C0BE6245412E5B922
PDIK6=alert ; ⇒ 25491BC74F2C1ADC18670B94A122
④ Dadong’s 0.44 패턴으로 변환해주는 간단한 툴을 이용하여 코드 변경
[그림 3] 실제 코드 정상 변환여부 확인
[그림 4] 코드 변경 후 변환
⑤ ‘PDIK6=alert’을 난독화한 데이터를 원래 데이터 부분에 삽입한다
[그림 5] 수정된 난독화 코드 삽입
⑥ 스크립트를 실행하면 첫 부분이 변경된 복호화된 스크립트를 확인 할 수 있다
[그림 6] 코드 변조를 통한 복호화 결과
'Web Exploit Kit > Dadong's JSXX 0.44' 카테고리의 다른 글
Dadong’s JSXX 0.44 VIP 툴 소개 (76) | 2013.05.03 |
---|---|
Dadong’s JSXX 0.44 VIP Part III (0) | 2013.05.03 |
Dadong’s JSXX 0.44 VIP Part I (2) | 2013.04.28 |
글
Dadong’s JSXX 0.44 VIP Part I
q Gongda Pack ?
1. History
1) Dadong’s JSXX 0.XX VIP 내부 공격 코드 중 중국어로 ‘공격’ 을 의미하는 ‘공다(gongda)’ 라는 변수명(gondad) 이 상당 부분 사용되는 점을 특징으로 이름이 지어졌으며, Gongda Pack 또는Gongda Exploit Kit 으로 알려져 있다
2) 2010년 Dadong’s JSXX 0.39 VIP 를 시작으로 잠시 등장했던 Dadong’s JSXX 0.41 VIP 버전을 지나 Dadong’s JSXX 0.44 VIP 버전이 2012년 4월부터 현재까지 등장하고 있다
2. Gongda Pack 0.44
1) 주석 스크립트 변화 과정
- Gongda Pack 0.44 주석 스크립트 부분이 변화되는 원인은 고정적인 문자열을 이용한
패턴 탐지를 우회하기 위해 변화되는 것으로 판단된다
[그림 1] Gongda pack 0.44 주석 스크립트 변화 과정
q Dadong’s 0.44 구조
※ 이 문서에서는 Dadong’s 0.44의 난독화를 해제하는데 중점을 두겠다 취약점을 이용하는 부분과문서에서 다루지 않는 부분은 아래의 사이트를 참조하기 바란다
[참고 1] 'GongDa'의 무차별 웹 공격이 시작됐다
http://www.ahnlab.com/kr/site/securityinfo/secunews/secuNewsView.do?menu_dist=2&seq=19418
1. 전체 구조
1) 난독화된 Dadong’s 0.44은 아래 그림처럼 크게 3부분으로 나누어 진다
[그림 2] Dadong’s 0.44 전체구조
① 첫 번째 부분: 플래시, 자바 관련 스크립트 삽입 및 쿠키 값을 이용하여 중복 실행을
방지하는 부분이다
☞ 해당부분은 [참고 1]에 상세히 설명되어 있다
② 두 번째 부분: 난독화된 데이터 부분으로 이 부분을 복호화하면 실제 공격코드가 된다
③ 세 번째 부분: 난독화된 데이터를 복호화하는 스크립트 부분으로 이 부분을 중점적으로 분석 한다
2. 복호화 스크립트 정리 (세 번째 부분)
1) 복호화 스크립트에서 불필요한 부분 제거 및 일차원적 난독화 부분에 대해 정리
[그림 3] 복호화 부분 스크립트 정리
2) 정리 후 복호화 함수의 구조
- 보기 어렵게 작성된 부분 및 제거되는 코드를 정리하면 아래 그림처럼 된다
[그림 4] 복호화 스크립트 정리 결과
3) 이 복호화 부분은 함수변조방지 기술로 묶여져 있기 때문에 위와 같이 정리 후 Key값을 찾아도 복호화가 정상적으로 이루어 지지 않는다
q 난독화 풀이
1. ‘alert’을 이용한 데이터 부분 복호화
1) 복호화 시 일반적으로 ‘alert’이나 ‘document.write’ 등을 사용하여 실행되는 스크립트를 문자로 확인한다 여기서는 ‘alert’을 이용하여 데이터를 복호화 시도하였다
[그림 5] 그림 4의 스크립트에서 Key값을 alert으로 복호화 시도
2) ‘alert’을 이용한 난독화 결
- 복호화 부분의 문자열을 나누었기 때문에 구조가 변화면서 오류가 발생하였다
[그림 6] 변조방지 기능에 의한 오류 발생
- 수정된 스크립트부분을 처음 구조와 동일하게 변경 후 실행해도 오류가 발생하였다
3) 복호화 실패 원인
- 제작자는 복호화를 어렵게 하기 위해 함수를 문자열로 묶어놓았고, 문자열을 변경할 경우 함수의 변수 값이 변하여 원래 데이터를 얻을 수 없도록 만들었다 (변조방지기능)
[그림 7] 변조방지기능의 역할을 하는 부분
4) 해결 방법
- 값의 길이와 문자를 이용하여 변수를 구하는 부분이 변경되지 않게 하기 위해
[그림 5]의 정리된 복호화 부분 위에 원래 복호화 부분을 추가하여 함수들이 참조할 수
있도록 한다
[그림 8] 변조방지를 우회하기 위해 복호화 부분을 추가 삽입
5) 데이터 복호화
- 수정된 복호화 부분을 이용하여 데이터를 복호화 시 공격 스크립트를 확인 할 수 있다
'Web Exploit Kit > Dadong's JSXX 0.44' 카테고리의 다른 글
Dadong’s JSXX 0.44 VIP 툴 소개 (76) | 2013.05.03 |
---|---|
Dadong’s JSXX 0.44 VIP Part III (0) | 2013.05.03 |
Dadong’s JSXX 0.44 VIP Part II (0) | 2013.04.28 |
글
dadong's 0.44 Decoding Tool
최근 위/변조 사이트를 분석하다가 아직도 다동 0.44(JSXX 0.44)가 이용되는 것을 확인하였다.
한때 다동을 풀기위해 밤을 샜던 추억이 떠올랐다.
분석팀이나 관심이 있는사람들은 다들 각자의 풀이 방법이 있겠지만, 아직 풀지 못하는 사람들도
많을 거 같아 툴을 만들어 보았다
디자인은 Bolaven Tool 형식으로 하였고, 누구나 쉽게 사용할 수 있도록 제작하였다.
이 툴은 bolaven 9차 문서[다동분석]와 함께 사람들에게 전파 예정인데, 게을러서 문서만드는 것을
자꾸 미루고 있다. ㅠㅡㅠ
'난독화 > 이것 저것' 카테고리의 다른 글
오랫만에 풀어보는 Suninatas 해킹문제 (1) | 2014.03.26 |
---|---|
2014년 3월 볼라벤 보고서 (0) | 2014.03.07 |
Magnitude Exploit Kit 샘플 구해봅니다 ㅜㅜ (1) | 2013.11.17 |
Cool exploit kit 흐름도 (1) | 2013.06.22 |
phpMyAdmin 취약점 웹서버 스캐닝 툴 ZmEu (0) | 2013.02.26 |
글
내가 생각하는 "열정"의 다른 말.
Stay hungry, Stay foolish. (Steven Paul "Steve" Jobs)
'작은 진동 > 명언' 카테고리의 다른 글
자꾸 넘어지다 보면 언젠간은... (0) | 2013.11.22 |
---|---|
선택을 고민중이면 참고해~ (0) | 2013.08.06 |
인생이란 공평하지 않다 (0) | 2013.05.17 |
만남이란 언제나 그런 것입니다. (0) | 2013.04.30 |
혁명이란 (0) | 2013.02.26 |
글
phpMyAdmin 취약점 웹서버 스캐닝 툴 ZmEu
* phpMyAdmin은 웹서버상에서 MYSQL의 관리자로서 DB를 처리할 수 있도록 만들어진 PHP툴로 데이타베이스를 생성/삭제, 테이블 생성/삭제, 필드 생성/삭제, SQL 문장 실행, 권한 관리 기능 실행가능하다
ZmEu 툴로 발생된 트래픽의 헤더부분은 특정한 문자열이 포함되어 있어 아래의 패턴으로 보안장비에서 탐지가능하다.
→ 0D 0A 55 73 65 72 2D 41 67 65 6E 74 3A 20 5A 6D 45 75 // User-Agent:.ZmEu
[그림 1. 패킷 정보]
## 추가 정보
'난독화 > 이것 저것' 카테고리의 다른 글
오랫만에 풀어보는 Suninatas 해킹문제 (1) | 2014.03.26 |
---|---|
2014년 3월 볼라벤 보고서 (0) | 2014.03.07 |
Magnitude Exploit Kit 샘플 구해봅니다 ㅜㅜ (1) | 2013.11.17 |
Cool exploit kit 흐름도 (1) | 2013.06.22 |
dadong's 0.44 Decoding Tool (0) | 2013.03.15 |
글
혁명이란
The revolution is not an apple that falls when it is ripe. You have to make it fall. (Ernesto "Che" Guevara)
혁명은 다 익어 저절로 떨어지는 사과가 아니다. 떨어뜨려야 하는 것이다.
'작은 진동 > 명언' 카테고리의 다른 글
자꾸 넘어지다 보면 언젠간은... (0) | 2013.11.22 |
---|---|
선택을 고민중이면 참고해~ (0) | 2013.08.06 |
인생이란 공평하지 않다 (0) | 2013.05.17 |
만남이란 언제나 그런 것입니다. (0) | 2013.04.30 |
내가 생각하는 "열정"의 다른 말. (0) | 2013.03.04 |