Принадлежит ли директору компьютер директора. Часть 2 из 3. Файлы. Истории от kuzkov.info

Публикация № 1393876 22.03.21

Администрирование - Информационная безопасность

шпионаж наблюдение разведка монитор kuzkov.info конфигурация безопасность файлы изучение

Вторая часть цикла статей о безопасности, в которой рассмотрим, как 1С программист может получать доступ к файлам любого компьютера на предприятии.

Отступление 

Первая часть: //infostart.ru/public/1391552/

Скачивание ваших файлов

В прошлой публикации мы рассмотрели возможности дистанционного доступа к экрану через запущенную 1С конфигурацию.
В этой публикации мы продолжим рассматривать обходные пути доступа к данным и обсудим файловую систему.
Да, и к файлам тоже может быть доступ через работающую 1С конфигурацию. :)

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

Возможный вариант выполнения этих этапов я опишу далее в публикации на примере создания паука файлов, который управляется с дистанционного сервера командами каждые 1-2 минуты.

Цель:
*) Делать пауком регулярные запросы для получения команды от сервера;
*) Иметь возможность сканировать диски компьютера;
*) Иметь возможность отправлять файл на дистанционный сервер;

Пример создания подсистемы "Паук файлов" может быть сделан в виде двух отдельных 1С конфигураций.

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

Вторая конфигурация "Сервер" предназначена для управления и приема отправленных с клиента файлов. Сервер будет на отдельном удаленном физическом сервере слушать по http get и post запросы с данными.

Асинхронный режим

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

Чтобы интерфейс работал без заморозок, работа должна делаться в фоновом режиме.

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

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






Установка паука файлов на клиенте

Установка движков паука файлов может быть выполнена стандартным способом при начале системы. Тут все просто. Во временную папку скачивается zip архив из общего макета и разархивируется.

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



Файлы устанавливаются во временную папку, которая находится настолько глубоко в иерархии папок, что эту папку никто не найдет.

Путь может выглядеть как "c:\Users\Имя Пользователя\AppData\Local\Temp\pauk_files" и найти его достаточно сложно.

Управление пауком файлов

Управление пауком файлов может выполняться через регулярные запросы команды от паука на управляющий сервер.
Для запуска регулярных запросов может использоваться служебная функция "ПодключитьОбработчикОжидания()" которая будет запускать get обращение к управляющему серверу.



Из обработчика ожидания будет вызываться дальнейшая цепочка асинхронных функций.

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


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

Основная команда для curl вынесена в bat файл для создания контекста, где будет сохраняться файл komanda.txt.



Таким образом файл komanda.txt будет сохранен рядом с curl.exe, а не где-то на дисках.

Содержимое komanda.txt может состоять из двух строк и быть следующих вариантов.

Для получения списка файлов

1) Сообщить список файлов папки
2) d:\vrem\

Для отправки файла на сервер

1) Передать файл
2) d:\vrem\Квадрат.png

Если команда на управляющем сервере отсутствует, то файл komanda.txt будет пустым. В таком случае паук проигнорирует пустой файл и снова выполнит запрос команды в следующем цикле.

Осмотр дисков и отправка файлов

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



Для предотвращения кракозябров при чтении файла на сервере, указываем кодировку utf-8 через команду chcp 65001.

Результатом сканирования должен быть файл "list_files.txt". В этом файле должен быть человекочитаемый список файловых ресурсов внутри указанной папки.



Созданный файл list_files.txt будет отправлен на сервер через curl.

Аналогичным образом через curl будет отправлен запрошенный файл, если пришла команда "Передать файл" с путем к файлу.

Создание команды для паука

Команда для паука должна быть создана на сервере следующим образом.

В списке регистра сведений "КомандыПаукуФайлов" в форме записи должны быть заполнены поля "ИмяПользователя", "ВозможнаяКоманда" и "ИмяФайловогоРесурсаМашиныКлиента".

Для определения машины, с которой паук делает запрос команды, в get запросе должен быть добавлен параметр с именем пользователя, который запустил 1С конфигурацию.

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

В ответ на запрос, пауку будет выдана команда в виде текстового файла из двух строк как результат get запроса.



Когда паук с клиента обращается за командой, автоматически устанавливается галочка "Команда прочитана пауком" и можно наблюдать, что команда отправлена.

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

Таким способом автоматически сохраняется связь между командой и результатом.

Просмотр списка файлов

