3

Что делает эта команда оболочки в Linux

:(){ :|: & };:

Как его можно использовать при атаках типа «отказ в обслуживании»?

1 ответ1

5

Это вилочная бомба. На самом деле я написал это на своей доске (в шутку), когда говорю. Не запускай это.

:()         # define a function named :, () defines a function in bash
{           
    : | :;  # the pipe needs two instances of this function, which forks two shells
}
;           # end function definition
:           # run it

Таким образом, первый запуск создает 2 подоболочки, а затем каждый запускает еще 2 подоболочки ...

: встроенная команда в bash. Это своего рода "нулевая" команда no-op. Раньше это был символ комментария, до того как появился символ комментария. Теперь, он малопригоден в качестве неактивного, но на самом деле используется здесь, потому что он более загадочный, вы смотрите :() и думаете, что это WTH?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .