понедельник, 22 июля 2013 г.

[life.history] Про пароли к кодовым замкам (из неофициальной истории Манхэттенского проекта)

В книге Ричарда Феймана "Вы, конечно, шутите, мистер Фейман" есть глава "Ты шнифер, и я шнифер", в которой Фейман рассказывает о своем увлечении во время работы в Лос-Аламосе над Манхэттенским проектом. Он научился подбирать пароли к кодовым замкам шкафов, в которых сотрудники Лос-Аламоса хранили секретные документы. В результате Фейман заработал репутацию опытного взломщика. Впрочем, интересующимся лучше прочитать всю главу самостоятельно, она очень легко и увлекательно написана, а забавного и поучительного в ней много. Я же хочу здесь процитировать всего несколько фрагментов.

Фрагмент первый, использование social engineering :)

Однажды летом после войны мне понадобилось закончить одну работу, и из Корнелла, где я в тот год преподавал, я отправился в Лос-Аламос. Во время этой работы мне понадобился мой старый отчет, который хранился в библиотеке.

Я пошел в библиотеку, но возле нее расхаживал взад и вперед солдат с винтовкой. Это была суббота, а после войны по субботам библиотека была закрыта.

Тогда я вспомнил о занятии своего хорошего приятеля, Фредерика де Хоффмана. Он работал в комиссии по рассекречиванию. После войны военные решили рассекретить некоторые документы, и ему пришлось постоянно бегать в библиотеку: взглянуть на эту бумагу, взглянуть на ту бумагу, проверить это, проверить то, - от всего этого с ума можно было сойти! И он сделал копии всех документов, - всех секретов атомной бомбы, - и забил ими девять шкафов своего кабинета.

Я спустился в его кабинет и нашел, что там горит свет. Дело выглядело так, словно кто-то, - его секретарша, наверное, - только что на минуту вышел. Я стал ждать. Ожидая, я принялся крутить лимб замка одного из шкафов (кстати, последних двух чисел сейфов де Хоффмана я не знал: они были установлены после войны, когда я уже уехал из Лос-Аламоса).

Я крутил лимб и вспоминал книжки про взломщиков. Я думал: "На меня никогда не производили впечатления описанные в этих книжках трюки, и я никогда не пытался попробовать их. Однако посмотрим, нельзя ли открыть сейф Хоффмана, руководствуясь советами из этих книг".

Трюк первый: секретарша. Она боится забыть комбинацию и где-нибудь ее записывает. Я начал искать в местах, упомянутых в книге. Ящик стола оказался заперт, но это был обычный замок из тех, открывать которые меня научил Лео Лавателли. Чпок! Я смотрю с краю - ничего.

Потом я просматриваю бумаги секретарши. Нахожу листок, который есть у любой секретарши. На нем тщательно вырисованы буквы греческого алфавита, чтобы их можно было опознать в математических формулах, и против каждой написано ее название. Там же, в верхней части листка, небрежно написано: р = 3,14159. Так, шесть цифр, да еще на кой черт секретарше знать число пи? Ясно, зачем: других причин нет!

Отправляюсь к шкафам и набираю на первом: 31-41-59. Не открывает. Пробую 59-41-31. Тоже не годится. 95-14-13. Назад, вперед, вверх тормашками, так, эдак - никак!

Запираю ящик стола и уже направляюсь к двери, когда снова приходит в голову из книжки про взломщиков: попробуйте психологический метод. Говорю себе: "Фредди де Хоффман именно такой тип, от которого можно ждать использования математической константы в качестве комбинации для сейфа".

Снова возвращаюсь к первому шкафу и набираю 27-18-28 - ЩЕЛК! Сработало! (Основание натуральных логарифмов e = 2,71828 - вторая по важности после пи математическая константа.) Шкафов девять, я открыл первый, но нужной бумаги в нем не было - бумаги шли в алфавитном порядке фамилий авторов. Пробую второй шкаф: 27-18-28 - ЩЕЛК! Открылся той же комбинацией. "Чудесно, - думаю я, - я открыл все секреты атомной бомбы, но если я собираюсь когда-нибудь рассказывать этот анекдот, я должен убедиться, что все комбинации действительно одинаковы!" Некоторые из шкафов были в соседней комнате, я попробовал 27-18-28 на одном из них, и он открылся. Теперь я открыл три сейфа - и все три одной комбинацией.

Однако лично мне в этой истории нравится не столько то, что в качестве шифра для всех шкафов использовались первые шесть цифр константы e. А то, что для преодоления дурацкого режима доступа к документам, один из сотрудников проекта просто сделал копию всей документации и хранил ее так, как ему было удобно, не считаясь с необходимостью охраны государственной тайны.

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

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

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

