Description
Firebird is an open-source relational database management system. In versions prior to 5.0.4, 4.0.7 and 3.0.14, the ClumpletReader::getClumpletSize() function can overflow the totalLength value when parsing a Wide type clumplet, causing an infinite loop. An authenticated user with INSERT privileges on any table can exploit this via a crafted Batch Parameter Block to cause a denial of service against the server. This issue has been fixed in versions 5.0.4, 4.0.7 and 3.0.14.
Problem types
CWE-190: Integer Overflow or Wraparound
CWE-835: Loop with Unreachable Exit Condition ('Infinite Loop')
Product status
>= 4.0.0, < 4.0.7
>= 5.0.0, < 5.0.4
References
github.com/...rebird/security/advisories/GHSA-7cq5-994r-jhrf
github.com/FirebirdSQL/firebird/releases/tag/v3.0.14
github.com/FirebirdSQL/firebird/releases/tag/v4.0.7
github.com/FirebirdSQL/firebird/releases/tag/v5.0.4