c - 检测运行时是否正在使用调试器
问题描述
我正在寻找开发一个“安全”应用程序,作为一种安全缓解措施,我希望能够发现当前运行的应用程序是否正在使用调试器(GDB、LLDB ...);如果检测到则中止。
如何检测对静态链接 C 应用程序的监控?
- 遍历 /proc 树
- ...
解决方案
另一个疯狂的想法 - tracerSIGTRAP
在每个断点/步骤上都需要来自 tracee 的 s,因此您可以再次使用 BPF 从您的进程中捕获此信号,并对其进行处理。但它再次基于跟踪器不知道它的假设。
推荐阅读
- java - 如何在java中比较两个ArrayList
- ruby-on-rails - Github 警告关于 Omniauth gem 的安全问题
- c++ - 如何定义从标准类型到用户定义类型的转换?
- time - 相同代码的执行时间差异
- python - 如何以逻辑方式收集for循环输出
- ajax - 如何向 JS AJAX 请求添加 API 密钥?
- git - 在 git log -p 中隐藏前导加号/减号以轻松复制丢失的代码
- java - 如何在另一个窗口上使用 JTable 中的选定值填充文本字段?
- angular - 如何测试我的所有服务都注入到组件中
- heroku - 如何在命令行中将 asyncio.get_event_loop() 传递给 quart?