Защита от дурака

Материал из Posmotreli
Перейти к навигации Перейти к поиску
Склифосовский.pngКороче, Склихосовский!
Техника не дает дураку себя убить (в обоих смыслах).
« На любую защиту от дурака рано или поздно найдётся изобретательный дурак. »
— Парадигма американских военных инженеров

(link)

Поверьте, инженеры знают, что говорят

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

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

Для примера: бензопила предназначена, чтобы пилить, и хотя ее основная функция - пилить дерево, конструкционно сложно и заблокировать в ней возможность пилить людей. Это обычная функция, пила, которая может пилить дерево, наверняка может пилить и людей. Даже если оснастить её суперсовременным аварийным тормозом (который определяет сопротивление распиливаемого материала, и мгновенно тормозит пилу, если оное близко к сопротивлению человеческого тела), тот, кто целенаправленно собирается распилить человека, скорее всего попытается купить пилу без такой функции или разобраться, как обойти или убрать эту деталь, не говоря уже о том, что это сделает пилу вдвое дороже, и пострадает от этого в первую очередь тот, кто просто собирался использовать инструмент по назначению. В общем, защитить от вредительства проще и эффективнее организационно.

Гораздо хуже обстоят дела не со злонамеренными, а с безусловно неправильными способами использования. По многим причинам. Прежде всего, как вообще находить такого рода недокументированные возможности, особенно у достаточно сложной техники? Запустите в комнату с бензопилой обезьяну, и через пару часов там будет сломанная бензопила или/и ошметки. Посмотрите запись того, как ей это удалось, заблокируйте эту возможность в конструкции, запустите в комнату с модифицированной бензопилой новую обезьяну. Что будет через какое-то время? Велика вероятность, что также сломанная бензопила или/и останки. Дурак по своей природе изворотлив, и способен придумать то, что наверняка не пришло бы в голову разработчику (у которого оказалось недостаточно фантазии или есть хоть чуть-чуть здравомыслия).

Так исторически сложилось. Еще до промышленной революции проблема дураков и техники решалась последней в свою пользу — техника бесцеремонно убивала того, кто использовал её неправильно. Но, чем сложнее становится техника, тем сложнее и такого рода «прецедентная» разработка — не так-то много людей, готовых во имя великой цели себя убить. Поэтому работающая защита от дурака, зачастую там где неверное использование опасно в первую очередь для техники — там, где тестировщик может себе позволить многократно делать с объектом всё, что придет в голову без угрозы для себя. Относительно хорошо обстоят в этом плане дела с программным обеспечением. Во многих случаях дурак достаточно изворотлив и периодически находит способы обойти защиту от себя.

Примеры[править]

Техника[править]

  • Форма всего, что, в теории, могут собирать из частей неспециалисты. USB-порты[1], зарядные устройства чего угодно, компьютерные платы, розетки, сменные насадки инструментов — все это целенаправленно делается так, чтобы соединить детали неправильно было невозможно. Персонажи с билдом в силу с достойным лучшего применения упорством взламывают такую защиту. Надо заметить, что часто система еще и продублирована диодом, пропускающим ток только в правильном направлении.
  • Удержание дурака подальше от представляющих угрозу деталей. Сверлильный станок, который работает, только если нажать обе кнопки — из этой оперы. В больших промышленных агрегатах — дурака стараются еще и отодвинуть от устройства, устанавливая пульт в паре метров от опасных частей, да еще и часто требуют не просто нажатия двух кнопок, а одновременного нажатия двух кнопок. Чтобы не получилось зажать одну кнопку спичкой — прецеденты были.
  • На станках с опасными потрохами ставят дверцы и шторки с концевым выключателями, не дающие запустить или останавливающие станок при их открывании. Изобретательные дураки подкладывают под концевики подручные предметы, имитирующие закрытую дверцу.
  • Болты с нестандартной головкой и заклепки. Позволяют серьезно усложнить жизнь дураку. Увы, не работают против изобретательного дурака.

