[閒聊] WOW抓圖浮水印暗藏帳戶名稱等資料

看板WOW (魔獸世界)作者 (hotdog)時間13年前 (2012/09/11 23:48), 編輯推噓27(27010)
留言37則, 24人參與, 最新討論串1/1
來源(www.ownedcore.com):http://goo.gl/kW2Cw 三天前Sendatsu在OwnedCore網站的論壇上說他在魔獸世界的抓圖上發現了奇怪的圖案, 經過三天來若干人的努力已經成功解碼並證實這些圖案其實是Blizzard暗藏的 數位浮水印,浮水印的內容包含抓這張圖的帳號名稱、精確到分鐘的伺服器時間、 伺服器名稱、伺服器IP等資料,且至少早在2008年的遊戲程式內就有發現這段 浮水印程式碼。 =如何看到浮水印= 這個浮水印只會出現在JPEG格式裡且品質設為1到9時,品質10的JPEG則沒有浮水印, TGA格式的抓圖也沒有。 想自己要看到這個浮水印,請在遊戲內打: /console SET screenshotQuality "9" 最好找一個純色的乾淨畫面,用alt+z隱藏介面後抓圖: http://i.imgur.com/HyGGl.jpg
用任何影像處理軟體(IrfanView, Photoshop)的銳利化濾鏡,即可看到以下圖案: http://i.imgur.com/ZK5l1.jpg
=浮水印解讀範例= 以下是經過處理的1680*1024的圖: http://i.imgur.com/dwqJ9.jpg
可以看到分成三排,第一排有4塊重複的圖案,第二排有3塊,第三排有4塊 把重複出現的那塊分離出來: http://i.imgur.com/Kx3tm.jpg
可以看到每5x4個pixel其實是一個bit。 以上圖浮水印為例,由最左上角開始往下數八格就是帳號名稱的第一個字母: 白 黑 黑 黑 白 白 黑 黑 在二進位是00110001也就是ASCII Code的數字"1" 在接下去: 黑 黑 黑 黑 白 白 黑 黑 在二進位是00110000也就是ASCII Code的數字"0" 如此繼續下去就可以得出這張抓圖的使用這帳號名稱是107642169 (這是個試玩帳號) =反編譯程式結果= _Mike在MacOS X上用反編譯軟體IDA Pro將wow.exe反編譯後確實發現有相關的函式名稱: ; =============== S U B R O U T I N E ======================================= ; Attributes: bp-based frame ; ScrnScreenshot(void (*)(int), unsigned char *, unsigned int, char const*, char const*, char const*) __Z14ScrnScreenshotPFviEPhjPKcS3_S3_ proc near ; CODE XREF: Script_Screenshot(lua_State *)+37 ; sub_76C3C0+36 arg_0 = dword ptr 8 arg_4 = dword ptr 0Ch arg_8 = dword ptr 10h arg_C = dword ptr 14h arg_10 = dword ptr 18h arg_14 = dword ptr 1Ch push ebp mov ebp, esp mov eax, [ebp+arg_0] mov ds:__ZL15s_captureScreen, eax ; s_captureScreen mov eax, [ebp+arg_4] mov ds:__ZL16s_pWatermarkData, eax ; s_pWatermarkData mov eax, [ebp+arg_8] mov ds:__ZL21s_uWatermarkDataBytes, eax ; s_uWatermarkDataBytes mov eax, [ebp+arg_C] mov ds:__ZL18s_screenshotFolder, eax ; s_screenshotFolder mov eax, [ebp+arg_10] mov ds:__ZL24s_screenshotNameOverride, eax ; s_screenshotNameOverride mov eax, [ebp+arg_14] mov ds:__ZL19s_depthNameOverride, eax ; s_depthNameOverride leave retn __Z14ScrnScreenshotPFviEPhjPKcS3_S3_ endp ========================================================================== 用Mac版的原因是因為Windows版的機器碼反編譯後看不到函式名稱。 其中s_pWatermarkData總共是88個Byte,其中包含64個Byte是帳號名稱、 4個Byte的時間,與20Byte的其他東西。 _Mike四小時前寫了一個工具可以在一些處理過的圖檔讀出浮水印資料: https://dl.dropbox.com/u/12654979/WatermarkTool.png
但是要在任何抓圖都讀得出來還需要寫一些影像處理的程式,目前還沒有人寫出來。 如此Blizzard可以從網路上大部分的wow截圖找到原拍照的使用者。 要避免截圖產生浮水印只要將JPEG品質設為"10"即可: /console SET screenshotQuality "10" JPEG品質我在5.0.5看到的預設值是"3",用以下指令即可顯示你目前的品質設定: /run print(GetCVar("screenshotQuality")) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.28.73

09/11 23:49, , 1F
快推 不然
09/11 23:49, 1F

