Бэкдор

Поделись знанием:
Перейти к: навигация, поиск

Бэкдор, backdoor (от англ. back door — «чёрный ход» (буквально «задняя дверь») — дефект алгоритма, который намеренно встраивается в него разработчиком и позволяет получить тайный доступ к данным или удалённому управлению компьютером[1].





Предназначение

Основное назначение бэкдора — скрытное и быстрое получение доступа к данным, чаще всего зашифрованным. Например, бэкдор может быть встроен в алгоритм шифрования для последующей прослушки защищённого канала злоумышленником[1][2].

Основные свойства бэкдора

Идеальный бэкдор

  • сложно обнаружить;
  • можно использовать многократно;
  • легко отрицать — выглядит, как ошибка, и в случае обнаружения разработчик может сослаться на то, что допустил эту ошибку случайно и злого умысла не имел;
  • эксплуатируем только при знании секрета — только тот, кто знает, как активируется бэкдор, может им воспользоваться;
  • защищён от компрометации предыдущими использованиями — даже если бэкдор был обнаружен, то невозможно установить, кем он до этого эксплуатировался, и какой информацией завладел злоумышленник;
  • сложно повторить — даже если бэкдор был кем-то найден, то его невозможно будет использовать в другом коде или в другом устройстве.

Распространённые принципы создания бэкдоров в алгоритмах

  • слабая устойчивость алгоритма к криптоанализу;
  • специально подобранные константы — алгоритм может стать неустойчивым к криптоанализу при выборе определённых значений констант, используемых в его работе;
  • сложность в безопасной реализации — это означает, что безопасная реализация алгоритма работает слишком медленно, и все будут использовать небезопасный вариант, что и выгодно злоумышленнику.

Гипотетические примеры бэкдоров в современных алгоритмах

Уязвимость генератора псевдослучайной последовательности DUAL_EC_DRBG

Данный генератор был разработан в АНБ и стандартизован в качестве криптографически стойкого генератора псевдослучайных чисел национальным институтом стандартов и технологий США NIST в 2006 году. Однако уже в 2007 году независимыми исследователями было высказано предположение, что в этот алгоритм мог быть встроен бэкдор.[3][4][5]

Иллюстрация работы алгоритма согласно спецификации АНБ[6]:

Данный алгоритм использует эллиптические кривые. <math> P </math> — генератор группы точек на эллиптической кривой, <math> Q </math> — точка на эллиптической кривой — константа, определённая стандартом, как она была выбрана неизвестно. Параметры самой кривой также заданы стандартом.

Принцип работы:

Уравнение кривой <math> y = x^3+ax+b~mod~p</math> можно переписать в виде <math> x = \varphi(x, y)~mod~p </math> и записать следующие выражения для работы алгоритма:

<math> r_i = \varphi(s_i*P)</math> , <math> t_i = \varphi(r_i*Q)</math> , <math> s_{i+1} = \varphi(r_i*P)</math>
<math> s_i</math> — внутреннее состояние генератора на текущем шаге
<math> s_{i+1}</math> — внутреннее состояние генератора на следующем шаге
<math> t_i </math> — выход генератора на текущем шаге
Предполагаемый бэкдор:

Так как <math> p </math> — простое число, то существуют такое число <math> e </math>, что <math> e*Q=P</math>. Нахождение <math> e </math> — вычислительно сложная задача дискретного логарифмирования на эллиптической кривой, для решения которой на сегодняшний день не существует эффективных алгоритмов. Но если предположить, что злоумышленник знает <math> e </math> , то получается следующая атака: Если <math> x=t_i </math> — очередной выход генератора, и если существует такое <math> y </math>, что <math> y^2 \equiv x^3+ax+b~mod~p</math>, то точка <math> A =(x,y)</math>, лежит на кривой и для неё выполняется следующее равенство: <math> A=r_i*Q </math>. Зная число <math> e </math> можно вычислить: <math> s_{i+1}=\varphi(e*A)=\varphi(e*r_i*Q)=\varphi(r_i*P) </math>. Таким образом, злоумышленник, знающий число <math> e </math>, может не только вычислить следующий выход генератора, но и быстро перебрать все возможные внутренние состояния генератора и восстановить его начальное внутреннее состояние. Сосгласно независимым исследованиям[7][2], при знании <math> e </math> достаточно всего 30 байт выходной последовательности генератора, чтобы простым перебором <math> 2^{15} </math> значений восстановить его начальное внутреннее состояние. По мнению исследователей, такая уязвимость может быть расценена как бэкдор.

Ошибка в реализации протокола проверки сертификатов TLS от компании Apple

Исследователями компании Яндекс была обнаружена уязвимость в реализации протокола TLS в одном из программных продуктов Apple[2]. По их мнению, данная ошибка вполне может оказаться бэкдором, намеренно встроенным в алгоритм кем-то из разработчиков.

Участок кода с ошибкой:
static DSStatus SSLVerifySignedServerKeyExchnge(....)
{
     DSStatus err;
     ....
     if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
          goto fail;
          goto fail;
     if ((SSHashSHA1.final(&hashCtx, &hashOut)) != 0)
          goto fail;
     ....
     fail:
          ....
          return err;
}

Как можно видеть, после второго оператора if стоят две строчки goto fail, и вторая строчка выполняется всегда, независимо от результата if. Таким образом процедура проверки сертификата проходит не полностью. Злоумышленник, знающий об этой уязвимости, может подделать сертификат и пройти проверку подлинности. Это позволит ему организовать атаку типа «Человек посередине», тем самым вмешаться в защищённое соединение между клиентом и сервером. Исследователи, обнаружившие данную ошибку в реализации, не могут точно сказать, намеренно она была сделана или случайно. Вполне возможно, что это бэкдор, встроенный в алгоритм кем-то из разработчиков.

Примеры методов создания бэкдоров

Специально подобранные константы

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

В качестве такого примера использования констант можно привести недавние исследовательские работы на тему так называемого «вредоносного хэширования»[8][9], где авторам удалось построить коллизии для криптографической хэш-функции SHA1 путём модификации её раундовых констант. Отметим, что предложенная авторами исследования атака не является атакой на саму хэш-функцию SHA1, она позволяет лишь находить коллизии при условии возможности изменения раундовых констант и только для определённых типов файлов.

Краткое описание SHA1:

SHA1 — современная раундовая хэш-функция. Алгоритм хэширования следующий:

  • Инициализируются 32-битные значения <math> a = h_0 , b = h_1 , c = h_2 , d = h_3 , e = h_4 </math>
  • Входное сообщение разбивается на блоки длиной 512 бит
  • Каждый блок сообщения обрабатывается и дополняется специальным образом, по алгоритму, определённому в стандарте
  • Полученный блок сообщения хэшируется в 4 этапа по 20 раундов в каждом, причём для каждого этапа используется своя константа <math>K_1, K_2, K_3 </math> или <math>K_4 </math>
  • Выходом функции для каждого блока будут новые значения <math>a, b, c, d, e </math>, которые добавляются к результату: <math> h_0 = h_0 + a, h_1 = h_1 + b, h_2 = h_2 + c, h_3 = h_3 + d, h_4 = h_4 + e </math>
  • Итоговым результатом хэширования будет 160-битное значение полученное конкатенацией пяти 32-битных значений <math> h_0, h_1, h_2, h_3, h_4 </math> после обработки последнего блока сообщения.
Построение коллизий:

Целью рассматриваемой атаки является нахождение таких констант <math> K_1, K_2, K_3, K_4 </math> и таких сообщений <math>M_1</math> и <math>M_2</math> , что <math>Hash(M_1) = Hash(M_2)</math>. Данная атака модифицирует только первые 512 бит (1-ый блок) сообщений для которых требуется построить коллизию. Алгоритм базируется на уже известной разностной атаке на SHA1, предложенной в 2005 году[10][11] и имеющей сложность порядка <math> 2^{69} </math> операций, что делает её трудноосуществимой на практике. Поэтому до настоящего времени ни одной реальной коллизии для SHA1 найдено не было.

Но в случае создания вредоносного варианта SHA1 злоумышленник может варьировать не только блоки сообщений <math>M_1</math> и <math>M_2</math>, но и раундовые константы <math> K_1, K_2, K_3, K_4 </math>. Согласно исследованиям[9], это сильно снижает сложность атаки до порядка <math> 2^{48} </math> операций и делает построение таких коллизий реальной задачей которую можно выполнить на нескольких компьютерах. Таким образом, авторам исследования удалось построить одноблоковые коллизии для многих известных типов файлов.

Одноблоковая коллизия:

<math>M_1</math> и <math>M_2</math> — первые блоки сообщений (512 бит), которые отличаются между собой, но дают одинаковую хэш-сумму
<math> Content </math> — остальное содержимое, которое одинаково для обоих файлов

Пример использования вредоносного хэширования для создания бэкдоров

С помощью описанной атаки были созданы два sh-скрипта, которые при выборе <math> K_1=5a827999~,~K_2=88e8ea68~,~K_3=578059de~,~K_4=54324a39</math> дают одинаковую хэш-сумму SHA1, но работают по-разному.

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

Аппаратные бэкдоры

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

Аппаратные бэкдоры имеют ряд преимуществ над программными:

  • Не могут быть обнаружены антивирусами, сканерами кода и другим защитным ПО.
  • Не могут быть устранены обновлением или заменой программного обеспечения.

Примером аппаратного бэкдора может быть вредоносная прошивка BIOS. Согласно исследованиям[12], такая прошивка может быть построена на основе свободных прошивок Coreboot[13] и SeaBIOS. Coreboot не является полноценным BIOS: он отвечает только за обнаружение имеющегося на машине оборудования и передачу управления самой «начинке BIOS», в качестве которой может быть использован модифицированный злоумышленником под свои нужды SeaBIOS.

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

Напишите отзыв о статье "Бэкдор"

Примечания

  1. 1 2 J.P. Aumasson [cryptome.org/2014/11/backdooring_nsc14.pdf Cryptographic bacdooring]
  2. 1 2 3 Евгений Сидоров, [events.yandex.ru/lib/talks/2974/ Криптографические баги и бэкдоры], Yandex security meet up, 24.07.2015
  3. Dan Shumow, Niels Ferguson, [rump2007.cr.yp.to/15-shumow.pdf On the Possibility of a Back Door in the NIST SP800-90 Dual Ec Prng], CRYPTO 2007, august 2007
  4. Брюс Шнайер. [www.wired.com/politics/security/commentary/securitymatters/2007/11/securitymatters_1115 Did NSA Put a Secret Backdoor in New Encryption Standard?], Wired News (15 ноября 2007). [archive.is/PgAL Архивировано] из первоисточника 19 сентября 2012.
  5. Киви Берд, [old.computerra.ru/think/kiwi/342002/ Неслучайные случайности] // Компьютерра, 07 декабря 2007
  6. John Bryson, Patrick Gallagher, [projectbullrun.org/dual-ec/documents/SP800-90A.pdf/ Recommendation for Random Number Generation Using Deterministic Random Bit Generators], p. 60, 2012
  7. Dan Shumow, Niels Ferguson, [rump2007.cr.yp.to/15-shumow.pdf On the Possibility of a Back Door in the NIST SP800-90 Dual Ec Prng], pages 6-7, CRYPTO 2007, august 2007
  8. Ange Albertini, Jean-Philippe Aumasson, Maria Eichlseder, Florian Mendel, Martin Schlaeffer, [malicioussha1.github.io/ Malicious SHA-1], 14.08.2014
  9. 1 2 Ange Albertini, Jean-Philippe Aumasson, Maria Eichlseder, Florian Mendel, Martin Schlaffer, [eprint.iacr.org/2014/694.pdf/ Malicious Hashing: Eve’s Variant of SHA-1], 2014 year
  10. Wang, X., Yao, A.C., Yao, [csrc.nist.gov/groups/ST/hash/documents/Wang_SHA1-New-Result.pdf/ Cryptanalysis on SHA-1. NIST — First Cryptographic Hash Work-shop], 31 October 2005
  11. Wang, X., Yin, Y.L., Yu, H. , [www.iacr.org/archive/crypto2005/36210017/36210017.pdf/ Finding collisions in the full SHA1], CRYPTO 2005
  12. Jonathan Brossard, [www.securitylab.ru/analytics/432914.php Аппаратные бэкдоры — это практично], 12 марта 2012
  13. [nerohelp.info/4305-coreboot.html Обзор проекта свободного BIOS — Coreboot], 9 октября 2014

Ссылки

  • Dan Shumow, Niels Ferguson. [www.wired.com/images_blogs/threatlevel/2013/09/15-shumow.pdf On the Possibility of a Back Door in the NIST SP800-90 Dual Ec Prng]. — 2007.</span>
  • Евгений Сидоров. [events.yandex.ru/lib/talks/2974/ Криптографические баги и бэкдоры]. — 2015.</span>
  • John Bryson, Patrick Gallagher. [projectbullrun.org/dual-ec/documents/SP800-90A.pdf Recommendation for Random Number Generation Using Deterministic Random Bit Generators]. — U.S. Department of Commerce, 2012.</span>

См. также

Отрывок, характеризующий Бэкдор

Коляска шестериком стояла у подъезда. На дворе была темная осенняя ночь. Кучер не видел дышла коляски. На крыльце суетились люди с фонарями. Огромный дом горел огнями сквозь свои большие окна. В передней толпились дворовые, желавшие проститься с молодым князем; в зале стояли все домашние: Михаил Иванович, m lle Bourienne, княжна Марья и княгиня.
Князь Андрей был позван в кабинет к отцу, который с глазу на глаз хотел проститься с ним. Все ждали их выхода.
Когда князь Андрей вошел в кабинет, старый князь в стариковских очках и в своем белом халате, в котором он никого не принимал, кроме сына, сидел за столом и писал. Он оглянулся.
– Едешь? – И он опять стал писать.
– Пришел проститься.
– Целуй сюда, – он показал щеку, – спасибо, спасибо!
– За что вы меня благодарите?
– За то, что не просрочиваешь, за бабью юбку не держишься. Служба прежде всего. Спасибо, спасибо! – И он продолжал писать, так что брызги летели с трещавшего пера. – Ежели нужно сказать что, говори. Эти два дела могу делать вместе, – прибавил он.
– О жене… Мне и так совестно, что я вам ее на руки оставляю…
– Что врешь? Говори, что нужно.
– Когда жене будет время родить, пошлите в Москву за акушером… Чтоб он тут был.
Старый князь остановился и, как бы не понимая, уставился строгими глазами на сына.
– Я знаю, что никто помочь не может, коли натура не поможет, – говорил князь Андрей, видимо смущенный. – Я согласен, что и из миллиона случаев один бывает несчастный, но это ее и моя фантазия. Ей наговорили, она во сне видела, и она боится.
– Гм… гм… – проговорил про себя старый князь, продолжая дописывать. – Сделаю.
Он расчеркнул подпись, вдруг быстро повернулся к сыну и засмеялся.
– Плохо дело, а?
– Что плохо, батюшка?
– Жена! – коротко и значительно сказал старый князь.
– Я не понимаю, – сказал князь Андрей.
– Да нечего делать, дружок, – сказал князь, – они все такие, не разженишься. Ты не бойся; никому не скажу; а ты сам знаешь.
Он схватил его за руку своею костлявою маленькою кистью, потряс ее, взглянул прямо в лицо сына своими быстрыми глазами, которые, как казалось, насквозь видели человека, и опять засмеялся своим холодным смехом.
Сын вздохнул, признаваясь этим вздохом в том, что отец понял его. Старик, продолжая складывать и печатать письма, с своею привычною быстротой, схватывал и бросал сургуч, печать и бумагу.
– Что делать? Красива! Я всё сделаю. Ты будь покоен, – говорил он отрывисто во время печатания.
Андрей молчал: ему и приятно и неприятно было, что отец понял его. Старик встал и подал письмо сыну.
– Слушай, – сказал он, – о жене не заботься: что возможно сделать, то будет сделано. Теперь слушай: письмо Михайлу Иларионовичу отдай. Я пишу, чтоб он тебя в хорошие места употреблял и долго адъютантом не держал: скверная должность! Скажи ты ему, что я его помню и люблю. Да напиши, как он тебя примет. Коли хорош будет, служи. Николая Андреича Болконского сын из милости служить ни у кого не будет. Ну, теперь поди сюда.
Он говорил такою скороговоркой, что не доканчивал половины слов, но сын привык понимать его. Он подвел сына к бюро, откинул крышку, выдвинул ящик и вынул исписанную его крупным, длинным и сжатым почерком тетрадь.
– Должно быть, мне прежде тебя умереть. Знай, тут мои записки, их государю передать после моей смерти. Теперь здесь – вот ломбардный билет и письмо: это премия тому, кто напишет историю суворовских войн. Переслать в академию. Здесь мои ремарки, после меня читай для себя, найдешь пользу.
Андрей не сказал отцу, что, верно, он проживет еще долго. Он понимал, что этого говорить не нужно.
– Всё исполню, батюшка, – сказал он.
– Ну, теперь прощай! – Он дал поцеловать сыну свою руку и обнял его. – Помни одно, князь Андрей: коли тебя убьют, мне старику больно будет… – Он неожиданно замолчал и вдруг крикливым голосом продолжал: – а коли узнаю, что ты повел себя не как сын Николая Болконского, мне будет… стыдно! – взвизгнул он.
– Этого вы могли бы не говорить мне, батюшка, – улыбаясь, сказал сын.
Старик замолчал.
– Еще я хотел просить вас, – продолжал князь Андрей, – ежели меня убьют и ежели у меня будет сын, не отпускайте его от себя, как я вам вчера говорил, чтоб он вырос у вас… пожалуйста.
– Жене не отдавать? – сказал старик и засмеялся.
Они молча стояли друг против друга. Быстрые глаза старика прямо были устремлены в глаза сына. Что то дрогнуло в нижней части лица старого князя.
– Простились… ступай! – вдруг сказал он. – Ступай! – закричал он сердитым и громким голосом, отворяя дверь кабинета.
– Что такое, что? – спрашивали княгиня и княжна, увидев князя Андрея и на минуту высунувшуюся фигуру кричавшего сердитым голосом старика в белом халате, без парика и в стариковских очках.
Князь Андрей вздохнул и ничего не ответил.
– Ну, – сказал он, обратившись к жене.
И это «ну» звучало холодною насмешкой, как будто он говорил: «теперь проделывайте вы ваши штуки».
– Andre, deja! [Андрей, уже!] – сказала маленькая княгиня, бледнея и со страхом глядя на мужа.
Он обнял ее. Она вскрикнула и без чувств упала на его плечо.
Он осторожно отвел плечо, на котором она лежала, заглянул в ее лицо и бережно посадил ее на кресло.
– Adieu, Marieie, [Прощай, Маша,] – сказал он тихо сестре, поцеловался с нею рука в руку и скорыми шагами вышел из комнаты.
Княгиня лежала в кресле, m lle Бурьен терла ей виски. Княжна Марья, поддерживая невестку, с заплаканными прекрасными глазами, всё еще смотрела в дверь, в которую вышел князь Андрей, и крестила его. Из кабинета слышны были, как выстрелы, часто повторяемые сердитые звуки стариковского сморкания. Только что князь Андрей вышел, дверь кабинета быстро отворилась и выглянула строгая фигура старика в белом халате.
– Уехал? Ну и хорошо! – сказал он, сердито посмотрев на бесчувственную маленькую княгиню, укоризненно покачал головою и захлопнул дверь.



В октябре 1805 года русские войска занимали села и города эрцгерцогства Австрийского, и еще новые полки приходили из России и, отягощая постоем жителей, располагались у крепости Браунау. В Браунау была главная квартира главнокомандующего Кутузова.
11 го октября 1805 года один из только что пришедших к Браунау пехотных полков, ожидая смотра главнокомандующего, стоял в полумиле от города. Несмотря на нерусскую местность и обстановку (фруктовые сады, каменные ограды, черепичные крыши, горы, видневшиеся вдали), на нерусский народ, c любопытством смотревший на солдат, полк имел точно такой же вид, какой имел всякий русский полк, готовившийся к смотру где нибудь в середине России.
С вечера, на последнем переходе, был получен приказ, что главнокомандующий будет смотреть полк на походе. Хотя слова приказа и показались неясны полковому командиру, и возник вопрос, как разуметь слова приказа: в походной форме или нет? в совете батальонных командиров было решено представить полк в парадной форме на том основании, что всегда лучше перекланяться, чем не докланяться. И солдаты, после тридцативерстного перехода, не смыкали глаз, всю ночь чинились, чистились; адъютанты и ротные рассчитывали, отчисляли; и к утру полк, вместо растянутой беспорядочной толпы, какою он был накануне на последнем переходе, представлял стройную массу 2 000 людей, из которых каждый знал свое место, свое дело и из которых на каждом каждая пуговка и ремешок были на своем месте и блестели чистотой. Не только наружное было исправно, но ежели бы угодно было главнокомандующему заглянуть под мундиры, то на каждом он увидел бы одинаково чистую рубаху и в каждом ранце нашел бы узаконенное число вещей, «шильце и мыльце», как говорят солдаты. Было только одно обстоятельство, насчет которого никто не мог быть спокоен. Это была обувь. Больше чем у половины людей сапоги были разбиты. Но недостаток этот происходил не от вины полкового командира, так как, несмотря на неоднократные требования, ему не был отпущен товар от австрийского ведомства, а полк прошел тысячу верст.
Полковой командир был пожилой, сангвинический, с седеющими бровями и бакенбардами генерал, плотный и широкий больше от груди к спине, чем от одного плеча к другому. На нем был новый, с иголочки, со слежавшимися складками мундир и густые золотые эполеты, которые как будто не книзу, а кверху поднимали его тучные плечи. Полковой командир имел вид человека, счастливо совершающего одно из самых торжественных дел жизни. Он похаживал перед фронтом и, похаживая, подрагивал на каждом шагу, слегка изгибаясь спиною. Видно, было, что полковой командир любуется своим полком, счастлив им, что все его силы душевные заняты только полком; но, несмотря на то, его подрагивающая походка как будто говорила, что, кроме военных интересов, в душе его немалое место занимают и интересы общественного быта и женский пол.
– Ну, батюшка Михайло Митрич, – обратился он к одному батальонному командиру (батальонный командир улыбаясь подался вперед; видно было, что они были счастливы), – досталось на орехи нынче ночью. Однако, кажется, ничего, полк не из дурных… А?
Батальонный командир понял веселую иронию и засмеялся.
– И на Царицыном лугу с поля бы не прогнали.
– Что? – сказал командир.
В это время по дороге из города, по которой расставлены были махальные, показались два верховые. Это были адъютант и казак, ехавший сзади.
Адъютант был прислан из главного штаба подтвердить полковому командиру то, что было сказано неясно во вчерашнем приказе, а именно то, что главнокомандующий желал видеть полк совершенно в том положении, в котором oн шел – в шинелях, в чехлах и без всяких приготовлений.
К Кутузову накануне прибыл член гофкригсрата из Вены, с предложениями и требованиями итти как можно скорее на соединение с армией эрцгерцога Фердинанда и Мака, и Кутузов, не считая выгодным это соединение, в числе прочих доказательств в пользу своего мнения намеревался показать австрийскому генералу то печальное положение, в котором приходили войска из России. С этою целью он и хотел выехать навстречу полку, так что, чем хуже было бы положение полка, тем приятнее было бы это главнокомандующему. Хотя адъютант и не знал этих подробностей, однако он передал полковому командиру непременное требование главнокомандующего, чтобы люди были в шинелях и чехлах, и что в противном случае главнокомандующий будет недоволен. Выслушав эти слова, полковой командир опустил голову, молча вздернул плечами и сангвиническим жестом развел руки.
– Наделали дела! – проговорил он. – Вот я вам говорил же, Михайло Митрич, что на походе, так в шинелях, – обратился он с упреком к батальонному командиру. – Ах, мой Бог! – прибавил он и решительно выступил вперед. – Господа ротные командиры! – крикнул он голосом, привычным к команде. – Фельдфебелей!… Скоро ли пожалуют? – обратился он к приехавшему адъютанту с выражением почтительной учтивости, видимо относившейся к лицу, про которое он говорил.
– Через час, я думаю.
– Успеем переодеть?
– Не знаю, генерал…
Полковой командир, сам подойдя к рядам, распорядился переодеванием опять в шинели. Ротные командиры разбежались по ротам, фельдфебели засуетились (шинели были не совсем исправны) и в то же мгновение заколыхались, растянулись и говором загудели прежде правильные, молчаливые четвероугольники. Со всех сторон отбегали и подбегали солдаты, подкидывали сзади плечом, через голову перетаскивали ранцы, снимали шинели и, высоко поднимая руки, натягивали их в рукава.
Через полчаса всё опять пришло в прежний порядок, только четвероугольники сделались серыми из черных. Полковой командир, опять подрагивающею походкой, вышел вперед полка и издалека оглядел его.
– Это что еще? Это что! – прокричал он, останавливаясь. – Командира 3 й роты!..
– Командир 3 й роты к генералу! командира к генералу, 3 й роты к командиру!… – послышались голоса по рядам, и адъютант побежал отыскивать замешкавшегося офицера.
Когда звуки усердных голосов, перевирая, крича уже «генерала в 3 ю роту», дошли по назначению, требуемый офицер показался из за роты и, хотя человек уже пожилой и не имевший привычки бегать, неловко цепляясь носками, рысью направился к генералу. Лицо капитана выражало беспокойство школьника, которому велят сказать невыученный им урок. На красном (очевидно от невоздержания) носу выступали пятна, и рот не находил положения. Полковой командир с ног до головы осматривал капитана, в то время как он запыхавшись подходил, по мере приближения сдерживая шаг.