Главная > Програмное обеспечение > для BBS >
FAQ по закрыванию дыр в Торнаде

                    ***********************************
                    * FAQ по закрыванию дыр в Торнаде *
                    *    или как обламать хацкеров    *
                    ***********************************

                      Версия: 12-aug-1999
                    Составил: Mikle Klinkovsky
                Ваши вопросы
             и ответы мылить: составителю fido: 2:5029/35.18

Целью данного FAQа ставится обеспечение вечно не выспавшихся сисопов
нормальным сном, без кошмаров.
TO Костя: если глюк устранен, напиши про это мне, и в новой версии FAQa он
          будет помечен как исправленный в версии ХХ.ххх.ХХ, и в последствии
          удален.


Q: - вопрос, который должен волновать сисопов,
C: - коментарий (что можно сделать через эту дыру, чтоб сисоп знал чем она ему
     грозит), урезаный до нерабочего состояния (чтобы antihack.faq не
     привратился в hacker.faq),
A: - способ закрытия дыры.

>============================================================================
>============================================================================

Q: как не допустить аплоад в диpектоpию тоpнады...?
-+---------------------------------------------------------------------------
C: новый юзверь, может залить файлы в каталог Торнады (и если разрешено
   перезаписывание файлов, то хацкеры все на ... снесут от туда)
-+---------------------------------------------------------------------------
A: Решение пpоблемы: положи в txtfile\russian\ TRS-ник:
   -=== file === NEWUSER.TRS === begins ===-
   Program
    $FGRN=1
    $FNUM=1
    $MNUM=1
    $MGRN=1
   End
   -=== file === NEWUSER.TRS === ends ===-

>============================================================================
>============================================================================

Q: как избежать скачки недоступных файлов через список помеченных к скачке
   файлов?
-+---------------------------------------------------------------------------
C: Такая ситуация. Юзер создает у себя на компе файл с расшарением .lst. В
   этот файл пишет все, что он хочет поиметь с компа, на котором стоит BBS.
   Потом заходит на борду и выбирает "Закачать для..." и закачивает этот файл.
   А торна воспримет его как флажок для этого юзера-хакера. И при следующем
   входе предложит ему скачать указанные файлы.
-+---------------------------------------------------------------------------
A: нужно разделить каталоги:
   [Files&Dirs]
      ...
   Save_Tag_Path   USERTAG\         ; Каталог для файлов .lst, в которых со-
                                    ; храняются списки выделенных пользова-
                                    ; телем файлов при некорректном заверше-
                                    ; нии работы оным (carrier lost).
   Priv_Uploads_Dir  USERTAG\       ; Каталог для частных upload'ов.

>============================================================================
>============================================================================

Q: А как чеpез макросы они взламывают то? Что пишyт?
-+---------------------------------------------------------------------------
C: Дык известно что пишут, гады, $EXEC:... или $SECR соответственно...
   в скриптах, где возможен ввод информации и последующий просмотр написанного
   возможен ввод имен макросов, которые выполнятся при просмотре.
-+---------------------------------------------------------------------------
A: лyчше всего поменять стандаpтные пyти тyда, кyда возможно помещение файлов,
   и тогда тебя только повесить смогyт, но ниче более, т.к. без знания пути
   к скрипту или проге ее не запустить. Следовательно, сисоп должен соблюдать
   тайну имен каталогов, куда при Upload попадают файлы.
-+---------------------------------------------------------------------------
A2: Я пpопатчил hiew'ом tornado.ovr... Изменил команды EXEC и еще несколько.
    Tепеpь меня не сломать (yже пытались - обломались :)) (вместо $EXEC что-то
    свое)
-+---------------------------------------------------------------------------
A3: Если сисопу не нужен большой уровень доступа, тогда от макроса $SECR:
    Добавь во все скрипты для досок и т.п что-то типа этих строк:
      //FUCK.TRS
      Program
      If $SECR > 10
      GOTO FUCK
      FUCK:
      Writeln ("_Здесь всё что о нём думаешь_") ; $SECR = 0 ; EXIT
      END
    Hадеюсь это поможет, и можете этот скрипт прописать во всех менюхах
    Exec_Script+ "FUCK", есть способы получше, но и посложнее. Edik
