Основной принцип, определяющий условие перехвата, следующий: процесс желает получить монопольный доступ к системному ресурсу. Он проверяет, что ресурс уже не используется другим процессом, и затем использует его по своему усмотрению. Условие перехвата возникает, когда другой процесс пытается использовать тот же ресурс в промежуток времени между проверкой первым процессом этого ресурса и фактическим его использованием. Побочные эффекты, возникающие при этом, могут быть различными. Классическая ситуация в теории ОС - блокировка обоих процессов. Чаще это приводит к сбою в программе или даже к дыре в безопасности, когда один процесс незаконно пользуется привилегиями другого.
Под тем, что мы ранее назвали ресурсом, может подразумеваться разное. Очень часто ситуации перехвата обнаруживаются и исправляются в самом ядре Linux при конкурентном досупе к памяти. Мы здесь будем рассматривать системные приложения и под ресурсами будем понимать узлы файловой системы. Это относится не только к обычным файлам, но и к прямому доступу к устройствам при помощи специальных точек входа из директории /dev/.
Чаще всего, атаки, направленные на нарушение безопасности системы, производятся против Set-UID приложений, так как атакующий может воспользоваться привилегиями владельца исполняемого файла. Однако, в отличие от рассмотреных ранее дыр в безопасности (переполнение буфера, строки формата, ...), условия перехвата обычно не допускают выполнения "нужного" кода. При помощи такого типа атак возможно использовать ресурсы программы, пока она выполняется. Этот тип атаки также может быть направлен и на "нормальные" программы (не Set-UID), взломщик как бы лежит в засаде на другого пользователя, главным образом на root, и ждет, когда он запустит нужное приложение, чтобы получить доступ к его ресурсам. Это, например, запись в файлы (к примеру ~/.rhost, где строка "+ +" предоставит прямой доступ с любой машины без пароля) или чтение конфеденциального файла (засекреченные комерческие данные, личная медецинская информация, файл паролей, личный ключ, ...)
В отличие от дыр в безопасности, рассмотреных в предыдущих статьях, данная проблема имеет отношение ко всем приложениям, а не только к Set-UID утилитам и системным серверам или демонам.