iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 15
0
Security

你的數據安全嗎?系列 第 15

[數據保安] 如何增加python 執行檔被逆向的難度?

  • 分享至 

  • xImage
  •  

之前的單元中介紹了逆向工程的手法, 那接下來要介紹的是加密的手法.
手法有很多種, 這個方式是筆者目前慣用的方式.

  1. 安裝cython3
apt install cython3 
  1. 下載py2c腳本
  2. 執行py2c
    https://ithelp.ithome.com.tw/upload/images/20190928/20103824Fkm7j1VjFK.png
    PS: 筆者將腳本放在/usr/local/bin 資料夾中並給與執行權限
  3. 處理想要轉成執行檔的python source code
  4. 檢查轉換後的檔案屬性, 原本的python source file 是文字檔, 轉換後變成ELF的執行檔
    https://ithelp.ithome.com.tw/upload/images/20190928/20103824a9qsRWVbd0.png
  5. 執行檔大小比較
    (1) 使用pyinstaller --onefile 選項編譯出的檔案大小 (8.1M, 非常大)
    https://ithelp.ithome.com.tw/upload/images/20190928/20103824lQmt1wUjsT.png
    (2) 使用cython3 轉換成C 再編譯後的檔案大小 (83K, 非常小)
    https://ithelp.ithome.com.tw/upload/images/20190928/20103824EN5vmtNNpb.png
  6. 完成.
    PS: 先轉成靜態的C 再用gcc compile後的執行檔是比較小的且確定會增加逆向工程的難度.
    這種方式是筆者摸索出來後發現的快速做法

上一篇
[數據保安] Windows 離線更新包製作及使用 - WSUS
下一篇
[數據恢復] 可救回EXT3/ EXT4 檔案格式的開源工具 - extundelete
系列文
你的數據安全嗎?30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言