Коммуникационное программное обеспечение 8 глава

печатать, но при нажатии Send подтверждался прием только тех символов, которые были напечатаны вместо этого подчеркивания.

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

ENTER NAME,PASS IN FORM nnnnnnnn,pppppppp____________

… и установил курсор в начало линии. Он включил Caps Lock и выключил все остальные терминалы. Затем Барри уселся за “Макинтош” рядом с подготовленным терминалом, и стал ждать.

Казалось, в тот день всем и каждому были нужны только “Макинтоши”. Ему пришлось ждать более часа, пока, наконец, какая-то женщина не подошла к терминалам. Как и надеялся Барри, она выбрала именно тот терминал, который он “зарядил”. Барри со своего места возле “Макинтоша” мог видеть все, что она вводит.

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

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

Другой пользователь, севший рядом с ней вскоре после того, как она вошла в компьютерный зал, заметил: “Они сегодня весь день как-то странно работают”. Барри был изумлен — не приложив практически никаких усилий, он получил необходимые ему имя и пароль, и мог спокойно взламывать что угодно, не опасаясь, что его выследят! Вдобавок, результат его действий приняли за неполадки в системе.

Существует много вариантов вышеописанной тактики, меняющихся в зависимости от свойств командной системы, используемых терминалов, обстановки в помещении и т. д. Вам придется изменять свою стратегию соответственно ситуации.

Некоторые терминалы позволяют менять цвет экрана. Однажды я проделал с терминалом такую же штуку, как и Барри. Сначала я стер настоящий загрузочный экран и заменил его своей имитацией. Но имитация не была идентичной — на моем загрузочном экране я поместил подчеркивание на одну линию ниже, чем следовало.

Затем я подвел курсор к тому месту на экране, где надо было вводить команды (как раз под моим фальшивым подчеркиванием). С помощью функциональной клавиши изменения цвета я ввел символы того же цвета, что и фон экрана: “logon”. Черные буквы на черном фоне — только мне да компьютеру было известно, что там находятся эти символы.

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

Долго ждать мне не пришлось. Минут через двадцать вошла группа людей, и один из них сел за “мой” терминал. Но, к сожалению, увидев экран, он подумал, что терминал уже занят, и собрался уходить. Я сказал ему: “Нет, здесь свободно”. И тогда он перезагрузил терминал и начал загрузку в совершенно иную систему!

Еще через несколько часов мне все-таки повезло. Я установил терминал снова и занял свою позицию в кресле, притворившись, что изучаю учебник по алгебре и началам анализа. Прошло много времени, прежде чем за терминал сел парень, который ввел свое имя и пароль (все это мне не составило труда прочесть) и нажал на ввод.

Но программа, естественно, не смогла понять, что он набирает, так как он ввел имя и пароль не на том месте. Компьютер распознал только спрятанный мною “logon”, соединился с главной машиной и запросил идентификацию пользователя. Парень, решив, что ошибся при вводе, снова ввел свои данные… Но я был уже далеко, ведь всю необходимую информацию я уже получил.

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

Для имитации загрузочного экрана можно также использовать текстовый редактор. Если у вас нет бюджета в системе, а, соответственно, и доступа к текстовому редактору электронной почты, возможно, в общественной информационной системе, доступной вам, имеется раздел “Send Commands to Sysop” — “Послать команду к системному оператору”. Вероятно, вам все равно придется воспользоваться общественным редактором, дабы ваши злонамеренные деяния не засекли через ваш ID.

С помошью текстового редактора можно, например, написать такой вот текст:

login Enter Name:

Enter Password:

В конце можно оставить хвостик нормального меню, списка команд, либо текста, который каждый обычно видит, включив терминал.

Разместите “Enter Name:” так, чтобы эта строка была последней, видимой на экране. Поместите курсор сразу после двоеточия, и выключите клавишу “Insert”, если таковая имеется.

Человек, севший за терминал, подумает, что кто-то набрал команду “login” еще до него. Он введет свое имя и нажмет “Enter”. Нажатие “ввода” прокрутит документ на одну строку вверх, так что станет похоже, будто компьютер запрашивает ввод пароля, который и будет введен пользователем к вашему вашему удовольствию, ведь вы сидите неподалеку, наблюдая за тем, как разворачиваются события.

