Денис Ферри - Секреты супер хакера
Снаряжение для взлома компьютеров общественного ДОСТУПА
Прежде чем отправляться в экспедицию на взлом общественных компьютеров, подготовьте и захватите с собой ваш 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!» В этот момент компьютер может загрузить настоящую терминальную программу, так что будет казаться, что ничего особенного не произошло.
Как правило, на общественных компьютерах не бывает коммерческих терминальных пакетов, в основном потому, что если они есть, люди приходят и начинают звонить чуть ли не всему свету. Но они могут оказаться в офисах и конторах, значит, решив отправиться «на местность», не забудьте прихватить с собой эти идеи.
А теперь давайте вернемся к программе меню.
Программа меню необязательно является коммерческой версией. Она может быть создана на месте, либо написана на интерпретируемом языке вроде Бэйсика. Она может представлять собой и обычный ВАТ-файл.
Если вы столкнулись с одним из вышеперечисленных случаев, вам удастся без особенных усилий изменить саму программу меню, либо создав подпрограммы, в которых будут храниться имена и пароли, либо добавив опцию телекоммуникаций, если таковая отсутствует.