Оружие[править]

  • «Ядерный чемоданчик», который приводится в действие минимум двумя ключами — один у президента, второй у министра обороны. Мало ли что.
    • На случай если оба окажутся дураками, продублировано на постах исполнителей — нажатие на «красную кнопку» (в виде ещё одной пары ключей и набора кучи кодов) происходит только при единогласном решении ответственных офицеров. Если хоть один против — кнопка не нажимается. Так что запустить ядерный армагеддон, кинув валенок на пульт, не получится даже у законченного дебила. Но, как на самом деле устроена защита от дурака на ядерных объектах в наше время — информация секретная. Стоит только упомянуть, что благодаря ей в свое время война не состоялась — на одной советской подлодке обнаружился спаситель мира, отказавшийся жать кнопку, а на одной американской базе обнаружился капитан-стальные-яйца, не поддавшийся панике и решивший дождаться объяснений, какого черта сработала тревога. Именно по этой причине главный элемент безопасности мира — не автоматика, а люди, и пока на кнопку нажимают люди — мир… возможно будет спать спокойно.
    • При этом, во время Холодной войны, на многих американских баллистических ракетах код запуска был «00000000». А что? Вдруг забудут пароль во время тревоги.
  • Реактивные гранаты — современные образцы встают на боевой взвод только в полете, отлетев на безопасное расстояние от стрелка. Явление совсем молодо — до эры компьютерных игр не было идиотов, пытающихся совершить рокет-джамп.
    • На самом деле это страхует от случайного выстрела, если гранатомет неудачно упадет или стрелка убьют и он падая нажмет на спуск. Одному человеку в лицо попала граната из подствольника. Остался калекой.
    • Предохранительные механизмы, ставящие снаряд на боевой взвод при выстреле, были ещё в артиллерийских снарядах ещё времён Первой Мировой — мало ли какой косорукий солдат уронит снаряд с установленным взрывателем при заряжании.
  • Переключатель режимов огня и по совместительству предохранитель на автомате Калашникова. Критикуется очень многими, мол, почему это самое нижнее положения переключателя — одиночный огонь? Всё просто: АК в конце 40-50х годов (т. е. для массовой призывной армии) создавался для реальной войны. А на реальной войне даже опытному бойцу, попав под обстрел, тяжело сохранить хладнокровие и четкость движений — рука быстро спускает предохранитель до упора и боец соответственно стреляет одиночными, а не выпускает в молоко всю обойму из-за паники. Но в мирных реалиях уютных безопасных стрельбищ, особенно для придирчивых западных пользователей сиё решение кажется весьма странным и неудобным.
    • Это популярное заблуждение. На самом деле, подобное расположение позиций продиктовано конструкцией УСМ, чтобы их поменять местами, пришлось бы увеличивать количество деталей, а следовательно, трудоёмкость, стоимость, сложность обслуживания и склонность к поломкам. Другое дело, что военным решение «продали» именно под таким соусом.

Программное обеспечение[править]

  • ПО славится тем, что защиту часто пихают не к месту, и от нее в лучшем случае нет ровным счетом никакой пользы, а то и вовсе начинает раздражать:
    • В серверной версии «самой известной» операционной системы для того чтобы войти на сайт компании-производителя этой самой операционной системы нужно сделать около десятка кликов мышью по всяким «Ок», «Осознаю всю опасность», «Готов к потенциальным рискам».
    • Многократное подтверждение операций в GUI. Малоэффективно ввиду быстрого привыкания — после длинной последовательности подтверждений Enter нажимается раньше, чем мозг успевает осознать, что результат недельной работы отправляется в никуда.
    • Вы действительно хотите безвозвратно удалить «Новый текстовый документ» весом 0 байт, который создали секунду назад?
      • А это не для вашей безопасности, это мы себе задницу прикрываем. А то вдруг нас обвинят в случайном, но безвозвратном уничтожении незаменимого документа или массива данных? А так — у нас железный ответ: сам пять раз подтвердил, так что гуляй лесом.
  • В некоторых операционных системах пользователя упорно пытаются оградить от структуры папок, при простейшей работе не проблема и даже некое подобие удобства, но при нестандартных ситуациях с поиском/спасением/восстановлением жизнь осложнять может.
  • Введение всех важных переменных по два раза с расчетом на то, что дважды ошибиться не получится даже случайно. (Но многие всё равно как-то ухитряются.)
    • Было бы что ухитряться. Попыток за двести дурак гарантированно или ошибётся дважды подряд одинаково, или найдёт способ скопировать криво введенное значение через буфер. Вводить же правильно попытке на шестой перестанет вообще.
  • Полное запрещение нежелательных действий. Тот самый наиболее удачный пример явления, который пока есть только в сфере программного обеспечения. Вместо того, чтобы думать, что же еще дураку делать нельзя, администратор может сформировать жестко ограниченный список того, что пользователю делать можно.
  • Как известно, многие начинающие линуксятники сталкиваются с «советом», как решить любую проблему с Линукс, после выполнения которой удаляются все файлы, включая саму систему[2][3]. Ввиду этого были разработаны аж две системы защиты: команда не выполняется, если не указан параметр --no-preserve-root, либо при выполнении команды пользователем без права root система сообщает, что удаление не разрешено.
    • Добавлять саму команду не нужно.
      • (Легко гуглится по ключевым словам «патч Брамина» или «код из одной строчки в Perl». Не благодарите.)
  • В Word’е по умолчанию отключён режим замены. До этого, помнится, было много драм из-за случайно нажатой кнопки Insert.
  • Моддеры Rome: Total War и Medieval 2: Total War уже пятнадцать лет проклинают файл map.rwm, созданный, видимо, для того, чтобы какой-нибудь юзер, открывший и случайно испортивший tga-файлы карт, не запорол всю игру. После каждого изменения (даже корректировки границ провинций) map.rwm надо удалять, и при каждом запуске карты он генерируется снова (тут от него есть одна польза — самые лютые баги с картой вычисляются по отсутствию map.rwm после запуска кампаний). А теперь представьте, что вы делаете карту на 100 провинций…

