JSON 解析和安全性
JSON parsing and security
我们的基础设施使用Python作为后端的所有内容,Javascript用于我们的"前端"(这是我们为其他站点提供的库)。基础结构的不同组件之间的通信是通过 JSON 消息完成的。
在 Python 中,json.load()
和 json.dump()
是处理 JSON 字符串的安全方法。在Javascript中,JSON.parse()
将被改用。但是,这些函数只能保证字符串具有正确的 JSON 格式,对吗?
如果我担心注入攻击,我需要通过其他方式清理 JSON 的每个字段。我这个假设是对的吗?或者只是通过使用前面提到的功能,我们会很安全?
如果输入字符串不是有效的 JSON 格式,JSON.parse
将引发异常。使用起来很安全,我想不出任何方法可以仅用 JSON.parse 攻击您的代码。它不像eval
那样工作.
当然,您可以检查生成的 json 对象,以确保它具有您期望的结构。
没有上下文,就没有经过净化和未经净化的数据。
仅当用户控制的数据在具有特殊含义的上下文中使用时,数据才被视为不安全。
例如 '
在SQL中,<script>
在HTML中。
与SQL中的<script>
相反,这是完全安全的。
结果是在使用数据时进行编码/清理,而不是在从 JSON 接收数据时进行编码/清理。
相关文章:
- jQuery匹配JSON对象的部分文本
- 在循环中分配json值时,值被覆盖
- 需要帮助设置json数组
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 使用JS将数组转换为json对象
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 使用JQuery解析JSON嵌套数组
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- 如何使用json将对象列表从java转换为javascript
- 如何使用 node.js 比较两个 json 数组
- 如何将JSON数据导入我的ejs模板
- 区分JSON中的矩阵和列表列表
- 不显示带有本地json文件数据的谷歌地图脚本
- 如何将json数据显示为html
- 如何为json对象中的段发送array[]
- JSON restful服务安全性
- JSON 解析和安全性
- 在JSON和安全性中注入javascript
- 对JSON和Javascript的安全性感到非常困惑(和担心)