国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

別天真了,第三方CSS并不安全

開發 前端
最近一段時間,關于 通過 CSS 創建 “keylogger”(鍵盤記錄器) 的討論很多。有些人呼吁瀏覽器廠商去“修復”它。有些人則深入研究,表示它僅能影響通過類 React 框架建立的網站,并指責 React。而真正的問題卻在于很多人認為第三方內容是“安全”的。

[[222177]]

最近一段時間,關于 通過 CSS 創建 “keylogger”(鍵盤記錄器) 的討論很多。

有些人呼吁瀏覽器廠商去“修復”它。有些人則深入研究,表示它僅能影響通過類 React 框架建立的網站,并指責 React。而真正的問題卻在于很多人認為第三方內容是“安全”的。

第三方圖片

 

  1. <img src="https://example.com/kitten.jpg"

如果我將上述代碼引入我的文件中,即表示信任 example.com。對方可能會刪除資源,給我一個 404,導致網站不完整,從而破壞這種信任關系。或者,他們可能會用其他非預期的數據來替代小貓圖片的數據。

但是,圖片的影響僅限于元素本身的內容區域。我可以向用戶解釋并希望用戶相信,“此處的內容來自 example.com,如果它有誤,則是原站點的問題,并不是本站造成的”。但這個問題肯定不會影響到密碼輸入框等內容。

第三方腳本

 

  1. <script src="https://example.com/script.js"></script> 

與圖片相比,第三方腳本則有更多的控制權。如果我將上述代碼引入我的文件中,則表示我賦予了 example.com 完全控制我的網站的權限。該腳本能:

  • 讀取/修改頁面內容。
  • 監聽用戶的所有交互。
  • 運行耗費大量計算資源的代碼(如 cryptocoin 挖礦程序)。
  • 通過向本站發請求,這樣能附帶用戶的 cookie,轉發響應。(譯注:盜取用戶的 cookie 及其他數據)
  • 讀取/修改本地存儲。
  • ......可以做任何對方想做的事情。

“本地存儲”非常重要。如果腳本通過 IndexedDB 或緩存 API 發起攻擊,則即使在刪除腳本后,攻擊仍可能在整個站點內繼續存在。

如果你引入了其他站點的腳本,則必須絕對相信對方及對方的防護能力。

如果你遭到惡意腳本的攻擊,則可設置 Clear-Site-Data header(清空站點數據響應頭) 清除站點所有數據。

第三方CSS

 

  1. <link rel="stylesheet" href="https://example.com/style.css"

相比圖片,CSS 在能力上更接近腳本。像腳本一樣,它適用于整個頁面。它可以:

  • 刪除/添加/修改頁面內容。
  • 根據頁面內容發起請求。
  • 可響應多種用戶交互。

雖然 CSS 不能修改本地存儲,也不能通過 CSS 運行 cryptocoin 挖礦程序(也許是可能的,只是我不知道而已),但惡意 CSS 代碼仍然能造成很大的損失。

鍵盤記錄器