У данного метода существуют свои недостатки (как, вообше-то, и у всех этих методов E-Z). Что, если человек, который сядет за компьютер первым, не станет входить в свой бюджет? А если он ошибется при вводе, что останется незамеченным до тех пор, пока он не нажмет на “ввод”? В обоих случаях вашу маленькую шалость могут обнаружить. Всегда существует возможность того, что кто-нибудь из тех, кто присматривает за компьютерным залом, выключит те терминалы, которые, по его мнению, зря простаивают, и вся ваша работа пойдет насмарку. К тому же, если вы проделываете такие веши с университетским терминалом, с которого можно получить доступ к множеству различных компьютеров, наверное, это будет не слишком-то разумно.

Данная уловка может не сработать по многим причинам, но на установку требуется немного времени, так что последующее, порой долгое, ожидание, может оправдать себя.

Если вы решитесь проделать такой трюк, помните следующие моменты: сделайте все, что только окажется в ваших силах, чтобы было легче читать с экрана на расстоянии. Включите клавишу “Caps Lock”, если понадобится. Увеличьте яркость экрана, если сможете. Слегка разверните монитор, чтобы вам не мешали отблески, когда вы станете смотреть под своим углом зрения. Если удастся, выберите шрифт покрупнее. Прежде чем выбрать место, откуда вы будете наблюдать, убедитесь, что сидяший за компьютером человек не закроет собой экран. Во избежание подозрений займите себя чем-нибудь на время ожидания, но смотрите, не увлекитесь, чтобы не упустить свою “дичь”.

подглядывание через плечо

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

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

Можно воспользоваться зеркалом, расположенным в соответствующем месте — верхнем углу комнаты между стеной и потолком. Зеркальце должно быть достаточно небольшим, чтобы его можно было приклеить клейкой лентой, но и не настолько маленьким, чтобы нельзя было рассмотреть отражение на расстоянии.

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

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

использование БЕЙСИКа

Если у вас есть бюджет — или если вы, зайдя в компьютерную лабораторию, обнаружили, что кто-то загрузился и ушел — вы можете написать простую программу на БЕЙСИКе для имитации входных процедур, и оставить ее работать.

Не забудьте ввести в программу соответствующие временные задержки, так как обычно на регистрацию команд уходит несколько секунд, а также заставить программу печатать звездочки (точки, тире и т. п.) вместо пользовательского пароля.

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

После того как пользователь введет имя и пароль, программа должна сохранять информацию и выходить из вашего бюджета. Если вы написали программу в чужом бюджете (вроде тех, уже загруженных, о которых я упоминал), то программе придется как-то переносить данные в ваш бюджет. (Методы тайного переноса данных обсуждаются в главе “Что делать, когда вы оказались внутри”.) Ведь, выйдя из бюджета, вы не сможете загрузиться снова. С другой стороны, ОС может позволить вам сохранить файл в вашей собственной директории, если вы дадите ей правильные коды доступа, или если вы сможете временно сделать свой бюджет менее защищенным, чтобы другие пользователи могли записывать данные в вашу директорию.

Важно помнить о хакерской безопасности — никогда не знаешь, следит пользователь за твоими действиями или нет. Значит, прежде, чем помешать в свою директорию файл со столь изменчивой информацией, как чужие пароли, будет разумным ее закодировать. Я использую простую кодировку: сохраняю каждый символ в виде 13 + ASCII-код, а каждое второе число является случайным. Значит, комбинацию имя, пароль, скажем, SMITHERS,RANGERS моя программа сохранит в виде: 96 90 86 97 85 82 95 96 , 95 78 91 84 82 95 96, со случайными числами между каждой цифрой.

Развитие этих идей вы найдете в следующей главе.

Аппаратные методы

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

Портативный компьютер я спрятал под столом. Это был деревянный стол с выступающей крышкой. С помощью электрического скоросшивателя я сделал из старых джинсов с отрезанными штанинами мешок, который подвесил к внутренней стороне стола, и поместил туда портативный компьютер. Этот компьютер должен был сохранять на диске первые десять символов, которые появятся после строк “Username:” и “Password:”. Таким образом, компьютер действовал как следящее устройство, работая как посредник между терминалом и мэйнфрэймом. Работа шла успешно.

