Простой DoS для PHP
Очередная уязвимость в Zend Engine
Копался сегодня во внутренностях PHP, и обнаружил такую вещь: функция zend_hash_sort() (она вызывается из функций типа usort() и прочих) сортирует не сам массив (в терминах Zend Engine), а массив (в терминах языка C) указателей на элементы массива (в терминах Zend Engine), а потом по отсортированному C-массиву пересоздаёт PHP-массив. ZEND_API int zend_hash_sort(HashTable *ht, sort_func_t sort_func, compare_func_t compar, [...]
← Вернуться к полной версии записи «Простой DoS для PHP»…
Автор: Vladimir; опубликовано в: PHP, Безопасность; метки: crash, PHP, Zend Engine, безопасность, ошибка, уязвимостьОкт
2009
Комментарии к статье «Простой DoS для PHP» (3) »
Пожалуйста, не используйте эту форму для комментирования! Данная форма предназначена исключительно для ботов.
Оставить комментарий к записи «Простой DoS для PHP»
गते गते पारगते पारसंगते बोधि स्वाहा
Меня зовут Владимир, я программист-фрилансер, специализирующийся на Web-программировании и програмировании под Linux.
По совместительству занимаюсь администрированием LAMP/LNMP-серверов и техническим переводом.


Ого! В Zend уже отправил?
Преклоняюсь перед мастерством «просматривать» и при этом увидеть.
Оказалось, я не первый. А хотелось. Stefan Esser (он автор Suhosin) нашел эту уязвимость раньше меня.
Его доклад на Blackhat: State of the Art Post Exploitation in Hardened PHP Environments и презентация.
А вообще работа с хэш-таблицами в Zend Engine мне в своё время попортила крови, поэтому и увидел
Вообще удивительно. Я слушал подкаст ZendCast, там был доклад про развитие PHP. В том числе про поиск багов. Так вот они прогоняют массу автоматических тестов и платят большие деньги спец компаниям. Неужели не могли заметить.