GNOME Bugzilla – Bug 760231
Heap-buffer overread in ms-excel-read.c:2819 on a fuzzed xls file
Last modified: 2016-01-07 21:33:12 UTC
Git versions of gtk, glib, goffice, gnumeric, libgsf and libxml2. Test case: http://jutaky.com/fuzzing/gnumeric_case_013-ms-excel-read.c.2819.xls $ ssconvert gnumeric_case_013-ms-excel-read.c.2819.xls /tmp/out.gnumeric ==29657==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6020001b2c3a at pc 0x7f379c303e3e bp 0x7fffae0518d0 sp 0x7fffae0518c8 READ of size 1 at 0x6020001b2c3a thread T0 #0 0x7f379c303e3d in excel_formula_shared gnumeric/gnumeric/plugins/excel/ms-excel-read.c:2819:18 #1 0x7f379c303e3d in excel_read_FORMULA gnumeric/gnumeric/plugins/excel/ms-excel-read.c:2982 #2 0x7f379c303e3d in excel_read_sheet gnumeric/gnumeric/plugins/excel/ms-excel-read.c:6701 #3 0x7f379c2e19cd in excel_read_BOF gnumeric/gnumeric/plugins/excel/ms-excel-read.c:7133:4 #4 0x7f379c2d8e22 in excel_read_workbook gnumeric/gnumeric/plugins/excel/ms-excel-read.c:7242:4 #5 0x7f379c2b1902 in excel_enc_file_open gnumeric/gnumeric/plugins/excel/boot.c:193:2 #6 0x7f37bb28eed2 in go_plugin_loader_module_func_file_open gnumeric/goffice/goffice/app/go-plugin-loader-module.c:282:3 #7 0x7f37bb297b96 in go_plugin_file_opener_open gnumeric/goffice/goffice/app/go-plugin-service.c:685:2 #8 0x7f37bb29bcec in go_file_opener_open gnumeric/goffice/goffice/app/file.c:417:2 #9 0x7f37bbe9af80 in workbook_view_new_from_input gnumeric/gnumeric/src/workbook-view.c:1278:3 #10 0x7f37bbe9b2ff in workbook_view_new_from_uri gnumeric/gnumeric/src/workbook-view.c:1337:9 #11 0x4dd2b5 in convert gnumeric/gnumeric/src/ssconvert.c:715:9 #12 0x4dc6f4 in main gnumeric/gnumeric/src/ssconvert.c:918:19 #13 0x7f37b5f0060f in __libc_start_main (/usr/lib/libc.so.6+0x2060f) #14 0x41a688 in _start (apps/bin/ssconvert+0x41a688) -- Juha Kylmänen
This problem has been fixed in our software repository. The fix will go into the next software release. Once that release is available, you may want to check for a software upgrade provided by your Linux distribution.