Прочее[править]

  • Продукты. Срок годности пишут с двойным запасом, а определяют по сроку, по истечению которого можно обнаружить хоть какие-то изменения.
    • В частности армейский тушняк, срок годности которого устанавливают с учетом того, что он может лежать на полевом складе в палатке под палящим афганским солнцем.
  • Ветеринарно-фармацевтический продукт, предназначенный для хранения в холодильнике, при испытаниях хранимости параллельно проверяют при комнатной температуре и плюс сорока. И даже это может не помочь, если клиент-фермер в жаркой местности «сообразит» везти емкость летом кинутой под лобовое или заднее стекло машины и оставлять так на стоянке.

В фольклоре[править]

Обыграно в одной из «растаманских сказок» Дмитрия Гайдука: учёные просадили выделенные им государством деньги, а чтобы хоть как-то отчитаться, украсили холодильник мигающими лампочками и выдали его генералу в качестве машины судного дня («…эта штука пережигает квантовую суперструну, на которой держится наша вселенная, и уничтожает вообще всё»). Генерал совершил короткий переворот, на время сместив президента («Ты мне потом сам спасибо скажешь»), и попытался угрожать этой штукой ООН. Был высмеян, психанул и решил запустить агрегат. Лампочки замигали, завыла сирена, и голос из громкоговорителя начал отсчёт: «Десять… Одиннадцать… Двенадцать…» Когда до собравшихся дошло, что взрываться ничего не собирается, генерала повязали. Спросили у учёных — те ответили, мол, разумеется, там же защита от дурака есть: этот рубильник вообще ни на что не влияет, а включается она изнутри.

Когда даже она не помогает[править]

  • Вышеупомянутые производственные хитрости. С одной стороны, правила техники безопасности действительно замедляют производственный процесс, с другой — не зря говорят, что они писаны кровью: если их нарушение входит в привычку, случайный фактор может стать фатальным (на производстве, где проходил практику автор правки, рассказывали о рабочем, который наловчился совать руки в не до конца остановившийся токарный станок, чтобы побыстрее поменять резец — фатальной стала выдача нового комплекта рабочей одежды, у которого рукав были немного просторнее, чем у старого, отчего его и намотало на заготовку).
  • Те самые админы, работающие с крайне дуракозащищёнными системами, расскажут вам о «мистических» поломках, когда пользователи, которым и можно-то только запускать Word и Excel, умудряются «совершенно случайно» уронить операционку так, что фиг восстановишь.
  • Моторные масла для гонок: смазывают лучше всего, но ресурс такого масла — одна гонка, либо максимум 1000 км по городу, о чем и написано на упаковке. Но несмотря на это, на одного гонщика, который понимает, что и зачем он льет в мотор, приходится армия оленей, у которых надпись «спорт» на канистре вызывает мгновенную эрекцию, которая спадает максимум через 15 тысяч километров пробега, когда на СТО им говорят, что двигатель восстановлению не подлежит.
    • Вообще, всё, что написано буквами или нарисовано в картинках, является не защитой от дурака, а средством прикрыть пятую точку: инструкцию дурак читает либо когда уже сломал матчасть, либо в очереди в травматологию.

Примечания[править]

  1. Про USB-разъёмы ходит шутка, что когда будут хоронить разработчика этих разъёмов, гроб сперва опустят в могилу, потом вытащат, перевернут, и опустят правильной стороной.
  2. По неподтвержденным данным, может еще и покалечить параллельно установленные ОС, если они есть. Так что если вам был нужен Линукс временно с некой целью, и теперь вы хотите от него избавиться, это все равно плохое решение.
  3. Если существующие разделы со сторонними ОС автоматом (что любят всякие юзер-френдли дистрибутивы) или вручную подмонтированы, причем не в read-only режиме, то в общем-то всё их содержимое тоже удалится. Мораль простая - не работайте под рутом/думайте головой прежде чем вводить пароль к sudo.