П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое







Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 91768 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 28155 раз(а).

Учебник HTML.
Просмотров 54669 раз(а).

Руководство по PHP5.
Просмотров 25061 раз(а).

Хостинг через призму DNS.
Просмотров 29339 раз(а).

Подборка текстов стандартных документов.
Просмотров 28110 раз(а).

Учебник PHP - Самоучитель
Просмотров 32378 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 34099 раз(а).

Внешние атаки...
Просмотров 26097 раз(а).

Учебник PHP.
Просмотров 22000 раз(а).

SSI в примерах.
Просмотров 17304 раз(а).






 
 



Будем реалистичнее

Мы использовали условие перехвата в Set-UID root утилите. Конечно, очень помогло, что программа подождала 20 секунд, чтобы мы успели тайно от нее изменить файл. В настоящем приложении условие перехвата доступно для использования только на очень короткое время. Как же мы воспользуемся им?

Обычно взломщик полагается на атаку "грубой силой", повторяя попытку сотни, тысячи или десятки тысяч раз, используя скрипты, чтобы автоматизировать процесс. Возможно повысить шансы "падения" в дыру в безопасности при помощи различных ухищирений, направленных на увеличение промежутка времени между двумя операциями, который, как неправильно полагает программа, бесконечно мал. Идея состоит в замедлении процесса, чтобы было проще использовать задержку перед модификацией файла. Есть разные способы это сделать:

  • Уменьшить приоритет атакуемого процесса насколько это возможно, запуская его с префиксом nice -n 20;
  • Увеличить загрузку системы, запуская различные процессы, занимающие процессорное время (типа while (1););
  • Ядро не позволяет отлаживать Set-UID программы, но возможно организовать псевдо-пошаговое выполнение, посылая последовательности сигналов SIGSTOP-SIGCONT, что позволяет временно блокировать процесс (вроде комбинации клавиш Ctrl-Z в оболочке) и затем при надобности возобновить выполнение.

Метод, позволяющий нам воспользоваться дырой в безопасности, основанный на условии перехвата, достаточно скучный и нудный, однако он работает! Попробуем найти наиболее эффективное решение проблемы.

Назад | Содержание | Вперед



 





Copyright © 2005-2011 Project.Net.Ru