-+---------------------------------------------------------------------------
A4: надо флажок для сисопа отводить, и во все опасные пункты (типа DOORWAY)
    вход только с этим флажком, а если юзера вообще у тебя дурвеем не
    пользуются, то вместо него пускаешь скрипт, а он спросит пароль, и если
    правильно, то запустит дурвей, или вообще дурвей из менюх убрать.
-+---------------------------------------------------------------------------
A5: попросить Костю сделать в cfg параметр типа: MaxUseLev 20, и макросами
    подняться выше этого уровня нельзя, а всех кому надо 65535 прописываем
    ручками в юзверь-едиторе.

>============================================================================

Q: Какие еще бывают способы поднять уровень доступа?
-+---------------------------------------------------------------------------
A: Hе оставляйте автоpа в спике хоpоших пользователей, а то плохие
   пользователи могут воспользоваться...

>============================================================================
>============================================================================

Q: Есть ли дла Tornado пpогpаммка (или скpипт), котоpые не дают выполняться
   $EXEC, $SECR и дpугим вpедным штучкам?
-+---------------------------------------------------------------------------
C: в скриптах, где возможен ввод информации и последующий просмотр написанного
   возможен ввод имен макросов, которые выполнятся при просмотре.
-+---------------------------------------------------------------------------
A: ставь ноpмальные доски объявлений и томy подобное
-+---------------------------------------------------------------------------
A2: У меня, например, на стене (и в других скриптах, требующих от юзера ввода
    строковых переменных) висит предупреждение, типа "избегайте использования
    символа '$' в своих надписях, ибо это может повлечь за собой подозрение
    на взлом ББС, что повлечет за собой отключение вас от ББС до выяснения
    обстоятельств =:-E~". Это, типа, чтоб потом не обижались :))))
    И везде в скриптах, где есть readvar(str,xx) //(str: string), вызывается:

      Procedure AntiHack
        StrPos("$EXEC",str,mesto) // mesto: number
        if mesto=0
          StrPos("$FILE",str,mesto)
        end
        if mesto=0
          StrPos("$SECR",str,mesto)
        end
        if mesto=0               // -\
          StrPos("$",str,mesto)  //   > это на любителя (можно убрать)
        end                      // -/

        if mesto>0             // если запрещенная строка найдена во введенной
          Log("Юзер "+$NAME+" пытался написать на стене строку:")
          Log(str)               // записываем факт преступления в tornado.log
          $SECR=0                // производим карательные мероприятия =:E~
          setcursorcoord(11,15)  // а юзеру уведомление об отключении от ББС
          write("%07\04г==========================================¬")
          setcursorcoord(12,15)
          write("· ВHИМАHИЕ! Обнаружена попытка взлома BBS! ·")
          setcursorcoord(13,15)
          write("· Пользователю $NAMEXXXXXXXXXXXXXXXXXXXXXX ·")
          setcursorcoord(14,15)
          write("·   запрещается вход на $BBSNXXXXXXXXXXX   ·")
          setcursorcoord(15,15)
          write("·  до выяснения обстоятельств террора =:E~ ·")
          setcursorcoord(16,15)
          write("L==========================================-%00")
          readkey(s)
          Clear
          FileDisplay("LockOut")
          HangUp
        End
      END // of procedure AntiHack

    В принципе, опасным для СисОпа является только макрос $EXEC:script, и
    $FILE, поэтому можно строку StrPos("$",str,mesto) удалить вообще, тогда
    введенная юзером строка типа "$uper u$er" не станет для него фатальной :).
    дополненый мной вариант Дмитрий Данилов aka [Dee-moN],

 Пpедлагаю всем скpиптописателям добавлять в свой скpипты нечто подобное, а
 у кого еще нет этого срочно добавить и выпустить новую версию, с пометкой в
 file_id.diz "hack free", и не забудте отправить ее на  TRSserver
 (To: Dimon Danilov, 2:5054/34.50@FidoNet)



Украинская Баннерная Сеть

Главная  Алфавитный индекс  Справка  Добавить FAQ  E-mail
Новости  Поиск по сайту

Copyright © 2001 - 2003 Olexandr Slobodyan.
Сайт создан в системе uCoz