The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Уязвимости в PHP и PHPMailer, opennews (ok), 08-Дек-18, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


53. "Уязвимости в PHP и PHPMailer"  +/
Сообщение от пох (?), 09-Дек-18, 13:09 
> Кодер, помни: если ты забираешь что угодно ($server) с юзеринпута и фигачишь в вызовы
> библиотек (imap_open) без проверки на соответствие формата и валидность

проверку как производить будем - высунем окошко и будем ждать модератора-человека, чтоб одобрил? Иначе где гарантия, что код, используемый при этих проверках, сам не попытается выполнить передаваемые аргументы, как вот с file_exists (это ведь тоже была проверка на валидность, казалось бы, вполне нормальная - если бы функция не имела ложного названия)?

Может все же где-то в консерватории поправить, а? Например, в $server принимать только и исключительно - server, а любые дополнительные параметры протокола передавать дополнительными аргументами? Не, не модно, не молодежно, мы любим прекрасные псевдо-uri ?

Ответить | Правка | Наверх | Cообщить модератору

58. "Уязвимости в PHP и PHPMailer"  +1 +/
Сообщение от Онаним (?), 09-Дек-18, 13:23 
> проверку как производить будем

В данном конкретном случае - регэкспом. Валидный формат доменного имени вполне себе описан. Никаких посторонних символов типа / в переданном пользователем $server для imap_open быть не должно.

Попали опять не желающие проверять пользовательский ввод, впрочем, они попадают на любых языках, в любых ОС и всегда.

Ответить | Правка | Наверх | Cообщить модератору

69. "Уязвимости в PHP и PHPMailer"  +/
Сообщение от пох (?), 09-Дек-18, 17:16 
ну и зачем, зачем тогда вы накрутили в imap_open какие-то другие операции с этим $server без явного указания ?

Кому оно надо, если от юзера мы такое не принимаем, спрашивается?

очередной ненужный и опасный оверинжиниринг, прикрываем регекспами, как всегда.

валидный формат доменного имени в эпоху юникодного мусора в dns - нечто уму непостижимое, если что. Я хз как его на валидность проверять (разьве что развернув сперва в punicode)

Ответить | Правка | Наверх | Cообщить модератору

75. "Уязвимости в PHP и PHPMailer"  +/
Сообщение от Онаним (?), 09-Дек-18, 18:48 
А затем, что у imap_open овердохера применений. И накрутили не совсем в пхп, а в либц-клиенте.

Ещё раз: не "прикрываем регекспами", а именно валидируем. Если может быть только хостнейм - валидируем регэкспом на соответствие. Если может быть только полтора сервера из менюшечки - проверяем присутствие. Передавать голый юзеринпут сторонней библиотеке без валидации опасно в любом языке и любом контексте.

Ответить | Правка | Наверх | Cообщить модератору

81. "Уязвимости в PHP и PHPMailer"  +/
Сообщение от пох (?), 09-Дек-18, 19:03 
> А затем, что у imap_open овердохера применений.

честно говоря, применение в виде imap over rsh мне представляется требующим при сборке -DIWANNATHISSHITFULLMOUTH и еще пятнадцати рандомных чисел в правильной последовательности.

применение в виде imap over rsh replaced by ssh - ну, может быть, какому-то ретрограду (считающему еще и ssh достаточно безопасным и надежным способом доступа к удаленному серверу без всякого основания) и надо, но скорее всего он mutt через вручную сконфигуренный туннель запустит, а ЭТО вообще ни один нормальный человек не использует.

очередной типовой оверинжиниринг - ну ок, на сей раз не в php, видимо.

> Если может быть только хостнейм

а вдруг не только? Овердохераж  применений, вон, разработчики старались, сколько неведомой фигни туда затолкали, может и эта кому-то нужна (смешно если так сфейлится код, реально валидирующий инпут, но автор счел rsh допустимым инпутом - "вдруг кому-то очень-очень понадобится")

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру