WebRTC 真實(shí)IP泄露防范
1.1. 前言
很多人可能誤以為使用代理就可以完全隱藏我們的真實(shí)IP地址,但實(shí)際并不總是這樣。事實(shí)上,有大量文章指出,WebRTC存在安全風(fēng)險(xiǎn),而WebRTC安全風(fēng)險(xiǎn)的可怕之處在于,即使你使用VPN代理上網(wǎng),仍然可能會(huì)暴露自己的真實(shí)IP地址。
雖然這聽起來有點(diǎn)讓人擔(dān)憂,但我們不應(yīng)該失去對代理技術(shù)的信心。代理依然是一種非常有用的工具,可以保護(hù)我們的在線隱私和安全。只是我們需要意識到代理并不是百分之百可靠的,因此我們需要采取其他額外的措施來保護(hù)自己的隱私和安全。
1.2. 獲取真實(shí)IP地址演示
有如下3個(gè)網(wǎng)站推薦使用:
- https://ip8.com/webrtc-test
- https://www.hackjie.com/tracking
- https://dnsleaktest.org/dns-leak-test
我平時(shí)比較喜歡使用FireFox和Chrome,通過對這倆的測試,發(fā)現(xiàn)使用Firefox默認(rèn)不會(huì)獲取到真實(shí)IP,但Chrome就算掛了代理,仍然能獲取到真實(shí)IP地址。
1.3. WebRTC介紹
WebRTC(Web Real-Time Communications)是一項(xiàng)實(shí)時(shí)通訊技術(shù),它允許網(wǎng)絡(luò)應(yīng)用或者站點(diǎn),在不借助中間媒介的情況下,建立瀏覽器之間點(diǎn)對點(diǎn)(Peer-to-Peer)的連接,實(shí)現(xiàn)視頻流和(或)音頻流或者其他任意數(shù)據(jù)的傳輸。WebRTC 包含的這些標(biāo)準(zhǔn)使用戶在無需安裝任何插件或者第三方的軟件的情況下,創(chuàng)建點(diǎn)對點(diǎn)(Peer-to-Peer)的數(shù)據(jù)分享和電話會(huì)議成為可能。
1.4. WebRTC 泄漏真實(shí)IP原理
WebRTC 允許瀏覽器之間直接建立點(diǎn)對點(diǎn)連接,從而實(shí)現(xiàn)實(shí)時(shí)通信,例如視頻、語音和數(shù)據(jù)傳輸。在建立 WebRTC 連接時(shí),瀏覽器會(huì)向?qū)Ψ桨l(fā)送自己的 IP 地址,以便雙方建立連接。攻擊者可以通過 JavaScript 或其他技術(shù)來訪問 WebRTC 中的 API,以獲取用戶的 IP 地址,從而進(jìn)行跟蹤、監(jiān)視或攻擊。
具體來說,攻擊者可以利用瀏覽器的 WebRTC API,通過請求媒體設(shè)備的權(quán)限,獲取用戶的 IP 地址。攻擊者可以通過編寫惡意 JavaScript 代碼來執(zhí)行這些請求,這些代碼可能會(huì)被插入到網(wǎng)站中,以執(zhí)行跨站點(diǎn)腳本攻擊(XSS)等攻擊。
此外,WebRTC 的 STUN/TURN 服務(wù)器也可以泄漏用戶的 IP 地址。STUN/TURN 服務(wù)器是 WebRTC 中用于 NAT 穿透和中繼的關(guān)鍵組件。如果這些服務(wù)器存在漏洞或者未正確配置,攻擊者可以通過它們來獲取用戶的真實(shí) IP 地址,從而進(jìn)行攻擊。
1.5. 防范措施
安裝WebRTC Leak Shield
擴(kuò)展文章來源:http://www.zghlxwxcb.cn/news/detail-671649.html
- Chrome
- FireFox
1.6. 溯源利用
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>WebRTC泄露檢測</title>
</head>
<body>
<script>
function findIP(onNewIP) {
var myPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
var pc = new myPeerConnection({iceServers: [{urls: "stun:stun.l.google.com:19302"}]}),
noop = function() {},
localIPs = {},
ipRegex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/g,
key;
function ipIterate(ip) {
if (!localIPs[ip]) onNewIP(ip);
localIPs[ip] = true;
}
pc.createDataChannel("");
pc.createOffer(function(sdp) {
sdp.sdp.split('\n').forEach(function(line) {
if (line.indexOf('candidate') < 0) return;
line.match(ipRegex).forEach(ipIterate);
});
pc.setLocalDescription(sdp, noop, noop);
}, noop);
pc.onicecandidate = function(ice) {
if (!ice || !ice.candidate || !ice.candidate.candidate || !ice.candidate.candidate.match(ipRegex)) return;
ice.candidate.candidate.match(ipRegex).forEach(ipIterate);
};
}
function show(ip) {
alert(ip);
}
findIP(show);
</script>
</body>
</html>
上述的代碼訪問后直接彈出IP,可對其進(jìn)行定向二次開發(fā),達(dá)到溯源反制的目的。文章來源地址http://www.zghlxwxcb.cn/news/detail-671649.html
到了這里,關(guān)于WebRTC 真實(shí)IP泄露防范的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!