У меня возникли затруднения только тогда, когда через неделю я заменил терминал на тот, что был в компьютерном зале: какой-то парень решил, что я пытаюсь его стащить.

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

универсальные МикроЭВМ

Ну вот, мы добрались до Компьютера Общественного Доступа третьего типа, который я включил в список несколькими страницами раньше — универсальной микроЭВМ. Здесь я поведу речь об IBM и машинах с MS-DOS, хотя среди общедоступных машин теперь можно все чаше увидеть и “Маки”. Конечно, приемы, о которых я расскажу, можно видоизменить в соответствии с любым компьютерным оборудованием.

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

прорыв

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

Если компьютер уже включен и вы находитесь в главном меню, поглядите, нет ли на экране каких-нибудь знаков или команд, которых там быть не должно, вроде “Alt-X to Quit”. Попробуйте это набрать — сработает или нет? Можно выйти из меню и получить лишь сообщение: “Ошибка! Нажмите любую клавишу, чтобы вернуться в меню”. Произошло следующее: когда утром компьютер был впервые включен, система меню была вызвана файлом AUTOEXEC.BAT. Нажав Alt-X, вы возвращаетесь в командный процессор AUTOEXEC.BAT, и изучаете следующую строку ВАТ-файла. Просто нажмите Ctrl-С, чтобы выбраться оттуда.

Даже если на экране нет никаких указаний по поводу выхода из меню, можно попробовать различные функциональные клавиши — Ctrl-Break, Escape, а также различные комбинации Alt и Ctrl с С, Х и Q.

Часто системы меню предлагают ввести пароль, прежде чем разрешить вам выйти в ОС. Если именно так обстоят дела на том компьютере, который вы взламываете, обязательно попробуйте различные пароли — начните с пустых линий, названия здания или компании, и других явных слов, имеющих отношение к работе и бизнесу.

Компьютерные системы более всего уязвимы в тот момент, когда переходят от одной программы к другой. Поэтому стоит попробовать выбрать пункт меню и нажать Ctrl-C сразу же, как только сделаете выбор. Чтобы добиться лучших результатов, можно еще раз нажать Ctrl-C одновременно с Ctrl-Break.

Если ничего из вышеперечисленного не сработало, выключите компьютер, затем снова включите и посмотрите, не удастся ли с помощью Ctrl-C или Ctrl-Break выйти из начальных процедур AUTOEXEC.BAT.

Или можно подготовить дискету с готовой к загрузке программой. Если ни та, ни другая тактика не поможет, используйте систему меню для запуска различных указанных в ней программ и посмотрите, нет ли в одной из них выхода в операционную систему.

свобода — это свободное передвижение

Как только вам удастся выйти из системы меню, вы сможете исследовать компьютер.

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

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

Сначала скопируйте AUTOEXEC.BAT и систему меню, а также любые найденные директории, которые содержат файлы с расширениями ВАТ, DOC или ТХТ; разнообразные дисковые утилиты; все, что имеет хоть какое-то отношение к телекоммуникациям;

резидентные программы; понятные текстовые файлы.

В особенности, если компьютер подсоединен к локальной сети, на нем могут быть диски D:, F:, H:, L:, или любые другие диски, обозначенные последними буквами алфавита, которые вы обычно даже и не подумаете искать. Поищите спрятанные файлы и директории, и если найдете, скопируйте их тоже. Взгляните также, не были ли уничтожены какие-то файлы, и постарайтесь восстановить их, возможно, они окажутся нужны вам.

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

Я часто находил многопользовательские утилиты, которые не видел никогда ранее, так что стоит совершать такие взломы просто ради того, чтобы посмотреть, не найдется ли чего-нибудь новенького в этом духе. Вы, возможно, даже почерпнете какие-либо новые программистские идеи — некоторые из найденных вами ВАТ- и INIT-файлов могут оказаться на редкость сложными.

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

