The technique of fetching remote content into JavaScript is dangerous. JSON is no more dangerous than any other JS.
Executing foreign code with eval is bad. Parsing foreign text is not. It was a problem when people misused browsers to conflate them.
Executing foreign code with eval is bad. Parsing foreign text is not. It was a problem when people misused browsers to conflate them.
Here is how the the attack was performed. On my site, I rewrite the Array constructor. I then add
<script src="http://gmail.com/mycontacts.json"></script>
Now you visit my site, and I now have stolen all your Google contacts, which are protected by your google password.You see this has nothing to do with "eval".