ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Выполнить команду на сервере
  #1  
Старый 16.11.2008, 12:00
Аватар для n0153r
n0153r
Постоянный
Регистрация: 19.06.2007
Сообщений: 315
Провел на форуме:
1174546

Репутация: 326
Отправить сообщение для n0153r с помощью ICQ
Exclamation Выполнить команду на сервере

Всем привет. Возник вопросик.
Раньше на сервере выполнял команды таким методом :

$result = passthru($_POST['cmmd']);

Теперь админ пофиксил как еще можно выполнить ?
OS : FreeBSD 6.3
PHP : 5.2.6

Зарание спасибо.
 
Ответить с цитированием

  #2  
Старый 16.11.2008, 15:04
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

Непонятно, как пофиксил:

if ((!$_POST['cmd']) || ($_POST['cmd']=="")) { $_POST['cmd']="id;pwd;uname -a;ls -la"; }
echo "".passthru($_POST['cmd'])."";

Тебе останется написать только html форму для скрипта

ну и:

http://ru2.php.net/passthru

Цитата:
The passthru() function is similar to the exec() function in that it executes a command . This function should be used in place of exec() or system() when the output from the Unix command is binary data which needs to be passed directly back to the browser. A common use for this is to execute something like the pbmplus utilities that can output an image stream directly. By setting the Content-type to image/gif and then calling a pbmplus program to output a gif, you can create PHP scripts that output images directly.

Последний раз редактировалось Pashkela; 16.11.2008 в 15:09..
 
Ответить с цитированием

  #3  
Старый 16.11.2008, 16:06
Аватар для otmorozok428
otmorozok428
Banned
Регистрация: 19.10.2007
Сообщений: 152
Провел на форуме:
557623

Репутация: 415
По умолчанию

Сперва выясни в чём заключался фикс. Было ли это запрещение одной или нескольких функций, или же на сервере включили safe_mode. Выполни phpinfo() и посмотри строчку disable_functions. Если там запрещена только функция passthru() - юзай system() или exec().

Так же обрати внимание на значение параметра safe_mode, если установлен в On, значит на сервере врубили Safe Mode - пробуй заюзать какой-либо из способов обхода Safe Mode. Инфы по этой теме дофига на том же Античате.

Даже если не удастся использовать ничего из вышеперечисленного, всё равно остаётся возможность производить какие-то действия средствами чистого PHP (без использования функций операционной системы), например просмотр содержимого каталогов, просмотр , редактирование или создание файлов и т.д.

Последний раз редактировалось otmorozok428; 16.11.2008 в 16:09..
 
Ответить с цитированием

  #4  
Старый 16.11.2008, 18:39
Аватар для n0153r
n0153r
Постоянный
Регистрация: 19.06.2007
Сообщений: 315
Провел на форуме:
1174546

Репутация: 326
Отправить сообщение для n0153r с помощью ICQ
По умолчанию

disable_functions :
Цитата:
rmdir, readfile, exec, system, passthru, escapeshellcmd, shell_exec, chmodopendir, readdir, closedir, dir, diskfreespace, disk_free_space, getattr, domxml_get_attribute, ini_alter, ini_set, root, domxml_root
safe_mode Off

Что можно сделать в таком случае ???
 
Ответить с цитированием

  #5  
Старый 16.11.2008, 19:41
Аватар для otmorozok428
otmorozok428
Banned
Регистрация: 19.10.2007
Сообщений: 152
Провел на форуме:
557623

Репутация: 415
По умолчанию

Попробуй заюзать popen(). Вот как-то так:
PHP код:
<?php
$handle 
popen("uname -a""r");
$read fread($handle2096);
echo 
$read;
?>
 
Ответить с цитированием

  #6  
Старый 17.11.2008, 14:29
Аватар для n0153r
n0153r
Постоянный
Регистрация: 19.06.2007
Сообщений: 315
Провел на форуме:
1174546

Репутация: 326
Отправить сообщение для n0153r с помощью ICQ
По умолчанию

Теперь вопрос к админам!
Как можно зашитить свой сервер ?
Такая ситуация :
Есть хостинг на котором 50 сайтов. Каждый может выполнить
ls /home
cat /etc/passwd
лазить по сайтам других клиентов.

Как можно ограничить выполнения команд пользовательом ???
Что-бы он немог выйти за свою директорию.
Спасибо большое.
 
Ответить с цитированием

  #7  
Старый 17.11.2008, 14:46
Аватар для $n@ke
$n@ke
Постоянный
Регистрация: 18.09.2006
Сообщений: 867
Провел на форуме:
2805813

Репутация: 1396


По умолчанию

open basedir ./
safe_mode On

ман по пхп.ини тебе в руки.Если ты про выполнение из пхп скриптов.Иначе- запретить доступ по ссш =)))
 
Ответить с цитированием

  #8  
Старый 17.11.2008, 17:30
Аватар для otmorozok428
otmorozok428
Banned
Регистрация: 19.10.2007
Сообщений: 152
Провел на форуме:
557623

Репутация: 415
По умолчанию

А сверху накати что-нибудь типа Suhoshin и будет тебе счастье
 
Ответить с цитированием

  #9  
Старый 17.11.2008, 18:13
Аватар для GuD-ok
GuD-ok
Новичок
Регистрация: 14.11.2008
Сообщений: 28
Провел на форуме:
158078

Репутация: 6
По умолчанию

Перекомпилить PHP без exec(); и т.п. и поднять ssh шелл, ну собсно тоже подправленный(можно даже без cd, vim и т.п.).
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создать файл имея возможность выполнить команду интерпретатора? n0mie Уязвимости 14 28.08.2008 13:36
Множественные уязвимости в Apple Macintosh OS X Mr. P.S. *nix 1 02.02.2008 17:53
Основные команды командной строчки. silveran Windows 5 27.10.2005 14:45
SQL инъекция в сервере MySQL k00p3r Чужие Статьи 0 12.06.2005 12:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


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




ANTICHAT.XYZ