亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

人們為什么要輸入“ throw 1; json響應前面的<dont be evil>”和“

人們為什么要輸入“ throw 1; json響應前面的<dont be evil>”和“

元芳怎么了 2019-11-21 14:05:04
Google會像這樣返回json:throw 1; <dont be evil> { foo: bar}和Facebook的ajax有這樣的json:for(;;); {"error":0,"errorSummary": ""}他們為什么要放置將停止執行并生成無效json的代碼?如果它無效,他們將如何解析它;如果您嘗試評估它,它將崩潰嗎?他們只是將其從字符串中刪除(似乎很昂貴)嗎?這有什么安全優勢嗎?出于安全考慮,對此:如果刮板在另一個域上,則它們將不得不使用script標簽來獲取數據,因為XHR無法跨域工作。即使沒有,for(;;);攻擊者也將如何獲取數據?它沒有分配給變量,所以不會因為沒有引用而被垃圾回收嗎?基本上要獲得跨域數據,他們必須要做<script src="http://target.com/json.js"></script>但是,即使沒有前置崩潰腳本,攻擊者也無法使用任何Json數據,除非將其分配給可以全局訪問的變量(在這些情況下不是)。崩潰代碼實際上無能為力,因為即使沒有崩潰代碼,他們也必須使用服務器端腳本來使用其站點上的數據。
查看完整描述

3 回答

  • 3 回答
  • 0 關注
  • 330 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號