트래픽 통계수집은 통계를 통한 잠재고객의 유치 및 접근자에 맞는 서비스 제공등에 목적을 두고 있습니다. 그래서 대형 검색 사이트(구글, 야후, 얀덱스, 바이두 등)에서는 무료로 트래픽 통계수집 서비스를 제공하고 있습니다. (Google Analytics, ...) 공격자는 트래픽 길목에 유동인구수가 얼만큼 되는지, 자신의 공격 페이지에 접근한 사용자는 몇이고, 악성코드 감염된 수치와 비교하여 접근하였지만 감염되지 않은 수가 얼마인지 등 다양한 정보를 수집합니다. 일반적으로 국내 웹을 이용한 공격의 대부분은 공다팩 입니다. 공다팩은 레드킷이나 블랙홀과 다르게 랜더링 페이지가 없으며, 랜더링 페이지가 없다는 말은 곧 자체적으로 통계수집를 하지 못한다는 것을 의미합니다. 그래서 공다팩은 51yes, cnzz과..
16진수 값을 이용하여 만드는 Hexdecimal Obfuscation입니다. 간단하게 아스키 코드표의 16진수 값을 따라 난독화를 풀 수 있고, Malzilla 또는 Jsdetox 등 이용해서 난독화를 해제 할 수 있습니다. 난독화 if (document.cookie.indexOf('veatpr') == -1) { var expires = new Date(); expires.setTime(expires.getTime() + 12 * 60 * 60 * 1000); document.cookie = 'veatpr=Yes;path=/;expires=' + expires.toGMTString(); document.write(unescape("%3C%69%66%72%61%6D%65%20%73%72%63%3D%27..
말 그대로 조각내어 난독화 하는 형태 입니다. split 기법에도 다양한 형태가 있는데, 아래와 같이 한개의 변수의 값을 조각내는 경우도 있고 각각의 변수를 선언하여 변수마다 조각난 문자열을 보관하여 변수의 합으로 완성된 문자열을 이용하는 경우도 있습니다. function baiduuu(){ var Then = new Date() Then.setTime(Then.getTime() + 12*60*60*1000) var cookieString = new String(document.cookie) var cookieHeader = "Cookvie1=" var beginPosition = cookieString.indexOf(cookieHeader) if (beginPosition != -1){ } else {..
JSMin의 사이트에 들어가면 이런 문자이 나옵니다.JSMin does not obfuscate, but it does uglify.: JSmin은 난독화는 아지만 uglify합니다. 보통의 Javascriptvar is = { ie: navigator.appName == 'Microsoft Internet Explorer', java: navigator.javaEnabled(), ns: navigator.appName == 'Netscape', ua: navigator.userAgent.toLowerCase(), version: parseFloat(navigator.appVersion.substr(21)) || parseFloat(navigator.appVersion), win: navigator.pl..
t 라는 변수에 10진수의 값을 나열하는 형태의 코드이다. 단순히 아스키 코드표에서 10진수의 60, 115, 99 ....를 쫓아가면서 난독화를 해제 할 수 있지만, Mazilla나 JSDetox와 같은 툴로 클릭 한번이면 풀리는 난독화 이기 때문에 어렵지는 않다. 난독화 난독화 해제 후 " t=eval("String.fromCharCode("+t+")"); document.write(t); * 실제 악성코드 유포하는 소스코드 중 샘플이기 때문에 일부 내용을 변경하였습니다.
VIP CK Source Code 난독화 해제를 해봅니다JSDetox에서 VIP CK 난독화 코드를 "HTML Document"에 넣고 "Extract Scripts"를 클릭하면 JavaScript부분을 오려내어 "Code Analysis"로 이동하게 됩니다.Code Analysis로 이동한 JavaScript를 "Execute"하면 가상에뮬(여기서는 DOM 에뮬을 사용합니다.)을 이용하여 실행하게 됩니다.error가 발생데, 7번째 라인 즉 var ck_wm = navigator.userAgent.toLowerCase();에서 에러가 발생합니다.이유는 쿠키값에서 "ckttcywaxx", "linux", "bot", "spider"값의 존재에 따라 실행 유무를 확인하기 때문입니다.이러한 부분을 기감염 체..
예제 코드 访问本页面,您的浏览器需要支持JavaScript The browser needs JavaScript to continue w 다음 난독화를 풀어보려고 합니다. 영어로 "브라우저에 JavaScript가 필요하다"고 써놓았네요. 기본적으로 \x로 값이 들어간 경우, \x를 %로 치환하여 풀면 간단하게 풀립니다. 그림 1에서 Malzilla의 'Misc Decoders' 탭에서 보통 치환과 Decode작업을 하게 됩니다. 그림 2와 같이 '\x'를 '%'로 치환을 하고 나오는 코드를 'Decode Hex (%)'를 눌러 치환하게 되면 ASCII코드 값에 맞게 계산하여 변환해 줍니다. 하지만 변환 결과가 이해할 수 없는 문자열이 나왔네요. 알 수 없는 결과가 나온 이유는 난독화 코드 아래의 for구문 ..