View Issue Details

IDProjectCategoryView StatusLast Update
0005847libextractorextractpublic2024-02-29 22:47
Reporterjianglin Assigned ToChristian Grothoff  
PriorityhighSeveritytrivialReproducibilityalways
Status closedResolutionnot fixable 
PlatformlinuxOSubuntuOS Version16.04
Product Version1.9 
Target Version1.10Fixed in Version1.10 
Summary0005847: LeakSanitizer: detected memory leaks
DescriptionAn issue was discovered in libextractor 1.9, LeakSanitizer detected memory leaks when I trying to run plugins in-process.
Steps To ReproduceRun the executable program extract with the parameter -i
the poc is attached

./bin/extract -i pwd-libextractor-extract-00-00000015-20190814
Additional InformationLeaking the memory, the running speed will gradually slow down or even stop running. So it is better to fix it.
TagsNo tags attached.
Attached Files
do_extract@extractor.c_582_memory leak.md (5,975 bytes)   
## do_extract@extractor.c_582_memory leak

### description

    An issue was discovered in libextractor 1.9, There is a/an memory leak in function do_extract at @extractor.c:582:7

### commandline

    extract -i @@ /dev/null

### bug report

```txt

➜  fuzz-libextractor git:(master) ✗ ./installed-asan/bin/extract -i crashes/crashes/pwd-libextractor-extract-00-00000015-20190814
Keywords for file crashes/crashes/pwd-libextractor-extract-00-00000015-20190814:
embedded filename - ���������������


��

=================================================================
==109446==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 48 byte(s) in 3 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b41ff5810 in g_malloc0 (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4f810)

Indirect leak of 20728 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46778722  (<unknown module>)
    #2 0x7f6b4d44010e in do_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:582:7
    #3 0x7f6b4d43e1fa in EXTRACTOR_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:661:3

Indirect leak of 20208 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b4678e3e2  (<unknown module>)

Indirect leak of 2576 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46783976  (<unknown module>)

Indirect leak of 2144 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b467675e4  (<unknown module>)
    #2 0x7f6b4d44010e in do_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:582:7
    #3 0x7f6b4d43e1fa in EXTRACTOR_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:661:3

Indirect leak of 1088 byte(s) in 2 object(s) allocated from:
    #0 0x4dedf0 in realloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:107
    #1 0x7f6b46799f4c  (<unknown module>)

Indirect leak of 1072 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b4675d1d2  (<unknown module>)

Indirect leak of 1056 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46796792  (<unknown module>)

Indirect leak of 448 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b4677e116  (<unknown module>)

Indirect leak of 432 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b467877c6  (<unknown module>)

Indirect leak of 424 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46798d22  (<unknown module>)
    #2 0x7f6b4d44010e in do_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:582:7
    #3 0x7f6b4d43e1fa in EXTRACTOR_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:661:3

Indirect leak of 424 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46798c52  (<unknown module>)
    #2 0x7f6b4d44010e in do_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:582:7
    #3 0x7f6b4d43e1fa in EXTRACTOR_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:661:3

Indirect leak of 424 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46792022  (<unknown module>)
    #2 0x7f6b4d44010e in do_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:582:7
    #3 0x7f6b4d43e1fa in EXTRACTOR_extract /home/jl/work/up_projects/fuzz-libextractor/libextractor/libextractor/src/main/extractor.c:661:3

Indirect leak of 144 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b4678a0c2  (<unknown module>)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b4677f9d2  (<unknown module>)

Indirect leak of 56 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46779372  (<unknown module>)

Indirect leak of 24 byte(s) in 1 object(s) allocated from:
    #0 0x4deba0 in calloc /home/jl/deploy/llvm-6.0.0/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:97
    #1 0x7f6b46767926  (<unknown module>)

SUMMARY: AddressSanitizer: 51376 byte(s) leaked in 20 allocation(s).

```

### others

    from fuzz project pwd-libextractor-extract-00
    crash name pwd-libextractor-extract-00-00000016-20190817
    Auto-generated by pyspider at 2019-08-17 14:51:38

    please send email to  teamseri0us360@gmail.com if you have any questions.
pwd-libextractor-extract-00-00000015-20190814 (17,391 bytes)   
������������������







��










%

































































































































































































































































































































































































































































�

























































































































































































































































%





























































































































































































































































































































































































































































































































































����




































































































































































































































































































�












































































































































































































�


























	�







































































































����







































































































































































































































































































































































































































































































































































































































































































�	















































































































































































































































































































































































����











































































































































































































*

[
















































































































�













































































�















































































































































































































































































�	








































































































































































































����





































#







	�
































































































































�









































































����


















































































































































































































































































































































































































































































































































































































































































































































































































































�































































����














































































































































































































































































































































































 








































































































































































�	













































@










































































�













































































































































































































































































































































,























����


















































































































































































































































































T

�

















































)





































































����



































































































































































































































































































































































































































































































































































































































































































































































































































































	�









�	














�




































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































 























































































































�





















































(






















































































































































































�

















































































































































































































































































































































































































































































































































































































































































































�

























































































































�




















































































"






















�







































































































































































































































































































































































































































































































































































































































































�




































































































%


















































































































































































































































































































































































































































































































































































































































































































































































































































�	







































































































































































































































































































"
































































































































































































































































































































































































































(







































������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������








































































































































































































































































































	�












































































































































































































































































































































































































































	�








































































































































































































































































































(







































����������





































































































































































(





















































































































































































�













































































































































































































��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������i�����������������������������������������������������������������������������������������������������������������������������������������������������������������������r�������������������������������������������������������������������������������������������������������������������������k������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������l�������������������������������������������������������������������������������������������������������ŋ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������z������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������i��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

Activities

Christian Grothoff

2019-08-24 00:02

manager   ~0014806

Your md report does not specify the allocation sites, as the plugin was unloaded.
Analyzing things with valgrind suggests that the issue is in the libgst class initialization, which:
1) is harmless, as it will only be done once per process under typical conditions;
2) cannot be fixed, as it concerns fundamental class loading aspects of glib
3) doesn't even matter in normal execution of libextractor, as the leak is in a fork'ed process,
    and thus even in the worst case will be released on process termination, which is exactly
   the earliest point when the RAM could be freed.

Hence: not fixable, and also harmless.

Issue History

Date Modified Username Field Change
2019-08-23 12:06 jianglin New Issue
2019-08-23 12:06 jianglin Tag Attached: Error
2019-08-23 12:06 jianglin File Added: do_extract@extractor.c_582_memory leak.md
2019-08-23 12:06 jianglin File Added: pwd-libextractor-extract-00-00000015-20190814
2019-08-24 00:02 Christian Grothoff Note Added: 0014806
2019-08-24 00:02 Christian Grothoff Assigned To => Christian Grothoff
2019-08-24 00:02 Christian Grothoff Severity minor => trivial
2019-08-24 00:02 Christian Grothoff Status new => closed
2019-08-24 00:02 Christian Grothoff Resolution open => not fixable
2019-08-24 00:02 Christian Grothoff Fixed in Version => 1.10
2019-08-24 00:02 Christian Grothoff Target Version => 1.10
2019-08-24 00:02 Christian Grothoff Steps to Reproduce Updated
2024-02-29 22:47 Christian Grothoff Tag Detached: Error