6
我知道您可以通過使用ptrace來捕獲系統調用。但是我想要做的就是忽略系統調用。因此,ptrace可能會捕獲一個系統調用,查看其編號,如果該編號是必須忽略的系統調用,則系統調用將停止繼續或系統調用立即返回。忽略系統調用
問題是,我們應該通過使用ptrace來讓應用程序忽略特定的系統調用。
我知道您可以通過使用ptrace來捕獲系統調用。但是我想要做的就是忽略系統調用。因此,ptrace可能會捕獲一個系統調用,查看其編號,如果該編號是必須忽略的系統調用,則系統調用將停止繼續或系統調用立即返回。忽略系統調用
問題是,我們應該通過使用ptrace來讓應用程序忽略特定的系統調用。
您可以試試PTRACE_GETREGS
和PTRACE_SETREGS
。
如果您將eip
更改爲系統調用後,並且eax
將返回值設爲有效,則可能會跳過呼叫。
但我沒有嘗試它,如果它不起作用,也不會感到驚訝。
將eip更改爲系統調用後!這並不容易,我的朋友:(! – MetallicPriest 2012-01-12 19:35:19
@MettalicPriest:不容易,但爲了改變被感染的程序的行爲,你需要仔細研究機器內部的狀態。 – 2012-01-12 22:19:02