Every CVE Search/ Get API key

CVE-2023-50246

jq has heap-buffer-overflow vulnerability in the function decToString in decNumber.c

6.2 MediumFix available

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

0.51%Up 0.4 points since Dec 14, 2023
90%50%10%1%

What each source reports

CVE List Score used 6.2

jq has heap-buffer-overflow vulnerability in the function decToString in decNumber.c

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Record
CVE-2023-50246
CVSS 3.1
6.2 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-122, CWE-120
Updated
2026-11-02
EUVDEUVD-2023-55064 6.2

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Record
EUVD-2023-55064
CVSS 3.1
6.2 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-03
NVD 6.2

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Record
CVE-2023-50246
CVSS 3.1
6.2 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-120, CWE-122, CWE-787
Updated
2026-11-02
OSVALPINE-CVE-2023-50246 5.5

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Record
ALPINE-CVE-2023-50246
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVBELL-CVE-2023-50246 5.5
Record
BELL-CVE-2023-50246
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSV 6.2

jq has heap-buffer-overflow vulnerability in the function decToString in decNumber.c

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Record
CVE-2023-50246
CVSS 3.1
6.2 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-120, CWE-122
Updated
2026-11-02
Show 5 moreShow less
OSVDEBIAN-CVE-2023-50246 5.5

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Record
DEBIAN-CVE-2023-50246
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2023-50246 5.5

jq is a command-line JSON processor. Version 1.7 is vulnerable to heap-based buffer overflow. Version 1.7.1 contains a patch for this issue.

Record
UBUNTU-CVE-2023-50246
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS 3.1
6.2 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVopenSUSE-SU-2024:13521-1 No score

jq-1.7.1-1.1 on GA media

These are all security issues fixed in the jq-1.7.1-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:13521-1
Updated
2026-11-02
OSVSUSE-SU-2026:23873-1 No score

Security update for jq

This update for jq fixes the following issues:

