如何从应用程序内执行调试器命令

2023-12-27

在运行时我试图恢复一个函数的地址未出口但可以通过共享库的符号表获得,因此对调试器可见。

我正在研究需要捕获某些事件并操纵运行时的高级调试程序。其中一项操作需要了解私有函数的地址(仅地址),该地址在其他地方用作密钥。

我当前的解决方案在构建时计算该私有函数相对于已知导出函数的偏移量nm。该解决方案限制了调试功能,因为它依赖于共享库的特定构建。

更好的解决方案应该能够在运行时恢复地址。

我希望从应用程序内与附加的调试器进行通信,但很难找到任何 API。

我有什么选择?


在运行时,我试图恢复未导出但可通过共享库的符号表获得的函数的地址,因此对调试器可见。

调试器不是神奇的独角兽。如果符号表可供调试器使用,那么它也可供您的应用程序使用。

我需要按名称恢复其地址使用调试器 ...

这是完全错误的做法。

不使用调试器,而是读取应用程序中库的符号表,并使用获得的信息来调用目标函数。

阅读 ELF 符号表非常容易。Example https://stackoverflow.com/a/48843218/50617。如果您不在 ELF 平台上,获取同等信息应该不会更困难。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从应用程序内执行调试器命令 的相关文章

随机推荐

  • 使用水豚复制粘贴?

    我想做这样的事情 div find some div copy to clipboard div input find my input paste from clipboard input 我不想用这个来模拟send keys并使用 Ct
  • RStudio 闪亮错误 mysqlNewConnection 最多 16 个连接

    我有一个正在运行的闪亮服务器 它连接到 MySQL 数据库 到目前为止工作正常的页面现在给我这个错误 Error in mysqlNewConnection drv RS DBI driver cannot allocate a new c
  • 如何检查android webview中的所有元素

    When i inspect an website with Chrome i can to see some iframe data like this Example Chrome inspect https i stack imgur
  • ASP.NET MVC 中的 DropdownList - 值未发布

    我在 ASP MVC Razor 中有一个表单 在这个表单中我有一个文本框 和一个
  • ASP.Net Core 2.1 中的身份< - 自定义 AccountController

    我已经安装了ASP NET Core 2 1但即使我创建了一个新的ASP NET Core Web Application using ASP NET Core 2 1 with Individual User Accounts Store
  • 无法在 .NET Core 项目中使用 T4 模板

    我有一个 NET Core 类库项目 我想使用设计时 T4 模板 模板编译正确 但是当我尝试使用反射时 它会引发错误 Running transformation System IO FileNotFoundException Could
  • 什么时候不应该重构?

    我们都知道重构很好 我和下一个人一样喜欢它 但是你有真实的案例吗 not重构 像时间关键的东西或同步之类的东西 技术或人为原因同样受欢迎 真实案例场景和经验优先 Edit 从迄今为止的答案来看 不重构的唯一原因似乎是金钱 我的问题主要与这样
  • MS SQL Server 与 Rails 4

    我想在 Rails 4 上创建一个使用现有 MS SQL 数据库的应用程序 该应用程序可以从使用 Rails 4 及其所有新功能中受益匪浅 但似乎每个人都推荐使用 gem activerecord sqlserver adapter 不支持
  • AJAX 和自签名证书

    我正在尝试将 AJAX 请求发送到使用自签名证书的 REST API 网站 问题是 当我第一次访问该网站时 它抱怨此证书问题 当我执行 AJAX 请求 没有先接受此证书 时 它会默默失败 问题是这种情况下该怎么办 我应该要求用户访问该网站并
  • 在 cbind 或 rbind 之后丢失表的暗名称

    After cbind or rbind ing 一个表对象 例如 添加总和的余量或类似的东西 暗名称的名称会丢失 请参阅y 我找到了这个 解决方法 但想知道是否有一个现成的解决方案 看起来不那么老套 也许可以即时完成一些事情 我想保留班级
  • 404 Not Found:Angular 2 无法与 Spring Rest API 对话

    我按照 Angular 2 的 Tour of Hero 教程使用内存数据库进行操作 然后我创建了一个 Spring 后端来提供数据 并希望将 Angular2 与 Spring 的 Rest API 集成 在英雄之旅中我只改变了hero
  • 概念评估是否可以取决于评估地点?

    温度概念 5 http eel is c draft temp concept 5 sentence 1 says 概念未实例化 temp spec 注 表示概念专门化的 id 表达式被计算为表达式 expr prim id 这是否意味着这
  • 爆炸和 in_Array 搜索不起作用

    好的 这里是代码键盘http codepad org ZQz0Kn3R http codepad org ZQz0Kn3R function processContent content min count 2 exclude list a
  • moment.js 获取当前时间(以毫秒为单位)?

    var timeArr moment format HH mm ss split var timeInMilliseconds timeArr 0 3600000 timeArr 1 60000 这个解决方案有效 测试一下 但我宁愿只使用
  • 内容菜单和打开选项卡的问题 - Chrome 扩展

    我遇到以下问题 在网页上检测到选择后 以下代码未显示 目前 当我选择文本时 上下文菜单没有显示 Code function getword info tab if info menuItemId google console log Goo
  • 在 Woocommerce 3+ 中保存并显示订单自定义元数据

    不久前 我的合作伙伴帮助我在结帐页面添加了自定义字段 我们想问人们 您是如何听说我们的 当他们预订我们的活动时 我们把它放在一起 但不久之后我们就无法正确看到结果了 在发送给管理员的 新订单 电子邮件中 出现 您是如何听说我们的 标签 但没
  • 在序言中将某些字符从列表复制到另一个列表

    所以我有这段代码 它将所有内容从列表复制到另一个列表 我应该如何修改它才能复制 比如说前两个字符 copy L R copy2 L R copy2 X X copy2 H T1 H T2 copy2 T1 T2 我想要的示例 copy a
  • 在 C# 中使用“类型”对象进行类型转换

    到目前为止 这对我来说有点棘手 我想知道是否可以使用 System Type 对象对对象进行类型转换 我在下面说明了我的意思 public interface IDataAdapter object Transform object inp
  • 如何在 GitLab CI 中的其他内容之前在 PATH 中设置 docker-credential-ecr-login

    我正在使用 AWS ECR 托管私有 Dockerfile 映像 并且我想在 GitLab CI 中使用它 根据文档 我需要设置 docker credential ecr login 来获取私有映像 但我不知道如何在其他事情之前做到这一点
  • 如何从应用程序内执行调试器命令

    在运行时我试图恢复一个函数的地址未出口但可以通过共享库的符号表获得 因此对调试器可见 我正在研究需要捕获某些事件并操纵运行时的高级调试程序 其中一项操作需要了解私有函数的地址 仅地址 该地址在其他地方用作密钥 我当前的解决方案在构建时计算该