bug-cflow
[Top][All Lists]
Advanced

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

negative size parameter detected in _argp_fmtstream_update


From: Youngseok Choi
Subject: negative size parameter detected in _argp_fmtstream_update
Date: Wed, 08 Mar 2023 14:44:34 +0900 (KST)

Hello, cflow developers.

During a fuzzing experiment, we detected a negative size parameter.
The command for this is quite messy, so I wonder if this is valid bug report.

Command to Reproduce
Please refer the uploaded POC shell script.

Stack Trace
==5364==ERROR: AddressSanitizer: negative-size-param: (size=-4)
    #0 0x7fd8e2cd71a0 in __interceptor_memmove (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x7b1a0)
    #1 0x55f1884c9703 in _argp_fmtstream_update (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x59703)
    #2 0x55f1884ca344 in argp_fmtstream_set_lmargin (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x5a344)
    #3 0x55f1884b8727 in _help (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x48727)
    #4 0x55f1884b8d73 in argp_state_help (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x48d73)
    #5 0x55f18848f7ae in cflow_help (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x1f7ae)
    #6 0x55f18848fe97 in parse_opt (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x1fe97)
    #7 0x55f1884b9e84 in group_parse (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x49e84)
    #8 0x55f1884bcd01 in parser_parse_opt (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x4cd01)
    #9 0x55f1884bd8db in parser_parse_next (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x4d8db)
    #10 0x55f1884bddfd in argp_parse (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x4ddfd)
    #11 0x55f1884904fa in main (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x204fa)
    #12 0x7fd8e288cc86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)
    #13 0x55f188480699 in _start (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x10699)

0x611000000328 is located 104 bytes inside of 200-byte region [0x6110000002c0,0x611000000388)
allocated by thread T0 here:
    #0 0x7fd8e2d3ab40 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb40)
    #1 0x55f1884c8520 in argp_make_fmtstream (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x58520)
    #2 0x55f1884b84a7 in _help (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x484a7)
    #3 0x55f1884b8d73 in argp_state_help (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x48d73)
    #4 0x55f18848f7ae in cflow_help (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x1f7ae)
    #5 0x55f18848fe97 in parse_opt (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x1fe97)
    #6 0x55f1884b9e84 in group_parse (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x49e84)
    #7 0x55f1884bcd01 in parser_parse_opt (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x4cd01)
    #8 0x55f1884bd8db in parser_parse_next (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x4d8db)
    #9 0x55f1884bddfd in argp_parse (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x4ddfd)
    #10 0x55f1884904fa in main (/home/youngseok/power_exp/crash_analysis/final_subjects_asan/cflow-1.7/src/cflow+0x204fa)
    #11 0x7fd8e288cc86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)


Environment
- OS: Ubuntu 18.04.1
- gcc 7.5.0
- cflow: 1.7

Note that we configured cflow with address sanitizer.
CFLAGS="-fsanitize=address" ./configure
make -j

Many Thanks,
Youngseok Choi

Attachment: poc.zip
Description: Zip archive


reply via email to

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