隱蔽且簡單易行的水印技術(shù):零寬字符
每個企業(yè)都有秘密,但秘密未必是不可告人的事,或許僅僅是不想完全披露公司計劃或沒將內(nèi)部通信全部暴露給公眾。但是,要怎么才能阻止某人復制粘貼內(nèi)部郵件到網(wǎng)頁郵箱中發(fā)給外部記者,或者匿名放到論壇上供網(wǎng)民查看下載呢?無論你所面對的是哪種泄露問題,有件事你不可不知。即便寥寥數(shù)語的文本,也可能含有標識泄露源的“指紋”。
觀察下面兩個句子。你能分辨出哪個句子含有可能鎖定泄露者的秘密標識符嗎?
- This is a test.
- This is a test.
使用零寬字符,比如零寬不連接符或零寬空格,就有可能在文本中嵌入看不見的指紋,且這些指紋經(jīng)過復制粘貼過程依然留存。為什么此text非彼text?因為某個“text”之間有不可見的零寬字符。
正如英國研究員湯姆·羅斯所言,我們可以將想插入的信息都轉(zhuǎn)換成二進制,然后用一系列零寬字符來表示這些二進制位,這樣就能在文本中嵌入看不見的信息了。
羅斯是在發(fā)現(xiàn)有人泄露某私營視頻游戲留言板討論內(nèi)容之后,才意識到零寬字符還可以這么用的:
該網(wǎng)站安全性相當高,所以理論上只能是已登錄用戶把內(nèi)部公告拷貝粘貼到了其他地方。我寫了個腳本供該網(wǎng)站維護團隊在每個公告中嵌入看不見的信息,這信息就是瀏覽了公告的用戶的用戶名。幾個小時之內(nèi),公告文本就帶著一串看不見的零寬字符被分享到了其他地方。信息泄露者的用戶名被準確識別了出來,封號處置;一場成功的戰(zhàn)役! |
正如安全專家扎克·阿伊桑幾個月前所言,極短文本中的一個不可見字符,就足以鑒別出公司里的泄密者。
不過,普通用戶也沒那么容易發(fā)現(xiàn)這些不可見零寬字符。很多應用都會自動渲染包含零寬字符的文本,壓根兒不告訴用戶這里面含有秘密字符。其他應用則可能將不可見字符替換成空格或未識別字符符號。
對檢舉者或揭露暴政政體秘密的記者而言,零寬字符指紋嵌入法的影響不可謂不大。僅僅是復制粘貼一段信息給記者,就很可能暴露出自己的線人身份,讓自己處于危險之中。
很多記者可能還沒意識到,收到信息先濾掉敏感字符,或者花時間自己手敲一遍,可以更好地保護自身安全。但即便如此,像是故意拼錯或不引人注意的小改動等等加指紋的方式,也是防不勝防的。
想要保護信息源,***像阿伊桑說的那樣,別直接發(fā)布信息摘錄和原始文檔。你永遠不能確定字里行間有沒有隱藏著可能指向泄露者的線索。