Краткое объяснение вилочной бомбы в GNU / Linux

Предупреждаем, что если вы из любопытства захотите попробовать то, что мы показываем ниже, это ваша ответственность.

Краткое объяснение вилочной бомбы. Что делает вилка-бомба в GNU / Linux?

: () {: |: &};:

Это тип отказа в обслуживании или DoS-атака, которая в основном заполняет доступное пространство на компьютере, хотя можно использовать вилочные бомбы на любом языке, я сосредоточусь только на колотить, по своей форме, которая кажется такой странной

Хотя это выглядит очень сложным, это просто, это простая функция, которая вызывает сама себя ... Теперь вилочный насос удобен для чтения человеком XD

: () {: |: &};:

Вот простая функция ...

function () {var1 = $ 1 echo "Функция"}

Для тех, кто умеет читать и немного программировать

бомба () {бомба | насос &}; насос

Как видите, это действительно просто, он создает функцию, которая вызывает саму себя, которая создает цикл, который не останавливается, пока не достигнет своей цели, насыщая компьютер.

В итоге…

: () {

Это функция, которая называется:

: |:

Функция вызывает сама себя с помощью рекурсии и каналов. Хуже всего, когда звонишь во второй раз ...

&

Запускает фоновую функцию, поэтому процесс не может быть завершен, пока не будут исчерпаны все ресурсы

};:

Функция завершается и вызывается снова ...

На случай, если кому-то было любопытно увидеть этот соблазнительный код, который для новичка может быть даже странным, но это не то, что небольшая логика не решает

Эта статья написана на наш форум по ВАДА, Я привожу его сюда только с небольшими правками в тексте.

Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

16 комментариев, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   элиотайм3000 сказал

    Потому что есть мужчины, которые не ищут ничего логичного, например денег. Вы не можете купить их, запугать, убедить или вести с ними переговоры. Есть мужчины, которые просто хотят смотреть, как горит мир.

    Альфред.

  2.   карликовый сказал

    На самом деле, это интересно, хотя сегодня, если они бросят в вас вилочную бомбу, ничего не произойдет, потому что есть уровни безопасности, которые вы устанавливаете, где вы ограничиваете количество процессов, которые может генерировать любая программа, только дистрибутивы, такие как Arch, Gentoo и т. Д., Не имеют этих ограничений по умолчанию и вы должны их создать.

    Это забавно, потому что мы с Тете целый день насмехаемся над этой проблемой, многие люди, которые устанавливают Arch, только устанавливают его и помещают в него среду, но забывают многие другие очень важные вещи, которые необходимо настроить (или, по крайней мере, были необходимы, правда в том, что я понятия не имею, как это сейчас), и поэтому было сказано, что это было «легко и быстро установить».

    Во всяком случае, я думаю, что было бы немного проще объяснить это с помощью бомбы на питоне, что еще более ясно.

    1.    элиотайм3000 сказал

      Фактически, эти параметры выполнения процесса обычно очень важны при установке дистрибутива GNU / Linux с минимализмом, подобным Arch и / или Gentoo.

      И, кстати, я начинаю использовать Arch только для тестирования версий программ и интерфейсов, которые только что вышли из духовки. В любом случае, эта вилка-бомба довольно интересна.

    2.    F3niX сказал

      Да, в python это намного проще понять, я оставляю их здесь, если кому-то интересно:
      импорт ОС
      пока верно:
      —-Os.fork ()

      И с рекурсией:

      импорт ОС
      def bomb ():
      —-Os.fork ()
      --бомбить()
      бомбить()

      И nano следует отметить, что в debian 7 Stable для этого тоже нет безопасности, по крайней мере, с python, система зависает мгновенно.

      Привет.

    3.    O_Pixote_O сказал

      Ну, я выполнил вилочную бомбу в Ubuntu, и компьютер мгновенно сломался

  3.   Bi0sPo1n7 сказал

    Чтобы отключить насос, процессы в терминале ограничиваются: ulimit -u 50 и насос деактивирован: p.

  4.   Модем сказал

    В любом случае, следует упомянуть, что текущие ОС ограничили количество активных процессов, это вопрос запуска вилочной бомбы на Fedora, и ничего не произойдет.

    1.    Роберто сказал

      Без сомнения, но, например, Solaris и окна (где я их тестировал) не защищены.

  5.   сэрДжуно сказал

    ПРОХЛАДНЫЙ! 🙂

  6.   mj сказал

    Сделать то же самое; но на этот раз сделать его полезным, то есть запустить в windows и получить то, что получится. Не в GNU / Linux.
    Очень любопытно, что близость к теме компьютерного саботажа, я не знаю, может ли это иметь место в случае с плеером Gnash: на сайте Vimeo он безупречно запускает видео, но на YouTube оно едва достигает разрешения 240 пикселей; В Dailymotions не воспроизводит, на мой взгляд, чего-то непонятного для меня, так как я не программист.
    Если это не будет изменено, я думаю, что для сторонников свободного программного обеспечения будет неплохой идеей публиковать наши видео, где они распространяются среди всех без какой-либо дискриминации.

    1.    элиотайм3000 сказал

      Gnash должен обратить на это внимание, но поскольку его разработка шла медленно, Mozilla решила создать свой собственный Flash-плеер на основе Javascript под названием Shumway. Я надеюсь, что Shumway скоро выйдет, и я смогу заменить имеющийся у меня Flash Player на GNU / Linux.

  7.   x11тете11x сказал

    И поскольку мы, то недостаточно сказать, как защитить себя, очень простой способ (особенно для новичков-лучников) - это ограничить количество процессов, для этого мы переходим в /etc/security/limits.conf и добавляем следующую строку:

    * хард nproc 1000

    При этом мы ограничиваем процессы этим количеством, например, я установил его на это количество (хотя вся ОС при полной загрузке намного меньше, около 200-300 процессов), и при применении вилочной бомбы моя ОС остается полностью функциональной и Ясно, что если мы ограничим количество процессов чем-то очень низким, это может привести к другим последствиям, поскольку какая-то программа захочет создавать процессы, а ОС не позволит ей, в моем случае, ограничиться 1000 процессами, это идеально

    1.    хфнкс сказал

      Я положил это на
      * soft nproc 500
      * hard nproc 1000

      Хотя Arch wiki рекомендует soft на 100 и hard на 200.

      Хотя проблем быть не должно, боюсь кинуть бомбу на тест ... xD

  8.   Мартин сказал

    Самый простой способ защитить себя - ограничить значение ulimits, чтобы можно было остановить процесс перекачки.

  9.   Видагну сказал

    Интересная статья, чтобы предотвратить это в Slackware, мы используем ulimit в файле / etc / profile.

    1.    MSX сказал

      Проблема с ограничением ulimit заключается в том, что он может ограничить ваше использование системы в зависимости от того, что вы делаете.

bool (истина)