Re:World of Warcraft: one simple line of code can cost you d...
by seanp2k2 on Monday July 25, 2016 @01:45PM
(#12160248)
Or do it like Quake and HL did and have tilde be the console. You can do things like "/say foo" or commands / settings through there, and in the case of quake at least, it can load scripts from files in a directory. This is not new stuff, and it's surprising that it doesn't do this already. Example: http://ezquake.sourceforge.net/docs/?scripting
Re:World of Warcraft: one simple line of code can cost you d...
by ryanlol on Tuesday July 26, 2016 @09:54AM
(#12165606)
It supports this already, or at least did. Console just needs to be manually enabled.
Re:World of Warcraft: one simple line of code can cost you d...
by eridius on Monday July 25, 2016 @01:49PM
(#12160278)
I'm not sure how that would solve anything, the attacker would just convince the victim to type that line of code into the script console instead of the chat console.
Re:World of Warcraft: one simple line of code can cost you d...
by alistairSH on Monday July 25, 2016 @03:08PM
(#12160821)
Sure, the rebinding could still happen. But, the remote execution is prevented (right now, after rebinding the trim function, the attacker can enter script in the chat window to be executed - this part goes away with a separate console).
Re:World of Warcraft: one simple line of code can cost you d...
by TheCoelacanth on Monday July 25, 2016 @04:37PM
(#12161445)
I don't think so.
The attacker is executing script through the RemoveExtraSpaces function that gets run on every chat message, not by executing it with either player's chat console.
Re:World of Warcraft: one simple line of code can cost you d...
by niftich on Monday July 25, 2016 @05:12PM
(#12161650)
The assumption is that a proper mitigation would result in the script console being in a separate execution context; such that variables that are (re-)declared in the script console would not affect the chat console's context, or its 'RemoveExtraSpaces' function, nor the global context. I should've been more clear.
Re:World of Warcraft: one simple line of code can cost you d...
by eridius on Monday July 25, 2016 @07:07PM
(#12162250)
That assumption wouldn't work. If the script console is a separate Lua environment, it's completely useless. As long as it's the same environment that the rest of the game/addons use (which it must be), then there's no "mitigation" that can be done like you're hoping for.
While this was done to simplify UX, it's really not a good idea in retrospect.
Even as something simple as a different chat frame that only allowed script commands, into which only local script output can go, would also serve as an effective mitigation.