我读的人声称,当任意用户输入的代码运行的eval是不安全的。我理解在访问文件系统的服务器上运行的其他语言中的这一点。但是,为什么在浏览器中执行代码时这很重要?毕竟,你是不是可以直接启动Firebug并编写任何你想要的任意脚本?那么eval有什么不同呢?
14
A
回答
19
eval
的危险只会在你服务由爱丽丝向用户bob为bob的浏览器评估的脚本提供丑陋的头时。
例如如果bob在你的页面上输入他的密码,alice可以在你输入的用户输入中编写一个键盘记录器,并将数据编码成一个脚本,以便bob将(不知不觉)提交给爱丽丝。正如@Hunter2在评论中提到的那样,这是XSS攻击。
如果没有投放到其他人,你是在假设它相当于发射了萤火虫
正确
2
不认为这是不安全的,为最偏执的执行eval = null;
相关问题
- 1. “不安全-EVAL”
- 2. 的JavaScript的eval()和安全
- 3. __caller__为什么不安全?
- 4. 这为什么不安全?
- 5. 为什么C#中的ArrayList不安全?
- 6. 为什么“strcat”被视为“不安全”?
- 7. 为什么eval()存在?
- 8. 为什么我的安全iframe被报告为不安全?
- 9. 为什么在Flash中使用复制粘贴而不是在Javascript中安全?
- 10. SimpleDateFormat - 不安全,但为什么?
- 11. 为什么MAVLink协议不安全?
- 12. 为什么Django函数django.views.static.serve()不安全?
- 13. 为什么内联JS块不安全?
- 14. 为什么我的cookie不安全?
- 15. 为什么eval()在Javascript中给出了未定义的值?
- 16. vsnprintf为什么安全?
- 17. 为什么CopyOnWriteArrayList安全?
- 18. 为什么“example.it”安全并且“www.example.it”不安全?
- 19. 为什么肥皂是安全的?为什么不使用HTTPS?
- 20. 为什么在中断中不能安全使用mutex_trylock?
- 21. Javascript:使全局eval()的行为像object.eval()
- 22. 为什么Pythons eval()错误?
- 23. 为什么suhosin.executor.allow_symlink存在安全问题?
- 24. 为什么不是运算符类型在java中安全的?
- 25. 为什么“f = f ++”在c中不安全?
- 26. 为什么这被认为是Sharepoint中的“不安全更新”?
- 27. 什么是C/C++中的“安全”和“不安全”代码?
- 28. 为什么我在这里没有安全或不安全的操作?
- 29. 为什么eval不在这个片段中工作?
- 30. 为什么eval在这里失败?
'的eval() `可能是XSS攻击媒介,如果你不小心 – PaoloVictor 2011-01-27 03:01:47
请进一步解释 – 2011-01-27 03:04:45