Если, исследуя компьютер, вы постоянно натыкаетесь на приглашения о вводе паролей, попытайтесь выяснить, где на диске хранится основной список паролей. Однажды я выбрался из общественной программы меню специализированной библиотеки, и, оглядевшись, обнаружил тщательно спрятанный файл под названием PASSWDS. Выведя его на экран, я с удивлением увидел список, состоящий из шести или около того имен пользователей, вместе с их паролями, адресами и другой личной информацией. Поначалу я, конечно, был вне себя от радости, но мне до сих пор невдомек, к чему там были эти имена. Я опробовал их во всех местных системах — безуспешно. Я попытался найти информацию об этих системных пользователях на главных компьютерах с помощью команды “finger” UNIX, но ничего не получилось. Казалось, люди из списка вообще не существовали, где бы я ни искал!.. Возможно, кто-то просто использовал этот файл в качестве теста, или “демонстрашки”, или в какой-нибудь частной компьютерной системе.., но зачем же его тогда так хорошо спрятали?

Иногда такие вот отвлекающие зацепки играют роль следов, которые никуда не ведут. Здесь все дело в том, чтобы выяснить, что же вам требуется. Хакер-ство часто заключается в интенсивных исследованиях, когда целью является установление гипотезы, вопроса, который требует ответа. Как только вы поставите такой вопрос (“Будет ли этот список паролей работать на Raamses 3?” “Есть ли у секретаря президента Moroll Corporation системный доступ?”), вы можете переходить на более высокий уровень исследований и пытаться ответить на него.

Снаряжение для взлома компьютеров общественного ДОСТУПА

Прежде чем отправляться в экспедицию на взлом общественных компьютеров, подготовьте и захватите с собой ваш PACK: Public-Accessible Computer (hacking)

Kit — снаряжение для взлома компьютеров общественного доступа. Это снаряжение должно включать в себя:

• много чистых, отформатированных дискет, как 3 1,2-, так и 5 1,4-дюймовых, чтобы можно было быстро скопировать защитные программы меню. Проверьте, подойдут ли эти дискеты по формату к тем дисководам, которые вы будете использовать.

• внешние программы, такие, как Norton Disk Doctor и другие утилиты. Не помешает захватить также любые специальные программы, которые вы напишете (вроде моделей меню, о которых пойдет речь в следующем разделе). Посредством общедоступных программ можно отключить внешний громкоговоритель. Это может оказаться полезным, если вы взламываете компьютер, который издает громкий подозрительный сигнал всякий раз, когда вводится неверный пароль.

• другие инструменты: лучше всего нож, хотя сойдет и небольшая отвертка. Очень часто, особенно на АРМах с CD-ROM, вы обнаружите замки или крышки, прикрывающие дисководы для ограничения доступа. Для взлома “Макинтошей” удобна большая, не погнутая канцелярская скрепка. Если вам надо срочно сматывать удочки, можно просунуть кончик скрепки в отверстие рядом с дисководом, и ваша дискета выскочит. Зачастую это оказывается самым быстрым способом извлечь дискету.

модели меню и другие уловки

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

• изменение меню,

• изменение программы меню, и

создание собственной модели систем меню.

Программы меню снабжены опцией редактирования. Это позволяет людям, которые занимаются техническим обслуживанием компьютера, создавать категории меню, такие, как “Деловые программы”, “Текстовые редакторы” и т. п., а также добавлять и редактировать программы общественного доступа. Способ заставить меню работать на вас состоит в следующем: вы используете возможность редактирования, чтобы изменить или добавить опцию, которая должна отсылать пользователя в область, где требуется пароль. Между тем, на самом деле меню будет отсылать пользователя к программе, написанной вами и представляющей из себя модель окружения, знакомого пользователю. Ничего не подозревающий пользователь вводит свой пользовательский ID и пароль (который сохраняет ваша программа), после чего получает сообщение об ошибке и снова оказывается в меню. Затем вы можете отправляться в то место, где компьютер прячет пароли и идентификационные номера, и использовать их, как вам заблагорассудится.

Но здесь возникает вопрос: каким образом можно отредактировать меню?

Свойство редактирования меню может являться частью программы, такой, как INSTALL.EXE иди SETUP.EXE. Возможно, вам удастся произвести редактирование непосредственно из самой программы меню, путем нажатия функциональной клавиши или набора управляющего кода.

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

