В скрипте на сервере fopen("somedir/$var1/$var2/plaintextfile.dat", "r");
Через GET запрос могу влиять на $var1 и $var2. Какую пользу можно извлечь?
Интеллигент боится лишь одного — касаться темы зла и его корней, потому что справедливо полагает, что здесь его могут сразу выeбaть телеграфным столбом.©
Неактивен
эмм... попробуй заюзать так, чтобы было, скажем:
fopen("somedir/../../../../../../etc/passwd%00/plaintextfile.dat", "r");
(через %00 ты завершаешь строку, и часть после неё уже игнорируется. Если повезёт с количеством ../, то откроется /etc/passwd.)
Можно таким образом достать конфиги apache, версию системы, пароли к чему-либо и так далее.
Неактивен
Блин, поздно.. Пока я тыкался, они успели дырку залатать.. в случае не правильного запроса прост перенаправляет на домашнюю страницу( Или просто ничего не отображает.. Скорее всего просто вырубили отображение php ошибок гы Я и не подумал про нульстринги..)) Ламер еще.
Добавлено спустя 32 мин 30 с:
Наверное они просто что-то дебажили..эхх Ну в любом случае буду помнить теперь, что делать))
Редактировался Lord_Evil (04-11-10 19:34:24)
Интеллигент боится лишь одного — касаться темы зла и его корней, потому что справедливо полагает, что здесь его могут сразу выeбaть телеграфным столбом.©
Неактивен
Да не, обычно даже такие вещи косяки делают с валидацией. Хотя дибилизм для PHP - свойственнен.
Попадались мне сайты в реальном мире, где на вход в админку прокатывало OR 1 = 1...
Квантовая механика - "малопонятный математический курьёз" (с) msAVA - современный учитель.
Неактивен
Tiphon, я ваще балдею.. чета не работает, ошибки в скрипте, а этот пох-пох знай себе дальше страницу рисует, называя ошибки варнингами..ппц
Интеллигент боится лишь одного — касаться темы зла и его корней, потому что справедливо полагает, что здесь его могут сразу выeбaть телеграфным столбом.©
Неактивен
Да не, обычно даже такие вещи косяки делают с валидацией. Хотя дибилизм для PHP - свойственнен.
Попадались мне сайты в реальном мире, где на вход в админку прокатывало OR 1 = 1...
Почему сразу PHP? Дибилизм свойственнен для начинающих, а на ПХП очень легко начать. Конечно есть там пара опасных настроек, типа когда можно с помощью get или post менять текущие переменные (register globals), ну какбы в пхп 6 этого уже не будет...
А всякие sql inject, так это можно в любом языке сделать. Все что юзер делает надо фильтровать
An internal error occurred while showing an internal error.
Неактивен
Почему сразу PHP?
Хочешь похоливорить на эту тему?) Я за Perl, ес чо
Интеллигент боится лишь одного — касаться темы зла и его корней, потому что справедливо полагает, что здесь его могут сразу выeбaть телеграфным столбом.©
Неактивен
Дибилизм свойственнен для начинающих, а на ПХП очень легко начать.
Именно по этому. А сам ПХП никакой защиты не несет. Более того, архитектура "из мелких кусочков строить свой дом" располагает к тому, что новички сами себе изобретают "как класть фундамент", "как присобачивать крышу к стенам" и т.д. Потом крыша отваливается)))
Вообще такое "из кирпичей мы небоскреб построим" ведет к тому, что тебе приходится писать с нуля (это ужасно). Тебе приходится изучать чужой код от начала до конца, если ты используешь сторонние модули. Никаких конвенций или подсказок, разрозненность синтаксиса базовых библиотек ведут к тому, что каждый как хочет так и... пишет. Результат в том, что 90% программеров не в состоянии написать "идеальные" модули.
Не всегда программеры плохие, иногда времени нет, начальники мудаки и т.д. Но это аксиома: делетанты и лаботрясы предлагают продукт (разработку сайтов) и всегда находятся те, кто этот продукт у них готов купить. Это независимо от ПХП. Но, в отличии от более продуманных систем, ПХП отличная среда для написания очень дырявого кода, если нет многих лет практики за плечами.
Даже не сосчитать, сколько же я в жизни встречал ПХП говнокодеров, которые писали свои поделия из блокнотов (чем хвастались) и принципиально не знали, например, что такое юнит тесты.
Сравни с ASP.NET? Там хоть по умолчанию валидация пост и гет запросов включена. Модули все есть с расставленными правами и политиками. И тебе надо знать систему, чтобы это менять. Большая библиотека с очень грамотной архитектурой ведет к тому, что все пишут примерно в одном стиле. Общепринята система юнит тестинга и много средств под ее поддержку (в том числе со стороны встроенной библиотеки). Ты строишь дома из готовых, продуманных блоков. Тоже не залог безопасности, но хоть что-то.
Квантовая механика - "малопонятный математический курьёз" (с) msAVA - современный учитель.
Неактивен
Хочешь похоливорить на эту тему?) Я за Perl, ес чо
а я за русский
ххх: у тебя iperf есть?
yyy: iperf? перфоратор от Apple чтоле?
xxx: Во всем мире уже известны российские дороги и дураки. Сейчас к ним еще домены добавятся.
Неактивен
kenzzzooo, чо там было..1С кажись на русском кодить?)
Интеллигент боится лишь одного — касаться темы зла и его корней, потому что справедливо полагает, что здесь его могут сразу выeбaть телеграфным столбом.©
Неактивен