Dans quelle mesure la fonction «désactiver le téléchargement de l'image d'origine» de Flickr est-elle sécurisée?

17

Dans la page des paramètres de confidentialité de Flickr, il y a un paramètre intitulé "Qui peut accéder à vos fichiers d'image d'origine?". Si je règle cela sur autre chose que "Tout le monde" (par exemple "Seulement vous" ou "Vos contacts"), est-il toujours possible pour un utilisateur non autorisé d'accéder à l' image d' origine sans que quelqu'un ne lui donne l'URL? (Supposons que ma photo d'origine soit plus grande que 1024px, il existe donc une version originale distincte de la version grande. Supposons également qu'elle n'est pas sous licence Creative Commons .)

Je suis bien conscient qu'une fois qu'une image est apparue dans son navigateur, un utilisateur déterminé peut facilement la télécharger indépendamment de toute dissuasion (par exemple, les bloqueurs JavaScript) que le navigateur essaie de mettre sur son chemin. Cependant, je pense que les éléments suivants sont corrects:

  1. Un utilisateur non autorisé ne verra qu'une page d'erreur s'il essaie d'afficher la page Taille d'origine sur Flickr (par exemple, cette page ).

  2. Bien que l'URL de cette page soit facilement devinable (il suffit d'ajouter sizes/o/à la fin de l'URL de la page de photo normale), l'URL du fichier image d'origine réel a un composant aléatoire et ne peut pas être facilement deviné.

Il y a beaucoup de gens sur Flickr et ailleurs qui disent que le paramètre de désactivation du téléchargement est inutile, mais je n'ai vu aucune preuve. Quelqu'un sait-il avec certitude qu'il peut être contourné? Si vous dites oui, je m'attends à ce que vous le prouviez en m'envoyant la taille originale de ma dernière image ! (Il est censé être disponible uniquement pour les amis et la famille - donc pas vous, oncle Goober ...)

Un peu de contexte: je dois souligner que je ne cherche pas à voler des photos, j'essaie de comprendre à quel point les mines sont sûres, en particulier en ce qui concerne cette échappatoire aux clôtures géographiques qui a été signalée aujourd'hui.

Mark Whitaker
la source
2
Veuillez noter que ce n'est pas une question de programmation: je ne demande pas comment cela peut être fait. C'est une question de photographie: je veux savoir si mes images sont sécurisées sur Flickr ou s'il existe des preuves du contraire.
Mark Whitaker
Je peux télécharger n'importe quelle image que vous nous permettez de voir, donc c'est assez inutile d'essayer un bloc. Sans consacrer du temps à tenter de pirater Flickr (et risquer mon compte et, eh bien, la prison), il n'est pas particulièrement facile de dire si votre original peut être récupéré sans autorisation.
John Cavan
@John Oui, votre première phrase est correcte - j'ai dit la même chose dans ma question. Je ne demande à personne d'essayer de pirater Flickr, je me demande simplement si quelqu'un a vu des nouvelles d'une vulnérabilité connue.
Mark Whitaker
@Mark, bonne question.
bw

Réponses:

18

J'ai fait une enquête par moi-même, en utilisant mon propre compte Flickr et un navigateur non connecté.

Voici la page Toutes les tailles pour une de mes photos .

Avant de modifier le "Qui peut accéder à vos fichiers d'image d'origine?" En configurant dans Confidentialité et autorisations, un internaute générique pouvait voir le lien " Original " en plus des autres tailles. Cette page avait une <img>balise liée à cette URL . La page "Toutes les tailles" comportait également un lien indiquant Télécharger la taille originale de cette photo . (Si vous vérifiez les URL, notez qu'il y a un _dsuffixe sur le nom du fichier; Flickr le verra et déclenchera l'en-tête HTTP qui indique au navigateur de télécharger au lieu d'afficher l'image).

À titre de comparaison, voici la page de grande taille et l' URL de l'image correspondante .

J'ai ensuite modifié le paramètre de confidentialité, effacé le cache de mon navigateur non connecté et vérifié à nouveau les liens. Voici ce que j'ai trouvé:

  • Le lien vers la page de taille d'origine redirige maintenant vers la page de grande taille . C'est raisonnable.
  • La page Toutes les tailles n'avait plus les liens de taille d'origine, comme prévu.
  • Je pouvais toujours télécharger l'image de taille originale
    • C'est un peu surprenant. Cela signifie que, même s'il existe des restrictions d'accès sur les pages contenant les images, il n'y a aucune sécurité sur les images elles-mêmes .
    • En tant que développeur Web, je peux comprendre pourquoi ils l'ont probablement fait. Les images sont grandes et statiques et probablement servies via un réseau de diffusion de contenu. Il est plus rapide / plus efficace de ne pas vérifier les autorisations pour les fichiers image; vous pouvez simplement les héberger sur un serveur Web "idiot" de cette façon.

Donc, une fois que l'URL du fichier d'origine est connue, il n'y a aucun moyen d'empêcher quelqu'un de télécharger la version originale du fichier (à moins de la supprimer entièrement ... et cela peut même ne pas fonctionner. Je n'ai pas essayé).