Security issues fixed:

  • CVE-2015-8863: heap buffer overflow in tokenadd() function (bsc#976992).
  • CVE-2023-50246: improper memory handling can lead to a heap buffer overflow in decNumberToString (bsc#1218034).
  • CVE-2023-50268: stack-based buffer overflow in builds using decNumber (bsc#1218038).
  • CVE-2024-53427: stack-buffer-overflow in the decNumberCopy function in decNumber.c (bsc#1238078).
  • CVE-2025-9403: reachable assertion in run_jq_tests() (bsc#1248600).
  • CVE-2026-32316: denial of Service or potential arbitrary code execution due to integer overflow and heap-based buffer overflow (bsc#1262044).
  • CVE-2026-33948: CLI input parsing allows validation bypass via embedded NUL bytes (bsc#1262043).
  • CVE-2026-40164: predictable hash collisions can lead to a denial of service (bsc#1262072).
  • CVE-2026-40612: jv_contains recurses into nested arrays/objects with no depth limit and can cause a stack overflow (bsc#1265060).
  • CVE-2026-41256: embedded NUL truncates top-level jq programs loaded with -f and can lead to execution of unintended programs (bsc#1265061).
  • CVE-2026-41257: integer overflow in stack_reallocate can lead to memory corruption and DoS (bsc#1265062).
  • CVE-2026-43894: signed integer overflow in decNumber can lead to out-of-bounds memory write (bsc#1265070).
  • CVE-2026-43895: embedded NUL bytes in import paths can lead to policy bypass and sensitive information disclosure (bsc#1265071).
  • CVE-2026-43896: unbounded recursion in jv_object_merge_recursive() can lead to C stack exhaustion and a process crash (bsc#1265075).
  • CVE-2026-44777: uncontrolled recursion in ordinary module loader when two valid modules include each other can lead to stack exhaustion and process crash (bsc#1265076).
  • CVE-2026-47770: stack overflow in deep structural equality (bsc#1269221).
  • CVE-2026-49839: --rawfile invalid-state reuse after String too long can lead to a heap buffer overflow (bsc#1269220).
  • CVE-2026-54679: integer overflow in jvp_string_append can lead to a buffer overrun on 32-bit systems (bsc#1269390).

Changes for jq:

Update to version 1.7.1:

  • Make the default background color more suitable for bright backgrounds.
  • Allow passing the inline jq script after --.
  • Fix possible uninitialised value dereference if jq_init() fails
  • Simplify paths/0 and paths/1.
  • Reject U+001F in string literals.
  • Remove unused nref accumulator in block_bind_library.
  • Remove a bunch of unused variables, and useless assignments.
  • main.c: Remove unused EXIT_STATUS_EXACT option.
  • Actually use the number correctly casted from double to int as index.
  • src/builtin.c: remove unnecessary jv_copy-s in type_error/type_error2.
  • Remove undefined behavior caught by LLVM 10 UBSAN.
  • Convert decnum to binary64 (double) instead of decimal64. This makes jq behave like the JSON specification suggests and more similar to other languages.
  • Fix memory leaks on invalid input for ltrimstr/1 and rtrimstr/1.
  • Fix memory leak on failed get for setpath/2.
  • Fix nan from json parsing also for nans with payload that start with 'n'.
  • Allow carriage return characters in comments.
  • Generate links in the man page.
  • Add extern C for C++.
  • Make object key color configurable using JQ_COLORS environment variable.
  • Change the default color of null to Bright Black.
  • Respect NO_COLOR environment variable to disable color output.
  • Improved --help output. Now mentions all options and nicer order.
  • Fix multiple issues of exit code using --exit-code/-e option.
  • Add --raw-output0 for NUL (zero byte) separated output.
  • Fix assert crash and validate JSON for --jsonarg.
  • Remove deprecated --argfile option.
  • Use decimal number literals to preserve precision. Comparison operations respects precision but arithmetic operations might truncate.
  • Adds new builtin pick(stream) to emit a projection of the input object or array.
  • Adds new builtin…
Record
SUSE-SU-2026:23873-1
Updated
2026-11-02
OSVSUSE-SU-2026:4275-1 No score

Security update for jq

This update for jq fixes the following issues:

Security issues fixed:

  • CVE-2015-8863: heap buffer overflow in tokenadd() function (bsc#976992).
  • CVE-2023-50246: improper memory handling can lead to a heap buffer overflow in decNumberToString (bsc#1218034).
  • CVE-2023-50268: stack-based buffer overflow in builds using decNumber (bsc#1218038).
  • CVE-2024-53427: stack-buffer-overflow in the decNumberCopy function in decNumber.c (bsc#1238078).
  • CVE-2025-9403: reachable assertion in run_jq_tests() (bsc#1248600).
  • CVE-2026-33948: CLI input parsing allows validation bypass via embedded NUL bytes (bsc#1262043).
  • CVE-2026-40164: predictable hash collisions can lead to a denial of service (bsc#1262072).
  • CVE-2026-40612: jv_contains recurses into nested arrays/objects with no depth limit and can cause a stack overflow (bsc#1265060).
  • CVE-2026-41256: embedded NUL truncates top-level jq programs loaded with -f and can lead to execution of unintended programs (bsc#1265061).
  • CVE-2026-41257: integer overflow in stack_reallocate can lead to memory corruption and DoS (bsc#1265062).
  • CVE-2026-43894: signed integer overflow in decNumber can lead to out-of-bounds memory write (bsc#1265070).
  • CVE-2026-43895: embedded NUL bytes in import paths can lead to policy bypass and sensitive information disclosure (bsc#1265071).
  • CVE-2026-43896: unbounded recursion in jv_object_merge_recursive() can lead to C stack exhaustion and a process crash (bsc#1265075).
  • CVE-2026-44777: uncontrolled recursion in ordinary module loader when two valid modules include each other can lead to stack exhaustion and process crash (bsc#1265076).
  • CVE-2026-47770: stack overflow in deep structural equality (bsc#1269221).
  • CVE-2026-49839: --rawfile invalid-state reuse after String too long can lead to a heap buffer overflow (bsc#1269220).
  • CVE-2026-54679: integer overflow in jvp_string_append can lead to a buffer overrun on 32-bit systems (bsc#1269390).

Changes for jq:

Update to version 1.7.1:

  • Make the default background color more suitable for bright backgrounds.
  • Allow passing the inline jq script after --.
  • Fix possible uninitialised value dereference if jq_init() fails
  • Simplify paths/0 and paths/1.
  • Reject U+001F in string literals.
  • Remove unused nref accumulator in block_bind_library.
  • Remove a bunch of unused variables, and useless assignments.
  • main.c: Remove unused EXIT_STATUS_EXACT option.
  • Actually use the number correctly casted from double to int as index.
  • src/builtin.c: remove unnecessary jv_copy-s in type_error/type_error2.
  • Remove undefined behavior caught by LLVM 10 UBSAN.
  • Convert decnum to binary64 (double) instead of decimal64. This makes jq behave like the JSON specification suggests and more similar to other languages.
  • Fix memory leaks on invalid input for ltrimstr/1 and rtrimstr/1.
  • Fix memory leak on failed get for setpath/2.
  • Fix nan from json parsing also for nans with payload that start with 'n'.
  • Allow carriage return characters in comments.
  • Generate links in the man page.
  • Add extern C for C++.
  • Make object key color configurable using JQ_COLORS environment variable.
  • Change the default color of null to Bright Black.
  • Respect NO_COLOR environment variable to disable color output.
  • Improved --help output. Now mentions all options and nicer order.
  • Fix multiple issues of exit code using --exit-code/-e option.
  • Add --raw-output0 for NUL (zero byte) separated output.
  • Fix assert crash and validate JSON for --jsonarg.
  • Remove deprecated --argfile option.
  • Use decimal number literals to preserve precision. Comparison operations respects precision but arithmetic operations might truncate.
  • Adds new builtin pick(stream) to emit a projection of the input object or array.
  • Adds new builtin debug(msgs) that works like debug but applies a filter on the input before writing to stderr.
  • Adds new builtin scan($re; $flags). Was documented…
Record
SUSE-SU-2026:4275-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
jq
Alpine:v3.19
before 1.7.1-r0
1.7.1-r0
jq
Alpine:v3.22
before 1.7.1-r0
1.7.1-r0
jq
Alpine:v3.23
before 1.7.1-r0
1.7.1-r0
jq
Alpine:v3.24
before 1.7.1-r0
1.7.1-r0
jq
Alpaquita:stream
1.7-r0 up to 1.7.1-r0
1.7.1-r0
jq
Debian:13
before 1.7.1-1
1.7.1-1
jq
Debian:14
before 1.7.1-1
1.7.1-1
jq
SUSE:Linux Micro 6.0
From an advisory covering 18 CVEs
before 1.7.1-1.1
1.7.1-1.1
jq
SUSE:Linux Enterprise Micro 5.3
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Micro 5.4
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
Show 13 moreShow less
Affected packages
PackageAffectedFixed
jq
SUSE:Linux Enterprise Micro 5.5
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Module for Basesystem 15 SP7
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Server 15 SP4-LTSS
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Server 15 SP5-LTSS
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Server 15 SP6-LTSS
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Server for SAP Applications 15 SP4
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Server for SAP Applications 15 SP5
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
SUSE:Linux Enterprise Server for SAP Applications 15 SP6
From an advisory covering 17 CVEs
before 1.7.1-150000.3.25.1
1.7.1-150000.3.25.1
jq
openSUSE:Tumbleweed
From an advisory covering 2 CVEs
before 1.7.1-1.1
1.7.1-1.1

History

History
RecordedChangedSources
affected, facts
affected
aliases, publishedEUVD
first indexedCVE List, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2023-50246 is a medium vulnerability (CVSS 6.2) in Jqlang Jq, published December 13, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.51%, the 43rd percentile. Fixed in jq 1.7.1-r0.

References

Show 44 moreShow less
This page doesn't list everything

Left out here: the rest of 2 source descriptions. The JSON record has them.

MoveEnter Open