看板 ASM 關於我們 聯絡資訊
用eclipse編譯 stm32 希望增加反編譯難度 請問是否能指定特定位址給函數 以便單次執 行後抹除?聽某些人說修改linker檔可達成有前輩知道大概要怎麼做嗎? 另外也想問算出來的密鑰儲存的記憶體位址,會對反編譯難度造成影響嗎? 還是說以上作法都是自嗨,無法根本提升破解困難度? 還望各位給予各種建議或方向,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.237.92.141 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1521176243.A.E30.html
Lipraxde: 不是應該會有硬體的鎖讓debugger不能讀嗎? 03/16 16:09
m490521: 關鍵字stm32 PCROP AN4701 03/16 16:28
m490521: 其中RDP可以設成lv2, 直接把jtag腳fuse燒斷 03/16 16:29
lazyblack: 讀取保護就算到lv2還是能透過bootloader去探裡面的內容 03/16 18:08
lazyblack: 的樣子 所以意圖在軟體裡面做誤導增加破解成本 03/16 18:08
cs8425: 改link檔只能把特定東西放到特定位址 03/16 19:36
cs8425: 但是不能做到"執行後刪除"這事情 03/16 19:37
cs8425: 另外你想要保障code不被理解/修改? 03/16 19:42
cs8425: 還是不要被copy拿去用(只要會動)? 03/16 19:43
cs8425: 前者用obfuscate技巧(無意義指令、VM類的) google上很多 03/16 19:43
cs8425: 後者的話要用硬體相關的 例如晶片unique id去計算有的沒的 03/16 19:44
Lipraxde: bootloader可以讀出來喔...一般不是應該只能更新或讀某 03/16 22:35
Lipraxde: 些特定的資訊嗎 03/16 22:35
Lipraxde: 看你要不要加密放到flash,執行時讀出來解密放到ram裡 03/16 22:37
Lipraxde: 面。或是比較間接的方式編譯一個Lua的直譯器,把腳本加 03/16 22:37
Lipraxde: 密 03/16 22:37
Lipraxde: 有個eLua的移植版本可以放在stm32上跑 03/16 22:37
m490521: bootloader不是也是你燒的嗎? 03/16 23:40
m490521: 可以改linker,把某段程式指定某個區塊內,但清除就是自己 03/16 23:53
m490521: 要去判斷了 03/16 23:53
lazyblack: 感謝!筆記一下再去網上找改link的教學 03/17 11:16