顶级隐写术,破坏一切解释器
什么是隱寫術?
就編程來說,隱寫的信息通過加密或混淆,其內容例如一張購物清單,一篇文章,一篇圖畫或者其他“偽裝”(cover)的消息。
隱寫的信息通常用一些傳統的方法進行加密,然后用某種方法修改一個“偽裝文本”(covertext),使其包含被加密過的消息,形成所謂的“隱秘文本”(stegotext)。例如,文字的大小、間距、字體,或者掩飾文本的其他特性可以被修改來包含隱藏的信息。只有接收者知道所使用的隱藏技術,才能夠恢復信息,然后對其進行解密。
隱寫的效果
圖1: 這并非原圖,copy使用無效
圖2:在非特定環境中測試破壞效果,其背景為Image類型的無破壞,其image為解釋性image圖片類型的,達到了破壞效果
圖3:將原圖保存到手機相冊中,打開后 無法預覽。也無法查看到索引圖
更高級寫法可以保存后連圖片都找不到,但它真實存在!
圖4:如果你使用任何能夠編譯圖片的工具嘗試查看圖片的原直方圖,會提示錯誤,當你點擊錯誤提示后,依然能夠載入!
不同于其他加密混淆的寫法,其他寫法是不能正常預覽和拖入工具中的。
將色系拉高,可以看到隱藏的第二個圖片,3303那個蝴蝶。
實現原理
在UE中打開3303png,你也可以嘗試你自己的任何png圖片
必要知識
點擊跳轉隱寫術入門
當你看完后,有了入門知識
回頭來看 - IDHR- 整個圖片的頭部
結尾正常是 60 80,但是這里的是 60 0D 0A 82,似乎不太正常
![在這里插入圖片描述](https://img-blog.csdnimg.cn/20210423211814370.png
將多余的信息刪除掉保存看下圖片,然后在?這里,以十六進制編輯下,添加一個?再刪除2個?號
保存預覽圖片,你會發現索引圖被修改了。
沒有修改的
隨后將你的原圖和已經亂碼3/1的圖片一起拖入UE中, 以對比模式打開
將兩個編碼全部改為 OEM模式
將你要修改的圖片里的 所有正常的符號 如:, . / ? ; ’ “”{|——} 什么之類的,全部改為?
比較麻煩。你執行起來后,如果錯了一個字符或者遺漏,都會造成圖片無法正常顯示了,而且再來一次恐怕會更難。所以盡量一次到位
為什么替換符號,它實現了什么?
所有的軟件工具都是由各個編程語言組成的,那么它們的底層都是2進制或8進制或16進制,這不同于某些他們的組件,而在圖片里替換的符號,沒有改變圖片的正常頭尾體顯示。所以基于顯示 是可以正常顯示的,比如在Windows下,而在Linux下就無法顯示。但是基于Unix的系統又可以顯示。很奇怪吧?
當然實現它肯定不是僅僅文章寫得這么簡單,還需要一些算法來實現對圖片的轉碼,比如二值化,通道,傅立葉。
微乎其微很小的細節,這里有一些基本注意項
1.總十六進制的長度大小不能改變
2.總十六進制的編碼必須適度的更改
3.總十六進制的編碼改變后必須改變回去
4.圖片的位圖類型必須一致
把修改后的圖片,放到分析器里面看看
位圖為8bit,但事實上它是一個24位圖
將圖片拖入IDA里,將代碼拉到最后
確認修改后的圖片無誤是 6082.
試圖拖入PS中,無法查看;回到IDA中查看文件頭
將’XtXML:com.adobe.xmp’整句noop掉
這樣在圖片解釋器中,就能引用了,然后我們將它在網頁中引用看看會怎么樣
這里以瀏覽器作為調試語言為JS,實現快速預覽
不論是什么瀏覽器,只要其是解釋類型,統統可以利用,這一點
網頁JS是解釋型
在上圖測試中,使用是正常的,而且是可以正常讀取,但在顯示時會被破壞
這里沒有隱寫CE,如果寫入了CE,那么執行端將會在讀取時就被執行釋放!
換而言之,你看到了這個圖片,就意味著你已經中了我的道。
在CocosCreator中使用
\3303.png, message: Error: vipspng: libpng read error
混編的解釋器,無法直接使用這種圖片,原因是不針對游戲
隱寫術 能夠做什么?
針對前端,我不方便多說什么,我是第一個實現的!隱寫之王
針對所有有圖片的地方!
我是大菠蘿,歡迎各位切磋技術
有疑問或者問題盡管提問,或者PK一下
我很閑,沒有工作的!!!!!
總結
以上是生活随笔為你收集整理的顶级隐写术,破坏一切解释器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: master分支删除文件_Git分支基础
- 下一篇: dnf时装预览怎么打开_DNF:史上最好