有没有办法禁用或禁止gdb或lldb访问我的编译库?

时间:2014-10-02 00:36:47

标签: c gdb lldb

基本上,我想做的就是确保没有人能够通过敏感代码。

我读到某处可能,只有我无法找到我读到的地方。

谢谢!

2 个答案:

答案 0 :(得分:1)

没有。从根本上说,任何能够运行目标代码的人都可以在任何程度上检查它。

如果您不希望它们能够运行目标代码,则必须在您选择的计算机上运行它,并且只能通过网络与用户进行交互。

声称禁用调试器的所有技术都只是利用错误,这些错误通常会在下个版本的调试器发布几个月后修复;甚至那些对于通过VM进行调试完全无用。

答案 1 :(得分:1)

  

我想做的是确保没有人能够通过敏感代码。

“无人”部分是不可能的:无论你尝试什么,老练的攻击者都能做到。

有许多技术可以阻止不太复杂的攻击者,this book显示其中的一些。

一般来说,这些技术不值得你花时间 - 它们会对你的软件提供现场支持,它们不会阻止复杂的攻击者(你只需要一个成功地使你的努力无用),而你的软件通常不会开始时这很有意思。

如果它足够有用,人们会买它。如果不是这样,添加保护措施将使其更有用。