[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: GD шаблон загрузки фотографий
Страницы: 1, 2, 3, 4
Миша
Цитата (Kopipaster @ 20.05.2014 - 18:27)
Мета скидываются если просто переназвать картинку.

Кто что думает?

_____________
Принимаю заказы, писать в ЛС
sergeiss
Цитата (Kopipaster @ 20.05.2014 - 18:27)
Какие в изду картинки с PHP кодом? Мета скидываются если просто переназвать картинку. Разве нет?

"А мужики-то и не знают" smile.gif Пишут на хабре всякие статьи на эту тему и не догадываются "о простом решении проблемы" wink.gif

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Миша
Ну понятно, вот код я написал
$test='test.jpg';
list($width, $height) = getimagesize($filename); // получаем ширину, высоту
$image_p = imagecreatetruecolor($width, $height); //создаём новое полноцветное изображение
$image = imagecreatefromjpeg($filename); // создаём новое изображение из файла
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width, $height); //копирование с сохранением размера изображения, с ресемплированием
header('Content-Type: image/jpeg'); // устанавливаем тип содержимого в заголовок
imagejpeg($image_p, '$test'); // сохраняем
imagedestroy($image_p); // освобождаем память


В моём случае правильно написал?

_____________
Принимаю заказы, писать в ЛС
Kopipaster
Цитата (Медведь @ 20.05.2014 - 16:12)

http://phpforum.ru/html/counter/counter.ph....ru/post/44610/

Ну эту статью я пролистал. В общем там общие сведения о защите. Проверка на то является ли файл картинкой. Это понятно.
Я вообще о исполняемом коде внутри именно картинки. Это что реально возможно? Существуют заражённые изображения которые нельзя вылечить просто пересохранив фаил?

Цитата (sergeiss @ 20.05.2014 - 18:46)
"А мужики-то и не знают" smile.gif Пишут на хабре всякие статьи на эту тему и не догадываются "о простом решении проблемы" wink.gif

Дайте что ли посмотреть на эти файлы. Вдруг я живу в страшном мире и не знаю.
sergeiss
Цитата (Kopipaster @ 20.05.2014 - 19:15)
Существуют заражённые изображения которые нельзя вылечить просто пересохранив фаил?

Копирование сохраняет файл вплоть до каждого бита. Команда копирования не имеет права ничего менять. Потому что она ничего не анализирует внутри файла.

Цитата (Kopipaster @ 20.05.2014 - 19:15)
Вдруг я живу в страшном мире и не знаю.

Есть же счастливые люди... Даже не догадываются о реальном положении дел... wink.gif

Примеров с хабра тебе недостаточно?

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Миша
Мужики и Девушки про меня забыли, посмотрите опытным глазом кому не трудно.

_____________
Принимаю заказы, писать в ЛС
Kopipaster
Цитата (sergeiss @ 20.05.2014 - 19:30)
Копирование сохраняет файл вплоть до каждого бита. Команда копирования не имеет права ничего менять. Потому что она ничего не анализирует внутри файла.

Да что ты.
А как же дата создания, дата изменения, название?
И таки есть у кого этих страшных картинок вязанка? мне бы хоть одним глазком посмотреть на сиё чудо.
brevis
Цитата (Kopipaster @ 20.05.2014 - 19:15)
Дайте что ли посмотреть на эти файлы. Вдруг я живу в страшном мире и не знаю.

http://php.webtutor.pl/wp-content/uploads/...-logo-virus.jpg

Если сохранить себе и выполнить в консоли php -f php-logo-virus.jpg -- то увидим вывод phpinfo().

Другое дело заставить такой файл выполниться как php из браузера. Для этого веб-сервер должен быть сконфигурирован специальным образом. Обычно веб-серверы файлы .jpg не передают на выполнение php-обработчику, а отдают клиенту сразу.
Но бывают случаи: я несколько раз сталкивался с ситуацией, когда apache2 + php как cgi на дефолтных настройках выполняет файлы такого вида: php-logo-virus.php.jpg. Вот в этом случае лучше перебдеть, чем недобдеть.


Цитата
Мужики и Девушки про меня забыли, посмотрите опытным глазом кому не трудно.

Достаточно
$image = imagecreatefromjpeg($filename);
imagejpeg($image, $filename, 100);


_____________
Чатик в телеге
sergeiss
Цитата (Медведь @ 20.05.2014 - 10:14)
Есть такое мнение, что даже изображение с php кодом (либо php с форматом jpg) можно перегнать через gd и получится та-же фотография, но уже Безопасная для сайта.

Если у кого-то есть наработки, поделитесь пжл.

Цитата (Медведь @ 20.05.2014 - 19:39)
про меня забыли, посмотрите опытным глазом кому не трудно.

На вот тебе лучше файлик для тестов :) Сумеешь убрать из него "бациллу" - молодец. Это будет лучшей проверкой твоего скрипта. И для тебя будет полезнее, если потренируешься "в боевом режиме", с реально проблемным файлом.

А заодно и для "Копирайтера" ответ - пусть убедится, что всё не так просто в этом мире...

Итак. Во вложении (надеюсь, что нормально приложится) файлик butt2.gif (это было оригинальное название файла до загрузки на форум). Картинка обычная. ГИФ формат. Но попробуйте выполнить вот такой скриптик, где эта картинка участвует:
<img src="butt2.gif">
<
div style="display: none"><?php include 'butt2.gif' ?></div>

Да-да, файл используется в 2-х ипостасях: картинка и подключенный скрипт.

Гарантирую, что ничего плохого не произойдет :) Но о своих ощущениях прошу честно сказать.

Медведь, а после того, как ты проведешь свою "дезинфекцию", этой проблемы (которую ты увидишь, выполнив мой скрипт из предыдущего абзаца) быть не должно.

PS. Да, как верно подметил brevis, можно и переименовать этот файл в butt2.php и просто указать в адресной строке браузера. Но при этом будет еще немного "мусора" на экране, не так красиво. Но суть будет та же самая.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Kopipaster
Ну вот записал на серв, всё норм.
<?php
$file = 'http://php.webtutor.pl/wp-content/uploads/2011/04/php-logo-virus.jpg';
$newfile = "tru.jpg";
if (!copy($file, $newfile)) {
echo "не удалось скопировать $file...\n";
}
echo '<img src='.$newfile.'>';
?>


Сейчас пойду с гифом играться.
brevis
Цитата (Kopipaster @ 20.05.2014 - 20:27)
Ну вот записал на серв, всё норм.

include('tru.jpg');


_____________
Чатик в телеге
BaNru
С чего вдруг они скидывается?
У MP3'шек тоже теги сбрасываются при копирование?

Ты не путай метатеги файла и метатеги картинки, равно как и EXIF. Они немного разные.

Ой, тут уже страницу нафлудили, опоздал
Kopipaster
include('tru.jpg');

Я так никогда с посторонними файлами не делаю.
BaNru
Многие разработчики много что не делают, а потом у них на сайте куча новых и необычных файлов появляется. Ты не делаешь - другие сделают за тебя )))
Kopipaster
"Конструкция include предназначена для включения файлов в код сценария PHP во время исполнения сценария PHP."

Кому прийдёт в голову подключить так картинку?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.