[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PSPP-BUG: [bug #61258] use-after-free in pspp at i18n.c:499

From: Irfan Ariq
Subject: PSPP-BUG: [bug #61258] use-after-free in pspp at i18n.c:499
Date: Thu, 30 Sep 2021 16:24:02 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36


                 Summary: use-after-free in pspp at i18n.c:499
                 Project: PSPP
            Submitted by: irfanariq
            Submitted on: Thu 30 Sep 2021 08:24:00 PM UTC
                Category: None
                Severity: 5 - Average
                  Status: None
             Assigned to: None
             Open/Closed: Open
                 Release: None
         Discussion Lock: Any
                  Effort: 0.00




We are currently working on fuzz testing feature, and we found a
**use-after-free** on `pspp`.

The stack traces are as follow:
==29418==ERROR: AddressSanitizer: heap-use-after-free on address
0x6030000062b0 at pc 0x7ff09c01c66e bp 0x7ffe378290b0 sp 0x7ffe37828858
READ of size 2 at 0x6030000062b0 thread T0
    #0 0x7ff09c01c66d  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x5166d)
    #1 0x7ff09b945efc in utf8_encoding_concat_len src/libpspp/i18n.c:499
    #2 0x7ff09b946032 in utf8_encoding_trunc_len src/libpspp/i18n.c:530
    #3 0x7ff09b8cf228 in dict_add_document_line src/data/dictionary.c:1518
    #4 0x7ff09b8cf062 in dict_set_documents src/data/dictionary.c:1475
    #5 0x7ff09bcec536 in merge_dictionary
    #6 0x7ff09bceab32 in combine_files
    #7 0x7ff09bce9f33 in cmd_match_files
    #8 0x7ff09bbf2d63 in do_parse_command src/language/command.c:233
    #9 0x7ff09bbf2809 in cmd_parse_in_state src/language/command.c:147
    #10 0x7ff09bbf28d9 in cmd_parse src/language/command.c:162
    #11 0x5564ac75be30 in main src/ui/terminal/main.c:136
The full stack trace is attached.

**Step to reproduce**

We configured `pspp` using `CFLAGS="-g -O0 -fsanitize=address" CXXFLAGS="-g
-O0 -fsanitize=address" ./configure --prefix=$(pwd)/ --without-cairo
--without-perl-module` and built in using `make -j10`, and run it with:

./pspp -o /dev/null -O format=odt <attached file>
The input file is attached.

- OS: Ubuntu 18.04.5 LTS
- GCC version: gcc 7.5.0
- pspp version: [pspp

Thank you.


File Attachments:

Date: Thu 30 Sep 2021 08:24:00 PM UTC  Name: full_stacktrace_poc_7.zip  Size:
1KiB   By: irfanariq

Date: Thu 30 Sep 2021 08:24:00 PM UTC  Name: input_pspp_poc_7.zip  Size: 791B 
 By: irfanariq



Reply to this item at:


  Message sent via Savannah

reply via email to

[Prev in Thread] Current Thread [Next in Thread]