看板 WOW 關於我們 聯絡資訊
來源(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
daren7451:快推 不然 09/11 23:49
Rivendare:嗯嗯 我懂了 (? 09/11 23:50
miayao417:原來是這樣,跟我想得差不多。 恩恩 09/12 00:06
mountainn:原來如此 恩恩 09/12 00:08
ofnfline:魔獸都營運幾年了才被抓出來,BZ可真會藏 09/12 00:11
elizas1201:orz...... 09/12 00:11
reaturn:我記的最早的wow抓圖下來全是TGA 09/12 00:13
farst:誇張XDDDDDDDDDDDDDDD 09/12 00:24
wildbloodcat:但是這也只限於沒修改的圖吧 09/12 00:29
這個數位浮水印的設計其實是可以抵抗一定程度的放大、縮小與裁減
mike0327:高手拿來玩的玩具QQ 09/12 00:37
※ 編輯: hotdogee 來自: 140.112.28.73 (09/12 00:43)
iceonly:那還真強韌._. 再做一次破壞性壓縮呢? 09/12 00:44
bgrich:官方抓非法玩家的工具? 09/12 00:46
Allen0315:原po熱狗大@@!!!RatingBuster超好用的啦!!! 09/12 00:51
pssjim:看到這個id,一定要推一下 09/12 00:53
PTTco:挖屋@@ 09/12 01:08
wildbloodcat:咦? 對喔! 更新! (敲碗) 09/12 01:25
iamhog:只好用相機拍螢幕啦 XD 09/12 01:26
CHOCOLA1983:靠么!我要檢查一下我以前上傳那些圖... 09/12 01:59
PTTco:樓上 FBI已經在你家門口了 09/12 02:27
reaturn:汁液不當散佈…早就被盯上了 09/12 03:01
raygod:真鳥 偷隱私也不是這樣.... 09/12 03:52
raygod:BZ這種行為有點惡心阿... 09/12 03:53
ak147:原來鎖帳號還可以直接從這邊鎖 ((超大尾浮出來了 09/12 06:32
emip:這有什麼好隱私的xd 09/12 08:08
ak147:重點ownedcore bz應該從這邊鎖不少人 XDDD 09/12 08:16
ak147:小時候改貼圖改模組都在wowned發文 現在改ownedcore 09/12 08:18
ak147:像上次釣魚傳單npc 其實更之前暴風城下面也一隻無限交任務 09/12 08:19
ak147:也是這邊傳出來的 09/12 08:19
ak147:印象中好像可以無限交清涼泉水 農場那邊 09/12 08:20
yukinoba:不是抓非法玩家,這原本是用來抓散佈beta截圖的 09/12 09:14
yukinoba:不過後來Bz對於beta情報的態度比較開放後就沒什麼用了 09/12 09:16
※ 編輯: hotdogee 來自: 114.32.100.178 (09/12 11:39)
deathson:意思是TGA跟Rank 10 JPG都不會有這浮水印提供資訊嗎? 09/12 11:43
是的 ※ 編輯: hotdogee 來自: 114.32.100.178 (09/12 11:44)
HQ1030:其實,原文讀完,這些獲取資訊的行為也有可能是要抓私服的 09/12 11:57
HQ1030:另外ToS裡面的aknowledgment有允許bz拿資料 09/12 12:02
HQ1030:不過這掩蓋不了他們浮水印資訊沒加密的粗糙手法就是了... 09/12 12:03
elizas1201:我找了自己之前喵喵王和MoP beta裡的抓圖,都有出現 -_- 09/12 15:23
jrshiun:意思就是 你遇到BUG又愛現, 運氣不好的話 就會被抓包 09/12 15:48