2011-05-09 70 views
0

我能夠在十六進制編輯器中編輯一個linux可執行文件,並用我自己的字符替換字符,但是當我嘗試添加新字符時,它給了我分段錯誤。嘗試將十六進制添加到二進制文件時出現分段錯誤

+0

什麼segfaults,十六進制編輯器或可執行文件後編輯它? – 2011-05-09 18:37:05

+0

可執行文件,當我嘗試在Linux機器上運行它。 – technology 2011-05-09 18:47:48

回答

2

你期望什麼?

ELF可執行文件有很多內部結構,修改或添加隨機字節會導致該結構損壞(自身不一致)。

當動態加載器遇到這種損壞的ELF二進制文件時,它只會崩潰。雖然一些腐敗可能不會導致立即崩潰,這並不意味着你可以做到這一點,並期望事情的工作。

某些ELF二進制文件的「後鏈接」編輯是可能的,但它需要一個人理解ELF format,並保留其有效性。

+0

+1即使只是「你期望什麼?」 – MByD 2011-05-11 04:53:41

相關問題