gcc address sanitizer core dump on error

davidv1992

我正在尝试在服务器上对我怀疑与缓冲区溢出有关的问题进行一些调试,因此我尝试编译我的代码-fsanitize=address以启用地址清理。

它编译,生成的软件运行。但是,当地址清理器检测到错误时,我正在尝试获取核心转储,因为这几乎是由于设置而从系统中获取信息的唯一方法。

ASAN_OPTIONS=abort_on_error=1在命令行上调用该软件(使用 shell 脚本来执行此操作),并检查ulimit -c了结果为无限制,但它不会产生核心转储。

我错过了什么?

这是在带有 gcc 版本 4.8.4 的 ubuntu 14.04 服务器上

编辑:sysctl kernel.core_pattern还给kernel.core_pattern = |/usr/share/apport/apport %p %s %c %P这可能意味着启用了 apport(至少以某种形式)。但是,我已经能够从软件中的断言和 SIGFPE 中获得该系统上正确的核心文件(怀疑阵列溢出的原因来自于此)。

尤格

让我猜猜,这是 x64 目标吗?核心转储在那里被禁用以避免转储 16 TB 影子内存(有关详细信息,请参阅disable_coredump 此处的文档)。

默认情况下较新版本的 GCC/Clang 会从核心中删除阴影,以便人们可以执行类似的操作

export ASAN_OPTIONS=abort_on_error=1:disable_coredump=0

但恐怕 4.8 太旧了。

作为替代建议,为什么回溯对您来说还不够?如果您无权访问程序,则可以使用log_pathlog_to_syslog保留它们stderr

注意:我发布了在所有平台上启用核心转储的建议

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Meaningful stack traces for address sanitizer in GCC

来自分类Dev

GCC Address Sanitizer-将库函数列入黑名单(特别是boost :: test)

来自分类Dev

使Thread Sanitizer和Address Sanitizer选项在Xcode 8中可用需要什么

来自分类Dev

如何创建缓冲区溢出以测试Address Sanitizer?

来自分类Dev

segmentation fault (core dump)

来自分类Dev

如果该平台不支持Address Sanitizer说出detect_leaks,我该如何解决?

来自分类Dev

gcc宏扩展#error

来自分类Dev

gcc宏扩展#error

来自分类Dev

C ++ 20 [[no_unique_address]]在GCC中的错误?

来自分类Dev

来自ICC的_PGOPTI_Prof_Dump_All()的Clang或GCC等效项

来自分类Dev

Xcode Sanitizer如何启用

来自分类Dev

从 var_dump(JSON) 回显 PHP 例如 [''address"] 和 ["network"]

来自分类Dev

Segmentation Fault(Core Dump)-代码在VS中有效,但在Linux终端中无效

来自分类Dev

OSX 10.10,在睡眠和崩溃后如何生成Core dump文件?

来自分类Dev

`gcc: error: 0": No such file or directory` 错误的本质是什么?

来自分类Dev

gdb core dump在“ sudo apt-get install libc6-dbg”之后看不到任何符号

来自分类Dev

VirtualAllocEx 失败 GetError 返回 ERROR_INVALID_ADDRESS

来自分类Dev

如何处理OS X Yosemite Core标头中的非gcc兼容代码

来自分类Dev

如何为编辑操作指定devise_parameter_sanitizer?

来自分类Dev

如何在服务器端使用JSON Sanitizer?

来自分类Dev

找不到Rails 5的Devise Parameter Sanitizer“ For”方法

来自分类Dev

如何指定devise_parameter_sanitizer进行编辑操作?

来自分类Dev

OWASP HTML Sanitizer允许在HTML中使用冒号

来自分类Dev

Undefined reference linker error when using 16-byte CAS with GCC

来自分类Dev

Makefile中的错误:gcc:error:filename.o:找不到此类文件或目录

来自分类Dev

Makefile中的错误:gcc:error:filename.o:找不到此类文件或目录

来自分类Dev

为什么 GCC 可以编译 std::exception("some error msg") 没有错误?

来自分类Dev

fingGetting this error from swift mailer Address in邮箱给定 [ ] 不符合 RFC 2822, 3.6.2

来自分类Dev

使用response.Dump

Related 相关文章

  1. 1

    Meaningful stack traces for address sanitizer in GCC

  2. 2

    GCC Address Sanitizer-将库函数列入黑名单(特别是boost :: test)

  3. 3

    使Thread Sanitizer和Address Sanitizer选项在Xcode 8中可用需要什么

  4. 4

    如何创建缓冲区溢出以测试Address Sanitizer?

  5. 5

    segmentation fault (core dump)

  6. 6

    如果该平台不支持Address Sanitizer说出detect_leaks,我该如何解决?

  7. 7

    gcc宏扩展#error

  8. 8

    gcc宏扩展#error

  9. 9

    C ++ 20 [[no_unique_address]]在GCC中的错误?

  10. 10

    来自ICC的_PGOPTI_Prof_Dump_All()的Clang或GCC等效项

  11. 11

    Xcode Sanitizer如何启用

  12. 12

    从 var_dump(JSON) 回显 PHP 例如 [''address"] 和 ["network"]

  13. 13

    Segmentation Fault(Core Dump)-代码在VS中有效,但在Linux终端中无效

  14. 14

    OSX 10.10,在睡眠和崩溃后如何生成Core dump文件?

  15. 15

    `gcc: error: 0": No such file or directory` 错误的本质是什么?

  16. 16

    gdb core dump在“ sudo apt-get install libc6-dbg”之后看不到任何符号

  17. 17

    VirtualAllocEx 失败 GetError 返回 ERROR_INVALID_ADDRESS

  18. 18

    如何处理OS X Yosemite Core标头中的非gcc兼容代码

  19. 19

    如何为编辑操作指定devise_parameter_sanitizer?

  20. 20

    如何在服务器端使用JSON Sanitizer?

  21. 21

    找不到Rails 5的Devise Parameter Sanitizer“ For”方法

  22. 22

    如何指定devise_parameter_sanitizer进行编辑操作?

  23. 23

    OWASP HTML Sanitizer允许在HTML中使用冒号

  24. 24

    Undefined reference linker error when using 16-byte CAS with GCC

  25. 25

    Makefile中的错误:gcc:error:filename.o:找不到此类文件或目录

  26. 26

    Makefile中的错误:gcc:error:filename.o:找不到此类文件或目录

  27. 27

    为什么 GCC 可以编译 std::exception("some error msg") 没有错误?

  28. 28

    fingGetting this error from swift mailer Address in邮箱给定 [ ] 不符合 RFC 2822, 3.6.2

  29. 29

    使用response.Dump

热门标签

归档