09/11 23:50, , 2F
嗯嗯 我懂了 (?
09/11 23:50, 2F

09/12 00:06, , 3F
原來是這樣,跟我想得差不多。 恩恩
09/12 00:06, 3F

09/12 00:08, , 4F
原來如此 恩恩
09/12 00:08, 4F

09/12 00:11, , 5F
魔獸都營運幾年了才被抓出來,BZ可真會藏
09/12 00:11, 5F

09/12 00:11, , 6F
orz......
09/12 00:11, 6F

09/12 00:13, , 7F
我記的最早的wow抓圖下來全是TGA
09/12 00:13, 7F

09/12 00:24, , 8F
誇張XDDDDDDDDDDDDDDD
09/12 00:24, 8F

09/12 00:29, , 9F
但是這也只限於沒修改的圖吧
09/12 00:29, 9F
這個數位浮水印的設計其實是可以抵抗一定程度的放大、縮小與裁減

09/12 00:37, , 10F
高手拿來玩的玩具QQ
09/12 00:37, 10F
※ 編輯: hotdogee 來自: 140.112.28.73 (09/12 00:43)

09/12 00:44, , 11F
那還真強韌._. 再做一次破壞性壓縮呢?
09/12 00:44, 11F

09/12 00:46, , 12F
官方抓非法玩家的工具?
09/12 00:46, 12F

09/12 00:51, , 13F
原po熱狗大@@!!!RatingBuster超好用的啦!!!
09/12 00:51, 13F

09/12 00:53, , 14F
看到這個id,一定要推一下
09/12 00:53, 14F

09/12 01:08, , 15F
挖屋@@
09/12 01:08, 15F

09/12 01:25, , 16F
咦? 對喔! 更新! (敲碗)
09/12 01:25, 16F

09/12 01:26, , 17F
只好用相機拍螢幕啦 XD
09/12 01:26, 17F

09/12 01:59, , 18F
靠么!我要檢查一下我以前上傳那些圖...
09/12 01:59, 18F

09/12 02:27, , 19F
樓上 FBI已經在你家門口了
09/12 02:27, 19F

09/12 03:01, , 20F
汁液不當散佈…早就被盯上了
09/12 03:01, 20F

09/12 03:52, , 21F
真鳥 偷隱私也不是這樣....
09/12 03:52, 21F

09/12 03:53, , 22F
BZ這種行為有點惡心阿...
09/12 03:53, 22F

09/12 06:32, , 23F
原來鎖帳號還可以直接從這邊鎖 ((超大尾浮出來了
09/12 06:32, 23F

09/12 08:08, , 24F
這有什麼好隱私的xd
09/12 08:08, 24F

09/12 08:16, , 25F
重點ownedcore bz應該從這邊鎖不少人 XDDD
09/12 08:16, 25F

09/12 08:18, , 26F
小時候改貼圖改模組都在wowned發文 現在改ownedcore
09/12 08:18, 26F

09/12 08:19, , 27F
像上次釣魚傳單npc 其實更之前暴風城下面也一隻無限交任務
09/12 08:19, 27F

09/12 08:19, , 28F
也是這邊傳出來的
09/12 08:19, 28F

09/12 08:20, , 29F
印象中好像可以無限交清涼泉水 農場那邊
09/12 08:20, 29F

09/12 09:14, , 30F
不是抓非法玩家,這原本是用來抓散佈beta截圖的
09/12 09:14, 30F

09/12 09:16, , 31F
不過後來Bz對於beta情報的態度比較開放後就沒什麼用了
09/12 09:16, 31F
※ 編輯: hotdogee 來自: 114.32.100.178 (09/12 11:39)

09/12 11:43, , 32F
意思是TGA跟Rank 10 JPG都不會有這浮水印提供資訊嗎?
09/12 11:43, 32F
是的 ※ 編輯: hotdogee 來自: 114.32.100.178 (09/12 11:44)

09/12 11:57, , 33F
其實,原文讀完,這些獲取資訊的行為也有可能是要抓私服的
09/12 11:57, 33F

09/12 12:02, , 34F
另外ToS裡面的aknowledgment有允許bz拿資料
09/12 12:02, 34F

09/12 12:03, , 35F
不過這掩蓋不了他們浮水印資訊沒加密的粗糙手法就是了...
09/12 12:03, 35F

09/12 15:23, , 36F
我找了自己之前喵喵王和MoP beta裡的抓圖,都有出現 -_-
09/12 15:23, 36F

09/12 15:48, , 37F
意思就是 你遇到BUG又愛現, 運氣不好的話 就會被抓包
09/12 15:48, 37F
文章代碼(AID): #1GJrrEmJ (WOW)
文章代碼(AID): #1GJrrEmJ (WOW)