...

Вывозивший сейф хозяйственник хотел получить за него премию, однако сначала его надо было опорожнить, а единственными людьми, знавшими его комбинацию, были Капитан, который в это время был на Бикини, и Альварес, который забыл ее. Парень обратился с просьбой ко мне.

Я пошел к секретарше капитана и спросил:
- Почему бы Вам не позвонить шефу и не узнать у него комбинацию?
- Я не хочу его беспокоить. - ответила она.
- Слушайте, Вы собираетесь беспокоить меня в течение, может быть, восьми часов. Я не возьмусь за это, если Вы не попытаетесь дозвониться до шефа.
- Хорошо, хорошо, - и она взялась за трубку, а я пошел в другую комнату посмотреть на сейф. Он стоял там огромный и железный, а его дверцы были открыты.
Я вернулся к секретарше:
- Он открыт.
- Восхитительно! - зачирикала она, бросая трубку.
- Нет, - сказал я, - он уже был открыт.
- Ах! Наверное, хозяйственникам в конце концов удалось открыть его!
Я отправился к хозяйственнику:
- Я сходил к сейфу, но он уже был открыт.
- Ну да, - сказал он, - извините, не успел предупредить Вас. Я послал штатного слесаря просверлить его, но прежде чем сверлить, он попробовал открыть, и ему удалось.

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

- Покажи, - сказал он, и я показал ему, как это делается. Он повернулся ко мне:
- А как тебя зовут?
До этого момента мы не представлялись друг другу.
- Дик Фейнман, - сказал я.
- Боже! Так ты Фейнман, - сказал он с благоговением, - Великий взломщик! Я слышал о тебе и давно хотел познакомиться с тобой. Я хочу, чтобы ты научил меня вскрывать сейфы!
- Какого черта? Ты сам умеешь открывать сейфы!
- Нет, не умею.
- Послушай, я знаю про случай с сейфом Капитана, и с тех поря приложил столько стараний, чтобы познакомиться с тобой! А ты говоришь мне, что не умеешь открывать сейфы.
- Не умею.
- Ладно, ты должен знать, как сверлить их.
- Я и этого не знаю.
- КАК? - воскликнул я, - этот тип из хозяйственного отдела сказал, что ты собрал свои инструменты и пошел сверлить сейф Капитана.
- Поставь себя на мое место. Тебя взяли слесарем. К тебе приходят и говорят, что надо просверлить сейф. Что бы ты стал делать?
- Ладно, - согласился я, - я собрал бы свой инструмент и отправился к сейфу. Там я ткнул бы дрелью куда-нибудь в сейф и ж-ж-ж-ж.., принялся сверлить, чтобы меня не выгнали с работы.
- Именно так я и собирался сделать.
- Но ты же открыл его! Значит, ты знаешь, как вскрывать сейфы.
- О да. Я знаю, что замки приходят с завода установленными на 25-0-25 или на 50-25-50, и я подумал: "Чем черт не шутит. Может этот олух не потрудился сменить комбинацию", и вторая комбинация открыла замок.

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

Я прошелся по кабинетам своего здания, пробуя эти две заводские комбинации, и открыл каждый пятый сейф.

Цитаты закончились. Пора переходить к морали. Хотя это слово здесь не очень подходит. Пусть будет что-то вроде выводов:

  • забавно, но я не ожидал, что с проблемой дефолтных паролей люди столкнулись намного раньше появления MS SQL Server (MSSQL я упомянул потому, что в свое время был шокирован узнав, как много его инсталляций работают с дефолтным паролем для учетной записи sa) ;)
  • если даже из соображений самой-самой большой важности внедрить неудобные для людей правила работы (в данном случае речь идет о режиме доступа к секретным документам), то люди, в конце-концов, придумают способы их обхода. И будут думать только о собственном удобстве, а не о "соображениях самой-самой большой важности". Можно обзывать это халатностью или пренебрежением. Но лучше исходить из того, что это произойдет и предпринимать соответствующие меры до, чем развешивать ярлыки, накладывать взыскания и устранять ущерб после;
  • чем выше находится руководитель, тем меньше реальных подробностей деятельности в своем проекте он знает. Это я сейчас вспоминаю самодовольные утверждения Лесли Гровса, руководителя Манхэттенского проекта, о том, что у него на проекте были приняты достаточные средства обеспечения безопасности. Очевидно, что средства эти были довольно дырявыми. Если же сюда добавить еще и режим жесткого разделения информации между подразделениями, в результате которого каждый коллектив был вынужден "варится в собственном соку" (примеры я приводил здесь), то вспоминается очень хороший вопрос: "Что это -- глупость или измена?" ;)

Комментариев нет: