【发布时间】:2010-04-02 16:46:29
【问题描述】:
我正在使用 json 在浏览器和 java 服务器之间传递数据。
我正在使用Json-lib 在 java 对象和 json 之间进行转换。
在从 json 转换为 java 时,我想从用户输入中去除可疑的东西(即“doSomethingNasty().)。
我可以想象有几点我可以做到这一点:
- 我可以检查原始 json 字符串并去掉看起来很有趣的东西
- 我可以寻找一种方法来拦截进入 java 对象的每个 json 值,并在那里寻找有趣的东西。
- 我可以在从 json 重构后立即遍历我的新 java 对象,查找任何字符串字段,然后剥离那里的内容。
最好的方法是什么?是否有针对这项任务构建的任何技术,我可以将其应用到我已经拥有的东西上?
【问题讨论】:
-
对我来说最难的部分是确定什么是“有趣的东西”。
-
这听起来好像不是 JSON,而是更结构化的 JAVASCRIPT 文字(JSON != Javascript 文字),问题?绝对需要在这里定义“有趣的东西”是什么意思。
-
“有趣的东西”基本上是指javascript函数,而不仅仅是用户数据。我想验证用户是否只提交了适当的个人数据(姓名、地址等),并且没有坏人会欺骗用户提交 javascript 函数,然后这些函数可能被用于各种邪恶。