Для просмотра файловых ресурсов указанной папки должна быть щелкнута строка с возможной командой "Сообщить список файлов папки" и в правом текстовом поле должен отобразиться соответствующий список.

Текст списка имеет человекочитаемый форматированный вид и можно увидеть все имена вложенных файлов и папок.

Просмотр скачанного файла

Для просмотра скачанного файла должна быть щелкнута строка с возможной командой "Передать файл" и должна быть нажата кнопка "Скачать файл".



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

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

Для открытия файла достаточно найти его в заранее определенной в коде временной папке. Например, это может быть "d:\temp\".

Предупреждения о незаконности и последствиях

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

Как минимум это ст.183 "Промышленный шпионаж" УК РФ. Если кто-то надумал этим заниматься, то подумайте еще раз.

Хочу напомнить, что посыл этой публикации направлен в основном обычным пользователям.

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

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

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

Приложенные конфигурации

К публикации приложены конфигурации с единственной целью.

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

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


kuzkov.info. Оставайтесь на связи !

Скачать файлы

Наименование Файл Версия Размер
Файлы. Клиент.

.zip 2,02Mb
1
.zip 2,02Mb 1 Скачать
Файлы. Сервер

.zip 14,77Kb
1
.zip 14,77Kb 1 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. TODD22 18 22.03.21 17:12 Сейчас в теме
Как то пригласили в одну компанию с 1С помочь.
Не идут остатки, формирую отчёт по остаткам, отчёт сформировался, но выскочила какая то ошибка, полез смотреть... в коде встроено логирование которое передаёт в СБ сведения о том кто и с какими отборами формирует отчёты.
Оставьте свое сообщение

См. также

Бесшовная доменная аутентификация ОС при интеграции 1С:ERP и 1С:Документооборот

Информационная безопасность Платформа 1С v8.3 1С:Документооборот 1С:ERP Управление предприятием 2 Абонемент ($m)

Доменная аутентификация ОС при бесшовной интеграции 1С:Документооборот 8 КОРП, редакция 2.1 (2.1.29.18) и 1С:ERP Управление холдингом (3.1.7.4) (в клиент-серверном режиме).

1 стартмани

16.09.2022    1256    oleg21592    6    

15

Принадлежит ли директору компьютер директора. Часть 3 из 3. Защита. Истории от kuzkov.info

Информационная безопасность Бесплатно (free)

Третья часть цикла статей о компьютерной безопасности, в которой рассмотрим способы уменьшения рисков постороннего доступа из 1С конфигурации к данным на вашем компьютере.

26.03.2021    950    Steelvan    0    

2

Принадлежит ли директору компьютер директора. Часть 1 из 3. Экран. Истории от kuzkov.info

Информационная безопасность Платформа 1С v8.3 Абонемент ($m)

Описание примера программирования конфигурации 1С кодом, который может делать снимки экранов всех компьютеров на предприятии и отправлять их 1Снику для просмотра.

3 стартмани

05.03.2021    2444    Steelvan    32    

20

Запрещаем администратору системы заходить в конфигуратор (внешнее управление сеансами)

Информационная безопасность Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

08.01.2021    3958    ardn    6    

45

Аутентификация на внешних сервисах посредством OAuth

Информационная безопасность Внешние источники данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Пример подключения к сервисам Google из 1С с помощью протокола OAuth и получения данных с внешнего сервиса.

1 стартмани

03.04.2019    33681    binx    134    

106

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Как я обработку на альтернативный сервер выносил

Информационная безопасность Платформа 1С v8.3 Абонемент ($m)

В данном посте хочу поделиться опытом. Однажды возник инцидент, который смотивировал реализовать обработку, которую запускал бы обычный пользователь 1С, в основной системе. Но весь процесс обработки должен происходить за пределами рабочей базы. А юзабилити должно остаться на уровне простого пользователя. В качестве решения я выбрал службу Windows (С#), приложение инициации на клиенте и далее прошу под кат...

1 стартмани

08.02.2019    3952    ixilimuse    6    

5

Лицензия не получена: Ошибка программного лицензирования Error=-2147217394 (0x8004100E)

Инструменты администратора БД Информационная безопасность Платформа 1С v8.3 Абонемент ($m)

Решение проблемы пропавшей лицензии и ошибки при ее восстановлении - "Лицензия не получена: Ошибка программного лицензирования Error=-2147217394 (0x8004100E)".

1 стартмани

06.04.2018    17908    a_titeev    10    

21