LV. 16
GP 84

【情報】解決最近駭客透過UUIDSpoof入侵其分流並獲取OP進行破壞的四個方案

樓主 西納 Eric1008818
GP62 BP-
最近駭客猖狂,有一位實況主最近開始透過UUIDSpoof大肆破壞台灣伺服器,甚至連小服也不放過。就此,本人提出了四個解決方案,希望能夠幫助其他服主免成為下一個受害者。


1. 只公開 BungeeCord 的端口
這是最簡單的解決方法。能夠被入侵的原因通常都是基於你有其他分流暴露了端口。為了確保駭客無法從其他分流進行入手,只公開 BungeeCord 的端口能夠讓駭客只能乖乖地透過你的 BungeeCord 進行身份驗證,讓UUIDSpoof無機可乘。

2. 對有管理權限者進行密碼鎖定
這是第二簡單的方法。透過每次登入都需要讓有管理的權限者(下面簡稱管理員)輸入密碼, 讓駭客獲取管理員權限之後依然需要輸入一組密碼才能進行其他操作。由於駭客並不可能知道你的密碼,所以只能透過不斷暴力破解直到放棄。
此方案需要透過一些密碼鎖插件或腳本,例如這個。

3. 使用 BungeeGuard 進行防禦
對於第一個方案,有不少人可能會因為 BungeeCord 和 其他分流對外分開放置而無法只公開 BungeeCord 的端口,為此向大家推薦這個由LuckPerms作者製作的插件
其原理是透過在與自家 BungeeCord 開始連接的時候,放一組代碼到玩家的 GameProfile , 然後再於進入分流伺服器的時候拆開 GameProfile 來核對代碼。由於駭客使用 BungeeCord 或 偽造 BungeeCord 身份,在進入到分流伺服器時在 GameProfile 必然沒有那組代碼,或者就算使用裝了此插件的 BungeeCord 繞過進入時,也拿不到與你相符的那組代碼,因此而被拒絕進入。

目前 BungeeGuard 只支援 PaperSpigot 伺服器,如果你是 Spigot 伺服器的話,我這邊有一個能與 Spigot 伺服器兼容的版本。

另外此插件有一個缺點,就是無法驗證所有非正版玩家或非正版模式的 BungeeCord (將一律視為無法驗證而被拒絕進入)。因此僅適用於正版伺服器。

4. 使用 BungeeSpigotBridge 進行防禦
基於上一個方案無法驗證非正版玩家或非正版模式的 BungeeCord, 我自製了一個插件。
本來是測試用的,但最後感覺能派上用場(已經測試過),就拿出來了。(笑
本來想採用 redis 等 方便快捷的方式,但感覺有很多服主好像不會設置 redis 伺服器,最終採用了 Socket 連接方法。(如果你想要一個redis版本可以告訴我
此插件不再著眼於驗證UUID的真偽,而是 驗證你是否由自家BungeeCord經過
駭客的分流入侵從而透過 UUIDSpoof 獲取權限,都是因為 分流 需要在 BungeeCord network 的狀態下把 Offline mode 改成 false, 變相讓 BungeeCord 進行驗證。
那麼,我只要確保那名玩家是經過伺服器那邊的 BungeeCord  , 就能解決了吧。(笑
運作原理//
     1. 玩家進入 你的 BungeeCord 時,將被加入一個隊列。
     2. 當玩家進入到該分流時,該分流將向 BungeeCord 發送一個請求。 (包含玩家UUID和隨機UUID的加密訊息)
     3. BungeeCord 收到 請求後 拆解 并 拿出 玩家UUID, 并檢查該玩家 UUID 是否在其隊列上。
     4. 若有,則在隊列中刪除玩家,并將那組 隨機UUID 加密並發送回分流。
     5. 由分流檢查該隨機UUID是否和剛剛發送的一致。
     若果玩家不在隊列,則代表他是從其他 Proxy 進入到伺服器,這時 BungeeCord 會釋出另一組隨機 UUID 發送到分流,分流檢測兩者不一致後便拒絕進入。
     以上 BungeeCord 與 Spigot 的 溝通 是支援 多個的 (多個 Spigot  與 BungeeCord 交流), 但請確保他們的 密鑰 必須是一致!(到 cyberkey.aes 那邊改成一致)
安裝//
  • 將 jar 裝在 Spigot 時會有 connect.yml, 需要設置 IP 和 端口
  • 將 jar 裝在 BungeeCord 時會有 server.yml, 需要設置 要公開的 socket 端口
  • 注意,你需要在 BungeeCord 那邊的 主機 再公開一個 socket 端口 以 讓 Spigot 那邊進行連接(Socket 缺點之一?)
  • 請將 jar 只裝在 對外暴露了端口 的 Spigot 伺服器
  • 將所有 cyberkey.aes 的那組代碼 與 全部已安裝jar的伺服器 保持一致。
問題//
   如果有任何問題,歡迎到這個 Discord 找我 。
插件更新請看 Spigot 網站

其他:
另外還有很進階的方法,包括使用 haproxy 指向 BungeeCord 並在 config.yml 打開 proxy protocol (本人使用) 或 使用VPN等。但在這裏就不詳細說了,坐等其他大佬發

62
-
LV. 11
GP 1
2 樓 吳彥東 wuc656
GP0 BP-

作者標示-非商業性

本授權條款允許使用者重製、散布、傳輸以及修改著作,但不得為商業目的之使用。使用時必須按照著作人指定的方式表彰其姓名。

我他是他影片裡的 wuc656.com 伺服器服主
版本是 1.12.2   我自己也是只有開放BungeeCord的 port 25565
然後有一個登入服裝登入插件去做驗證
只是實際怎麼被他獲取op的我也不清楚
0
-
LV. 25
GP 154
3 樓 菜雞大俠愛吃漢堡包 a891030
GP0 BP-
我以為ip欺騙在2年前就消失了

原來這是世紀問題
0
-
未登入的勇者,要加入 4 樓的討論嗎?
板務人員:

1267 筆精華,11/11 更新
一個月內新增 3
歡迎加入共同維護。


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】