One of the users found today that you can put anything you want inside the [embed] tags. The content then gets html encoded, and then decoded again so it bypasses all other filters that may catch it
Here is her test case. She was trying to figure out if it was possible to set the size of an embedded object in the filter.
[embed]<iframe src="http://player.open.ac.uk/embed/c7a775d799" height="270" width="480" frameborder="0" allowfullscreen></iframe>[/embed]
| Comment | File | Size | Author |
|---|---|---|---|
| #8 | oembed-filter_invalid_urls-2107397-8.patch | 3.15 KB | strangeways |
Comments
Comment #1
stuart.crouch commentedJust to clarify - the html has to be escaped, then the embed tags seem to unescape it and let you put any HTML you want in
Comment #2
thedavidmeister commentedSurely this is a critical security issue?
Comment #3
dsnopekUnpublishing because this is a security issue. We'll continue on security.drupal.org.
Comment #4
dsnopekBecause this only affected the Drupal 7 version and it has no stable release, this is moving back to the public issue queue. Sorry, for detour to security.drupal.org! I should have checked if there was a stable release. :-/
Comment #5
chasingmaxwell commentedCould this be a text filter configuration issue? If the oEmbed filter comes before the "Limit allowed HTML tags" filter, the "Limit allwed HTML tags" filter will catch whatever was returned by the oEmbed filter.
Comment #6
stuart.crouch commentedIf you make oembed filter happen first, the limit html tags filter actually strips out everything that the oembed put in (because objects etc are not allowed tags). We dont want the users entering them manually because they make a mess, so they cant be added as an allowed filter.
Comment #7
humansky commentedThis is a pretty serious XSS vulnerability. Here's a simple example:
[embed]<script>alert(123)</script>[/embed]EDIT: this vulnerabiliy only works when you are using the WYSIWYG Filter module
Comment #8
strangeways commentedHere is a patch that does the following:
Comment #9
astonvictor commentedD7 reached its EOL back in January 2025, and there is no active release for D7 for this module anymore.
Development or support is not planned for D7. All D7-related issues are marked as outdated in a bunch.