[Bug 775450] New: aac invalid memory read in gst_aac_parse_sink_setcaps
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Thu Dec 1 10:32:35 UTC 2016
https://bugzilla.gnome.org/show_bug.cgi?id=775450
Bug ID: 775450
Summary: aac invalid memory read in gst_aac_parse_sink_setcaps
Classification: Platform
Product: GStreamer
Version: git master
OS: Linux
Status: NEW
Severity: normal
Priority: Normal
Component: gst-plugins-good
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: hanno at hboeck.de
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created attachment 341134
--> https://bugzilla.gnome.org/attachment.cgi?id=341134&action=edit
poc file
The attached file causes an invalid memory read. Found with afl, current git.
asan error:
==14926==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc
0x7fc5b05fd9ff bp 0x7fc5b1060270 sp 0x7fc5b10600c0 T2)
==14926==The signal is caused by a READ memory access.
==14926==Hint: address points to the zero page.
#0 0x7fc5b05fd9fe in gst_aac_parse_sink_setcaps
/f/gstreamer/gst-plugins-good/gst/audioparsers/gstaacparse.c:315:18
#1 0x7fc5bf22f5fa in gst_base_parse_sink_event_default
/f/gstreamer/gstreamer/libs/gst/base/gstbaseparse.c:1186:15
#2 0x7fc5bed0d70d in gst_pad_send_event_unchecked
/f/gstreamer/gstreamer/gst/gstpad.c:5609:14
#3 0x7fc5beceb3cd in gst_pad_send_event
/f/gstreamer/gstreamer/gst/gstpad.c:5779:7
#4 0x7fc5b37f3c2d in send_sticky_event
/f/gstreamer/gst-plugins-base/gst/playback/gstdecodebin2.c:1961:9
#5 0x7fc5bed10409 in foreach_dispatch_function
/f/gstreamer/gstreamer/gst/gstpad.c:5878:11
#6 0x7fc5becf4d44 in events_foreach
/f/gstreamer/gstreamer/gst/gstpad.c:603:11
#7 0x7fc5bed10215 in gst_pad_sticky_events_foreach
/f/gstreamer/gstreamer/gst/gstpad.c:5909:3
#8 0x7fc5b37df9ee in send_sticky_events
/f/gstreamer/gst-plugins-base/gst/playback/gstdecodebin2.c:1976:3
#9 0x7fc5b37df9ee in connect_pad
/f/gstreamer/gst-plugins-base/gst/playback/gstdecodebin2.c:2496
#10 0x7fc5b37df9ee in analyze_new_pad
/f/gstreamer/gst-plugins-base/gst/playback/gstdecodebin2.c:1791
#11 0x7fc5b37f1b80 in pad_added_cb
/f/gstreamer/gst-plugins-base/gst/playback/gstdecodebin2.c:2929:7
#12 0x7fc5bd28301f in ffi_call_unix64 (/usr/lib64/libffi.so.6+0x601f)
#13 0x7fc5bd282a87 in ffi_call (/usr/lib64/libffi.so.6+0x5a87)
#14 0x7fc5be2737e3 in g_cclosure_marshal_generic
(/usr/lib64/libgobject-2.0.so.0+0x107e3)
#15 0x7fc5be272fd4 in g_closure_invoke
(/usr/lib64/libgobject-2.0.so.0+0xffd4)
#16 0x7fc5be285320 (/usr/lib64/libgobject-2.0.so.0+0x22320)
#17 0x7fc5be28ddd4 in g_signal_emit_valist
(/usr/lib64/libgobject-2.0.so.0+0x2add4)
#18 0x7fc5be28e036 in g_signal_emit
(/usr/lib64/libgobject-2.0.so.0+0x2b036)
#19 0x7fc5bec7e7bb in gst_element_add_pad
/f/gstreamer/gstreamer/gst/gstelement.c:713:3
#20 0x7fc5b157af6f in gst_qtdemux_add_stream
/f/gstreamer/gst-plugins-good/gst/isomp4/qtdemux.c:7798:5
#21 0x7fc5b157af6f in qtdemux_expose_streams
/f/gstreamer/gst-plugins-good/gst/isomp4/qtdemux.c:11472
#22 0x7fc5b1568b6f in gst_qtdemux_loop_state_header
/f/gstreamer/gst-plugins-good/gst/isomp4/qtdemux.c:4297:11
#23 0x7fc5b1568b6f in gst_qtdemux_loop
/f/gstreamer/gst-plugins-good/gst/isomp4/qtdemux.c:5753
#24 0x7fc5bedc45d3 in gst_task_func
/f/gstreamer/gstreamer/gst/gsttask.c:334:5
#25 0x7fc5bdfc1627 (/usr/lib64/libglib-2.0.so.0+0x72627)
#26 0x7fc5bdfc0c94 (/usr/lib64/libglib-2.0.so.0+0x71c94)
#27 0x7fc5bda3d453 in start_thread (/lib64/libpthread.so.0+0x7453)
#28 0x7fc5bd56d5dc in clone (/lib64/libc.so.6+0xe75dc)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV
/f/gstreamer/gst-plugins-good/gst/audioparsers/gstaacparse.c:315:18 in
gst_aac_parse_sink_setcaps
Thread T2 (qtdemux0:sink) created by T1 (task2) here:
#0 0x42e26d in __interceptor_pthread_create
(/usr/bin/gst-discoverer-1.0+0x42e26d)
#1 0x7fc5bdfde95f (/usr/lib64/libglib-2.0.so.0+0x8f95f)
Thread T1 (task2) created by T0 here:
#0 0x42e26d in __interceptor_pthread_create
(/usr/bin/gst-discoverer-1.0+0x42e26d)
#1 0x7fc5bdfde95f (/usr/lib64/libglib-2.0.so.0+0x8f95f)
==14926==ABORTING
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list