|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
|
Как правильно проверять input type=file ?17.09.2014, 22:41. Показов 4263. Ответов 18
Метки нет (Все метки)
Уважаемые специалисты программировния подскажите как правильно проверить input type=file, то есть сделать все проверки чтобы при загрузке файла не было уязвимостей
0
|
|
| 17.09.2014, 22:41 | |
|
Ответы с готовыми решениями:
18
Как загрузить файл на сервер с помощю <input type=file>? <input type=file |
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 17.09.2014, 23:19 | |
|
в большинстве случаев достаточно getimagesize/exif_imagetype и проверки на имя файла
0
|
|
|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
|||||||||||
| 17.09.2014, 23:29 [ТС] | |||||||||||
|
а подробнее можно к примеру
Добавлено через 46 секунд достаточно ли ее или нет
0
|
|||||||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 17.09.2014, 23:33 | ||||||
|
Можно добавить такое
1
|
||||||
|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
||||||
| 18.09.2014, 01:26 [ТС] | ||||||
|
И при перемещении не позволять вольностей в имени файла (лучше всего составлять свое имя файла) ?
обясните что вы имеете введу Добавлено через 4 минуты вот еще проверка при добавлени в базу
0
|
||||||
|
F́́́́́́́ŕ́́́́́́́é́́́ ́ak
260 / 224 / 109
Регистрация: 07.07.2014
Сообщений: 965
|
|||
| 18.09.2014, 18:13 | |||
|
В таком виде реализация уязвима в случае IE6: пользователь может сгенерировать изображение таким образом, что оно будет содержать <script>alert("xss");</script>, при отображении этой картинки на вашем сайте в IE6 этот JavaScript будет исполнен и пользователю будет отображено модальное окно (в данном случае, по-факту - как минимум украдут куки, как максимум - сделают что угодно). Кроме того, в случае наличия на вашем сайте уязвимости типа local include, - загрузку изображений можно использовать для загрузки shell'а, что не очень хорошо. По-факту - лучше сохранять не исходное изображение, которое загрузил пользователь, а собственноручно перекодировать его с удалением информации exif (или, как минимум, её валидацией). // ну и кроме всего прочего, - будет полезным запретить выполнение скриптов из директории с загружаемыми пользователем изображениями.
0
|
|||
|
11 / 11 / 1
Регистрация: 31.10.2013
Сообщений: 52
|
||||||
| 18.09.2014, 18:25 | ||||||
0
|
||||||
|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
||||||
| 20.09.2014, 14:44 [ТС] | ||||||
|
а это код надежен или в него еще что нибудь надо до писать для надежности
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 20.09.2014, 14:56 | ||||||
|
он повторяющийся и не очень продуманный.. И я уже говорил, что не стоит полагаться на имя файла "как есть".
Хотя бы так
1
|
||||||
|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
|
| 20.09.2014, 20:31 [ТС] | |
|
а на сколько это эффективно и можно ли к этому дополнительно проверки дописать чтобы хотя бы 95% защетить можно конешно чтобы бы на 100% ))
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 20.09.2014, 20:34 | |
|
На 100% невозможно защитить ничего.
Выше уже говорили, что еще можно делать
0
|
|
|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
|
| 21.09.2014, 00:39 [ТС] | |
|
полностью с вами согласен на 100% не че не возможно защетить но хотелось бы узнать ваше мнени по вашему коду на сколько он актуален по защите
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 21.09.2014, 00:41 | |
|
Не знаю, я уже довольно давно не пишу на php и никогда особо не интересовался.. Хватало проверки на имя файла, тип файла и открытие с помощью getimagesize
0
|
|
|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
|
| 21.09.2014, 00:42 [ТС] | |
|
проверил работает но как его дальше можно обмануть пока что не представляю ведь пока учусь прграммироать а не ломать хотя как говорится кто-то делает бронежилет кто-то пулю которая пробьеть его всемирная гармони
0
|
|
|
F́́́́́́́ŕ́́́́́́́é́́́ ́ak
260 / 224 / 109
Регистрация: 07.07.2014
Сообщений: 965
|
|||||||
| 22.09.2014, 01:38 | |||||||
|
Позволю себе повторится:
Да, у вас наверняка нигде нет уязвимости типа local include, однако защита строится из многих уровней и этот один из них - нельзя давать пользователю загружать файлы с произвольным контентом, если есть такая возможность. Если возможности нет - файлы должны загружаться на отдельный сервер исполнение скриптов на котором невозможно в принципе. Соответственно код может выглядеть так:
0
|
|||||||
|
3 / 3 / 4
Регистрация: 04.02.2013
Сообщений: 214
|
||||||
| 24.09.2014, 12:28 [ТС] | ||||||
|
Tatikoma по данному коду можете что то прокоментировать чтобы еще дописали в него для дополнительно проверки что в нем не желательно использоватль
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 24.09.2014, 12:49 | ||||||
|
Я там впопыхах несколько глупо сделал, лучше так
0
|
||||||
| 24.09.2014, 18:37 | |
|
Не по теме: KOPOJI, раз уж грузишь ты аватарку в GD, ну чем тебе не сохранять её из него же?.. - Ну не надо пускать на сервер юзерский контент в чистом виде..
0
|
|
| 24.09.2014, 20:25 | |
|
Не по теме: Tatikoma, мне, в общем-то, все равно.. Говорите об этом ТС-у, он все рвется универсальный скрипт увидеть :)
0
|
|
| 24.09.2014, 20:25 | |
|
Помогаю со студенческими работами здесь
19
Сохранение пути input type file Изменение изображения input type=file Input type file - выберите файл Как передать файл, полученый в <input type="file"> другой странице? Как по пути к файлу в интернете получить массив файла, как если бы он был загружен через <input type="file">? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|