Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux libfuzzer分段故障(堆芯转储)_Linux_Segmentation Fault_Clang++_Libfuzzer - Fatal编程技术网

Linux libfuzzer分段故障(堆芯转储)

Linux libfuzzer分段故障(堆芯转储),linux,segmentation-fault,clang++,libfuzzer,Linux,Segmentation Fault,Clang++,Libfuzzer,按照说明使用libfuzzer和ASAN支持创建fuzzer。我将它指向一个语料库,它通常会运行几天,然后我会收到一条消息: Segmentation fault (core dumped) INFO: exiting: 139 time: XXXXXXs 我无法在系统的任何位置找到核心转储文件 我应用的一些疑难解答: 我已经将实际内存错误编码到我的应用程序中,当作为模糊程序运行时,它确实会生成一个崩溃文件 我运行过其他带有故意内存错误的二进制文件,它们确实会在工作目录中生成核心转储文件 我的

按照说明使用libfuzzer和ASAN支持创建fuzzer。我将它指向一个语料库,它通常会运行几天,然后我会收到一条消息:

Segmentation fault (core dumped)
INFO: exiting: 139 time: XXXXXXs
我无法在系统的任何位置找到核心转储文件

我应用的一些疑难解答:

  • 我已经将实际内存错误编码到我的应用程序中,当作为模糊程序运行时,它确实会生成一个崩溃文件
  • 我运行过其他带有故意内存错误的二进制文件,它们确实会在工作目录中生成核心转储文件
  • 我的环境是Ubuntu 20.04.2 LTS(GNU/Linux 5.4.0-66-generic x86_64)。 编译器是clang++-11

    我已经在下面的分段错误之前发布了输出的剪报:

    #1253299: cov: 54386 ft: 261993 corp: 3483 exec/s 0 oom/timeout/crash: 0/0/0 time: 540397s job: 6782 dft_time: 0
    INFO: log from the inner process:
    INFO: Seed: 614118371
    INFO: Loaded 1 modules   (196616 inline 8-bit counters): 196616 [0x3f96900, 0x3fc6908), 
    INFO: Loaded 1 PC tables (196616 PCs): 196616 [0x33cd138,0x36cd1b8), 
    INFO:        0 files found in /tmp/libFuzzerTemp.FuzzWithFork42425.dir/C6782
    INFO: -max_len is not provided; libFuzzer will not generate inputs larger than 514888 bytes
    INFO: seed corpus: files: 59 min: 30838b max: 514888b total: 10611661b rss: 53Mb
    #8  pulse  cov: 38701 ft: 64071 corp: 5/471Kb exec/s: 0 rss: 260Mb
    #16 pulse  cov: 43230 ft: 102964 corp: 12/1418Kb exec/s: 0 rss: 519Mb
    Slowest unit: 11 s:
    artifact_prefix='./'; Test unit written to ./slow-unit-befe4808dffe50d5a0458238314af61206e5bd28
    #32 pulse  cov: 44227 ft: 121374 corp: 28/3756Kb exec/s: 0 rss: 559Mb
    Slowest unit: 15 s:
    artifact_prefix='./'; Test unit written to ./slow-unit-01babca845e1d73257d1f0bb436b072147eddab1
    #64 pulse  cov: 45082 ft: 155650 corp: 58/9860Kb exec/s: 0 rss: 598Mb
    #64 INITED cov: 45082 ft: 155650 corp: 59/10362Kb exec/s: 0 rss: 598Mb
        NEW_PC: [REMOVED]
    #65 NEW    cov: 45083 ft: 155793 corp: 60/10464Kb lim: 514888 exec/s: 0 rss: 598Mb L: 103906/514888 MS: 1 CrossOver-
    #66 NEW    cov: 45083 ft: 156037 corp: 61/10610Kb lim: 514888 exec/s: 0 rss: 598Mb L: 149586/514888 MS: 1 ChangeASCIIInt-
    #67 NEW    cov: 45083 ft: 156064 corp: 62/10964Kb lim: 514888 exec/s: 0 rss: 598Mb L: 362655/514888 MS: 1 ChangeBinInt-
    #68 NEW    cov: 45083 ft: 156078 corp: 63/11110Kb lim: 514888 exec/s: 0 rss: 598Mb L: 149587/514888 MS: 1 InsertByte-
    #69 NEW    cov: 45083 ft: 156128 corp: 64/11278Kb lim: 514888 exec/s: 0 rss: 598Mb L: 171552/514888 MS: 1 ShuffleBytes-
    #70 NEW    cov: 45083 ft: 156174 corp: 65/11531Kb lim: 514888 exec/s: 0 rss: 598Mb L: 259501/514888 MS: 1 CopyPart-
    #72 NEW    cov: 45083 ft: 156409 corp: 66/11699Kb lim: 514888 exec/s: 0 rss: 598Mb L: 171552/514888 MS: 2 ChangeBinInt-CopyPart-
    #73 NEW    cov: 45083 ft: 156549 corp: 67/11910Kb lim: 514888 exec/s: 0 rss: 598Mb L: 216339/514888 MS: 1 InsertRepeatedBytes-
    #74 NEW    cov: 45083 ft: 156554 corp: 68/12021Kb lim: 514888 exec/s: 0 rss: 598Mb L: 113500/514888 MS: 1 EraseBytes-
    #76 NEW    cov: 45083 ft: 156559 corp: 69/12274Kb lim: 514888 exec/s: 0 rss: 598Mb L: 259535/514888 MS: 2 InsertRepeatedBytes-ShuffleBytes-
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
    #79 NEW    cov: 45087 ft: 157020 corp: 70/12777Kb lim: 514888 exec/s: 0 rss: 598Mb L: 514888/514888 MS: 3 ChangeByte-ChangeByte-CrossOver-
    #81 NEW    cov: 45087 ft: 157024 corp: 71/12923Kb lim: 514888 exec/s: 0 rss: 598Mb L: 149587/514888 MS: 2 CopyPart-InsertByte-
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
    #92 NEW    cov: 45091 ft: 157249 corp: 72/13006Kb lim: 514888 exec/s: 0 rss: 598Mb L: 84803/514888 MS: 1 EraseBytes-
    #93 NEW    cov: 45091 ft: 157356 corp: 73/13332Kb lim: 514888 exec/s: 0 rss: 598Mb L: 334030/514888 MS: 1 CopyPart-
    #99 NEW    cov: 45091 ft: 157365 corp: 74/13543Kb lim: 514888 exec/s: 0 rss: 598Mb L: 216315/514888 MS: 1 InsertByte-
    #100    NEW    cov: 45091 ft: 157377 corp: 75/13690Kb lim: 514888 exec/s: 0 rss: 598Mb L: 149586/514888 MS: 1 ChangeBinInt-
    #101    NEW    cov: 45091 ft: 157384 corp: 76/14044Kb lim: 514888 exec/s: 0 rss: 598Mb L: 362655/514888 MS: 1 ChangeBit-
    #103    NEW    cov: 45091 ft: 157443 corp: 77/14211Kb lim: 514888 exec/s: 0 rss: 598Mb L: 171517/514888 MS: 2 ChangeByte-InsertRepeatedBytes-
    #106    NEW    cov: 45091 ft: 157446 corp: 78/14537Kb lim: 514888 exec/s: 0 rss: 598Mb L: 334084/514888 MS: 3 ChangeBit-ChangeBinInt-InsertRepeatedBytes-
        NEW_PC: [REMOVED]
    #107    NEW    cov: 45092 ft: 157996 corp: 79/14705Kb lim: 514888 exec/s: 0 rss: 598Mb L: 171476/514888 MS: 1 ChangeByte-
    #108    NEW    cov: 45092 ft: 157999 corp: 80/14872Kb lim: 514888 exec/s: 0 rss: 598Mb L: 171476/514888 MS: 1 CMP- DE: "Metad"-
    #116    NEW    cov: 45092 ft: 158007 corp: 81/15079Kb lim: 514888 exec/s: 0 rss: 598Mb L: 211785/514888 MS: 3 ShuffleBytes-ChangeBit-CrossOver-
    #117    NEW    cov: 45092 ft: 158019 corp: 82/15416Kb lim: 514888 exec/s: 0 rss: 598Mb L: 344825/514888 MS: 1 EraseBytes-
    #123    NEW    cov: 45092 ft: 158036 corp: 83/15909Kb lim: 514888 exec/s: 0 rss: 598Mb L: 504648/514888 MS: 1 CopyPart-
    #128    pulse  cov: 45092 ft: 158055 corp: 83/15909Kb lim: 514888 exec/s: 0 rss: 598Mb
    #128    NEW    cov: 45092 ft: 158055 corp: 84/16162Kb lim: 514888 exec/s: 0 rss: 598Mb L: 259620/514888 MS: 5 CMP-InsertRepeatedBytes-ChangeBit-ChangeBinInt-CopyPart- DE: "\x91._\x01\x00\x00\x00\x00"-
    #130    NEW    cov: 45092 ft: 158073 corp: 85/16Mb lim: 514888 exec/s: 0 rss: 598Mb L: 259620/514888 MS: 2 ChangeBinInt-CopyPart-
    #137    NEW    cov: 45092 ft: 158137 corp: 86/16Mb lim: 514888 exec/s: 0 rss: 598Mb L: 171484/514888 MS: 2 ChangeByte-PersAutoDict- DE: "\x91._\x01\x00\x00\x00\x00"-
    #138    NEW    cov: 45092 ft: 158138 corp: 87/16Mb lim: 514888 exec/s: 0 rss: 598Mb L: 338523/514888 MS: 1 CopyPart-
    #144    NEW    cov: 45092 ft: 158142 corp: 88/16Mb lim: 514888 exec/s: 0 rss: 598Mb L: 171476/514888 MS: 1 ChangeASCIIInt-
    #147    NEW    cov: 45092 ft: 158167 corp: 89/16Mb lim: 514888 exec/s: 0 rss: 598Mb L: 103906/514888 MS: 3 ChangeASCIIInt-ChangeBinInt-CopyPart-
    #148    NEW    cov: 45092 ft: 158386 corp: 90/16Mb lim: 514888 exec/s: 0 rss: 604Mb L: 149586/514888 MS: 1 CopyPart-
    #150    NEW    cov: 45092 ft: 158388 corp: 91/17Mb lim: 514888 exec/s: 0 rss: 604Mb L: 119131/514888 MS: 2 ShuffleBytes-EraseBytes-
    #152    NEW    cov: 45092 ft: 158404 corp: 92/17Mb lim: 514888 exec/s: 0 rss: 604Mb L: 167390/514888 MS: 2 ChangeBit-EraseBytes-
    #153    NEW    cov: 45092 ft: 158427 corp: 93/17Mb lim: 514888 exec/s: 0 rss: 605Mb L: 149586/514888 MS: 1 ChangeBit-
    #154    NEW    cov: 45092 ft: 158428 corp: 94/17Mb lim: 514888 exec/s: 0 rss: 605Mb L: 149586/514888 MS: 1 ChangeBinInt-
    #160    NEW    cov: 45092 ft: 158488 corp: 95/17Mb lim: 514888 exec/s: 0 rss: 605Mb L: 107319/514888 MS: 1 CrossOver-
    #162    NEW    cov: 45092 ft: 158490 corp: 96/17Mb lim: 514888 exec/s: 0 rss: 605Mb L: 171553/514888 MS: 2 ChangeByte-InsertByte-
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
    #164    NEW    cov: 45098 ft: 158729 corp: 97/17Mb lim: 514888 exec/s: 0 rss: 605Mb L: 84806/514888 MS: 2 CMP-CMP- DE: "Si"-"CCF"-
    #165    NEW    cov: 45098 ft: 158800 corp: 98/18Mb lim: 514888 exec/s: 0 rss: 605Mb L: 514888/514888 MS: 1 CrossOver-
    #166    NEW    cov: 45098 ft: 158815 corp: 99/18Mb lim: 514888 exec/s: 0 rss: 605Mb L: 108441/514888 MS: 1 EraseBytes-
    #167    NEW    cov: 45098 ft: 158833 corp: 100/18Mb lim: 514888 exec/s: 0 rss: 605Mb L: 443842/514888 MS: 1 InsertRepeatedBytes-
    #168    NEW    cov: 45098 ft: 158835 corp: 101/18Mb lim: 514888 exec/s: 0 rss: 605Mb L: 149590/514888 MS: 1 CMP- DE: "\x00\x00\x00#"-
    #169    NEW    cov: 45098 ft: 158847 corp: 102/19Mb lim: 514888 exec/s: 0 rss: 605Mb L: 116574/514888 MS: 1 ChangeBit-
    #175    NEW    cov: 45098 ft: 158860 corp: 103/19Mb lim: 514888 exec/s: 0 rss: 607Mb L: 149586/514888 MS: 1 ChangeBinInt-
    #177    NEW    cov: 45098 ft: 158866 corp: 104/19Mb lim: 514888 exec/s: 0 rss: 607Mb L: 171476/514888 MS: 2 ChangeBinInt-CopyPart-
    #178    NEW    cov: 45098 ft: 158876 corp: 105/19Mb lim: 514888 exec/s: 0 rss: 607Mb L: 149682/514888 MS: 1 InsertRepeatedBytes-
    #180    NEW    cov: 45098 ft: 158946 corp: 106/19Mb lim: 514888 exec/s: 0 rss: 607Mb L: 65397/514888 MS: 2 ChangeASCIIInt-EraseBytes-
    #182    NEW    cov: 45098 ft: 159002 corp: 107/19Mb lim: 514888 exec/s: 0 rss: 607Mb L: 263946/514888 MS: 2 ChangeASCIIInt-CopyPart-
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
        NEW_PC: [REMOVED]
    #184    NEW    cov: 45101 ft: 159017 corp: 108/20Mb lim: 514888 exec/s: 0 rss: 607Mb L: 365913/514888 MS: 2 PersAutoDict-CrossOver- DE: "CCF"-
    #188    NEW    cov: 45101 ft: 159033 corp: 109/20Mb lim: 514888 exec/s: 0 rss: 607Mb L: 76954/514888 MS: 4 ChangeByte-InsertByte-InsertByte-EraseBytes-
    #191    NEW    cov: 45101 ft: 159055 corp: 110/20Mb lim: 514888 exec/s: 0 rss: 610Mb L: 514888/514888 MS: 3 CMP-PersAutoDict-CrossOver- DE: "\x94,\x01\x00\x00\x00\x00\x00"-"Si"-
    #192    NEW    cov: 45101 ft: 159081 corp: 111/21Mb lim: 514888 exec/s: 0 rss: 611Mb L: 514888/514888 MS: 1 CopyPart-
    #194    NEW    cov: 45101 ft: 159118 corp: 112/21Mb lim: 514888 exec/s: 0 rss: 611Mb L: 118409/514888 MS: 2 InsertRepeatedBytes-EraseBytes-
    #195    NEW    cov: 45101 ft: 159130 corp: 113/21Mb lim: 514888 exec/s: 0 rss: 611Mb L: 334084/514888 MS: 1 CopyPart-
    #196    NEW    cov: 45101 ft: 159132 corp: 114/22Mb lim: 514888 exec/s: 0 rss: 611Mb L: 362686/514888 MS: 1 InsertRepeatedBytes-
    #200    NEW    cov: 45101 ft: 159134 corp: 115/22Mb lim: 514888 exec/s: 0 rss: 611Mb L: 125415/514888 MS: 4 ChangeBit-ChangeASCIIInt-ShuffleBytes-EraseBytes-
    #201    NEW    cov: 45101 ft: 159139 corp: 116/22Mb lim: 514888 exec/s: 0 rss: 611Mb L: 149586/514888 MS: 1 ShuffleBytes-
    #207    NEW    cov: 45101 ft: 159140 corp: 117/22Mb lim: 514888 exec/s: 0 rss: 611Mb L: 149682/514888 MS: 1 CopyPart-
    #208    NEW    cov: 45101 ft: 159183 corp: 118/22Mb lim: 514888 exec/s: 0 rss: 611Mb L: 423326/514888 MS: 1 CrossOver-
    Segmentation fault (core dumped)
    INFO: exiting: 139 time: 540567s
    

    有什么想法吗?fuzzer在处理输入时是否会崩溃?如上所述,没有核心转储文件,因此这里没有什么可供讨论的。

    在运行程序之前,您是否执行了
    ulimit-c unlimited
    ?如果核心文件的ulimit太小,则不会创建核心转储文件。是的,我已将其设置为“无限制”,并且正在该用户的上下文中运行。我已经执行了已知和预期内存故障的二进制文件,这些文件确实会在工作目录中生成预期的核心转储文件。您可以根据核心转储文件编辑问题、添加回溯信息以及任何可能有助于调试过程的相关信息。你能做到吗?对不起,我应该说得更清楚些。我所拥有的核心转储是针对我编写的任意应用程序的,目的是向自己证明核心转储机制是有效的。它与fuzzer完全无关,我无法获得核心转储文件。哦,好的,你能在GDB下运行你的程序并产生相同的分段错误吗?