Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты. / 23 сообщений из 23, страница 1 из 1
22.05.2016, 02:18
    #39240819
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
У пользователя имеются рисунки, альбомы. Просматривать их могут его друзья или только он, или все пользователи.

Кому как выводить хтмл-код <img src = ... решается при помощи бд и php.

НО если ссылку на картинку забукмакают как http://host/fog.jpg , то эту (прямую) ссылку друг (если в настройках указано, что рисунок доступен только для друзей!) может отослать всем (и не зарегистрированным на портале) пользователям всего инета.

Как ограничить такое? Я вообще без понятия :(. И можно ли вообще такое сделать?

Предлагайте варианты. Я обдумаю и буду шото решать.
...
Рейтинг: 0 / 0
22.05.2016, 02:24
    #39240820
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
Запросы к картинкам отправляете на скрипт, который разбирается, можно ли отдавать картинку пользователю. Если можно - читает запрашиваемый файл и отдаёт клиенту, если нельзя - отдаёт дежурный файл фиквам.джпг.
...
Рейтинг: 0 / 0
22.05.2016, 02:31
    #39240823
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
vkleЗапросы к картинкам отправляете на скрипт,
Можно чуть подробнее об этом.
...
Рейтинг: 0 / 0
22.05.2016, 08:17
    #39240838
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
Например
Код: php
1.
<img src="images.php?img=path/to/picture.jpg" />
...
Рейтинг: 0 / 0
22.05.2016, 12:55
    #39240873
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
+ На уровне веб-сервера проверять REFERER, чтобы совсем уж посторонним людям картинку не отдавать.
...
Рейтинг: 0 / 0
22.05.2016, 14:09
    #39240887
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
Насколько я знаю в Apache есть pipeline (цикл) обработки запроса. В него разве нельзя встроить обработку таких запросов?

По типу HttpHandler, HttpModule...
...
Рейтинг: 0 / 0
22.05.2016, 14:35
    #39240895
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
кажись решил:

<?php
$file = file_get_contents('$secret_dir/' . $_GET['img'], true);
echo $file;

?>

хтмл (для примера!)

echo "<IMG SRC='get_image.php?img=fog.jpeg'/>";


---
Если еще вместо имени (fog.jpeg) хранить ид или хэш рисунка в бд, то это будет еще краше и лутчшее :;))
...
Рейтинг: 0 / 0
22.05.2016, 14:38
    #39240897
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
понятно что напрямую обращаться к $_GET['img'] не рекомендовано минздравом. НО вопрос в теме не об этом.
...
Рейтинг: 0 / 0
22.05.2016, 22:06
    #39241014
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
aliskin,

Вопрос из серии паранойи - что мешает "другу" сохранить картинку у себя, а потом разослать "всему Инету"?
...
Рейтинг: 0 / 0
23.05.2016, 09:38
    #39241148
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
aliskinкажись решил:

<?php
$file = file_get_contents('$secret_dir/' . $_GET['img'], true);
echo $file;

?>

хтмл (для примера!)

echo "<IMG SRC='get_image.php?img=fog.jpeg'/>";


---
Если еще вместо имени (fog.jpeg) хранить ид или хэш рисунка в бд, то это будет еще краше и лутчшее :;))

...
Рейтинг: 0 / 0
23.05.2016, 09:38
    #39241149
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
Код: php
1.
get_image.php?img=fog.jpe
...
Рейтинг: 0 / 0
23.05.2016, 09:39
    #39241150
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
С третьего раза должно получиться:

Код: php
1.
get_image.php?img=config.php
...
Рейтинг: 0 / 0
23.05.2016, 10:15
    #39241184
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
ну с учетом $secret_dir как-то так должно получиться:
Код: php
1.
get_image.php?img=../../config.php
...
Рейтинг: 0 / 0
23.05.2016, 10:46
    #39241220
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
ага, вот таак мне насоветовали на стэковерфлоу. :(

НО я ведь написал Если еще вместо имени (fog.jpeg) хранить ид или хэш рисунка в бд, то это будет еще краше и лутчшее :;))

