Канарейки предотвращают возврат в libc и ориентированный на возврат программные атаки?

Я пытаюсь понять, возможны ли и как возможны эксплойты программирования return-into-libc и return-ориентированного программирования, если используется канарейка.
Канарейка будет помещена в стек между возвращаемым значением и переполняемым буфером, и ее необходимо будет перезаписать, чтобы изменить возвращаемое значение на местоположение библиотечной функции или вычисления. Канарейки существуют с 1997 года (StackGuard), а ROP - это метод, впервые представленный в 2007 году (Shacham).

Делает ли канарейка невозможным эти типы атак?

12
задан Job 26 April 2012 в 14:22
поделиться