История изменений
Исправление Softwayer, (текущая версия) :
затёрли себе стек, упали (мы же собираем софт с канарейками? правда?)
Падение в сабже ведь происходит не из-за затирания адреса возврата (что было бы уязвимостью с вполне реалистичной перспективой исполнения произвольного кода даже при использовании всех сортов канареек — хотя они могли бы затруднить её эксплуатацию), а из-за выхода за участок виртуальной памяти, замапленный как стек, так что падение тут гарантируется тем, что непосредственно перед стеком не лежит страниц, доступных на чтение/запись.
Исходная версия Softwayer, :
затёрли себе стек, упали (мы же собираем софт с канарейками? правда?)
Падение в сабже ведь происходит не из-за затирания адреса возврата (что было бы реальной уязвимостью даже при использовании всех сортов канареек — хотя они могли бы затруднить её эксплуатацию), а из-за выхода за участок виртуальной памяти, замапленный как стек, так что падение тут гарантируется тем, что непосредственно перед стеком не лежит страниц, доступных на чтение/запись.