{"id":"CVE-2025-15647","summary":"CDT before 1.4.5 Out-of-Bounds Read via opposedVertexInd","details":"CDT before 1.4.5 contains an out-of-bounds read vulnerability in the opposedVertexInd() function when constraint edge intersections are computed in floating point and round outside adjacent triangles. Attackers can supply nearly-degenerate constraint edges through geometry data to trigger an out-of-bounds array access that crashes the calling process.","modified":"2026-10-28T10:45:09.145338960Z","published":"2026-09-05T11:37:59.945Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/15xxx/CVE-2025-15647.json","cna_assigner":"VulnCheck","cwe_ids":["CWE-125"]},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/15xxx/CVE-2025-15647.json"},{"type":"ADVISORY","url":"https://github.com/artem-ogre/CDT/releases/tag/1.4.5"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2025-15647"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/cdt-before-1.4.5-out-of-bounds-read-via-opposedvertexind"},{"type":"REPORT","url":"https://github.com/artem-ogre/CDT/issues/212"},{"type":"FIX","url":"https://github.com/artem-ogre/CDT/commit/bf0d11ebfe3da0da72aed91816f665aef1b447cc"},{"type":"PACKAGE","url":"https://github.com/artem-ogre/CDT"},{"type":"ARTICLE","url":"https://github.com/artem-ogre/CDT/blob/1.4.4/CDT/include/CDTUtils.hpp#L175"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/artem-ogre/cdt","events":[{"introduced":"0"},{"fixed":"2068d015b9db3c92481e869b0c1f669b96a1d70a"},{"fixed":"bf0d11ebfe3da0da72aed91816f665aef1b447cc"}],"database_specific":{"extracted_events":[{"source":"AFFECTED_FIELD","strategy":"StandardRange","range":[{"introduced":"0"},{"fixed":"1.4.5"}]},{"range":[{"fixed":"bf0d11ebfe3da0da72aed91816f665aef1b447cc"}],"source":"REFERENCES_COMMIT"},{"range":[{"fixed":"2068d015b9db3c92481e869b0c1f669b96a1d70a"}],"source":"REFERENCES_TAG","original_tag":"1.4.5"}]}}],"versions":["1.4.4","1.4.3","1.4.2","1.4.1","1.4.0","1.3.6","1.3.5","1.3.4","1.3.3","1.3.2","1.3.1","1.3.0","1.2.0","1.2","1.1.2","1.1.1","1.1.0","1.0.1","1.0.0","0.9.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-15647.json","vanir_signatures":[{"signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/bf0d11ebfe3da0da72aed91816f665aef1b447cc","target":{"function":"insertEdgeIteration","file":"CDT/include/Triangulation.hpp"},"deprecated":false,"digest":{"length":4198,"function_hash":"257185906608021513594956769605769328315"},"id":"CVE-2025-15647-04514d4c","signature_type":"Function"},{"signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/2068d015b9db3c92481e869b0c1f669b96a1d70a","target":{"file":"CDT/tests/cdt.test.cpp"},"deprecated":false,"digest":{"line_hashes":["253843401789337736866249950690114031637","38007821291801855928126927508795044168","325814626625485553346722033341461022505","145546720321283915722955646076001189712","120942135892600790935361347750135984533","265285209433352185991100072161641824765"],"threshold":0.9},"id":"CVE-2025-15647-086e6c4b","signature_type":"Line"},{"target":{"function":"isEdgeSplitVertexValid","file":"CDT/include/Triangulation.hpp"},"deprecated":false,"digest":{"length":881,"function_hash":"187527078421929416168465892822096221260"},"id":"CVE-2025-15647-09efc168","signature_type":"Function","signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/2068d015b9db3c92481e869b0c1f669b96a1d70a"},{"target":{"file":"CDT/include/Triangulation.hpp","function":"conformToEdgeIteration"},"deprecated":false,"digest":{"length":4679,"function_hash":"82677748636913077028415525474729427209"},"id":"CVE-2025-15647-3fd4d60e","signature_type":"Function","signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/bf0d11ebfe3da0da72aed91816f665aef1b447cc"},{"signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/bf0d11ebfe3da0da72aed91816f665aef1b447cc","target":{"file":"CDT/include/Triangulation.hpp"},"deprecated":false,"digest":{"line_hashes":["34838862041693537060251625194494328666","49681363540264140545426013673285310604","201747142132157423755253048219780019976","224682822532349306315687430786815764524","154358219949943137884246364866944966964","5903345046417997696591145421140132351","217977015327665565311315862455150488352","189233994930544316022535671336946087930","252618753418277968983060064056476613190","112894435058100992012464124856868258511","157550943495241459046066326606022180454","57211331792766411861326010558495408017","283790629336735907130200211663419782638","105333738331208972215885330146039748781","12785166806480283007683254873237442791","295032491200603365992188669459103864167","124902277502200113406853371955239874979","25009936756252575472400894332459341202","104147293549090405956372458026786413877","207203535192799786487155375921619000427","229798718807576596937821818001513889237","132586437711320170361598203148967406082","299236028655800667629373339739031375669","174515201264349721100503018267663804157","259043696686262714868217220120530599062","239990183358386105416271761433572427476","169644560740415614285097670657783878901","121634672757675370442932328627584797851","101057061047240918814448947142333562930","307557512203510274005796210811403485079","152593134226486177952480700323242260545","177496632582613773331959242431686091515","110504859367926732458222469786992891192","95045708781848297883548395128025669115","225996513216676503270191308867787622130","154358219949943137884246364866944966964","202587782471643460562874683103729187849","19537663075763051896438790037786261133","336436757673427522640481391884182935702","337513376854329683197260805774218993706","264661911905720529994299298103376185768","10296363152069785852481250542490732218","50526881877098944679580471648336747099","190249113185211415730949801645792798515","189383723032538792753647715903781754208","164255629460566032261012141550847220251","295032491200603365992188669459103864167","124902277502200113406853371955239874979","25009936756252575472400894332459341202","104147293549090405956372458026786413877","207203535192799786487155375921619000427","229798718807576596937821818001513889237","43294505954271199525650676569775099310","134658938023608685299183016990827381878","41076361914160891188225448121565318494","301637390953369539556156207774988589715","26915720645326754766588930001579353382","307557512203510274005796210811403485079","161776439208737492759560754362204537198","189330932694076739696309651264733215756","294376192756410725371214579264779526919","210261144211680707210021779655818978542"],"threshold":0.9},"id":"CVE-2025-15647-615ed97c","signature_type":"Line"},{"target":{"file":"CDT/include/Triangulation.h"},"deprecated":false,"digest":{"line_hashes":["105143595807390194253818788449616621748","118068143516203830667088952618039361762","192408266456678124287826488418499066883","130843652958626076266548596929712898414","13181704771196276038857476130067855618","327156961956596489649356912771847077827","196914320800205840310840328672472849329"],"threshold":0.9},"id":"CVE-2025-15647-70b9469a","signature_type":"Line","signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/bf0d11ebfe3da0da72aed91816f665aef1b447cc"},{"digest":{"line_hashes":["142420202021066570879622520004080074399","231840131146558323798719270335605424818","317532431642335155540026802283984337650"],"threshold":0.9},"id":"CVE-2025-15647-a6ee4029","signature_type":"Line","signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/2068d015b9db3c92481e869b0c1f669b96a1d70a","target":{"file":"CDT/include/CDTUtils.h"},"deprecated":false},{"id":"CVE-2025-15647-ab2dd1cb","signature_type":"Line","signature_version":"v1","source":"https://github.com/artem-ogre/cdt/commit/2068d015b9db3c92481e869b0c1f669b96a1d70a","target":{"file":"CDT/include/Triangulation.hpp"},"deprecated":false,"digest":{"line_hashes":["272834856032517272610121571961418578275","147464765630192657708940566090517777217","8542246207458306185590508860064428923","199673502784664772009758524612373034","118276716199956375514603008374937273007","137542422739906743184364939105261055463","176101671266897218597862551168017049601","140663423794011426807316581249886092845","3905725660658415306392210361167874126"],"threshold":0.9}}],"vanir_signatures_modified":"2026-10-28T10:45:09Z"}}],"schema_version":"1.9.2","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"}]}