让 IDA 的 F5 插件失效
??? 似乎在 IDA 中使用 F5 已經成為了時尚,可以輕易的通過IDA中的匯編碼轉C代碼插件反匯編別人的代碼,即使沒有一點匯編基礎的人都可以反匯編了,這對我們寫的程序是極大的威 脅。唯一的辦法就是加上幾段花花(i like FlowrCode),讓那些不懂匯編人離開反匯編的世界吧。。。
VC++ Code:
_asm
{
?? jb label
?? jnb label
?? _emit 0xE8
label:
}
Delphi Code:
asm
begin
?? jb label
?? jnb label
?? db $E8
label:
end;
?
很顯然,這只是一段極其簡單的花代碼,但是對付 IDA 的?? Hex-Rays Decompiler 插件卻是很的效的,這段代碼可以放在任意位置,如在VC++中:
NTSTATUS DriverEntry()
{
//隨便位置寫入即可
}
?
測試后就會出現下面這種情況了。。。
在 IDA 的 function 竟然找不到加入花代碼的 Hook 函數了,如下圖:
?
?
經過查找后,原來在這里:
然后 F5 試試看看可不可以把這段匯編代碼轉換成C代碼?見下圖:
?
?
哈哈。。。爽,達到我們的要求了,雖然人家還是可以看你的反匯編代碼,但是總比人家直接看C代碼好的多了。這招對付一些沒有真本事,但又想偷學他人代碼的人很有效哈。。。
總結
以上是生活随笔為你收集整理的让 IDA 的 F5 插件失效的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql截取字符串最后两位_MySQL
- 下一篇: 计算机毕业设计Python+uniapp