Un dernier problème: dans quelle mesure les URL du fichier d'origine sont-elles devinables? Les voici côte à côte:

Large:    http://farm7.static.flickr.com/6126/6044833128_cc02cf41e3_b.jpg
Original: http://farm7.static.flickr.com/6126/6044833128_3b8eac89d7_o.jpg

Ainsi, le suffixe ( _bou _o) détermine la taille, mais il y a aussi un autre élément dans le nom de fichier qui varie en fonction de la taille. Vous ne pouvez pas simplement changer le suffixe pour retourner les tailles. Voici l' URL de la version Large avec le suffixe basculé sur _o; ça ne marche pas.

Si j'étais Flickr, je m'assurerais que cet élément central était complètement aléatoire par taille de photo, et donc impossible à deviner sauf par une attaque par force brute. Il fait 40 bits de long, donc il y a beaucoup (2 ^ 40, ~ 1 billion) d'options possibles. Il est très peu probable que quiconque se donne la peine de forcer ce segment pour obtenir la version d'origine d'un fichier ... alors qu'il a déjà la version volumineuse .

Donc, tant que vous avez désactivé la fonction "Téléchargement de fichier d'origine" et que vous ne partagez pas les URL des images originales , je dirais que la fonction Flickr est assez sécurisée. S'il se casse, c'est à peu près votre faute.

Craig Walker
la source
6
Il y a une exception à ma conclusion "c'est de votre faute". Comme @Imre l'a mentionné, Flickr utilise généralement des connexions HTTP non sécurisées, ce qui signifie que toute personne entre votre navigateur et Flickr (votre entreprise, votre FAI) peut écouter vos URL. Si vous parcourez la page Taille d'origine, vous obtiendrez l'URL de l'image de taille originale; un attaquant pourrait le détecter et enregistrer l'URL. Cependant, si quelqu'un écoute votre trafic HTTP, OMI, vous avez de plus gros problèmes que de garder vos originaux Flickr en sécurité.
Craig Walker
Merci d'avoir fourni les liens, j'ai pu vérifier les en-têtes de mise en cache maintenant!
Imre
2
Vous n'avez même pas besoin de parcourir votre page Taille d'origine; parcourez n'importe quoi sur Flickr et le renifleur peut s'aider lui-même avec le cookie de session que vous venez d'utiliser.
Imre
2
C'est une excellente réponse: +1 pour votre approche analytique et des explications claires. Je savais que l'URL de l'image d'origine n'est pas authentifiée (c'est-à-dire accessible à toute personne disposant de l'URL) - cela est implicite dans ma question ("est-il toujours possible [...] sans que quelqu'un ne leur donne l'URL? ") Mais merci pour en le mentionnant explicitement. :)
Mark Whitaker
@Mark Whitaker: Vous êtes les bienvenus. Je voulais faire la différence entre l'URL de l' image et l'URL de la page qui contenait l'image ... d'autant plus que celle- ci a des autorisations attachées.
Craig Walker
3

Cette page (liée au plugin Firefox que Bill Weaver a posté) fait un bon travail de résumé de la situation, y compris le "composant aléatoire" dans l'URL de l'image que j'ai mentionné dans la question.

L'auteur note:

Cela signifie que même si vous vous donnez la peine d'obtenir le nom de fichier pour l'une des tailles les plus petites, vous ne pouvez pas deviner le nom de fichier de la photo d'origine , et c'est une excellente nouvelle pour les photographes inquiets du vol d'images.

"Je ne peux pas deviner" - super! :) Mais il continue en disant:

Ce qui est cool, c'est qu'après Flickr a aléatoire les noms de fichiers, il est devenu presque impossible de deviner l'URL pour la taille d'origine d'un fichier.

" Presque impossible" - pas si génial! :( Mais je suppose qu'il veut simplement dire qu'avec suffisamment de temps et de puissance de traitement, vous pouvez le casser avec une attaque par force brute . Si c'est le cas, c'est assez bon pour moi: je prendrai ces chances. :)

