News for hackers. Stuff that matters.
Re:World of Warcraft: one simple line of code can cost you d... by niftich on Monday July 25, 2016 @01:20PM (#12160089)
Another contributing factor in this vulnerability is that the 'chat compose input' and the 'script console' are one and the same.

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.

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.
Re:World of Warcraft: one simple line of code can cost you d... by ahoy on Monday July 25, 2016 @04:01PM (#12161186)
You (presumably) couldn't send chat messages directly to another player's script console, which is how this works.