Он завершил звонок и задумчиво посмотрел на смартфон.
Принимая душ, Йаап вспоминал известные ему факты о Бене. Их было немного. Прежде чем прийти в ОСГИ, он работал секретным осведомителем, а еще раньше — в какой-то компьютерной фирме. Или одновременно?
К счастью, Google знал значительно больше: несколько лет назад Бен вместе с другом основал фирму под названием Havaris Software, которая занималась «технологиями безопасности». Бизнес, конечно же, развалился. После этого Варнхольт начал работать в БУУП. О его работе в качестве информанта в Интернете не было ни слова. Йаап мог лишь предположить, что он помогал полицейским вскрывать незаконные действия с использованием компьютерных систем.
Удивительно, но из простого поискового запроса по имени он узнал о коллеге намного больше, чем проработав с ним бок о бок три года. Он поискал информацию о Havaris и нашел одно упоминание о том, что их поддержал инвестор из Гамбурга, и несколько — об их банкротстве. Перейдя по ссылке на сайт компании, Йаап оказался на портале интернет-провайдера, где этот адрес был выставлен на продажу. Далее он наткнулся на сообщение с форума разработчиков ПО, опубликованное незадолго до банкротства компании, где упоминалась Havaris. Там под заголовком «Классная команда распалась» говорилось о том, как ошибки в управлении довели компанию до раскола и что «лучшие программисты Берлина» теперь ищут новую работу. Очевидно, пост был отчасти саморекламой автора, который, должно быть, надеялся вызвать интерес у хедхантеров. В сообщении и комментариях к нему кроме Бена упоминалось еще несколько сотрудников Havaris. Йаап переписал имена: Арндт Краусс, Льюис Вайнштейн, Маттэа Мюллер, Линда Петровская и Йенс Одевальд. Они ему ни о чем не говорили, но это были лишь исходные данные.
После нескольких часов поиска в социальных сетях Йаап знал, что Бен учился с Йенсом Одевальдом и они некоторое время вместе снимали квартиру. Если у Бена и имелись друзья, то Йенс был одним из них. С другой стороны, вполне возможно, что из-за банкротства фирмы они разругались и прекратили общаться, ведь Бен был в числе управляющих. Кроме этого, связь между ними была настолько очевидной, чтобы люди Хинтце и ребята из разведки не могли о ней не знать. Но это была зацепка и для него самого. Может быть, этот самый Йенс Одевальд сообщит ему важные сведения. Номер и адрес Одевальда он нашел в онлайн-каталоге телефонного провайдера. Йаап взялся за сотовый, но передумал и решил лично посетить Одевальда.
Глава 52
— Порядок. Думаю, можно попробовать, — сказал Бен и потянулся.
— Уверен? — спросила Маттэа.
Последний час она наблюдала за его работой и обращалась к нему, когда чего-то не понимала или замечала ошибку. Час до этого они работали наоборот: программировала Маттэа, а Бен наблюдал за ней. Такой подход к работе назывался «экстремальным программированием», он был самым эффективным способом за короткое время написать код с минимальным количеством ошибок. Работа с Маттэа действительно оказалась невероятно продуктивной и увлекательной, как движения в танце, — так их мысли гармонично дополняли друг друга. Однако Бен не был уверен, что они не упустили что-то важное.
Найти те фрагменты кода червя, которые инициировали обмен информацией с сервером, оказалось достаточно просто. Намного сложнее было понять, что происходило после установления связи. Первого контакта было недостаточно, чтобы начать диалог. Обычно интерфейс работает так: одна система посылает другой управляющий код и в ответ получает описание протокола обмена данными. У интернет-браузеров этот набор представляет собой HTML-документ, который может содержать, например, форму для ввода имени пользователя и пароля и кнопку Ok. В других интерфейсах используется XML. Но червь, как и ожидалось, осуществлял коммуникацию иначе. Поэтому Бену и его друзьям предстояло выяснить, каким образом кодировался ответ сервера и как червь реагировал на него, ничего при этом на самом деле не получив.
Они проработали всю ночь, позволив себе поспать лишь четыре часа. Однако Бен был в хорошем настроении и не чувствовал усталости. После полуночи им удалось обнаружить ту структуру внутри червя, которая отвечала за реакцию на ответ сервера. На это ушло много времени, потому что соответствующий код находился не в одном сегменте, а был распределен по разным частям программы, которые, в свою очередь, были запрятаны в различные процессы операционной системы или сохранены на неиспользуемых участках жесткого диска. Похоже, программисты очень сильно постарались усложнить самые простые операции. Бен предположил, что это было сделано с целью затруднить работу таких, как он, пытливых хакеров. Маттэа предложила более правдоподобное объяснение:
— Это как в голограмме.
— В голограмме? Что ты имеешь в виду?