Mark Whitaker
la source
2
je ne serais pas inquiet d'une attaque par force brute sur une seule image que vous publiez (cela ne veut pas dire qu'ils n'en valent pas la peine :). La plus grande préoccupation (pour moi, au moins) est que si un autre trou est découvert, quelqu'un sur flickr fait une erreur et s'appuie sur le mauvais levier, ou il change ses politiques (en raison d'un changement de cœur, d'une acquisition par des personnes avec d'autres idées, etc.).
bw
2
à côté de l'impossible devrait probablement être envisagé comme il n'est pas strictement impossible, mais le craquage du générateur de nombres aléatoires nécessiterait soit une faille grave dans la génération aléatoire elle-même (pas impossible, quelque chose de similaire s'est malheureusement produit avec Debian, voir debian.org/security/ 2008 / dsa-1571 ), nécessitant probablement dans le processus un nombre considérable de suppositions que le serveur flickr devrait détecter comme suspectes.
Francesco
Maintenant, vous êtes dans le domaine de l'effort / du risque à récompenser et je doute qu'il y ait beaucoup sur Flickr qui justifierait le risque. Ce n'est pas une évaluation de la qualité de l'image, c'est juste une évaluation que recréer l'image peut être moins d'efforts et beaucoup moins de risques. Cela a également été fait par l'industrie de la publicité.
John Cavan
3

Flickr utilise le protocole Web non sécurisé (HTTP) par défaut, de sorte que toutes les images sont accessibles après avoir effectué un détournement de session par une personne qui peut y accéder. Pour le détournement de session, l'attaquant doit être en mesure d'écouter le trafic réseau de la victime, par exemple en accédant au même point d'accès sans fil ou à un nœud de réseau intermédiaire. Le risque est devenu assez important dans les spots sans fil publics après la sortie de Firesheep - un plugin Firefox qui saisit automatiquement les cookies que d'autres personnes utilisent dans la même zone sans fil et les présente pour une utilisation facile.

De plus, les images sont accompagnées d'en-têtes qui permettent aux caches Web intermédiaires de les conserver pendant des années. Ainsi, obtenir l'accès pour parcourir un cache Web peut également fournir un accès aux images originales qui ont été consultées via ce cache.

Je ne vais pas pourchasser votre connexion réseau ou vos caches ou celle de vos amis, donc non, je ne vais pas vous envoyer votre image d'origine. Mais pour jouer en toute sécurité, votre meilleur pari n'est pas de télécharger des images originales.

Imre
la source
4
Photo.SE utilise également HTTP, donc ce message a peut-être été écrit par quelqu'un d'autre que moi :)
Imre
2

S'il est affiché, vous pouvez bien sûr l'enregistrer. Si les originaux sont protégés, pas tant que l'URL n'est pas connue. Le résultat est assez sûr et non, je ne pense pas qu'il puisse être téléchargé.

Le plugin Firefox d'origine flickr semble au premier abord faire cela (je l'ai supposé passivement), mais télécharge en fait la grande taille si vous avez protégé vos originaux du public. J'ai téléchargé une version 1024 x 580 de votre photo avec ce plugin.

bw
la source
Pas si l'original est réglé pour ne pas le permettre. Le hack d'URL a été supprimé, il vous fait juste rebondir vers le plus grand disponible actuellement. C'est ce que l'auteur du plugin déclare également.
John Cavan
1
Hmmm ... oui, vous avez raison, @John. J'ai dit "purport" à en juger uniquement par "l'original" dans le nom du plugin. :)
bw
@bill Vous avez téléchargé une image originale de 1200px? Je ne pense pas: la page que vous avez liée indique " Mises en garde: cela ne fonctionnera pas sur les images que le photographe a marquées" Tous droits réservés "ou a désactivé le téléchargement." Cela vous a peut-être permis d'avoir une version 1024px Large, mais la question concerne très spécifiquement la taille d'origine.
Mark Whitaker
1
@Mark, comme je l'ai dit, j'ai téléchargé l'image 1024 x 580. Peut-être que j'ai sauté le pistolet et ma première passe à une réponse ne l'a pas dit. Mais, oui, 1024 est ce qu'il a téléchargé.
bw
1
Il semblerait que oui. :) D'après ce que je peux dire, flickr prend très au sérieux votre propriété d'une image et parcourt soigneusement la fine ligne entre le partage, l'accès public et vos droits. Les opinions divergent à ce sujet et font des erreurs, mais c'est mon opinion globale. D'un autre côté, je n'ai pas suffisamment confiance en cela pour télécharger mes images originales.
bw
-1

Le plugin Firefox Tamperdata permettra la découverte de l'url protégée de l'image. C'est insignifiant de le faire. La seule couche de sécurité semble être l'obscurité.

Affaire Henry Dorsett
la source
3
Vraiment? Pouvez-vous le prouver en téléchargeant la version originale (2400x1600) de cette image ? Je suppose que vous n'avez pas tout à fait bien lu la question.
Mark Whitaker
-3

Voici le moyen facile de le faire (en utilisant Safari) sans tout le jargon que vous lancez. Accédez à la page toutes les images. Une fois que vous avez activé votre menu déroulant Développer, accédez à Afficher l'inspecteur Web. Sur le côté gauche de la fenêtre du développeur, recherchez la liste déroulante des images. Cliquez dessus et recherchez la chaîne avec le numéro long. Lorsque vous cliquez dessus, l'image apparaîtra dans la fenêtre du développeur. À l'extrême droite, vous verrez l'URL de l'image. Copiez et collez l'URL dans une nouvelle fenêtre de navigateur et l'image apparaît et peut être téléchargée à partir de là. OU faites simplement glisser l'image depuis la fenêtre du développeur. (Son nom sera probablement changé en Inconnu.

Capture d'écran de ma méthodologie

Greg
la source
3
Vous avez soit mal lu la question, soit mal compris le problème. J'ai déclaré clairement "Je suis bien conscient qu'une fois qu'une image est apparue dans son navigateur, un utilisateur déterminé peut facilement la télécharger" . Vous avez seulement téléchargé la grande taille, pas l'original. Essayez de relire la question et je suis sûr que vous verrez ce que je demandais. Malheureusement pour vous, le "jargon" est là pour une raison!
Mark Whitaker