JSON Hijacking小结

本文介绍了JSON Hijacking的概念,这种攻击利用浏览器特性,通过非标准JSON格式执行代码,导致用户信息泄露。防范措施包括避免发送可执行的JSON数组、使用POST请求以及检查请求头。同时提及了与CSRF和SOME漏洞的相似之处。
摘要由CSDN通过智能技术生成

该利用方式浏览器已修复


0x00 head

最近在慢慢的读《Web 之困》这本书,作者想要传达的知识量真的很大,好几次译者都在下面注释出作者几句话背后所隐含的知识点,这次看到一篇8年前关于JSON Hijacking的文章,很久远却一点也不过时。

0x01 JSON

首先我们讲讲JSON,JSON 全名JavaScript Object Notation (JavaScript对象表示法),是一种轻量级的数据交换格式,没有复杂的语法,格式也简单,现在几乎无处不在。它通过重载大括号 { 操作符的含义来实现(原本大括号代表的是代码块的分界,多条语句的集合)。

当JS碰到语句的情况时,大括号代表着一段嵌入代码块的起始。但当碰到表达式时,大括号的含义就是一个序列化对象的开始

关于表达式和语句的区别 :JavaScript中:表达式和语句的区别
或者看原文:Expressions versus statements in JavaScript

简单来说,表达式就是必须要有返回值,它可以放在任何需要一个值的地方。而语句是一种行为,一种操作,类似于循环语句(while、for),判断语句 if 等。其中语句是可以用表达式来替换的,最常见的就是用条件运算符(条件表达式)去替换一个 if 判断语句。

下面是一个正确的大括号用作表达式的例子:

var test_
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值