從引起廣泛關注的代碼開始講起:

 

  1. input[type="password"][value$="p"] {  
  2.   background: url('/password?p');  

 

如果輸入框的 value 屬性值以 p 結尾,上述代碼將會向 /password?p 發起請求。每個字符都可觸發這個操作,通過它能獲取到很多數據。

默認情況下,瀏覽器不會將用戶輸入的值存儲在 value 屬性中,因此這種攻擊需要依賴某些能同步這些值的東西,如 React。

要應對這個問題,React 可用另一種同步密碼字段的方式,或瀏覽器可限制那些能匹配密碼字段屬性的選擇器。但是,這僅僅是一種虛假的安全。你只解決了在特殊情況下的該問題,而其他情況依舊。

如果 React 改為使用 data-value 屬性,則該應對方法無效。如果網站將輸入框更改為 type="text",以便用戶可以看到他們正在輸入的內容,則該應對方法無效。如果網站創建了一個 <better-password-input> 組件并暴露 value 作為屬性,則該應對方法無效。

此外,還有很多其他的基于 CSS 的攻擊方式:

消失的內容

 

  1. body { 
  2.   display: none; 
  3.  
  4. html::after { 
  5.   content: 'HTTP 500 Server Error'

 

以上是一個極端的例子,但想象一下,如果第三方僅對某一小部分用戶這樣做。不但你很難調試,還會失去用戶的信任。

更狡猾的方式如偶爾刪除“購買”按鈕,或重排內容段落。

添加內容

 

  1. .price-value::before {  
  2.   content: '1' 

哦,價格被標高了。

移動內容

 

  1. .delete-everything-button {  
  2.   opacity: 0;  
  3.   position: absolute 
  4.   top: 500px;  
  5.   left: 300px;  

 

上面的按鈕能做一些重要的操作,設置其為不可見,然后放在用戶可能點擊的地方。

值得慶幸的是,如果按鈕的操作確實非常重要,網站可能會先顯示確認對話框。但也不是不可繞過,只需使用更多的 CSS 來欺騙用戶點擊 “確定” 按鈕而不是“取消”按鈕即可。

假設瀏覽器確實采用上面的應對方法解決“鍵盤記錄器”的問題。攻擊者只需在頁面上找到一個非密碼文本輸入框(可能是搜索輸入框)并將其蓋在密碼輸入框上即可。然后他們的攻擊就又可用了。

讀取屬性

其實,你需要擔心的不僅僅是密碼輸入框。你可能在屬性中保存著其他的隱藏內容:

 

  1. <input type="hidden" name="csrf" value="1687594325" 
  2. <img src="/avatars/samanthasmith83.jpg" 
  3. <iframe src="//cool-maps-service/show?st-pancras-london"></iframe>  
  4. <img src="/gender-icons/female.png" 
  5. <div></div> 

所有這些都可以通過 CSS 選擇器獲取,且能發出請求。

監聽交互

 

  1. .login-button:hover {  
  2.   background: url('/login-button-hover');  
  3.  
  4.  
  5.  
  6. .login-button:active {  
  7.   background: url('/login-button-active');  

 

可將 hover 和 active 狀態發送到服務器。通過適當的 CSS,你就能獲取到用戶意圖。

讀取文本

 

  1. @font-face {  
  2.   font-family: blah;  
  3.   src: url('/page-contains-q') format('woff');  
  4.   unicode-range: U+85;  
  5.  
  6.  
  7.  
  8. html {  
  9.   font-family: blah, sans-serif;  

 

在這種情況下,如果頁面內有 q 字符,則會發送請求。你可以為不同的字符,并針對特定的元素,創建大量不同的字體。字體也可以包含 ligature(連字),所以你可以在開始檢測字符序列。你甚至可以通過將字體技巧與滾動條檢測結合起來 來推斷內容。

譯注:關于 ligature(連字), 可查看 Wikipedia Typographic Ligature

第三方內容不安全

這些只是我所知道的一些技巧,我相信還有更多。

第三方內容在其沙箱區域內具有強大的能力。一張圖片或沙盒化的 iframe 僅在一個小范圍內的沙箱中,但腳本和樣式的范圍卻是你的頁面,甚至是整個站點。

如果你擔心惡意用戶誘使你的網站加載第三方資源,可以通過 CSP 用作防護手段,其可以限制加載圖片,腳本和樣式的來源。

你還可以使用 Subresource Integrity(子資源完整性 ) 來確保腳本/樣式的內容匹配特定的 hash,否則將不加載。感謝 Hacker News上的Piskvorrr 提醒我!

 

如果你想了解更多如上述的 hack 技巧,包括滾動條技巧,更多信息請參閱 Mathias Bynens' talk from 2014,Mike West's talk from 2013,或 Mario Heiderich et al.'s paper from 2012(PDF)。是的,這不是什么新東西。 

責任編輯:龐桂玉 來源: 前端大全
相關推薦

2015-11-05 16:44:37

第三方登陸android源碼

2017-12-11 15:53:56

2023-07-07 13:32:03

第三方安全風險網絡安全

2014-07-25 09:33:22

2022-09-05 09:01:47

第三方庫API

2019-07-30 11:35:54

AndroidRetrofit

2014-07-23 08:55:42

iOSFMDB

2013-06-25 09:10:36

云數據安全云學習曲線云安全

2019-09-03 18:31:19

第三方支付電商支付行業

2009-12-31 14:38:34

Silverlight

2016-10-21 14:09:10

2010-08-02 23:20:24

2023-06-20 11:34:48

2021-12-14 15:45:27

KubernetesSecretLinux

2014-04-09 09:37:29

2022-01-14 09:57:14

鴻蒙HarmonyOS應用

2010-05-25 11:09:31

SVN工具

2009-01-14 12:45:05

MSNIM蘋果

2013-08-12 16:04:19

第三方移動應用

2024-04-03 12:57:29

點贊
收藏

51CTO技術棧公眾號

国产精品久久久久久久7电影| 国产精品二区在线| 日本不卡一区二区三区| 国产盗摄女厕一区二区三区| 中文字幕亚洲综合久久五月天色无吗''| 成人国产精品| 91极品女神在线| 久久综合中文字幕| 成人av集中营| 黄色一级片国产| 亚洲欧美一区二区三区久久| 天堂av在线一区| 牛牛精品视频在线| 亚洲人体一区| 亚洲欧美www| 国产69精品一区二区亚洲孕妇| 成年男女免费视频网站不卡| 亚洲不卡中文字幕| 亚洲精品久久久一区二区三区 | 国产激情视频网址| 国a精品视频大全| 国产精品污污网站在线观看| **爰片久久毛片| 综合网插菊花| 日韩免费观看网站| 好吊成人免视频| 欧美日韩成人| 欧美成人hd| 亚洲亚洲精品三区日韩精品在线视频| 亚洲精品二三区| 福利一区二区在线观看| 久久精品 人人爱| 免费看污污网站| 国产国产精品人在线视| 狠狠躁18三区二区一区| 影音先锋中文字幕一区二区| 性国产高清在线观看| 在线观看日本一区| 亚洲国产精品va在线| 91精品国产综合久久久久| 国产精品久久久久一区二区三区共| 大乳在线免费观看| 欧美日韩精品不卡| 日韩国产欧美精品一区二区三区| 国产河南妇女毛片精品久久久| 高清在线一区| 欧美午夜aaaaaa免费视频| 国产成人在线视频| 欧美日韩日本视频| 国产呦萝稀缺另类资源| 麻豆久久一区| 深夜爽爽视频| 九色一区二区| 国产亚洲aⅴaaaaaa毛片| 国产喷白浆一区二区三区| 国产精品一在线观看| av在线免费播放网站| 综合网五月天| 国自产精品手机在线观看视频| 午夜久久久久久久久| 久久久久在线| 综合视频一区| 色的视频在线免费看| 成年人网站国产| 国产成人一区二区| 欧美一区二区在线视频| 91小视频在线观看| 羞羞色午夜精品一区二区三区| 欧美videos另类精品| 亚洲精品中文字幕无码蜜桃| 91久久国产综合久久91精品网站 | 色偷偷亚洲第一成人综合网址| 国产欧美韩国高清| 亚洲成人激情在线观看| 国产精品三级在线观看| 国产日产高清欧美一区二区三区| 嫩草伊人久久精品少妇av杨幂| av成人动漫| 国产婷婷精品| 国产一区二区日韩精品| 中文字幕中文在线不卡住| 精品久久久久国产| 欧美久久免费观看| 亚洲精品网址在线观看| 1024精品视频| 狠狠色狠狠色综合日日tαg| 中文字幕一区二区三区有限公司 | 国产主播自拍av| 狠狠干在线视频| 欧美电影免费网站| 91丝袜呻吟高潮美腿白嫩在线观看| 亚洲加勒比久久88色综合| 亚洲综合第一页| 男女爱爱免费网站| 福利片在线看| 亚洲精品第一| 日韩黄色片在线观看| 成人免费在线播放视频| 在线观看91精品国产麻豆| 成人av一区二区三区| 色婷婷一区二区| 久久精品欧美视频| 久久久综合亚洲91久久98| 欧美一区激情视频在线观看| 免费网站www在线观看| 少女频道在线观看免费播放电视剧| 国产一区二区三区在线观看免费 | 成本人h片动漫网站在线观看| 色综合www| 一区二区三区**美女毛片| 蜜桃狠狠色伊人亚洲综合网站| 99riav视频在线观看| 日韩黄色小视频| 最近更新的2019中文字幕| 国产精品333| 日韩欧美在线中字| 亚洲变态欧美另类捆绑| 久草精品在线播放| 国产原创一区| 99国产精品国产精品毛片| 精品视频色一区| 欧美日本国产精品| 中文字幕免费高清电视剧网站在线观看 | 五月天婷亚洲天综合网鲁鲁鲁| www.99在线| 日本综合视频| 欧美日韩国产精品一区二区不卡中文 | 毛片毛片毛片毛片| 成人在线免费观看av| 国产亚洲依依| 99久久婷婷国产综合精品 | 亚洲一区二区三区四区在线观看 | 日本精品不卡| 最新国产の精品合集bt伙计| 99久久国产免费免费| aa国产成人| 成人高清免费观看| 欧美高清激情视频| 三级ai视频| 欧美日韩亚洲在线观看| 午夜视频在线观看一区| 国产欧美精品va在线观看| 九色在线播放| av成人激情| 亚洲欧美综合图区| 国产黄色一级网站| 欧美午夜在线播放| 亚洲午夜一二三区视频| 成人黄色免费片| 欧美日韩激情| 欧美午夜激情视频| 国产精品精品一区二区三区午夜版| 天堂a√在线| 成人免费毛片app| 国产区日韩欧美| 欧美高清视频手机在在线| zzjj国产精品一区二区| 黄色在线免费观看网站| 欧美美女网站色| 亚洲成人福利| 亚洲在线一区二区三区| gay视频丨vk| 国产精品美女久久久久av爽李琼| 人妻无码一区二区三区四区| 日韩在线第七页| 亚洲欧美日韩网| 在线看小视频| 成人国产在线观看| 国产欧美日韩亚洲精品| 精品国产免费人成网站| 在线观看中文字幕不卡| 日韩一级免费在线观看| 99国内精品久久久久久久| 永久免费精品影视网站| 在线观看国产福利视频| 国产成人免费网站| 国产在线观看一区二区三区 | 成人福利网站| 91天堂素人约啪| 免费日韩中文字幕| 国产日产欧美一区| 亚洲不卡中文字幕无码| 99精品久久只有精品| 日韩亚洲欧美视频| 久久久久国产精品麻豆ai换脸| 999香蕉视频| 国产免费久久精品| 阳光姐妹淘韩国版| 天天色 色综合| 国产日韩精品在线看| 亚洲影视资源网| 国产97色在线 | 日韩| 国产一区二区三区香蕉| 国产亚洲欧美一区二区三区| 国产99精品一区| 91精品国产免费久久久久久| 亚洲国产福利| 精品国产乱码久久| 欧美jizz18hd性欧美| 欧美视频精品一区|