информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Страшный баг в WindowsSpanning Tree Protocol: недокументированное применениеЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
 Умер Никлаус Вирт 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Страшный сон администратора уже реальность! 08.06.06 12:39  Число просмотров: 4212
Автор: xintrea Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Решил разместить здесь информацию для интересующихся.

Речь пойдет о некой базе для сетевых проектов, в которых необходимо обеспечить
выполнение произвольного кода (PHP) на строне сервера. То есть, задача - позволить
выполнять на сервере произвольный PHP код, который можетдобавитьивыполнить
_любой_ пользователь интернета.

Насколько вы понимаете, такой веб-сервис - потенциальная дыра в системе безопасности.

Причем, сделать все нужно максимально портабельно - не через экзотическую систему "виртуальная
машина" PHP 5 из расширения PECL (попробуйнайди такого хостера за пару грин в месяц), а
более простыми средствами.

Задача облегчается тем, что в выполняемом PHP коде нужно оставить только алгоритмическую часть, математические функции и функции вывода типа echo или print.


Обсуждение реализации такого сервиса, можно почитать здесь
http://phpclub.ru/talk/showthread.php?s=&threadid=81551&perpage=20&pagenumber=1

В результате сервис был сделан, и в данный момент запущен для проверки здесь
http://xi.net.ru/sandbox/webcode.php

Все запущено на FreeBSD + Apache, PHP ветки 4, SAFE MODE не включен.

И теперь, в целях проверки, я приглашаю всех желающих попробовать взломать
эту чудо-разработку. Думаю, на bugtraq найдутся люди, которым это будет интересно.


На страничке находится поле для кода и кнопочка "Выполнить". Вы можете добавлять любой PHP-код, и если система посчитает его безопасным, он будет запущен на выполнение на сервере, а в окно браузера будет выдан результат.

Если система посчитает код опасным, будет выдано предупреждение с указанием опасной строки и конструкции в ней.

Скопируйте, например, такой код, и запустите его на выполнение

$i=3;
$j=5;
echo $i+$j;

В ответ будет выдано 8, т.е. система работает. Теперь нужно выяснить, насколько эта
система безопасна.


Соглашения.

- PHP код не нужно оформлять тегами начала-конца php-кода ("<?", "<?php", "?>" и тому подобные), система сама их добавит.

- В PHP коде разрешено использовать только алгоритмические конструкции языка, математические функции, команды echo и print.

- Вы можете описывать свои функции и использовать их.

- Для задания строк используйте апостроф. Использование двойных кавычек и обратного апострофа запрещено.

- Использование переменных переменных ($$) запрещено.

- Использование объектно-ориентированной части языка PHP запрещено.

- После проверки, введеный код выполняется через функцию eval().

- Код не проверяется на ошибки в синтаксисе PHP

- Код не проверяется на зацикленность

- Код не проверяется на возможность выделения достаточной памяти


В данный момент проверяется именно валидатор кода. Поэтому других мер безопасности - защита от флуда и прочее, пока не реализовано. Пожалуйста, не нарушайте работу сервера тупым JavaScript флудом и другими "нагружающими" поделками.


Проверка валидатора.
(то, ради чего все и затевалось)

В данный момент нужно выяснить главную вещь - действительно ли валидатор выявляет все опасные конструкции. Для этого, в тот же каталог, где расположен скрипт webcode.php, помещен файл msg.txt. Права на него назначены как 600, его содержимое могут читать php-скрипты, а непосредственно из интернета он не виден.

В файле msg.txt находится сообщение, которое необходимо каким-либо образом попытаться прочитать. Вы можете использовать любые технические методы взлома. Но обратите внимание, социальный хак хостера - это не круто . Взлом через сниффинг пароля на админку - за взлом webcode.php не считается )

Если вам удасться прочитать содержимое файла msg.txt, пожалуйста, пришлите мне текст этого файла, и по настроению - последовательность ваших действий. При нахождении дырки просьба сильно не резвиться на сервере, файлы не уничтожать. Если охота порезвиться, ограничтесь пожалуйста дефейсом.

Ваши замечания или отчеты об обнаруженных дырках присылайте пожалуйста на мой любимый e-mail dlagovna@mail.ru или размещайте в этой теме.


Спасибо.
<web building> Поиск 






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach