Безопасность Microsoft Office: макросы VBA / Хабр

Безопасность Microsoft Office: макросы VBA / Хабр Сертификаты

15 лучших онлайн-курсов обучения excel (эксель) | бесплатные и платные 2020-2021

Абсолютная и относительная запись макроса

Вы уже знаете про абсолютные и относительные ссылки в Excel? Если вы используете абсолютную ссылку для записи макроса, код VBA всегда будет ссылаться на те же ячейки, которые вы использовали. Например, если вы выберете ячейку A2 и введете текст “Excel”, то каждый раз – независимо от того, где вы находитесь на листе и независимо от того, какая ячейка выбрана, ваш код будет вводить текст “Excel” в ячейку A2.

Если вы используете параметр относительной ссылки для записи макроса, VBA не будет привязываться к конкретному адресу ячейки. В этом случае программа будет “двигаться” относительно активной ячейки. Например, предположим, что вы уже выбрали ячейку A1, и вы начинаете запись макроса в режиме относительной ссылки. Теперь вы выбираете ячейку A2, вводите текст Excel и нажмите клавишу Enter. Теперь, если вы запустите этот макрос, он не вернется в ячейку A2, вместо этого он будет перемещаться относительно активной ячейки. Например, если выбрана ячейка B3, она переместится на B4, запишет текст “Excel” и затем перейдет к ячейке K5.

Теперь давайте запишем макрос в режиме относительных ссылок:

  1. Выберите ячейку A1.
  2. Перейдите на вкладку “Разработчик”.
  3. В группе “Код” нажмите кнопку “Относительные ссылки”. Он будет подсвечиваться, указывая, что он включен.
    Запишите макрос в Excel - используя «Относительные ссылки»
  4. Нажмите кнопку “Запись макроса”.
    Нажмите кнопку «Запись макроса» на вкладке «Разработчик».
  5. В диалоговом окне “Запись макроса” введите имя для своего макроса. Например,  имя “ОтносительныеСсылки”.
    Записать макрос в Excel - имя макроса
  6. В опции “Сохранить в” выберите “Эта книга”.
  7. Нажмите “ОК”.
  8. Выберите ячейку A2.
  9. Введите текст “Excel” (или другой как вам нравится).
  10. Нажмите клавишу Enter. Курсор переместиться в ячейку A3.
  11. Нажмите кнопку “Остановить запись” на вкладке “Разработчик”.

Макрос в режиме относительных ссылок будет сохранен.

Теперь сделайте следующее.

  1. Выберите любую ячейку (кроме A1).
  2. Перейдите на вкладку “Разработчик”.
  3. В группе “Код” нажмите кнопку “Макросы”.
  4. В диалоговом окне “Макрос” кликните на сохраненный макрос “ОтносительныеСсылки”.
  5. Нажмите кнопку “Выполнить”.

Как вы заметите, макрос записал текст “Excel” не в ячейки A2. Это произошло, потому что вы записали макрос в режиме относительной ссылки. Таким образом, курсор перемещается относительно активной ячейки. Например, если вы сделаете это, когда выбрана ячейка B3, она войдет в текст Excel – ячейка B4 и в конечном итоге выберет ячейку B5.

Вот код, который записал макрорекодер:

Sub ОтносительныеСсылки()
'
' ОтносительныеСсылки Макрос
'

'
    ActiveCell.Offset(1, 0).Range("A1").Select
    ActiveCell.FormulaR1C1 = "Excel"
    ActiveCell.Offset(1, 0).Range("A1").Select
End Sub

Обратите внимание, что в коде нет ссылок на ячейки B3 или B4. Макрос использует Activecell для ссылки на текущую ячейку и смещение относительно этой ячейки.

Не обращайте внимание на часть кода Range(«A1»). Это один из тех случаев, когда макрорекодер добавляет ненужный код, который не имеет никакой цели и может быть удален. Без него код будет работать отлично.

Встроенные механизмы противодействия макровирусам

Можно выделить два основных вопроса безопасности, которые необходимо решить при разработке архитектуры собственного макроязыка:

* К чему могут иметь доступ макросы* Могут ли макросы распространяться как составная часть документов.

Если рассмотреть архитектуру макросов VBA от Microsoft, описанную выше, становится очевидно, что оба эти вопроса решены неправильно. Это привело к тому, что открытие документа Microsoft Office c макросами равносильно запуску обычного исполняемого файла.

Таким образом, документы Microsoft Office с макросами:

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

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

Два механизма безопасности интегрированы непосредственно в приложения Microsoft Office:

* Защищенный режим просмотра* Политики запрета исполнения макросов VBA.

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

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

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

На уровне приложения в ОС Microsoft Windows предоставляет следующие возможности изоляции процесса:

* Ограничения токена (маркера доступа) процесса* Ограничения GUI-подсистемы* Ограничения объекта Job для процесса.

Изоляция процесса офисного приложения, отображающего документ, реализуется при помощи всех этих трех механизмов.

Безопасность Microsoft Office: макросы VBA / Хабр
Примерная схема работы защищенного режима просмотра документов Microsoft Office

Запись макроса в excel

Теперь давайте запишем очень простой макрос, который выбирает ячейку и вводит в нее текст, например “Excel”.

Вот шаги для записи такого макроса:

  1. Перейдите на вкладку “Разработчик”.
  2. В группе “Код” нажмите кнопку “Запись макроса”. Откроется одноименное диалоговое окно.
    Кнопка «Запись макроса» на вкладке разработчика в ленте
  3. В диалоговом окне “Запись макроса” введите имя для своего макроса, например “ВводТекста”. Есть несколько условий именования, которые необходимо соблюдать при назначении макроса. Например, вы не можете использовать пробелы между ними. Обычно я предпочитаю сохранять имена макросов как одно слово, с разными частями с заглавным первым алфавитом. Вы также можете использовать подчеркивание для разделения двух слов – например, “Ввод_текста”.
    Имя макроса в диалоговом окне
  4. Если вы хотите, то можете задать сочетание клавиш. В этом случае мы будем использовать ярлык Ctrl Shift N. Помните, что сочетание, которое вы указываете, будет отменять любые существующие горячие клавиши в вашей книге. Например, если вы назначили сочетание Ctrl S, вы не сможете использовать это для сохранения рабочей книги (вместо этого, каждый раз, когда вы его используете, он выполняет макрос).
    Запись макроса в Excel - назначение ярлыка в диалоговом окне
  5. В поле “Сохранить в” убедитесь, что выбрана опция “Эта книга”. Этот шаг гарантирует, что макрос является частью рабочей книги. Он будет там, когда вы сохраните его и снова откроете, или даже если вы поделитесь файлом с кем-то.
    Записать макрос в Excel - сохранить макрос в этой книге
  6. Введите описание при необходимости. Обычно я этого не делаю, но если у вас много макросов, лучше указать, чтобы в будущем не забыть что делает макрос.
  7. Нажмите “ОК”. Как только вы нажмете OK, Excel начнет записывать ваши действия. Вы можете увидеть кнопку “Остановить запись” на вкладке “Разработчик”, которая указывает, что выполняется запить макроса.
  8. Выберите ячейку A2.
  9. Введите текст “Excel” (или вы можете использовать свое имя).
  10. Нажмите клавишу Enter. Вы попадете на ячейку A3.
  11. Нажмите кнопку “Остановить запись” на вкладке “Разработчик”.
    Записать макрос в Excel - Остановить запись

Поздравляем! Вы только что записали свой первый макрос в Excel. Хотя макрос не делает ничего полезного, но он поможет нам понять как работает макрорекордер в Excel. 

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

  1. Удалите текст в ячейке A2. Это нужно, чтобы проверить будет ли макрос вставлять текст в ячейку A2 или нет.
  2. Выберите любую ячейку – кроме A2. Это нужно проверить, выбирает ли макрос ячейку A2 или нет.
  3. Перейдите на вкладку “Разработчик”.
  4. В группе “Код” нажмите кнопку “Макросы”.
  5. В диалоговом окне “Макрос” щелкните макрос “ВводТекста”.
  6. Нажмите кнопку “Выполнить”.
    Записать макрос в Excel

Вы увидите, что как только вы нажмете кнопку “Выполнить”, текст “Excel” будет вставлен в ячейку A2 и выбрана ячейка A3. Это происходит за миллисекунды. Но на самом деле макрос последовательно выполнил записанные действия.

Примечание. Вы также можете запустить макрос с помощью сочетания клавиш Ctrl Shift N (удерживайте клавиши Ctrl и Shift, а затем нажмите клавишу N). Это тот же самый ярлык, который мы назначили макросу при его записи.

Как реализована поддержка vba

Причиной появления архитектуры VBA в том виде, в котором она известна нам сегодня, скорее всего, стала оптимизация компанией Microsoft затрат на разработку языка и самого движка макросов. За основу был взят готовый интерпретатор скриптового языка с возможностями, существенно превышающими требования, предъявляемые к макроязыкам офисных документов.

Про сертификаты:  Подарочный сертификат на заезды на квадроцикле (восток, юг Подмосковья)

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

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

Производитель утверждает, что макросы VBA в приложениях Office под Mac OS выполняются внутри песочницы, без доступа к системным функциям, файловой системе и другим приложениям. Однако с учетом того, что интерпретатор VBA под эту ОС разработан не так давно, исследователей безопасности вполне могут ожидать интересные находки в этом направлении.

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

Обычно виртуальная машина VBEx (x — номер версии) устанавливается вместе с офисным пакетом и располагается в %CommonProgramFiles%microsoft sharedVBA«подпапка с версией». Она представляет собой несколько DLL библиотек и библиотек с ресурсами. Библиотеки загружаются в адресное пространство процесса приложения, которое выполняет макросы документа.

Код, созданный в редакторе VBA, сохраняется внутри файла документа. Документы современного формата Office Open XML, содержащие макросы, должны иметь специальное расширение (“.docm”,”.dotm”,”.xlm”,”.xltm”, …), в противном случае приложение откажется их открывать. Внутри zip-архива документа проект VBA хранится в файле-хранилище CFBF.

В документах устаревшего формата (.doc, .xls, .ppt, …), представляющих собой CFBF, VBA сохраняется в хранилище второго уровня «Macros», формат которого аналогичен предыдущему.

В этом случае по названию (расширению имени файла) или значку пользователь никак не определит, что документ может содержать макросы.

Microsoft любезно опубликовала спецификацию формата хранения проектов VBA в документах Office: [MS-OVBA]. Как и следовало ожидать, многие интересные поля структур описаны в спецификации приблизительно следующим образом:

MUST be ignored on read. MUST not be present on write.

Тем не менее, при желании можно выяснить, что кроме исходного кода VBA в файл хранилища записывается также скомпилированый так называемый p-code (packed code). Формат этого промежуточного кода для виртуальной машины зависит от версии VBA. Если документ открыт в приложении, использующем ту же версию виртуальной машины, p-code будет загружен и выполнен, а исходный код проигнорирован.

Любопытно заметить, что, если формат p-code частично доступен антивирусным компаниям на условиях Non Disclosure Agreement, то о формате Performance Cache, называемом в ряде источников также Execode, практически неизвестно (основываясь на некоторых прецедентах можно даже предположить, что неизвестно и самой компании Microsoft).

Подобная техника дает определенную свободу действий создателям макровирусов и влечет за собой дополнительные сложности для антивирусных сканеров: в зависимости от версии пакета и виртуальной машины может быть скомпилирован исходный код, использован p-code либо загружен Performance Cache, которые совершенно необязательно могут соответствовать один другому.

При открытии документов, содержащих проекты VBA, приложение создает временный файл-хранилище, в который копирует директории VBA. Копирование осуществляется средствами системного Structured Storage API, непосредственно с содержимым хранилища на этом этапе приложения Office не взаимодействуют.

Курс магистр microsoft excel 2021 в «специалист»

Код курса: Т-ЭКСЕЛЬ-М

09.01.03 Мастер по обработке цифровой информации

Центр «Специалист» представляет комплексную программу обучения «Магистр Microsoft Excel».

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

После обучения Вы сможете уверенно использовать Microsoft Excel в работе с документами и расчетами: проводить сложные вычисления, анализировать данные, визуализировать их в таблицах и диаграммах. Эти навыки помогут оперативно обрабатывать большие объемы данных и использовать все встроенные функции Excel и макросы.

Вы освоите современные инструменты для анализа данных: PowerPivot, PowerQuery и PowerMap. Вы сможете загружать данные из внешних источников, создавать связи между таблицами, выполнять расчеты и строить DAX-формулы. Вы изучите инструменты оптимизации, программирование на VBA, средства и способы прогнозирования, проверку вариантов развития событий (сценариев).

Обучение по комплексной программе «Магистр Microsoft Excel» позволит сэкономить время на проведении однотипных вычислений. Вы научитесь управлять файлами из Excel, передавать данные в другие программы и обрабатывать данные в рабочих книгах в один клик.

Комплексная программа обучения — уникальное предложение Центра «Специалист» именно для Вас! Оплата комплексной программы обучения даст Вам заметную экономию по сравнению с оплатой входящих в нее курсов по отдельности. Получайте знания и экономьте деньги!

Обучение по программе «Магистр Excel» даст Вам уникальные преимущества:

А главное – Вы станете настоящим гроссмейстером таблиц, формул и диаграмм!

В зависимости от программы обучения выдаются следующие документы:

*Для получения удостоверения вам необходимо предоставить копию диплома о высшем или среднем профессиональном образовании.

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

Обязательно уточняйте перед заключением договора, какой документ Вам будет выдан после окончания обучения!

Все документы Центра

§

§

§

§

Обход методов противодействия макровирусам

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

На форумах соответствующей тематики можно встретить объявления о создании «индивидуальных дизайнерских решений» для оформления документов, призванных убедить пользователя включить активное содержимое. Стоимость таких решений может быть значительной, а эффективность, по мнению авторов, доходит до 60%.

Эксплуатируется желание пользователя поскорее получить информацию из документа. Из-за этого многие, даже не думая, разрешают исполнение макросов. Формирование внешнего вида и содержимого таких документов зависит уже исключительно от фантазии злоумышленников и основано на незнании типичными пользователями сложных возможностей макроязыка VBA, приводящих к заражению системы вредоносным ПО.

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

Есть и еще один неочевидный нюанс, который представляет собой значительную брешь в безопасности. В памяти программы Office содержится «свойство» AutomationSecurity — переменная, содержащая настройки безопасности для активного содержимого, в том числе для макросов и элементов ActiveX.

Если приложение было запущено пользователем стандартным способом, например, значком на рабочем столе или открытием документа, эта переменная будет соответствовать настройкам, выставленным пользователем в окне «Центра безопасности» или администратором при помощи шаблонов.

Если же приложение запущено как клиент Автоматизации, из скрипта или другого приложения (к примеру, приложения для бухучета), переменная AutomationSecurity будет содержать минимальное значение «msoAutomationSecurityLow». В результате при обработке автоматизированным приложением какого-либо документа будут выполнены и содержащиеся в документе VBA-программы, если только программист специально не изменил переменную на msoAutomationSecurityByUI или msoAutomationSecurityForceDisable.

Примеры синтаксиса

' Процедура. Ничего не возвращает
' Перегрузка в VBA отсутствует
Sub foo(a As String, b As String)
' Exit Sub ' Это значит "выйти из процедуры"
    MsgBox a   ";"   b
End Sub