Так что у хацкера не будет возможности получить не нужные данные.
...
Рейтинг: 0 / 0
23.05.2016, 10:48
    #39241222
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
DarkMasteraliskin,

Вопрос из серии паранойи - что мешает "другу" сохранить картинку у себя, а потом разослать "всему Инету"?

та я об этом думал. Может вообще не стоит замораыиваться по этому поводу? И никаких скрытых альбомов не делать?
...
Рейтинг: 0 / 0
23.05.2016, 10:54
    #39241231
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
Hettну с учетом $secret_dir как-то так должно получиться:
Код: php
1.
get_image.php?img=../../config.php



get_image.php?img=../../../shadow - ?

Но прочесть не удастся. Там же как-бэ есть права доступа. НО что то другое можно прочитать(?)
...
Рейтинг: 0 / 0
23.05.2016, 11:01
    #39241238
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
ну так как быть? Может забить на эту "суперсИкретность"? и не заморачиваться?
...
Рейтинг: 0 / 0
23.05.2016, 11:24
    #39241262
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
http://itmages.ru/image/view/4303890/9024ba68

Это без обработки ГЕТа. В /etc/passwd паролей нет, но ... :(
...
Рейтинг: 0 / 0
23.05.2016, 12:07
    #39241301
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
aliskinDarkMasteraliskin,

Вопрос из серии паранойи - что мешает "другу" сохранить картинку у себя, а потом разослать "всему Инету"?

та я об этом думал. Может вообще не стоит замораыиваться по этому поводу? И никаких скрытых альбомов не делать?

aliskinну так как быть? Может забить на эту "суперсИкретность"? и не заморачиваться?При чём тут скрытые альбомы? По большому счёту, следует различать публичный доступ к данным и ограниченный. В этом вопросе следует исходить из требований техзадания и поставленных задач, а не из наличия или отсутствия одного из факторов или путей утечки данных (возможности друга разослать файл всему инету).
...
Рейтинг: 0 / 0
23.05.2016, 12:16
    #39241316
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
aliskinЭто без обработки ГЕТа. В /etc/passwd паролей нет, но ... :(В принципе, можно вообще отказаться от передачи понятных путей и параметров в скрипт отдачи изображений. Можно просто указывать единственным параметром ID файла, а скрипт по этому ID уже предоставит к выдаче конкретный файл. А ещё эти ID можно генерировать динамически и определить их действие только до первого запроса (после отдачи сопоставление айди и ресурса удаляется). Разумеется, сопоставление необходимо выполнять при генерации страницы. Насколько это получится надёжно - фик знает.
...
Рейтинг: 0 / 0
23.05.2016, 14:16
    #39241408
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
vkleПри чём тут скрытые альбомы? По большому счёту, следует различать публичный доступ к данным и ограниченный. В этом вопросе следует исходить из требований техзадания и поставленных задач, а не из наличия или отсутствия одного из факторов или путей утечки данных (возможности друга разослать файл всему инету).
вы сказали в общем, а я конкретизировал.


Все-таки шото нужно решать... После того как допишу сайт - приглашу всех для тестирования (если его до этого не оттистигруют :%))).
...
Рейтинг: 0 / 0
23.05.2016, 14:22
    #39241413
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
vklealiskinЭто без обработки ГЕТа. В /etc/passwd паролей нет, но ... :(В принципе, можно вообще отказаться от передачи понятных путей и параметров в скрипт отдачи изображений. Можно просто указывать единственным параметром ID файла, а скрипт по этому ID уже предоставит к выдаче конкретный файл. ....

путь в гете - для показа (и проверки) возможности получить данные. Понятно что я не буду прямым образом, по путям, обращаться к файлу.

При ИД я и сам выше упомянул. Все будет хорошо. Не волнуйтесь. Вам понравится. %:)
...
Рейтинг: 0 / 0
23.05.2016, 14:24
    #39241416
aliskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты.
*про ИД
*об ИД
---
что за странный форум - никак низзя редактить сообщения.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / запрет просмотра картинки по ПРЯМОЙ(?) ссылке. Варианты. / 23 сообщений из 23, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]