是否有任何已知的C/C++編譯器生成混淆/噪聲代碼? 或者可能是像GCC這樣的開源C/C++編譯器的補丁?生成混淆代碼的C/C++編譯器
回答
如果你對商業工具感興趣,你可能想看看Morpher(免責聲明:我在這個項目上工作)。它本質上是llvm-gcc
的一個版本,帶有額外的混淆通行證 - 你應該使用Morpher作爲gcc
的插入替代品。混淆通行證包括持續保護,基本塊和功能的克隆,CFG拱門齧合等;它們在documentation section中用組裝示例進行了描述。官方支持的語言是C/C++/Objective-C/Objective-C++,儘管我們可能會根據您的請求將它改編爲LLVM IR。
那麼,這裏也是我的小實驗:http://blogs.conus.info/node/58 – 2011-01-25 13:36:18
您可以使用http://www.pelock.com/products/obfuscator來混淆彙編程序。您可以編譯爲彙編程序(在這種情況下是MASM樣式),然後對其進行混淆。根據我的經驗,使用許多虛擬函數/間接和/或解釋器(即爲您的處理的某些步驟創建您自己的小字節代碼)作爲您的代碼結果的一部分,代碼非常不可修改。
任何編譯器那能夠生成僞隨機式的數字(經由__COUNTER__
),並且可以注入字節到一個內聯組件流(經由__emit
)可以執行內聯代碼混淆,其沒有像什麼外部封隔器和obfuscaters做的,這可以是有利的。 '強度'主要依賴於多少metaprogramming你投入它,但顯然你永遠不能說加密IAT等
- 1. 在生成的混淆代碼中不使用eval的任何JavaScript混淆器?
- 2. 編譯器代碼生成器驗證
- 3. Java編譯混淆:爲什麼這個代碼編譯?
- 4. Haskell編譯器的代碼生成
- 5. javax.annotation.processing.AbstractProcessor:編譯器生成的代碼
- 6. 編譯時混淆?
- 7. 編譯時代碼生成
- 8. Swift編譯器 - 代碼生成
- 9. 編譯器代碼生成比較
- 10. 免費代碼混淆器?
- 11. 代碼混淆?
- 12. 衍生代碼編譯器
- 13. 編碼或混淆PHP代碼
- 14. 想要一個反編譯混淆.NET代碼的工具
- 15. 如何做團隊編譯的源代碼混淆
- 16. 代碼級混淆器vs裝配混淆器
- 17. SQL編碼混淆
- 18. 編譯器混淆賦值和比較
- 19. android AOSP交叉編譯器混淆
- 20. 編譯器混淆模擬對象
- 21. 操作系統:編譯器混淆
- 22. maven編譯器插件混淆
- 23. MIPS代碼混淆
- 24. 源代碼混淆
- 25. Python代碼混淆
- 26. 混淆PHP代碼
- 27. TideSDK - 代碼混淆
- 28. RPNCalculator代碼混淆
- 29. 混淆CakePHP代碼
- 30. PHP代碼混淆
'-O3'真的很難破譯 – Anycorn 2010-11-06 03:55:08
那麼,機器代碼C和C++編譯器生成的內容已經很模糊了。想想看,我看到的一些C和C++代碼已經非常模糊......:-P – 2010-11-06 03:56:50
呵呵。這並不好笑。 – 2010-11-06 03:59:08