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

  #11  
Старый 16.09.2007, 19:49
Аватар для groundhog
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Хм... ХЗ... Вроде и правда работает как is_set... Хотя судя по http://ru.php.net/manual/ru/function.empty.php оно автоматом заменяет выражение на NULL, а уже empty от NULL работает корректно... В общем ладно, тут я тогда настаивать не буду, оформим это как замечание по технике программирования...
 
Ответить с цитированием

  #12  
Старый 16.09.2007, 19:50
Аватар для -=lebed=-
-=lebed=-
Флудер
Регистрация: 21.06.2006
Сообщений: 3,193
Провел на форуме:
12702287

Репутация: 4738


По умолчанию

empty возвращает false, если переменная существует и имеет не пустое или не нулевое значение; true в обратном случае.

Т.е. если переменной нет или она есть и её значение пустое или нулевое. ->true

Отсюда вывод: однозначно существование переменной она не проверяет!

PS groundhog прав - проверяет на НЕПУСОТУ!
Т.е. если переменная не существует или её значение пустое или 0, то результат одинаков.

Последний раз редактировалось -=lebed=-; 16.09.2007 в 19:57..
 
Ответить с цитированием

  #13  
Старый 17.09.2007, 16:57
Аватар для Ponchik
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
Провел на форуме:
6828219

Репутация: 2274


По умолчанию

По поводу баги №6
Код:
Защита:  Использование слеширования опасных символов функцией addslashes().
А если в строку прописать stripslashes($_GET[php])&php=(тот_что_ты_показывал)
 
Ответить с цитированием

  #14  
Старый 18.09.2007, 20:30
Аватар для scrat
scrat
Постоянный
Регистрация: 08.04.2007
Сообщений: 853
Провел на форуме:
5812656

Репутация: 1540


Отправить сообщение для scrat с помощью ICQ
По умолчанию

Цитата:
Самое простое это функция basename(). Она извлекает из пути файла его имя. Плюс, не побоюсь этого слова, обрезание расширения, либо удаление точки.
можно ещё и так:
PHP код:
<?
 
if(is_file("modules/".$_GET['module'])) include("modules/".$_GET['module'];
?>
 
Ответить с цитированием

  #15  
Старый 18.09.2007, 21:07
Аватар для n1†R0x
n1†R0x
Постоянный
Регистрация: 20.01.2007
Сообщений: 787
Провел на форуме:
2924346

Репутация: 1719


Отправить сообщение для n1†R0x с помощью ICQ
По умолчанию

Ага, а если я в кач-ве $module передам
../../../../../etc/passwd ?
или ты хочешь сказать, что при проверке is_file файла passwd функция возвратит false?
 
Ответить с цитированием

  #16  
Старый 18.09.2007, 21:19
Аватар для Ponchik
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
Провел на форуме:
6828219

Репутация: 2274


По умолчанию

n1†R0x, ИМХО апач тебя пошлёт, он кажись не обрабатывает такие пути ну в смысле ты указываешь папку а потом из неё возвращаешся, нипаймёт он тебя modules/../../../../../etc/passwd
 
Ответить с цитированием

  #17  
Старый 18.09.2007, 22:01
Аватар для Mobile
Mobile
Регистрация: 18.02.2006
Сообщений: 1,090
Провел на форуме:
6489333

Репутация: 1564


Отправить сообщение для Mobile с помощью ICQ
По умолчанию

I-I()/Ib и groundhog
Красавцы, оба шарите, молодцы. Как говорится в споре рождается истина... обоим по +5 поставил
 
Ответить с цитированием

  #18  
Старый 18.09.2007, 22:03
Аватар для n1†R0x
n1†R0x
Постоянный
Регистрация: 20.01.2007
Сообщений: 787
Провел на форуме:
2924346

Репутация: 1719


Отправить сообщение для n1†R0x с помощью ICQ
По умолчанию

Цитата:
Сообщение от Ponchik  
n1†R0x, ИМХО апач тебя пошлёт, он кажись не обрабатывает такие пути ну в смысле ты указываешь папку а потом из неё возвращаешся, нипаймёт он тебя modules/../../../../../etc/passwd
Вообще, как мне кажется, данную функцию будет обрабатывать PHP, а не апач. И мне не кажется в любом случае, что меня пошлют) разве что прав не хватит, но это уже другой разговор...
Если бы апач (точнее, пхп) посылал, не было бы php-инклудов. А относительные пути с движением вверх поддерживаются еще со времен ms-dos
 
Ответить с цитированием

  #19  
Старый 19.09.2007, 10:12
Аватар для groundhog
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

n1†R0x, ты прав, при такой реализации:

Цитата:
<?
if(is_file("modules/".$_GET['module'])) include("modules/".$_GET['module'];
?>
Можно проинклудить незапланированное файло, ну, конечно, если не накладывается никаких дополнительных ограничений.
 
Ответить с цитированием

  #20  
Старый 19.09.2007, 11:56
Аватар для Ponchik
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
Провел на форуме:
6828219

Репутация: 2274


По умолчанию

Да? Х_Х Ну а как от этого защититься-то?!
if(is_file("./modules/".$_GET['module'])) include("./modules/".$_GET['module'];
Так чтоли?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
#antichat. Логи, лолы. Gh0s7 Болталка 694 07.06.2010 20:01
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
На PHP, как на "Новые ворота"... Mertvii-Listopad Чужие Статьи 7 18.09.2006 12:42
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31



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


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




ANTICHAT.XYZ