The w.wiki link shortener accepts links containing ?withJS= parameters (harmless example). At first blush, this might not seem like much of an issue, since ?withJS= only works with MediaWiki namespace scripts, which only intadmins can create and edit. And intadmins already have the power to do much worse, so we needn't be concerned about giving them this extra power. However, there are two ways that the vulnerabilties here exceed those inherent in the existence of intadmins.
We'll start with the relatively less scary one: allowing w.wiki links including ?withJS= parameters means that any user can trick any other user into running any JS in the MW namespace of the wiki in question. Since MediaWiki namespace scripts are expected to run on an opt-in basis in most cases (with careful discussion of the rare exceptions), it is possible that some wikis will have scripts in that namespace that do have serious adverse effects if run unintentionally. However, this is the lesser of my concerns.
Much more alarmingly, this combination of features allows anyone who is an intadmin anywhere on a w.wiki-scope wiki to conduct phishing attacks that will be roughly as effective on all wikis. While this is a relatively high-effort attack, it is significantly lower-effort than gaining intadmin on any of the major wikis. Consider the following approach:
- I get temp IA on tinywiki.wiktionary.org. Very easy, potentially might only take a few weeks, considering that a 0–0 self-nom is a valid IA consensus.
- I create a (probably heavily obfuscated) MW namespace script that will redirect users to some phishing domain, en.wikipedia.org.tld or such. (Of course there's other evil things I could do, but the rest are all inherent risks in IA.)
- I create shortcut https://w.wiki/tr
- I email enwiki admins some phishing emal, linking them to https://w.wiki/tr. Since w.wiki is a trusted domain, they click it.
- Unless they noticed the brief flicker as they are taken from w.wiki to tinywiki.wiktionary.org to en.wikipedia.org.tld, or notice the incorrect domain name at the end, they will have no reason not to fill out the UserLogin form at the fake enwiki.
Thus someone with intadmin on any wiki has a very viable path to phish any account on a major wiki, even for users who are diligent in not clinking links to untrusted sites.