Может быть, вам удастся заново инсталлировать программу, восстановив существующее меню и сделав в то же время свои собственные добавления (мы вскоре обсудим этот момент). Или же у вас будет возможность использовать тестовый редактор или программу-адоктор” для изменения того файла, в котором хранится информация меню. Если при попытках изменить файл вы начнете получать сообщения об ошибках, попробуйте использовать для “блокировки” файла команду ATTRIB. Для “разблокировки” достаточно набрать “attrib filename -r” (на машинах с MS-DOS). В соответствии с характером работы этих программ тому, кто занимается редактированием, необходимо обеспечить короткую фразу, которая выводилась бы на экран. Затем он должен выбрать файл, который будет использоваться при выборе этой фразы, возможно, задав путь на диске и другую информацию.

Предположим, вы решили “просочиться” в компьютерную систему университета. В качестве начальной цели вы избрали общественный компьютер с текстовым редактором, электронными таблицами и телекоммуникационными возможностями. Когда кто-либо садится за компьютер и выбирает пункт меню “Телекоммуникации”, его, или ее, либо соединяют с главным сервером, либо спрашивают, с каким компьютером он (или она) хотел бы соединиться. Затем устанавливается соединение.

Так все должно выглядеть снаружи. На самом же деле, когда пользователь набирает “Т” для выбора телекоммуникаций из меню, меню запускает программу, которую вы подсадили в систему — вместо того, чтобы действительно войти в сеть.

Программа, которую вы “подсовываете”, должна выглядеть так, как будто она делает все то, что обычно происходит, когда кто-то выбирает из меню пункт “Телекоммуникации”. Например, она может спросить, с каким компьютером хотел бы соединиться пользователь, а затем сделать вид, что устанавливает соединение с этим компьютером. После этого программа выдает приглашения к вводу имени и пароля, и записывает эти замечательные слова на дискету!

Затем можно заставить программу выдавать сообщение об ошибке и возвращать пользователя в главное меню, но это будет выглядеть подозрительно, и заставит ответственных за систему людей повнимательнее присмотреться к установкам своего компьютера.

Лучше, если ваша маленькая моделирующая программка будет вызываться из ВАТ-файла. При ее использовании следующим шагом в ВАТ-файле может быть реальное соединение с системой. Можно заставить ВАТ-файл вводить имя и пароль, введенные пользователем, ликвидировав, таким образом, все странности. Или же пусть он выдает стандартное сообщение “пароль неверен”, а уже потом соединяется с сетью.

В других случаях опция “Телекоммуникации” может отсылать пользователя к коммерческому терминальному пакету, вроде ProComm Plus или SmartCom. И в данной ситуации вам тоже не составит труда создать вашу собственную ложную версию одной из этих программ. Но тут подстерегает ловушка. Когда пользователь войдет в вашу фальшивую терминальную программу, он должен будет выбрать телефонный номер из списка и попытаться связаться с ним. Пользователь будет весьма смущен и у него сразу же возникнут подозрения, если динамик будет включен, но не издаст ни единого звука, сопутствующего соединению! (Не забывайте, что вам каким-то образом придется заставить вашу программу выходить на связь, чтобы потом вы могли смоделировать вызванную сеть. После этого пользователь введет пароль, думая, что действительно подсоединился к сети.)

Наиболее разумный способ разрешения этой дилеммы — сделать так, чтобы программа выдавала экзотическое сообщение об ошибке, типа:

Operating Error 2130: Line Noise Interference Shut off your speaker and try again.

Конечно, это сообщение должно как можно больше походить на другие сообщения об ошибках, те, что на самом деле выдает терминальная программа.

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

Возможно, вам придется заставить компьютер просто выдать на экран кучу бессмысленных случайных символов после того, как имя и пароль будут введены. Постарайтесь, чтобы эта мешанина выглядела достоверно — что-то вроде помех на линии, с которыми время от времени приходится сталкиваться каждому — но не казалась чрезмерной. Пользователю придется отключиться практически немедленно. Если же он этого не сделает, или попытается сделать что-то другое, на экране компьютера должно появляться стандартное сообщение: “Logged off. Good bye!” В этот момент компьютер может загрузить настоящую терминальную программу, так что будет казаться, что ничего особенного не произошло.

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

А теперь давайте вернемся к программе меню.

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

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

Последний вариант уловки, связанной с меню — построение модели меню. Это означает, что, если вы окажетесь не в состоянии изменить уже существующее меню, вам придется написать программу, похожую на существующее меню, но с вашими дополнениями.

Глава 8. Защитное программирование. Книга \


Похожие статьи.

Понравилась статья? Поделиться с друзьями: