Люси пообщалась с матерью минут десять, не больше, и потом ничего мне не сказала. С тех пор она ходила за мной по пятам, пилила меня, цеплялась к каждому жесту и слову и вообще показывала себя во всей красе. По словам Берты, Люси и днем вела себя не лучше, всю душу ей вымотала своим занудством. Люси целый день торчала в моем кабинете за компьютером и встала из-за стола, только когда я пришла с работы. Берта тщетно звала девочку обедать — Люси не желала идти на кухню и жевала прямо перед экраном.
Прямо дежавю какое-то — сколько можно обсуждать тему оружия!
— А вот Энди говорил, что гораздо опаснее иметь револьвер и не уметь стрелять, чем вовсе не иметь револьвера, — заявила Люси.
— Энди? — рассеянно переспросила я.
— Ну, Энди, который был перед Ральфом. Он всегда во дворе по бутылкам стрелял. Издалека попадал. А ты так не можешь. — Люси смотрела с ненавистью.
— Ты права. Пожалуй, я стреляю хуже Энди.
— Вот видишь!
Я не стала говорить Люси, что немало знаю об огнестрельном оружии. Перед тем как сделать покупку, я перепробовала огромное количество пистолетов, которые хранились в нашей лаборатории. Время от времени я практиковалась в стрельбе и стреляю очень даже неплохо. Я не сомневалась, что в случае необходимости моя рука не дрогнет. Однако у меня не было ни малейшего желания говорить на эту тему с племянницей.
— Люси, почему ты все время ко мне придираешься? — спросила я как можно мягче.
— Потому что ты дура! — Глаза девочки наполнились слезами. — Ты дура! Ты не понимаешь, что сама можешь пораниться или что он отберет у тебя револьвер! И тогда ты тоже умрешь! Не успеешь ты дернуться, как он тебя из него же и застрелит, как в кино показывают!
— Дернуться? — удивилась я. — Что ты имеешь в виду?
— Не успеешь ты дернуться, чтобы первой его замочить.
Люси яростно возила кулачками по мокрым щекам, ее узенькая грудная клетка ходила ходуном. Я тупо смотрела в телевизор — показывали семейный цирк — и не знала, что ответить девочке. Сначала я хотела уйти в кабинет, запереть дверь и с головой уйти в работу, но вместо этого я нерешительно приблизилась к Люси и прижала ее к себе. Не помню, сколько мы так просидели, не говоря друг другу ни слова.
С кем же Люси делится своими переживаниями, когда бывает дома? Явно не с моей сестрицей! Самые разные критики в один голос называли Дороти «на редкость проницательным автором», а ее книги — «глубокими» и «затрагивающими чувствительные струны детской души». Вот уж действительно ирония судьбы — в произведениях Дороти фигурировали совершенно живые дети, она вынашивала их характеры, часами продумывала каждую черточку, начиная с костюмчика, вихров или аккуратного пробора и заканчивая поступками и поведением, а в это время ее родная дочь страдала от чудовищного недостатка внимания.
Еще живя в Майами, я проводила выходные с Люси, Дороти и мамой. Я стала вспоминать прошлый приезд племянницы. Она ни разу не упомянула ни подружку, ни приятеля. Выходит, друзей у Люси не было. Девочка рассказывала об учителях, о многочисленных и одинаково беспутных бойфрендах своей матери, о соседке миссис Спунер, о Джейке, что подстригал траву и деревья в парке, о постоянно меняющейся прислуге. Люси была маленькая, худенькая, носила очки — этакая всезнайка, которую старшие дети терпеть не могли, а сверстники не понимали. Девочка не вписывалась ни в одну компанию — точь-в-точь как я в ее возрасте.
Мы обе размякли. Я шепнула куда-то в рыжие косички:
— Один дядя меня кое о чем спросил.
— О чем?
— О доверии. Он спросил меня, кому я больше всех доверяю. И знаешь, кому?
Люси подняла голову и посмотрела мне в глаза.
— Тебе.
— Правда? — с сомнением спросила девочка. — Больше, чем всем остальным?
Я кивнула и тихо продолжала:
— Поэтому я хочу попросить тебя о помощи.
Люси так и подскочила. Глаза ее округлились от готовности быть мне полезной.
— Конечно, тетя Кей! Только скажи! Я все для тебя сделаю!
— Мне нужно выяснить, почему одному нехорошему человеку удалось взломать мою базу данных.
— Я не взламывала, — выпалила Люси, и в ее глазах мелькнул страх. — Я уже говорила, что это не я.
— Я тебе верю. Но ведь кто-то это сделал. Ты мне поможешь узнать кто?
Я очень сомневалась, что у Люси получится, однако решила дать ей попробовать.
Девочка, гордясь своей миссией, доверительно сказала:
— Взломать твою базу данных — пара пустяков. Любой осилит.
— Любой? — Я натянуто улыбнулась.
— Да. Из-за программы «Системный администратор».
Лицо у меня вытянулось от изумления.
— Откуда тебе известно об этой программе?
— В книжке прочитала. Там обо всем написано.
В такие моменты я вспоминала о коэффициенте интеллекта племянницы и не уставала удивляться его уровню. Когда Люси впервые предложили тест на IQ, она показала настолько хороший результат, что психолог настоял на повторном тестировании, утверждая, что «произошла ошибка». Ошибка действительно присутствовала — во второй раз IQ Люси оказался на десять пунктов выше.
— Сначала вводится вот эта последовательность команд, — тараторила племянница. — Пока не введешь команды, не получишь полного доступа к «Системному администратору». А он здесь просто бог. Зато стоит ввести команды — дальше делай что хочешь.
Ага, что хочешь. Например, узнавай все имена пользователей и пароли в моем офисе. Дивно! Главное, мне это никогда и в голову не приходило. Наверняка и Маргарет упустила из виду данное обстоятельство.
— Достаточно войти в систему, — продолжала Люси свою лекцию. — Если человек знает о «боге», он может создать любой доступ, адаптировать его к АБД и тогда уже проникать в базу данных.
У меня в офисе администратор базы данных, он же АБД, был «DEEP/THROAT»[20] — Маргарет периодически демонстрировала чувство юмора.
— Значит, входишь в программу «Системный администратор» и набираешь вот что: «основное соединение», «ресурсы», администратор базы данных для «тети», определяемой как «Кей».
— Видимо, так все и было. — Я размышляла вслух. — А с администратором базы данных можно не только читать информацию, но и вносить изменения.
— Конечно! Взломщик все что угодно мог сделать, потому что администратор базы данных так сказал, а он — «бог».
Религиозные аллюзии племянницы были настолько кощунственны, что я невольно рассмеялась.
— Вот так и я вошла, — призналась девочка. — Ты ведь не сказала мне пароль. Я хотела войти и набрала несколько команд, которые нашла в книге. Я только придумала пароль для имени пользователя АБД, и все сразу получилось.
— Минуточку, — остановила я Люси, — минуточку! Что значит «придумала пароль для имени пользователя АБД»? А как ты узнала само имя пользователя? Ведь я тебе его не называла!
— А оно у тебя в файле, — объяснила Люси. — Я его нашла в директории «HOME», где у тебя собраны все личные пароли. У тебя тут есть файл «Grants.SQL», а на нем все общие синонимы для твоих таблиц.
На самом деле таблицы были не мои. Их в прошлом году создала Маргарет, а я загрузила с дискет в свой домашний компьютер. Возможно ли, чтобы в офисном компьютере тоже был файл со словом «Grants» в названии?
Я взяла Люси за руку, и мы поднялись с кушетки. Девочка охотно последовала за мной в кабинет. Я усадила ее к компьютеру, а себе подвинула пуф.
Мы вошли в программу, набрали на клавиатуре номер телефона в кабинете Маргарет и стали следить, как загружается система. Через несколько секунд компьютер сообщил, что соединение произошло. Мы задали еще несколько команд. Какое-то время на темном экране мигала зеленая буква «С». Компьютер внезапно превратился в зеркало — по ту сторону нас ждали тайны, которые скрывались в моем офисе, расположенном за десять миль от дома.
Мне стало не по себе при мысли, что наше вторжение отслеживается. Надо будет сказать Уэсли, чтобы он не терял времени, выясняя, кто влез в компьютер, что это всего-навсего я.
— Задай команду «Найти» для всех файлов, содержащих слово «Grants», — сказала я.
Люси повиновалась. Вскоре пришел ответ: «Ни одного файла не найдено». Мы попробовали найти файл со словом «Синонимы» — и снова неудача. Вдруг Люси сообразила поискать файлы с расширением «SQL», потому что именно это расширение использовалось первоначально для всех файлов, содержащих последовательные команды — то есть такие, с помощью которых создаются синонимы для офисных программ. На экране множились названия. Одно из них нас заинтересовало — «Public.SQL».
Люси открыла файл и начала его «листать». Мое волнение росло параллельно со страхом. В файле были вписаны команды, которые Маргарет создала и выполнила задолго до того, как создала общие синонимы для всех таблиц офисной базы данных — команды типа «создать общие синонимы для DEEP.CASE».