' Функция. Вовращает Integer
Function LengthSqr(x As Integer, y As IntegerAs Integer
' Exit Function
    LengthSqr = x * x   y * y
End Function

Sub FormatPrice()
Dim s1 As String, s2 As String
s1 = "str1"
s2 = "str2"
If s1 <> s2 Then
foo "123""456" ' Скобки при вызове процедур запрещены
    End If

    Dim res As sTRING ' Регистр в VB не важен. Впрочем, редактор Вас поправит
    Dim i As Integer
' Цикл всегда состоит из нескольких строк
    For i = 1 To 10
res = res   CStr(i) ' Конвертация чего угодно в String
        If i = 5 Then Exit For
Next i

    Dim x As Double
x = Val("1.234"' Парсинг чисел
    x = x   10
MsgBox x

    On Error Resume Next ' Обработка ошибок - игнорировать все ошибки
    x = 5 / 0
MsgBox x

    On Error GoTo Err ' При ошибке перейти к метке Err
    x = 5 / 0
MsgBox "OK!"
GoTo ne

Err:
MsgBox "Err!"

ne:
On Error GoTo 0 ' Отключаем обработку ошибок

' Циклы бывает, какие захотите
    Do While True
Exit Do

    Loop 'While True
    Do 'Until False
        Exit Do
Loop Until False
' А вот при вызове функций, от которых хотим получить значение, скобки нужны.
    ' Val также умеет возвращать Integer
    Select Case LengthSqr(Len("abc"), Val("4"))
Case 24
MsgBox "0"
Case 25
MsgBox "1"
Case 26
MsgBox "2"
End Select

    ' Двухмерный массив.
    ' Можно также менять размеры командой ReDim (Preserve) - см. google
    Dim arr(1 to 10, 5 to 6) As Integer
arr(1, 6) = 8

    Dim coll As New Collection
Dim coll2 As Collection
coll.Add "item""key"
Set coll2 = coll ' Все присваивания объектов должны производится командой Set
    MsgBox coll2("key")
Set coll2 = New Collection
MsgBox coll2.Count
End Sub

Процедура while

Используется в коде, если надо сделать одинаковые действия несколько раз подряд до тех пор, пока выполняется какое-либо условие. Синтаксис процедуры While:

Do While <условие, которое должно быть верным для выполнения процедуры>

 <список команд>

Loop

Условие может состоять из одного выражения или содержать несколько, перечисленных через оператор AND (то есть оба условия должны быть выполнены) или OR (достаточно выполнения только одного из перечисленных условий). Также условие обязательно должно содержать переменную-счетчик (это может быть номер строки или столбца ячейки, значения которой вы проверяете).

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

Если макрос ушел в цикл, прервите его с помощью комбинации клавиш Ctrl Break и либо прекратите макрос (кнопка End), либо зайдите в код макроса и исправьте ошибку (кнопка Debug). Чтобы макрос не уходил в цикл, рекомендуется включить в блок условий «защиту от дурака».

Рассмотрим применение процедуры While для поиска конца отчета БДР.

Как видно на рис. 4, последняя строка отчета имеет код «500». Напишем процедуру, которая будет проверять значения в ячейках столбца «А» и остановит свои действия, когда найдет ячейку с кодом «500».

Обратите внимание!

Excel иногда воспринимает числа как текст, поэтому включим два условия проверки значения ячейки и добавим «защиту от дурака» на случай, если в форме отчета случайно затрется код последней строки.

Помним, что все текстовые значения надо брать в кавычки. Числа записываем без кавычек:

‘ Ищем последнюю строку отчета

Dim Row_End As Integer     ‘ Вводим переменную «счетчик номера строки»

Row_End = 1             ‘ Присваиваем ей номер 1

‘ Начинаем процедуру поиска последней строки отчета по коду «500»

Do While Cells(Row_End, 1).Value <> “500” And Cells(Row_End, 1).Value <> 500 And Row_End < 100

‘ До тех пор, пока код не равен 500 и номер строки меньше 100, выполняем наращивание счетчика

Row_End = Row_End 1

Loop

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

Теперь заменим в изначальном коде макроса номер последней ячейки (34) на переменную Row_End. Число 34 было частью текста А1:С34, а теперь нам надо часть текста заменить на переменную. Делается это с помощью символа амперсанд &:

“текст” & переменная & “текст”.

В нашем случае ссылка на диапазон А1:С34 будет записана так: А1:С & Row_End.

Кроме того, вспоминаем, что и название отчета Бюджет на январь у нас тоже теперь содержит параметр и будет записываться так: Бюджет на & Mes.

Не забывайте оставлять пробелы в кавычках перед переменной-словом, иначе текст сольется.

Еще раз взглянем на получившийся код макроса:

Sub Форматирование_БДР()

‘ Макрос выделяет жирным курсивом итоги, форматирует отчет на печать

‘ —————–

‘ Запрашиваем у пользователя месяц отчета

Mes = InputBox(“Введите название месяца отчета”, , “Январь”)

‘ Ищем последнюю строку отчета

Dim Row_End As Integer     ‘ Вводим переменную «счетчик номера строки»

Row_End = 1             ‘ Присваиваем ей номер 1

‘ Начинаем процедуру поиска последней строки отчета по коду «500»

‘ Критичным значением для «защиты от дурака» принимаем номер строки 100

Do While Cells(Row_End, 1).Value <> “500” And Cells(Row_End, 1).Value <> 500 And Row_End < 100

‘ До тех пор, пока код не равен 500 и номер строки меньше 100, выполняем наращивание счетчика

Row_End = Row_End 1

Loop

‘ Выделяем столбцы и ставим фильтр на КОД

 Columns(“A:C”).Select

 Selection.AutoFilter

 ActiveSheet.Range(“$A$1:$C$” & Row_End).AutoFilter Field:=1, Criteria1:=”<>*.*”, _

 Operator:=xlAnd

‘ Выделяем отфильтрованный диапазон полужирным шрифтом, снимаем фильтр

 Range(“A1:C” & Row_End).Select

 Selection.Font.Bold = True

 Selection.AutoFilter

‘ Форматируем на печать: верхний колонтитул, центрирование по горизонтали, масштаб 75 %

 With ActiveSheet.PageSetup

 .CenterHeader = “Бюджет на ” & Mes

 .CenterHorizontally = True

 .Zoom = 75

 End With

End Sub

Теперь макрос стал более универсальным. Добавим в него еще одну «защиту от дурака».

Если нам принципиально, правильно ли макрос нашел последнюю строку отчета, после окончания процедуры While (строка Loop) можно добавить блок проверки значения Row_End и запроса у пользователя подтверждения на продолжение макроса.

Для этого изучим функцию MsgBox, процедуру IF и команду Exit Sub.

Сертификация microsoft office specialist (mos)

Политика в области обработки и защиты персональных данных

Настоящий документ (далее – Политика) устанавливает принципы, цели, условия и способы обработки персональных данных Лицензиата Лицензиаром и является неотъемлемой частью Оферты, размещенной по адресу: my-sertif.ru

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

В остальных случаях термины и определения, закрепленные в Оферте, должны соответствующим образом толковаться в рамках Политики. В случае наличия противоречий между Политикой и иными официальными документами Лицензиара применению подлежит настоящая Политика.

1.Общие положения

1.1.Политика разработана в соответствии с действующим законодательством Российской Федерации о персональных данных.

1.2.Действие Политики распространяется на все осуществляемые Лицензиаром и связанные с обработкой персональных данных процессы, как с использованием средств автоматизации, в том числе в сети Интернет, так и без использования таких средств. К таким процессам в том числе могут относятся сбор, запись, систематизация, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передача (распространение, предоставление, доступ), обезличивание, блокирование, удаление и уничтожение персональных данных.

1.3.Присоединяясь к Оферте, Лицензиат дает согласие на

1.3.1.Обработку своих персональных данных в целях и способами, предусмотренными Политикой.

1.3.2.Передачу персональных данных платежным системам и организациям при оплате Тарифа с использованием Сайта.

1.3.3.Получение от Лицензиара информационных сообщений о вебинарах, обновлениях Платформы, обучающей информации.

1.4.Лицензиар не проверяет достоверность предоставленных Лицензиатом персональных данных, рассчитывая на добросовестность и разумность Лицензиата.

2.Состав обрабатываемой информации

2.1.В состав обрабатываемой информации входит:

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

2.1.2.Техническая и статистическая информация:

2.1.2.1.IP-адрес компьютера Лицензиата и время доступа.

2.1.2.2.Сведения о посещенных разделах Сайта.

2.1.2.3.Информация, предоставляемая браузером Лицензиата, в том числе тип устройства, версия браузера, операционная система и пр.

2.1.2.4.Номер телефона при осуществлении Лицензиатом звонка на телефонные номера, указанные на Сайте.

2.1.2.5.Адрес электронной почты, при направлении Лицензиатом электронных писем Лицензиару.

2.1.3.Информация о действиях Лицензиата, к которой относятся:

2.1.3.1.Сведения о направленных запросах, вопросах.

3.Цели обработки персональных данных

3.1.Главной целью Политики является обеспечение защиты информации о Лицензиате, в том числе персональных данных, от несанкционированного доступа и разглашения. Также целью Политики является надлежащее выполнение обязательств Лицензиара перед Лицензиатом в рамках Оферты и иных договоров, которые могут быть заключены между Лицензиатом и Лицензиаром.

3.2.Лицензиат соглашается с тем, что Лицензиар также может использовать его персональные данные в целях:

3.2.1.Обработки писем от Лицензиата.

3.2.2.Связи с Лицензиатом, в том числе для направления ответов, уведомлений, решений, запросов и иной информации, связанной с исполнением Оферты.

3.2.3.Улучшения качества Платформы, удобства ее использования и разработки новых продуктов.

3.2.4.Разрешения споров, сбора отзывов и выявления неисправностей.

3.2.5.Сравнения персональных данных для подтверждения их точности и проверки их третьими лицами в случаях, предусмотренных законодательством.

3.2.6.Предотвращения случаев мошенничества и других злоупотреблений, а также для расследования таких случаев.

3.2.7.Проведения статистических и иных исследований, на основе обезличенных данных.

4.Принципы обработки персональных данных

Обработка персональных данных осуществляется основываясь на следующих принципах:

4.1.Законность и справедливая основа обработки персональных данных.

4.2.Обработка персональных данных в соответствии с конкретными, заранее определенными и законными целями.

4.3.Не допущение объединения баз данных, содержащих персональные данные, обработка которых осуществляется в целях, несовместимых между собой.

4.4.Соответствие содержания и объема персональных данных заявленным целям обработки.

4.5.Точность, достаточность, актуальность и достоверность персональных данных.

4.6.Законность технических мер, направленных на обработку персональных данных.

4.7.Разумность и целесообразность обработки персональных данных.

4.8.Законный и разумный срок хранения персональных данных.

5.Обработка персональных данных

5.1.Лицензиар производит обработку персональных данных своими силами и средствами с согласия Лицензиата. Обработка персональных данных Лицензиата начинается с момента их получения.

5.2.Сбор персональных данных осуществляется следующими способами:

5.2.1.Предоставление персональных данных их субъектами при заполнении соответствующих форм на Платформе и направлении электронных писем Лицензиару.

5.2.2.Автоматический сбор информации о Лицензиате:

5.2.2.1.При совершении звонков по номерам телефонов, указанным на Платформе, или направлении электронных писем и обратной связи по электронным письмам Лицензиара.

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

5.3.Хранение и использование персональных данных.

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

5.3.2.Персональные данные Лицензиата хранятся исключительно должным образом на защищенных электронных носителях и обрабатываются с использованием автоматизированных систем, за исключением случаев, когда неавтоматизированная обработка персональных данных необходима в соответствии с законодательством Российской Федерации. Лицензиар при обработке персональных данных Лицензиата применяет базы данных на территории Российской Федерации.

5.4.Передача персональных данных.

5.4.1.Данные банковской карты передаются только в зашифрованном виде и не сохраняются на Сайте. Все операции с платежными картами происходят в соответствии с требованиями VISA International, MasterCard, American Express и других платежных систем. При передаче информации используются специальные технологии безопасности карточных онлайн-платежей, обработка данных ведется на безопасном высокотехнологичном сервере процессинговой компании. В случаи использования регулярных платежей, при совершении первой операции номер банковской карты и срок действия будут сохранены на стороне банка.

5.4.2.Лицензиар не передает персональные данные третьим лицам без согласия Лицензиата, за исключением случаев, когда:

5.4.2.1.Передача информации необходима для обеспечения соблюдения требований законодательства Российской Федерации, предупреждения, пресечения незаконных действий Лицензиата и защиты законных интересов Лицензиара и третьих лиц.

5.4.2.2.Передача информации осуществляется по запросу государственных органов при соблюдении законодательства РФ.

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

5.5.Блокирование персональных данных. Лицензиар оставляет за собой право временно прекратить обработку персональных данных (за исключением случаев, если обработка необходима для уточнения персональных данных).

5.6.Уничтожение персональных данных. Персональные данные Лицензиата могут быть уничтожены Лицензиаром в случае наличия угрозы безопасности Платформы и нарушении Лицензиатом условий Оферты или по просьбе самого Лицензиата.

6.Защита информации

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

7.Права Лицензиата

7.1.Лицензиат всегда имеет право на получение информации об обработке персональных данных о нем, в том числе содержащей:

7.1.1. Подтверждение факта обработки персональных данных.

7.1.2. Правовые основания обработки персональных данных.

7.1.3. Цели и применяемые Лицензиаром способы обработки персональных данных.

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

7.1.5. Обрабатываемые персональные данные, относящиеся к соответствующему Лицензиату, источник их получения, если иной порядок представления таких данных не предусмотрен законодательством Российской Федерации.

7.1.6. Сроки обработки персональных данных, в том числе сроки их хранения.

7.1.7. Порядок осуществления Лицензиатом прав, предусмотренных законодательством Российской Федерации.

7.1.8. Информацию об осуществленной или о предполагаемой трансграничной передаче данных.

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

7.1.10. Иные сведения, предусмотренные законодательством Российской Федерации.

7.2.Лицензиат вправе получать сведения, указанные в п. 7.1. Политики, неограниченное количество раз.

7.3.Лицензиат может отозвать согласие на обработку персональных данных, направив письменное уведомление по адресу Лицензиара 127576, г. Москва, ул. Новгородская д.3 к.1 кв.64.

8.Обязанности Лицензиара

В соответствии с требованиями Федерального закона «О персональных данных» Лицензиар обязан:

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

8.2.Принимать меры, необходимые и достаточные для обеспечения выполнения обязанностей, предусмотренных Политикой и Федеральным законом «О персональных данных».

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

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

8.5.Вести Реестр учета обращений Лицензиатов, в котором должны фиксироваться запросы Лицензиатов на получение персональных данных, а также факты предоставления персональных данных по этим запросам.

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

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

9.Ограничение действия Политики

9.1.Действия Политики распространяются исключительно на Сайт Лицензиара, и не применяются к другим сайтам.

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

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

10.Заключительные положения

10.1. Политика является локальным нормативным актом Лицензиара.

10.2. Общедоступность Политики обеспечивается публикацией на Сайте.

10.3. Лицензиар имеет право вносить изменения в Политику. При внесении изменений в актуальной редакции указывается дата последнего обновления. Новая редакция Политики вступает в силу с момента ее размещения.’;

Оцените статью
Мой сертификат
Добавить комментарий