TL; DRregexps áážááˇáş variable ááťáŹá¸áážááˇáşáĄááŻááşááŻááşááąá ááş áááá ááŻáážá áşáá˝ááş áážáŹáá˝áąáá˝áąáˇáážááá˛áˇááąáŹ ááááááźáąáŹááş buffer overflow (F5 áĄá ASLR ááážáááŤá RCE) áážááˇáş ááźáŻáśáá˝áąáˇááźáŽá¸ááąáŹááşá freenginx developer Maxim Dunin áááş áááşá¸áááŻáááşáááˇáşáááş áĄááťáááşáááşááźáŽáᯠááŻáśá¸ááźááşáá˛áˇááźáŽá¸ data ááąá¸ááŹá¸ááźááşá¸áááźáŻáᎠáááşá¸á product áá˝ááş variable size check ááᯠáááˇáşáá˝ááşá¸áá˛áˇáááşá áááŻáĄááťáááşáážá á Nginx ááẠᤠfeature ááᯠáá°á¸áá°áá˛áˇááźáŽá¸ á¤ááźáżááŹáážááˇáş áááşá ááşááąááąáŹ CVE áĄáá áşááťáŹá¸ááᯠáááşáážáŹá¸áá áşáááşáᯠááťážáąáŹáşáááˇáşááťááşááąá¸áá˛áˇáááşá
áĄáᯠáĄááąá¸á áááşáĄáá˝ááşááŤá
áá˝ááşá áá áááşááąáˇáá˝ááş ááźáŻááŻááşáá˛áˇáááş ááťá°á¸áá˝ááş Freenginx áážáŹ variable descriptor áážáŹ end field áá áşááŻáááˇáşááąá¸ááźáŽá¸ buffer áá˛áˇáĄááŻáśá¸áááŻáá˝ážááşááźááŤáááşá áĄáááşáááąáŹáˇ áá°áˇáá˛áˇáĄá (pos) ááᯠpointer áá áşááŻáá˛áážááá˛áˇááźáŽá¸ áááŻáĄááşáá˛áˇ length áááŻááźááŻáááşáá˝ááşááťááşáá˛áˇááźáŽá¸ (áĄááŻáááááşá¸) variable ááᯠdata áá°á¸áá°áá˛áˇáĄááťáááşáážáŹááąáŹáˇ áá˝ááşááťááşááŹá¸áá˛áˇ length á data áᏠbuffer áá˛áááŻáááşáá˝áŹá¸áááşáááŻáˇ áĄáŹáááśááááˇáşáááşáááŻáˇ áá°ááá˛áˇááźááŤáááşá ááśáááąáŹááşá¸á á˝áŹáá˛á ááŤá áááá ááŻáážá áş ááąááážáŹ áĄááťááŻá¸ááťááŻá¸ááąáŹ áá˝á˛áážáŹá¸áážáŻáá˝áąááźáąáŹááˇáş áážá áşááźáááşáážáŹá¸áá˝ááşá¸ááąáááşáááŻáᏠáááşááąááźáá˛áˇááźáŽá¸ááźá áşááŤáááşáá (linux.org.ru), á (linux.org.ru)), á buffer overflows áá˛áˇ ááźáąáŹááşá ááŹááąáŹááşá¸áá˛áˇ áĄááťááŻá¸áááşáá˝áąááᯠááźá áşááąáŤáşá áąáá˛áˇááŤáááşá áĄááŻáááŻáááş variable áá˛áˇ buffer ááᯠáááşááŽá¸áááŻááşáá˛áˇáĄááŤá áááşá¸áá˛áˇ áĄááŻáśá¸ááᯠpointer áááşá¸ ááźááˇáşáá˝áŹá¸ááźáŽá¸á variable áá˛ááᯠdata áá˝áą áááąá¸áááşáážáŹá data ááááŻááşááŽáá°á¸áááŻáááşá request processing áᏠââááááşá¸ááťáŻááşááŹá¸áá˛áˇ áááşá¸áááşá¸áá˛áˇ error áá áşááŻáá˛áˇ áĄááŻáśá¸áááşáá˝áŹá¸ááŤááááˇáşáááşá áááŻáááŻááŹá length calculation error áá˝áąá áááşáážáááąáááŻááşááąáááˇáş memory ááᯠáááźáŻááşá¸ááŽá¸ááŤáá°á¸á áááşáážááşááŹá¸áá˛áˇ HTTP request áááŻáᲠfail ááŻááşáážáŹááŤá áĄáąáŹááşá፠commits (á (freenginx.org), á (freenginx.org)) áĄááŹá¸áá°ááŹáá˝ááşáážáŻááᯠaccess logging code áĄááŤáĄáááş code á áĄááźáŹá¸áĄá áááşáĄáááŻááşá¸ááťáŹá¸áá˝ááş áááˇáşáá˝ááşá¸ááŹá¸áááşá áá°áááŻááşá á áááşááąáˇáá˝ááş ááŹá¸áážááşá¸áá áşááŻááᯠááŻááşááąáá˛áˇáááşá Freenginx á.áá.áá á¤ááźááşáááşááťááşááŤáááşáááşá
áá°áááŻááşá áá áááşááąáˇáá˝áẠᤠcommit ááťáŹá¸ááᯠnginx ááž ááąáŹááşáá°áá˛áˇáááş (á (github.com), á (github.com), á (github.com)á áá˝ááşá¸áááşáá˝ááş ááŻááááážááˇáş ááááááᯠáá˛áážááşááźááşá¸áĄááźáąáŹááşá¸ áá áşá áŻáśáá áşááŹááźáąáŹááˇáş)á ááźáżááŹááᯠáááşáážááşáá˛áˇáááş CVE-2026-42533áážááˇáş F5 áááş áááŹá¸áááşááŻááşááźááşáá˛áˇáááş ááąáŹááşáĄáŹáááá (f5.com).
ááŽáá áşá፠ááŽá¸ááźáŹá¸áĄáŹá¸áááşá¸ááťááşáá˛áˇ áááşáááşááźáŽá¸- ááŻááşáá°ááŹá¸áá˛áˇ parameter áá˝áąááŤáá˛áˇ regexps ááŤáá˛áˇ map directive áááŻááŻáśá¸áá˛áˇáĄá፠ááąáŤáşááŹááŤáááşá trigger ááŻááşáááŻáˇ áááŻáĄááşáá˛áˇ áááźáŹá¸áĄááźáąáĄááąáá˝áąáá˛áˇ áááşáááşááźáŽá¸á commit description áá˛á text áá˛áˇ SA áá˛á text á áĄáááşá¸áááşáá˝áŹááźáŹá¸ááŤáááş- SA áážáŹ áááşáážááşááŹá¸áá˛áˇ string áá áşááŻááᯠááąáŹááşáážáŹ áá˝ááşááťááşááááşáááŻáˇ ááąáŹáşááźááŹá¸ááŤáááşá áĄá˛áᎠmap áá˛áˇ ááááşááááŻááşáááşáážáŹ map áááą ááťááşááąáá˛áˇ extracted parameter ááᯠáĄááŻáśá¸ááźáŻááŤáááşá áĽáááŹáážáŹ commit description áážáŹá ááŽáĄáááˇáşáá˝áąááźáŹá¸áážáŹá extracted parameter ááŤáá˛áˇ variable áááŻáááşá¸ zero out ááŻááşááŹá¸ááŤáááşá ááŤááąáááˇáş ááŽáááŻááźá áşááŹá running nginx áĄááťáŹá¸á áŻáážáŹ ááźá áşáááŻááşááźáąáááşá¸ááźáŽá¸ ááŤááźáąáŹááˇáş áĄáŹá¸áááşá¸ááťááşá áá°áĄáááşá¸áááşáááŻáᲠáááááŻááşáá˛áˇááŤáááşá ááŽááá ášá áĄáá˝ááş length calculation áĄáá˝ááş fix áá áşááŻáᏠcommitted edits áá˝áąáážáŹ áááŤáážááá°á¸áááŻááŹáááŻáááşá¸ áááááźáŻáááˇáşááŤáááş (ááŤáážáááŻááş ááťá˝ááşááąáŹáş ááąáŹááşá¸ááąáŹááşá¸áážáŹáá˝áąáááááŻáˇááŹá¸?)á ááźáżááŹááᯠcontrolled HTTP request fail áĄááźá áş ááźáąáŹááşá¸áá˛ááąá¸áá˛áˇ protection áá áşááŻáᲠáážáááŤáááşá áá°áááŻááşá áá áááşááąáˇáážáŹ freenginx áážáŹ fix áĄááťááŻáˇááᯠáááˇáşáá˝ááşá¸áá˛áˇááąáááˇáş (5bfb, 7622, b906) áĄááŹá¸áá°áĄááźáąáĄááąáĄáá˝ááş áĄáážááşááᯠáá˝ááşááťááşááąááąáŹáşáááşá¸ á¤áááŻáˇááŻááşáááŻááşááᯠááťááşááťááşá¸áážááşá¸áááşá¸á á˝áŹááááááąá¸ááŤá
áĄáááŻá፠áĄáŹá¸áááşá¸ááťááşáááş nginx 0.9.6 ááŹá¸áážááşá¸áá˝ááş ááąáŤáşááąáŤááşáá˛áˇááźáŽá¸á freenginx 1.31.3á nginx 1.30.4á nginx 1.31.3 ááŹá¸áážááşá¸ááťáŹá¸áá˝ááş ááźááşáááşáážáŻááťáŹá¸ áááˇáşáá˝ááşá¸ááŹá¸ááŤáááşá
nginx SA ááž áĄáŹá¸áááşá¸ááťááşááᯠáá˝ááşáááşá á˝áŹ áĄá áŽáááşááśááźááşá¸áážááˇáş "áážááážááŻááşá¸ááŻááşááąáŹáşáážáŻá áśáážáŻááşá¸ááťáŹá¸" ááᯠáááŻááşááŹááźááşá¸áĄáá˝ááş áá°ááŻáášáááŻááşáĄááťáŹá¸áĄááźáŹá¸ááᯠááťáąá¸áá°á¸áááşáážáááŤáááşá
F5 áááş AntAISecurityLab ááž Ming Xuaná DKD (@pidifn)á Ji'an Zhou áážááˇáş Zhen Yaná EVO.company ááž Rafael Gaceká Sergii Negodiuká Calif.io ááž Lam Jun Rongá Winfunc Research (winfunc.com) ááž Mufeed VHá Vexera AI ( áááŻáˇááᯠáĄáááĄáážááşááźáŻáááş )https://vexera.ai), Tu Tran Dinh (@1w4y), Stan Shaw (cyberstan), qianshuidewajueji, zenneth (randomguy6407), depthfirst ááž Zhenpeng (Leo) Lin, Lukas Johannes Moeller, Vodafone TĂźrkiye ááž Melih Tolga Sahin, Ayoub Nabil Boubagrat (GitHub: @ayoubnabil), áážááˇáş Milan Jovic (Kljunowsky) áááŻáˇáĄáŹá¸ á¤ááźáżááŹááᯠááťá˝ááşáŻááşáááŻáˇááś áá˝ááşáááşá á˝áŹ áááşááźáá˛áˇááźááşá¸áážááˇáş ááąáŤááşá¸á ááşáážááážááŻááşá¸ááŹá¸ááąáŹ ááŻááşááąáŹáşáážáŻáááŻááşáᏠáĄááźááˇáşááŻáśá¸á áśáážáŻááşá¸ááťáŹá¸ááᯠáááŻááşááŹáá˛áˇááźááşá¸áĄáá˝ááş ááťáąá¸áá°á¸áááşáážáááŤáááşá
freenginx áážáŹ ááźááşáááşááťááşáá˛áˇ áááşáááşáá˛áˇ áá°á¸áá˝á˛á፠áĄááťááşáĄáááşáá˝áąáᏠcommit message áážáŹáᲠáááˇáşáááşááŹá¸ááŤáááşá áĄááźáąáŹááşá¸áĄáá˛ááŽááźááşáááşááťááşááᯠ"ááŻáśááźáŻáśááąá¸" ááŤáážáááŻááş "ááťááŻáˇáá˝ááşá¸ááťááşááźááşáááşáážáŻ" áááŻáˇááąáŹááş áááąáŹáşááźááŹá¸ááŤáá°á¸á "áĄááşášááŤáááş" áááŻáˇáᲠááąáŹáşááźááŹá¸ááŤáááşá á áŹááąá¸áá°á ááŽááźáżááŹááᯠáĄááąá¸ááźáŽá¸áááşáááŻáˇ ááá°ááá˛áˇááŻáśáááŤáááşá F5 áážáŹ áĄáááşááąáŹáşááźááŤááŻáášáááŻááşáá˝áą áááşááźáá˛áˇáá˛áˇ ááźáżááŹáá˝áąáá˛áˇ freenginx áááą áá°á¸áá°ááŹá¸áá˛áˇ commit ááźáŹá¸á áááşáá˝ááşáážáŻááᯠááŻáśá¸ááźááşáááŻáˇ áááźá áşáááŻááşááááŻá áá°áááŻáˇ (ááŤáážáááŻááş áááźáŹá¸áááşáá°ááááŻ) á ááŽááźáżááŹááᯠfreenginx á áŹááąá¸áá°áᎠáááşááźáá˛áˇááŹá¸áááŻááŹáááşá¸ ááŻáśá¸ááźááşáááŻáˇ áááźá áşáááŻááşááŤáá°á¸á
source: linux.org.ru
