none
Узнать о несанкционированом копировании. Или защита информации. (VBS) RRS feed

  • Вопрос

  • Поставлена задача предотвратить копирование всех файлов из ЛВС.
    Как частный случай - вижу создание некоторых файлов - ловушек, которые не нужны в работе, но при этом злоумышленник будет их копировать, так как ему нужно всё и сразу. Все файлы лежат на DFS, DFS дерево раскинулось на 3-х серверах.
    Отсюда вопрос, как можно решить задачу при помощи VBS?

    p.s. Для любопытных - это файлы Гарант и Консультант. Т.к. был прецедент я ловил пару человек за этим делом. Хочется как-то автоматизировать процесс.
    4 октября 2009 г. 12:12

Все ответы

  • про аудит думали?

    в свое время я эту проблему решал следующим образом
    1. включается ацдит
    2. по нужной маске скриптом делается выборка нужных событий из журнала безопасности
    3. события пишутся в БД
    4. на таблице поставлен триггер который отправляет письмо со сводкой того что добавлено.

    единственная сложность в том что ресурс придется выносить на отдельный сервер, в моем случае этот сервер был виртуальным.
    blog.wadmin.ru
    4 октября 2009 г. 12:28
  • Ну, если дело исключительно в Гаранте и Консультанте, то рассмотрите вариант их запуска только на терминальном сервере с возможностью распечатать документ, но без возможности сохранить его локально. В общем случае ваша задача решается внедрением политики ограничения использования USB-устройств, гибких дисков и т.п., возможно, с применением внешнего ПО типа ZLock/DeviceLock.

    В дополнение к предыдущему ответу, отмечу, что излишние ограничения вредят работе. Уже самим фактом приема на работу сотруднику оказывается определенное доверие, поэтому не стоит ограничивать его во всем. Напротив, эффективный аудит - если сотрудники оповешены о нем - является сдерживающим фактором от использования корпоративной информации в личных целях.
    4 октября 2009 г. 19:07
    Модератор
  • Терминальный сервер:
    - цена вопроса возрастает (нужны терминальные лицензии)
    - неудобно работать с документами (сама сессия + копирование из в терминале на локальный компьютер)

    На счет эффективного аудита - такое решение меня устроит. Т.к. база файлы большие и в течение рабочего дня работник никуда е убежит и его вполне себе можно будет обнаружить.
    5 октября 2009 г. 2:40
  • Аудит-то где включать?
    1) На 3-х DFS серверах
    2) На специальном одном Log сервере
    3) На всех рабочих станциях

    Ответ для меня не очевиден.

    Еще вопрос, как чистить журнал безопасности, чтобы он не переполнялся.
    5 октября 2009 г. 2:42

  • единственная сложность в том что ресурс придется выносить на отдельный сервер, в моем случае этот сервер был виртуальным.

    Мысль отягощающая карман дополнительными CAL лицензиями. Либо.... эээ..
    В общем таки да - спасибо за мысль, подумаю о выносе в сторону Офтопиковой OS, там вроде даже контроль можно было организовать.
    5 октября 2009 г. 2:46
  • Аудит-то где включать?
    1) На 3-х DFS серверах
    2) На специальном одном Log сервере
    3) На всех рабочих станциях

    Ответ для меня не очевиден.

    Еще вопрос, как чистить журнал безопасности, чтобы он не переполнялся.

    Аудит включается глобально в политике на сервере (у вас их три), а затем на защищаемом объекте. После чего будут записи в журнале аудита.
    http://support.microsoft.com/default.aspx/kb/300549
    Сазонов Илья http://www.itcommunity.ru/blogs/sie-wl/
    5 октября 2009 г. 5:52
    Модератор
  • Аудит-то где включать?

    Ответ для меня не очевиден.

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

    http://technet.microsoft.com/ru-ru/library/cc163127.aspx
    http://technet.microsoft.com/ru-ru/library/cc163121.aspx
    http://technet.microsoft.com/ru-ru/library/cc776774%28WS.10%29.aspx

    Аудит для локально файла или папки

    http://technet.microsoft.com/ru-ru/library/cc784387%28WS.10%29.aspx

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


    Если ответ Вам помог, нажмите на изображение зеленой галочки - «пометить как ответ». Если ответ был для Вас полезен, Вы можете пометить это сообщение как «полезное», нажав на ссылку "проголосовать за полезное сообщение".
    5 октября 2009 г. 6:07
  • На всякий случай, добавлю по аудиту:
    - аудит не предотвращает копирование информации. Он только сообщает пост-фактум, что доступ на чтение состоялся;
    - аудит бесполезен, если не читать его журналы и не разбирать КАЖДЫЙ случай доступа к файлам. А доступ будет осуществляться ПОСТОЯННО, люди же работают.

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

    Технология - не панацея. Нет технических средств, способных дать информацию для чтения, но предотвратить её копирование. Ни VBS, ни DFS.
    5 октября 2009 г. 6:46
    Отвечающий
  • 'On Error Resume Next
    
    keyFile = "E:\Garant\data.6t0"
    
    Set objConnection = GetObject("WinNT://./LanmanServer")
    
    Do While(True)
    Set colResources = objConnection.Resources
    For Each objResource in colResources
        If objResource.Path = keyFile Then
          killSession(objResource.User)
        End If
    Next
    Wscript.Sleep(1000)
    Loop
    
    Sub killSession(killUser)
    Set colSessions = objConnection.Sessions
    For Each objSession in colSessions
        If objSession.User = killUser Then
        colSessions.Remove(objSession.Name)
        SendPost("192.168.0.1","EMAIL REMOVED","EMAIL REMOVED", _
           "Несанкционированный доступ","Несанкционированный доступ от " & objSession.Name)
        End If
    Next
    End Sub
    
    Function SendPost(strSMTP_Server, strTo, strFrom, strSubject, strBody)
        Set iMsg = CreateObject("CDO.Message")
        iMsg.Bodypart.Charset = "windows-1251" ' выставляем кодировку 
        Set iConf = CreateObject("CDO.Configuration")
        Set Flds = iConf.Fields
        Flds.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        Flds.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = strSMTP_Server
        Flds.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 20
        Flds.Update
        iMsg.Configuration = iConf
        iMsg.To = strTo
        iMsg.From = strFrom
        iMsg.Subject = strSubject
        iMsg.TextBody = strBody
        iMsg.Send
    End Function
    


    Создаем в папке фальшивый файл большого размера и запускаем через планировщик скрипт (скрипт с бесконечным циклом, так чо запускаем один раз). В процессе копирования этого файла пользователю рубится сессия и посылается отчет. Тестировал по кусочкам. Пользуйтесь.
    6 октября 2009 г. 8:37