作者hotdogee (hotdog)
看板WOW
标题[闲聊] WOW抓图浮水印暗藏帐户名称等资料
时间Tue Sep 11 23:48:27 2012
来源(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:__ZL16
s_pWatermarkData, eax ;
s_pWatermarkData
mov eax, [ebp+arg_8]
mov ds:__ZL21
s_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
1F:推 daren7451:快推 不然 09/11 23:49
2F:推 Rivendare:嗯嗯 我懂了 (? 09/11 23:50
3F:推 miayao417:原来是这样,跟我想得差不多。 恩恩 09/12 00:06
4F:推 mountainn:原来如此 恩恩 09/12 00:08
5F:推 ofnfline:魔兽都营运几年了才被抓出来,BZ可真会藏 09/12 00:11
6F:推 elizas1201:orz...... 09/12 00:11
7F:推 reaturn:我记的最早的wow抓图下来全是TGA 09/12 00:13
8F:→ farst:夸张XDDDDDDDDDDDDDDD 09/12 00:24
9F:推 wildbloodcat:但是这也只限於没修改的图吧 09/12 00:29
这个数位浮水印的设计其实是可以抵抗一定程度的放大、缩小与裁减
10F:推 mike0327:高手拿来玩的玩具QQ 09/12 00:37
※ 编辑: hotdogee 来自: 140.112.28.73 (09/12 00:43)
11F:推 iceonly:那还真强韧._. 再做一次破坏性压缩呢? 09/12 00:44
12F:推 bgrich:官方抓非法玩家的工具? 09/12 00:46
13F:推 Allen0315:原po热狗大@@!!!RatingBuster超好用的啦!!! 09/12 00:51
14F:推 pssjim:看到这个id,一定要推一下 09/12 00:53
15F:推 PTTco:挖屋@@ 09/12 01:08
16F:推 wildbloodcat:咦? 对喔! 更新! (敲碗) 09/12 01:25
17F:推 iamhog:只好用相机拍萤幕啦 XD 09/12 01:26
18F:推 CHOCOLA1983:靠么!我要检查一下我以前上传那些图... 09/12 01:59
19F:推 PTTco:楼上 FBI已经在你家门口了 09/12 02:27
20F:推 reaturn:汁液不当散布…早就被盯上了 09/12 03:01
21F:推 raygod:真鸟 偷隐私也不是这样.... 09/12 03:52
22F:→ raygod:BZ这种行为有点恶心阿... 09/12 03:53
23F:推 ak147:原来锁帐号还可以直接从这边锁 ((超大尾浮出来了 09/12 06:32
24F:推 emip:这有什麽好隐私的xd 09/12 08:08
25F:推 ak147:重点ownedcore bz应该从这边锁不少人 XDDD 09/12 08:16
26F:→ ak147:小时候改贴图改模组都在wowned发文 现在改ownedcore 09/12 08:18
27F:→ ak147:像上次钓鱼传单npc 其实更之前暴风城下面也一只无限交任务 09/12 08:19
28F:→ ak147:也是这边传出来的 09/12 08:19
29F:→ ak147:印象中好像可以无限交清凉泉水 农场那边 09/12 08:20
30F:推 yukinoba:不是抓非法玩家,这原本是用来抓散布beta截图的 09/12 09:14
31F:→ yukinoba:不过後来Bz对於beta情报的态度比较开放後就没什麽用了 09/12 09:16
※ 编辑: hotdogee 来自: 114.32.100.178 (09/12 11:39)
32F:→ deathson:意思是TGA跟Rank 10 JPG都不会有这浮水印提供资讯吗? 09/12 11:43
是的
※ 编辑: hotdogee 来自: 114.32.100.178 (09/12 11:44)
33F:推 HQ1030:其实,原文读完,这些获取资讯的行为也有可能是要抓私服的 09/12 11:57
34F:→ HQ1030:另外ToS里面的aknowledgment有允许bz拿资料 09/12 12:02
35F:→ HQ1030:不过这掩盖不了他们浮水印资讯没加密的粗糙手法就是了... 09/12 12:03
36F:推 elizas1201:我找了自己之前喵喵王和MoP beta里的抓图,都有出现 -_- 09/12 15:23
37F:推 jrshiun:意思就是 你遇到BUG又爱现, 运气不好的话 就会被抓包 09/12 15:48