[wp-trac] [WordPress Trac] #28507: Secure oEmbeds
WordPress Trac
noreply at wordpress.org
Wed Mar 11 01:09:10 UTC 2015
#28507: Secure oEmbeds
----------------------------+-----------------------------
Reporter: johnbillion | Owner: johnbillion
Type: task (blessed) | Status: accepted
Priority: normal | Milestone: Future Release
Component: Embeds | Version:
Severity: normal | Resolution:
Keywords: | Focuses:
----------------------------+-----------------------------
Description changed by johnbillion:
Old description:
> We need to audit our oEmbed providers and determine:
>
> * Which ones don't support embedding an `https` URL
> * Which ones don't support embedding content over SSL
>
> If we have providers in core which do not support embedding content over
> SSL then we (or the WP.com team) should make contact and see if they're
> open to implementing it. This is pretty much a prerequisite for #28249 as
> it stands.
>
> ----
>
> Problem providers:
>
> ||=Provider=||=Core supports HTTPS URL=||=Endpoint recognises HTTPS
> URL=||=Embed supports HTTPS=||=Notes=||
> ||blip.tv||'''No'''||'''[http://blip.tv/oembed?url=https://blip.tv/stylestar/shine-6866879
> No]'''||-||Their website resolves over SSL but is broken||
> ||dailymotion.com||Yes||[http://www.dailymotion.com/services/oembed?url=https://www.dailymotion.com/video
> /x1z6k7r_putin-says-ukrainian-gas-price-demands-force-talks-into-dead-
> end_news Yes]||Nearly||Embeds are served over HTTPS if the oEmbed
> endpoint uses HTTPS
> ([https://www.dailymotion.com/services/oembed?url=https://www.dailymotion.com/video
> /x1z6k7r_putin-says-ukrainian-gas-price-demands-force-talks-into-dead-
> end_news example])||
> ||dai.ly||'''No'''||'''[http://www.dailymotion.com/services/oembed?url=https://dai.ly
> /x1z6k7r_putin-says-ukrainian-gas-price-demands-force-talks-into-dead-
> end_news No]'''||-||Invalid SSL certificate (points to dailymotion.com)||
> ||smugmug.com||Yes||[http://api.smugmug.com/services/oembed?url=https://gilmarphotography.smugmug.com/Galleries
> /Hamburger-Hat/i-TtMhZ3v/A&format=json Yes]||'''No'''||-||
> ||hulu.com||Yes||[http://www.hulu.com/api/oembed.json?url=https://www.hulu.com/watch/647281
> Yes]||'''No'''||Invalid SSL certificate (points to Akamai)||
> ||revision3.com||'''No'''||'''[https://revision3.com/api/oembed?url=https://revision3.com/sourcefednerd
> /game-of-thrones-the-watchers-on-the-wall-reviewed/ No]'''||-||Mixed
> content when viewing the site over HTTPS.||
> ||photobucket.com||'''No'''||[http://photobucket.com/oembed?url=https://i199.photobucket.com/albums/aa117/vchartman/weather/bearintherain-1.gif
> Yes]||'''No'''||Site doesn't resolve over HTTPS||
> ||scribd.com||Yes||'''[http://www.scribd.com/services/oembed?format=json&url=https%3A%2F%2Fwww.scribd.com%2Fdoc%2F65793063
> %2FMuestra-Comic-Asterix-II No]'''||-||HTTPS site redirects to HTTP
> site||
> ||poll.fm||Yes||[https://polldaddy.com/oembed/?url=https://poll.fm/4tzp6
> Yes]||Yes||Invalid SSL certificate (points to polldaddy.com)||
> ||funnyordie.com||Yes||[http://www.funnyordie.com/oembed?url=https%3A%2F%2Fwww.funnyordie.com%2Fvideos%2F82e2ad3eaa
> %2Fthrowing-shade-47-summer-vacay-and-guest-mo&format=json
> Yes]||'''No'''||Invalid SSL certificate (points to Akamai)||
> ||instagram.com||'''No'''||'''[http://api.instagram.com/oembed?url=https://instagram.com/p/rR9ZOSCjc_/
> No]'''||-||HTTPS site redirects to HTTP||
> ||instagr.am||'''No'''||'''[http://api.instagram.com/oembed?url=https://instagr.am/p/rR9ZOSCjc_/
> No]'''||-||Invalid SSL certificate (points to instagram.com)||
> ||imgur.com||Yes||[http://api.imgur.com/oembed?url=https://imgur.com/gallery/9dlrs
> Yes]||'''No'''||-||
> ||collegehumor.com||Yes||[http://www.collegehumor.com/oembed.json?url=https://www.collegehumor.com/video/6970155
> /collegehumor-all-nighter-14-batman-of-the-office Yes]||'''No'''||-||
> ||ted.com||Yes||[http://www.ted.com/talks/oembed.json?url=https://www.ted.com/talks/jill_bolte_taylor_s_powerful_stroke_of_insight.html
> Yes]||Yes||Almost there, just some mixed content in embeds||
> ||animoto.com||Yes||[http://animoto.com/oembeds/create?url=https://animoto.com/play/MlRRgXHhoT8gOZyHanM6TA&format=json
> Yes]||Yes||HTTPS embeds by default, but mixed content when playing an
> embed||
> ||video214.com||Yes||[http://animoto.com/oembeds/create?url=https://video214.com/play/MlRRgXHhoT8gOZyHanM6TA&format=json
> Yes]||Yes||HTTPS embeds by default, but mixed content when playing an
> embed||
>
> Recently fixed providers:
>
> * '''flic.kr''' - HTTPS everywhere. Regex corrected in r28834.
> * '''slideshare.net''' - HTTPS embeds since r28834.
> * '''wordpress.tv''' - HTTPS embeds for HTTPS URLs.
> * '''meetup.com''' and '''meetu.ps'''- HTTPS embeds for HTTPS URLs.
>
> Ok providers:
>
> * '''youtube.com''' and '''youtu.be''' - HTTPS embeds via the
> `scheme=https` parameter.
> * '''vimeo.com''' - Embeds are protocol-relative.
> * '''flickr.com''' - HTTPS everywhere (same for flic.kr).
> * '''polldaddy.com''' - Embeds are served over HTTPS if the parent
> container uses HTTPS. Effectively protocol-relative via JavaScript.
> * '''twitter.com''' - HTTPS everywhere.
> * '''soundcloud.com''' - HTTPS everywhere. (Minor note: their oEmbed
> response includes an `http` URL for the thumbnail on their CDN, but it
> resolves over `https` if you change it.)
> * '''rdio.com''' and '''rd.io''' - HTTPS embeds by default.
> * '''spotify.com''' - HTTPS everywhere.
> * '''issuu.com''' - Embeds are served over HTTPS if the parent container
> uses HTTPS. Effectively protocol-relative via JavaScript.
> * '''mixcloud.com''' - Embeds are protocol-relative.
New description:
We need to audit our oEmbed providers and determine:
* Which ones don't support embedding an `https` URL
* Which ones don't support embedding content over SSL
If we have providers in core which do not support embedding content over
SSL then we (or the WP.com team) should make contact and see if they're
open to implementing it. This is pretty much a prerequisite for #28249 as
it stands.
----
Problem providers:
||=Provider=||=Core supports HTTPS URL=||=Endpoint recognises HTTPS
URL=||=Embed supports HTTPS=||=Notes=||
||blip.tv||'''No'''||'''[http://blip.tv/oembed?url=https://blip.tv/stylestar/shine-6866879
No]'''||-||Their website resolves over SSL but is broken||
||dailymotion.com||Yes||[http://www.dailymotion.com/services/oembed?url=https://www.dailymotion.com/video
/x1z6k7r_putin-says-ukrainian-gas-price-demands-force-talks-into-dead-
end_news Yes]||Nearly||Embeds are served over HTTPS if the oEmbed endpoint
uses HTTPS
([https://www.dailymotion.com/services/oembed?url=https://www.dailymotion.com/video
/x1z6k7r_putin-says-ukrainian-gas-price-demands-force-talks-into-dead-
end_news example])||
||dai.ly||'''No'''||'''[http://www.dailymotion.com/services/oembed?url=https://dai.ly
/x1z6k7r_putin-says-ukrainian-gas-price-demands-force-talks-into-dead-
end_news No]'''||-||Invalid SSL certificate (points to dailymotion.com)||
||smugmug.com||Yes||[http://api.smugmug.com/services/oembed?url=https://gilmarphotography.smugmug.com/Galleries
/Hamburger-Hat/i-TtMhZ3v/A&format=json Yes]||'''No'''||-||
||hulu.com||Yes||[http://www.hulu.com/api/oembed.json?url=https://www.hulu.com/watch/647281
Yes]||'''No'''||Invalid SSL certificate (points to Akamai)||
||revision3.com||'''No'''||'''[https://revision3.com/api/oembed?url=https://revision3.com/sourcefednerd
/game-of-thrones-the-watchers-on-the-wall-reviewed/ No]'''||-||Mixed
content when viewing the site over HTTPS.||
||photobucket.com||'''No'''||[http://photobucket.com/oembed?url=https://i199.photobucket.com/albums/aa117/vchartman/weather/bearintherain-1.gif
Yes]||'''No'''||Site doesn't resolve over HTTPS||
||scribd.com||Yes||'''[http://www.scribd.com/services/oembed?format=json&url=https%3A%2F%2Fwww.scribd.com%2Fdoc%2F65793063
%2FMuestra-Comic-Asterix-II No]'''||-||HTTPS site redirects to HTTP site||
||poll.fm||Yes||[https://polldaddy.com/oembed/?url=https://poll.fm/4tzp6
Yes]||Yes||Invalid SSL certificate (points to polldaddy.com)||
||funnyordie.com||Yes||[http://www.funnyordie.com/oembed?url=https%3A%2F%2Fwww.funnyordie.com%2Fvideos%2F82e2ad3eaa
%2Fthrowing-shade-47-summer-vacay-and-guest-mo&format=json
Yes]||'''No'''||Invalid SSL certificate (points to Akamai)||
||instagr.am||'''No'''||'''[http://api.instagram.com/oembed?url=https://instagr.am/p/rR9ZOSCjc_/
No]'''||-||Invalid SSL certificate (points to instagram.com)||
||imgur.com||Yes||[http://api.imgur.com/oembed?url=https://imgur.com/gallery/9dlrs
Yes]||'''No'''||-||
||collegehumor.com||Yes||[http://www.collegehumor.com/oembed.json?url=https://www.collegehumor.com/video/6970155
/collegehumor-all-nighter-14-batman-of-the-office Yes]||'''No'''||-||
||ted.com||Yes||[http://www.ted.com/talks/oembed.json?url=https://www.ted.com/talks/jill_bolte_taylor_s_powerful_stroke_of_insight.html
Yes]||Yes||Almost there, just some mixed content in embeds||
||animoto.com||Yes||[http://animoto.com/oembeds/create?url=https://animoto.com/play/MlRRgXHhoT8gOZyHanM6TA&format=json
Yes]||Yes||HTTPS embeds by default, but mixed content when playing an
embed||
||video214.com||Yes||[http://animoto.com/oembeds/create?url=https://video214.com/play/MlRRgXHhoT8gOZyHanM6TA&format=json
Yes]||Yes||HTTPS embeds by default, but mixed content when playing an
embed||
Recently fixed providers:
* '''flic.kr''' - HTTPS everywhere. Regex corrected in r28834.
* '''slideshare.net''' - HTTPS embeds since r28834.
* '''wordpress.tv''' - HTTPS embeds for HTTPS URLs.
* '''meetup.com''' and '''meetu.ps'''- HTTPS embeds for HTTPS URLs.
* '''instagram.com''' - HTTPS everywhere since r31710.
Ok providers:
* '''youtube.com''' and '''youtu.be''' - HTTPS embeds via the
`scheme=https` parameter.
* '''vimeo.com''' - Embeds are protocol-relative.
* '''flickr.com''' - HTTPS everywhere (same for flic.kr).
* '''polldaddy.com''' - Embeds are served over HTTPS if the parent
container uses HTTPS. Effectively protocol-relative via JavaScript.
* '''twitter.com''' - HTTPS everywhere.
* '''soundcloud.com''' - HTTPS everywhere. (Minor note: their oEmbed
response includes an `http` URL for the thumbnail on their CDN, but it
resolves over `https` if you change it.)
* '''rdio.com''' and '''rd.io''' - HTTPS embeds by default.
* '''spotify.com''' - HTTPS everywhere.
* '''issuu.com''' - Embeds are served over HTTPS if the parent container
uses HTTPS. Effectively protocol-relative via JavaScript.
* '''mixcloud.com''' - Embeds are protocol-relative.
--
--
Ticket URL: <https://core.trac.wordpress.org/ticket/28507#comment:45>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list