{"id":"CVE-2019-3552","details":"C++ Facebook Thrift servers (using cpp2) would not error upon receiving messages with containers of fields of unknown type. As a result, malicious clients could send short messages which would take a long time for the server to parse, potentially leading to denial of service. This issue affects Facebook Thrift prior to v2019.02.18.00.","modified":"2026-04-11T16:44:47.315542Z","published":"2019-05-06T16:29:00.913Z","related":["CGA-5x58-mr52-wxwv"],"references":[{"type":"WEB","url":"http://www.securityfocus.com/bid/108279"},{"type":"WEB","url":"https://lists.apache.org/thread.html/rd0e44e8ef71eeaaa3cf3d1b8b41eb25894372e2995ec908ce7624d26%40%3Ccommits.pulsar.apache.org%3E"},{"type":"FIX","url":"https://github.com/facebook/fbthrift/commit/c5d6e07588cd03061bc54d451a7fa6e84883d62b"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/facebook/fbthrift","events":[{"introduced":"0"},{"fixed":"433b732adba9ce8db7cd64b01c495271002ba06f"},{"fixed":"c5d6e07588cd03061bc54d451a7fa6e84883d62b"}],"database_specific":{"cpe":"cpe:2.3:a:facebook:thrift:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0"},{"fixed":"2019.02.18.00"}],"source":["CPE_FIELD","REFERENCES"]}}],"versions":["0.19.0","v0.20.0","v0.24.0","v0.25.0","v0.26.0","v0.27.0","v0.28.0","v0.29.0","v0.30.0","v0.31.0","v2016.09.26.00","v2016.10.03.00","v2016.10.10.00","v2016.10.17.00","v2016.10.24.00","v2016.10.31.00","v2016.11.07.00","v2016.11.14.00","v2016.11.21.00","v2016.11.28.00","v2016.12.05.00","v2016.12.12.00","v2016.12.19.00","v2016.12.26.00","v2017.01.02.00","v2017.01.09.00","v2017.01.16.00","v2017.01.23.00","v2017.01.30.00","v2017.03.06.00","v2017.03.13.00","v2017.03.20.00","v2017.03.27.00","v2017.04.03.00","v2017.04.10.00","v2017.04.17.00","v2017.04.24.00","v2017.05.01.00","v2017.05.08.00","v2017.05.15.00","v2017.05.22.00","v2017.05.29.00","v2017.06.05.00","v2017.06.12.00","v2017.06.19.00","v2017.06.26.00","v2017.07.03.00","v2017.07.10.00","v2017.07.17.00","v2017.07.24.00","v2017.07.31.00","v2017.08.07.00","v2017.08.14.00","v2017.08.21.00","v2017.08.28.00","v2017.09.04.00","v2017.09.11.00","v2017.09.18.00","v2017.09.25.00","v2017.10.02.00","v2017.10.09.00","v2017.10.16.00","v2017.10.23.00","v2017.10.30.00","v2017.11.06.00","v2017.11.13.00","v2017.11.20.00","v2017.11.27.00","v2017.12.04.00","v2017.12.11.00","v2017.12.18.00","v2017.12.25.00","v2018.01.01.00","v2018.01.08.00","v2018.01.15.00","v2018.01.22.00","v2018.01.29.00","v2018.02.05.00","v2018.02.12.00","v2018.02.19.00","v2018.02.26.00","v2018.03.05.00","v2018.03.12.00","v2018.03.19.00","v2018.03.26.00","v2018.04.02.00","v2018.04.09.00","v2018.04.16.00","v2018.04.23.00","v2018.04.30.00","v2018.05.07.00","v2018.05.14.00","v2018.05.21.00","v2018.05.28.00","v2018.06.04.00","v2018.06.11.00","v2018.06.18.00","v2018.06.25.00","v2018.07.02.00","v2018.07.09.00","v2018.07.16.00","v2018.07.23.00","v2018.07.30.00","v2018.08.06.00","v2018.08.13.00","v2018.08.20.00","v2018.08.27.00","v2018.09.03.00","v2018.09.10.00","v2018.09.17.00","v2018.09.24.00","v2018.10.01.00","v2018.10.08.00","v2018.10.15.00","v2018.10.22.00","v2018.10.29.00","v2018.11.05.00","v2018.11.12.00","v2018.11.19.00","v2018.11.26.00","v2018.12.03.00","v2018.12.10.00","v2018.12.17.00","v2018.12.24.00","v2018.12.31.00","v2019.01.07.00","v2019.01.14.00","v2019.01.21.00","v2019.01.28.00","v2019.02.04.00","v2019.02.11.00"],"database_specific":{"vanir_signatures_modified":"2026-04-11T16:44:47Z","source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2019-3552.json","vanir_signatures":[{"target":{"file":"thrift/lib/cpp/protocol/TProtocolException.h"},"signature_type":"Line","digest":{"line_hashes":["278593444718738070554543196490561276040","204734026061635927655726887399567295254","12370534160162301440906767654709799220","146977540439514642029913662220184123452","86842992188665077072805319440272143149","246322820436407716169360419527390195348"],"threshold":0.9},"signature_version":"v1","id":"CVE-2019-3552-14c32732","source":"https://github.com/facebook/fbthrift/commit/c5d6e07588cd03061bc54d451a7fa6e84883d62b","deprecated":false},{"target":{"file":"thrift/lib/cpp2/protocol/Protocol.h"},"signature_type":"Line","digest":{"line_hashes":["267615956366593519388399591705687922605","105982571177437128035143825524483627146","242625754289516146990194542007142478835","160020008059690563591958197135476017124","65319898528353294866743472947038835444"],"threshold":0.9},"signature_version":"v1","id":"CVE-2019-3552-2019bb19","source":"https://github.com/facebook/fbthrift/commit/c5d6e07588cd03061bc54d451a7fa6e84883d62b","deprecated":false},{"target":{"function":"t_hack_generator::type_to_param_typehint","file":"thrift/compiler/generate/t_hack_generator.cc"},"signature_type":"Function","digest":{"length":585,"function_hash":"216842094626573990507051422565550668259"},"signature_version":"v1","id":"CVE-2019-3552-4134160d","source":"https://github.com/facebook/fbthrift/commit/433b732adba9ce8db7cd64b01c495271002ba06f","deprecated":false},{"target":{"file":"thrift/lib/cpp/protocol/TProtocolException.cpp"},"signature_type":"Line","digest":{"line_hashes":["264730349614043854197385455980602359218","334756533556700803530377440701523254434"],"threshold":0.9},"signature_version":"v1","id":"CVE-2019-3552-8fa5ce92","source":"https://github.com/facebook/fbthrift/commit/c5d6e07588cd03061bc54d451a7fa6e84883d62b","deprecated":false},{"target":{"function":"t_hack_generator::type_to_typehint","file":"thrift/compiler/generate/t_hack_generator.cc"},"signature_type":"Function","digest":{"length":2281,"function_hash":"197888928298983885366442610600628710346"},"signature_version":"v1","id":"CVE-2019-3552-9a062f92","source":"https://github.com/facebook/fbthrift/commit/433b732adba9ce8db7cd64b01c495271002ba06f","deprecated":false},{"target":{"file":"thrift/compiler/generate/t_hack_generator.cc"},"signature_type":"Line","digest":{"line_hashes":["324301524785281624231366843845501990280","128329591616004399040457744015775916612","281668891185894703881801463661644054080","203078918123025707019460412116542234746","88695773319972285837214664855552628441","156483785876910193786400442072721352838","3798530120885689319046174938677289772","77448459095649978277037256860775797984","39285913495425008968902640165605354340","73473636617084049852058740788414938998","82434271507228947428891917738385862052","186170440374842563273230932661174492615","231771829068641888749123744585215892241","129209901293444531404394450136205003934","109281654741195337390925154696473811454","260515313050196230472326067748508782711","222601301921290259618800327818671975260"],"threshold":0.9},"signature_version":"v1","id":"CVE-2019-3552-e0ee52d0","source":"https://github.com/facebook/fbthrift/commit/433b732adba9ce8db7cd64b01c495271002ba06f","deprecated":false},{"target":{"function":"skip","file":"thrift/lib/cpp2/protocol/Protocol.h"},"signature_type":"Function","digest":{"length":1748,"function_hash":"326656754445498303275415015925103287029"},"signature_version":"v1","id":"CVE-2019-3552-ef821be0","source":"https://github.com/facebook/fbthrift/commit/c5d6e07588cd03061bc54d451a7fa6e84883d62b","deprecated":false}]}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}