Maybe someone could explain the original security concern, and how masking is able to address that concern?
In the new protocol, Websockets traffic is (trivially) encoded so that it (a) can't accidentally be interpreted by either endpoint as something other than Websockets and (b) can't confuse middleboxes.
Basically, "new" Websockets has custom Websockets encryption that nothing other than Websockets will be speaking, so, if you're talking Websockets, it's because both endpoints consented to do so.
http://w2spconf.com/2011/papers/websocket.pdf
(Full disclosure: I'm a co-author of that paper.)