Ключ защиты из USB накопителя для 8.3

Публикация № 362495

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

USB ключ защиты ключ защиты из флешки ключ защиты конфигурации

Ключ защиты конфигурации из обычной USB-флешки для платформы 8.3. Можно внедрить на любой конфигурации, и ключик не привязывается к определенному рабочему месту. Реализовано в Такси.

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

Пришлось разбираться самому, и вот что вышло.

1. Что необходимо.

- USB  накопитель любого объема;

- внешняя компонента USBInfo.dll (в интернете не найдете, т.к. писалась на заказ из-за недостатка опыта разработки ВК);

- обработка для создания ключа защиты (есть в архиве);

- конфигурация с внедренной системой (пример есть в архиве).

2. Создание ключа.

- форматируем USB накопитель и присваиваем ему имя по умолчанию "1CKEY", если не нравится, можно другое, но придётся поменять в коде в одном месте;

- регистрируем USBInfo.dll, можно через командную строку, можно через батник в папке с dll-кой, не забываем про права администратора;

- открываем обработку "СоздатьКлючЗащиты.epf" в любой конфигурации, указываем путь к USB-накопителю, просто букву тома. Нажимаем кнопку создать. Обработка с помощью dll-ки получает всю необходимую информацию о USB-носителе, обрабатывает её, формирует текст и сохраняет его в txt файл в корне накопителя под именем "lic.lic" (также можно задать любое имя и расширение для файла, но надо исправить в коде в двух местах).

- что получаем в файле? В файл у нас записывается информация о накопителе: серийный номер, VID и PID. Как стало известно в ходе реализации, что у USB накопителя "два серийных номера". Этого я раньше не знал, т.к. далек от железа, первый тот, что вшит производителем, а второй тот, который присваивает виндовс, и на разных ПК он частенько отличается, а так как нам необходимо использовать на любом ПК, то второй номер не рассматриваем. Итак, в файл у нас записана информация, которая будет нужна для идентификации USB накопителя как ключа защиты/

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

- На этом создание ключа закончено.

3. Как работает в конфигурации?

- В архиве пример конфигурации и отдельно обработка.

- В процедуру "ПриНачалеРаботыСистемы", также можно в любую, какую хотите, вставляем:

Процедура ПриНачалеРаботыСистемы (Отказ)
	ОткрытьФорму("Обработка.ПроверитьНаличиеКлючаЗащиты.Форма.Форма");
КонецПроцедуры	

- При открытии обработка по имени "1CKEY" ищет USB накопитель (также, если есть желание, можно убрать привязку к названию флешки), если накопитель найден, идет чтение файла "lic.lic", если он есть, естественно. Файл прочитан.

- Далее с помощью dll-ки получаем информацию о USB накопителе (серийный номер, VID, PID) и сравниваем с тем, что в файле. Кстати, dll-ка должна быть зарегистрирована на всех ПК, где будет использоваться флешка.

- Если все удачно и все совпадает, то можно работать, если нет, то обработка завершает работу с предупреждением.

Видео, демонстрирующее работу ключа и внедрение в ЗУП (демо) 3.0

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

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

Если у кого-то есть какие критика/замечания/предложения/дополнения, буду рад.

П.С. Конечно же, вы можете сказать, что просто взял все отсюда  //catalog.mista.ru/public/77203/ , но, уверяю вас, вы ошибаетесь, данную статью увидел только после реализации своей идеи, вот почему-то, когда нужно было, она мне не попалась на глаза...

Что получате в архиве:

- dll-ку, которая протестирована и работает как на Windows 7 x64/86, так и на Windows 8 x64/86;

- обработки внешние  "ПроверитьНаличиеКлючаЗащиты" и "СоздатьКлючЗащиты";

- пустая конфигурация, пример работы.

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

Наименование Файл Версия Размер
Ключ защиты из USB накопителя для 8.3
.7z 88,04Kb
28.10.15
40
.7z 1.0 88,04Kb 40 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. webester 32 31.05.15 03:01 Сейчас в теме
Я немного не понял, если пользователь прочтет эту статью, скачает эту обработку, он просто сможет сделать себе нужное количество флешек?
6. Naposaram 229 31.05.15 09:24 Сейчас в теме
(1) webester, ну так в файл на флешке можно запихнуть все что угодно для доп проверки, здесь в обработках прописано только минимум...

(2) seermak, если проверять в самой 1С без внешней компоненты то нужно прописывать и хранить всю информации в конфигурации.

(4) delete, не обязательно вызывать при старте системы, можно в другом месте и другой процедурой, обработку проверки можно также переименовать как угодно и заполировать, или вообще раскидать все по конфигурации.

(5) TODD22, тоже самое, если скопировать то не будет работать на другой флешке.
2. seermak 662 31.05.15 06:35 Сейчас в теме
(0)все это (подобное) можно реализовать и без флэшки и без дилки - в модуле сеанса вклейти проверку на железо и будет вам щастье. Но, людям ищущим, всегда респект и уважуха))))
simplysimply; +1 Ответить
3. davdykin 23 31.05.15 08:15 Сейчас в теме
(2) seermak, Использование к привязке к железу, на мой взгляд, не удачная идея, т.к.:
1. Вас постоянно будут дергать при переносе с компа на комп, а иногда это бывает по несколько раз в месяц, а если вы используете сетевую версию, то все умножаете на количество пользователей.
2. При переносе вам придется доставать эти параметры и вшивать в конфигурацию изменяя ее, что тоже не совсем удобно, особенно если вы ставите ее на поддержку.

А данное решение удобно, спасибо за идею и реализацию.
7. seermak 662 31.05.15 10:57 Сейчас в теме
(3) прочитайте хорошенько - автор как раз и привязывает флэшку к железу (может я чего-то не так понял) и вся проверка заключается в проверке эталонного числа, полученного ранее от этого железа и проверкой железа при начале работы.....
8. Naposaram 229 31.05.15 11:20 Сейчас в теме
(7) seermak, да в чем то вы правы, привязываем к железу но не к жлезу компа =), что позволяет использовать данную флешку на любом ПК.
4. delete 238 31.05.15 08:26 Сейчас в теме
имхо, без шифрования исходных текстов, такая защита ничего не стоит
достаточно закомментировать вызов обработки и вы состоялись как хакер)
simplysimply; jaroslav.h; adhocprog; Uncore; Serega-artem; kolya_tlt; madonov; seregasame; zarius; Silenser; MaxDavid; SGordon1; dmitry1975; u_n_k_n_o_w_n; ser6702; alex_4x; awk; Brawler; JesteR; Йожкин Кот; quebracho; +21 Ответить
9. davdykin 23 31.05.15 14:16 Сейчас в теме
(4) delete, Это понятно, но шифровать модуль в который залочены часть процедур основных бизнес процессов, и который проверяет данную флешку не такая проблема (Так реализована защита почти всех отраслевых решений)
5. TODD22 19 31.05.15 09:12 Сейчас в теме
У нас то же есть на работе ключи защиты. Как реализовано не знаю не смотрел принцип. Но суть в том что на флешку записывается файл-ключ.
Если на другую флешку его скопировать то работать не будет.
10. davdykin 23 31.05.15 14:23 Сейчас в теме
В данном способе смущает только одно - использование dll, т.к. могут быть проблемы при обновлении на следующую версию системы или на конкретной клиентской машине, а dll это черный ящик, без возможности корректировки и отладки. Было бы интересней, если бы это было реализовано с помощью встроенного языка. Из него вызывать скриптовые языки для получения информации о железе, а с помощью средств шифрования платформы (по-моему такие есть) формировать уже хэши, но это так на вскидку :).
12. Naposaram 229 31.05.15 16:06 Сейчас в теме
(10) davdykin, про какую версию системы говорите 1С или ОС? Пока за 6 месяцев проблем не было. А до встроенных средств платформы руки не доходят =)
(11) vano-ekt, ну можно сменить серийник, потом сменить PID и VID флешки если получится, но можно еще придумать кучу информации которую можно запихнуить в файл...
14. davdykin 23 01.06.15 06:17 Сейчас в теме
(12) Я говорил о версии ОС. Просто я имею ввиду, что для всех, кроме вас, это черная коробочка, ни разобраться в ней, ни исправить, в случаи возникновения каких-либо заморочек - невозможно. И это слабое место этого решения.
15. Naposaram 229 01.06.15 08:50 Сейчас в теме
(14) davdykin, в таком понимании согласен с вами. Но если у кого возникнут заморочки то постараемся помочь разобраться и или вместе решим =) новые заморочки новый опыт, новые знания...
11. vano-ekt 728 31.05.15 15:52 Сейчас в теме
а прошить флешку с нужным серийником разве проблема?
13. LexSeIch 206 01.06.15 05:57 Сейчас в теме
Мир этому дому!
Идеальной защиты не существует - все зависит от стоимости ее взлома... Но иногда, достаточно иметь "защиту от дурака" - для этой цели решение вполне рабочее. Тем более предлагается готовое решение, с возможностью расширения функционала. Это может быть не только элемент защиты кода, но и, например элемент "шифрования" информации...
Исключение; Yury1001; link_l; dddxddd; Naposaram; davdykin; +6 Ответить
16. JesteR 142 01.06.15 08:52 Сейчас в теме
(13) LexSeIch, такую примитивную защиту можно и без флешки замутить, к чему такие сложности.
17. Naposaram 229 01.06.15 08:57 Сейчас в теме
(16) JesteR, я критику только приветствую, можете написать какие для вас здесь сложности? или как бы вы реализовали?
31. JesteR 142 03.06.15 10:22 Сейчас в теме
(17) буду честен. Сам я такое никогда не делал, не было нужды. По ссылке ниже и без флешки и dll описан один из примеров реализации:
www.nashe1c.ru (с) Андрей Скляров
Naposaram; +1 Ответить
33. Naposaram 229 03.06.15 10:30 Сейчас в теме
(31) JesteR, спасибо за ссылку, изначально были задумки с реестром, искал примеры работы с реестром но че то не встречались и данную статью не встречал. Вечерком надо будет посмотреть внимательнее...

(32) Yimaida, полностью согласен...
Те кому надо (враги) придут и заберут сервер со всеми потрохами


18. davdykin 23 01.06.15 09:04 Сейчас в теме
(16) JesteR, Критикуя - предлагайте, иначе смысла в вашей критике...
mt111; link_l; Naposaram; +3 Ответить
19. alex_4x 81 02.06.15 10:20 Сейчас в теме
Да никто не критикует. Разработка замечательная, но как защита - она ничего не защищает.
Применение например такое: Враги могут прийти и запустить программу. Надо как-то сделать так, чтобы если они запустят "не санционированно", то увидили другое, нежели нужно. Вот тут этот ключик проверяется, но с таким же успехом можно проверять просто наличие файла на сетевом ресурсе или по определенному URL запросу или еще кучей, просто реально кучей способов определить "все ли спокойно в Багдаде".
Если же говорить о защите, то тут надо как-то шифровать или выносить во внешнее шифрованное хранилище сам 1С овский код.
20. Naposaram 229 02.06.15 10:39 Сейчас в теме
(19) alex_4x,

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


Думал и о файликах (на диске/фтп и т.п.) - но пришел к выводу, что это совсем не то, таким образом в базу зайдет любой зная пароль пользователя, ведь доступ к файлу будет всегда... А тут вытащил флешку и все, тока в конфигураторе править что бы войти...

Если же говорить о защите, то тут надо как-то шифровать или выносить во внешнее шифрованное хранилище сам 1С овский код.

Тут согласен да необходимо что то придумывать, но смотря как реализована защита у отраслевых конфигураций, там с этим на столько не замарачиваются, модуль запаролили и все.
П.С. Может на счет отраслевых не прав, особо не смотрел как там реализовано.
21. alex_4x 81 02.06.15 11:16 Сейчас в теме
(20) Я понимаю что обидно, но весь этот проделанный нелегкий труд - бессмысленен.
Копайте в сторону шифрации модулей - это будет реально применимо.
22. Naposaram 229 02.06.15 11:34 Сейчас в теме
(21) alex_4x, да вы что ни какой обиды =) наоборот только позитив от того, что вы заинтересовались, обдумали и высказали что считаете нужно... я еще раз обдумал, что сделал, в чем то лишний раз убедился в чем то понял что ошибся, в чем то заинтересовался... опыт от общения с положительно настроенным человеком, у которого нет цели оскорбить или высмеять, всегда находит место быть... =)
23. ivanov660 2093 02.06.15 14:49 Сейчас в теме
Надежнее разместить функцию проверки в сети интернет, где хранить информацию о привязке ключа к параметрам компьютера и при изменении условий сообщать о необходимости запроса лицензии.Также встречал функционал компиляции кода на удаленно.
В типовых конфигурациях встречал проверку наличия защиты при вызове основных/базовых процедур, а не только при старте системы.В этом случае ключ возвращал определенный код, который динамически исполнялся и определял дальнейшее действие в бизнес процессе.
24. Naposaram 229 02.06.15 15:33 Сейчас в теме
(23) ivanov660,

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


Ну тогда для каждого компьютера нужно делать файл-ключик в отдельности... А если кто то узнает пароль пользователя и с его рабочего места войдет в базу? А тут пользователь флешку забрал и все никто не зайдет... Как по мне такой метод подходит для лицензирования конфигурации, а не для защиты от несанкционированного доступа...

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


Так же и здесь, можно впихнуть в любую часть конфигурации и как то завуалировать...
25. vde69 910 03.06.15 08:40 Сейчас в теме
кто мешает убить защиту вот так:

//ОткрытьФорму("Обработка.ПроверитьНаличиеКлючаЗащиты.Форма.Форма");

такое под силу любому студенту....
27. Naposaram 229 03.06.15 08:59 Сейчас в теме
(25) vde69, никто не мешает... пароль от пользователя с полными правами надо беречь =) и ни кому не давать =)
(26) vde69, угу... тоже вариант...
52. maksa2005 315 29.10.15 15:37 Сейчас в теме
Идея хорошая.(25) vde69,
но если вы не Администратор конфигурации, то как вы попадете в неё чтобы поставить //
Я понимаю, в файловом варианте можно взломать методом удаления паролей в файле))
А если у вас на сервере стоит 1с. SQL. Только у админа есть доступ к конфигурации. То метод хорош.
53. zarius 168 29.10.15 16:03 Сейчас в теме
(52)
Метод заслуживает внимания, но, как уже тут упоминалось:
1. хорошо бы отказаться от dll (статья для размышления)
2. вообще уйти от локального USB, ибо зачастую НЕТ доступа у пользователя к USB (либо не должно быть)
26. vde69 910 03.06.15 08:49 Сейчас в теме
наверно сабж можно применять не для защиты а для подписей, на флешке хранится открытый и закрытый ключ,

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

конечно такая система не идеально, но лучше чем ничего :)
Sybr; Naposaram; +2 Ответить
28. panihinnv 9 03.06.15 09:01 Сейчас в теме
Задумка интересная, только если флешка помрет, делать новую, трата времени, да и код можно закоментировать, просто защита от дурака. Но автор молодец!
29. Naposaram 229 03.06.15 09:10 Сейчас в теме
(28) panihinnv, Спасибо за позитив.
Да закомментировать можно и тут надо что то придумывать... Может кто подкинет идеи?
А если флешка помрет то новую сделать не сложно, дольше идти в магазин за новой... Я думаю если взять флешку ~256mb то создать из нее новую займет не более минуты, пробовал на 8Gb заняло 2 минуты, самое долгое форматирование... =)
30. wolfsoft 2421 03.06.15 09:39 Сейчас в теме
ИМХО, для примитивной защиты от простого юзера слишком сложно, а от "продвинутого" - слишком бесполезно, ибо "ломается" комментированием одной строки в коде.
32. Yimaida 35 03.06.15 10:24 Сейчас в теме
Думаю, правильно было бы рассматривать все в комплексе. Т.е. как организована работа системы.
1. Пользователи не должны быть с правами администратора (тогда всякого рода хакинг базы сведен к минимуму).
2. Нет доступа к конфигуратору (если у пользователя ""Полные права" то закомментировать нужную строчку проблем нет, хотя и займет немного времени).

Из опыта скажу, что любая защита лучше чем ее отсутствие, т.к. правильно здесь было замечено про стоимость взлома и т.п. Думаю, что любой кто бы такое встретил при запуске и подумать бы не смог что хакинг сведется к комментированию строчки кода, как минимум ожидаешь зашифрованный модуль или модуль без поставки кода. Те кому надо (враги) придут и заберут сервер со всеми потрохами, а от обычных юзеров "защита" сойдет. Если использовать как защиту кода (конфигурации) от повторного использования, то явно не подходит.
Naposaram; +1 Ответить
34. folo 177 03.06.15 10:42 Сейчас в теме
(32) Yimaida, К сожалению для настройки программы или учетной политики нужны именно права администратора.
Поэтому бухгалтеру приходится такие права давать (хотя бы на время). Иначе будете работать за них и отвечать за то как все настроено.
И вопрос автору - как флешка будет проверяться в случае сетевой версии с других компьютеров ?
Лет 20 назад делал защиту по номеру диска С. Команда "VOL c: > log.log" - т.е. ответ пишем в файл и далее читаем оттуда уникальный номер диска С: на компе. Сравниваем с зашифрованным при первоначальной инсталляции.
Вообще флешка не нужна. Но проблемы те же,нужно только в ПриНачалеРаботыСистемы добраться.
35. Naposaram 229 03.06.15 10:46 Сейчас в теме
(34) folo, может ошибаюсь, давно права в БП не смотрел, разве роль Администратора дает право на конфигурирование?
36. Yimaida 35 03.06.15 11:34 Сейчас в теме
(35) Думаю, возникла небольшая путаница. "Администратор" это имеется в виду для винды, а "Полные права" для 1с, а folo употребил "Администратор" вместо "Полные права".
42. v3rter 10.06.15 10:21 Сейчас в теме
PID и VID... Допустим, закупаю я на бухгалтерию 5 одинаковых флешек под ключи, VID и PID у них, скорее всего совпадут.
Инсайдер может узнать поставщика организации, закупить у него такую же флешку, и скорее всего, она будет с тем же VID и PID.

Идея хорошая, но мне кажется одних PID и VID маловато будет.

Никогда не прикручивал к 1С WMIC, но подозреваю, что посмотреть нужные данные можно и без внешней dll,
разбором, например, выдачи консольной команды:

wmic path Win32_USBControllerDevice


(34) "Vоlume serial" хорошая штука, выдерживает форматирование и мало кто знает в лицо утилиты по его замене.

Аналогичная защита была бы интересна как дополнительный слой защиты от выноса базы ушлыми сотрудниками за пределы сервера.
37. DrAku1a 1314 04.06.15 04:14 Сейчас в теме
Для "простого" пользователя - и пароля как средства защиты достаточно. Лень вводить пароль? Сделайте авторизацию по AD. С настройкой автоблокировки экрана при бездействии в течении пары минут. Забыть флешку в накопителе - также просто, как и забыть заблокировать экран.
38. GusevNA 326 04.06.15 13:52 Сейчас в теме
Можно в текстовый файл зашить какой-нибудь 1С-код, и выполнять его камандой "Вычислить" или "Выполнить".

Можно часть кода - тогда можно без "Вычислить" или "Выполнить", поскольку Вычислить-Выполнить вроде не всех клиентах работает. Например, имя поля какой-нибудь структуры. Тогда будет, например, обычный 1С-код и имя поля структуры в переменной из файла защиты, можно сериализованное сжатое ХранилищеЗначения положить в файл защиты с разными данными или кусочками кода 1С.

Вызывать проверку в нескольких местах.

Тогда банальный коммент вызовов проверки защиты не прокатит, поскольку не выполнится нужный 1С-код.
Naposaram; +1 Ответить
39. Naposaram 229 04.06.15 16:01 Сейчас в теме
(38) GusevNA, можно и так... можно что угодно в файлик засунуть потом вытащить и проверить или выполнить...
40. pro1c@inbox.ru 176 09.06.15 22:25 Сейчас в теме
Лучшая защита - это трансформация данных!
Вставляете при начале работы запрос некоторого серийного номера, который выдаете и проверяете при запуске.
Неверный введенный серийник - выдаете сообщение "Программа не активирована. Купите серийный номер"
Никакие сообщения не возникают более. Продвинутый пользователь (типа хакер) радостный фиксит данную проверку и радуется.
Но в конфигурации, по времени и в разных местах расставлены доп. проверки, которые вылезают в самый неподходящий момент!
Делал так не однократно, звонили мне и покупали все таки конфу, администратора (типа хакера) ругали и мучали за "коммунизм"!
Работает такой механизм на "УРА!" и не надо никаких привязок к железу, флэшек и т.д.
При выпуске обновлений расставляет новые капканы, наступает момент, когда проще купить или отказаться, нежели фиксить все это хозяйство!
При этом все открыто! Найди, если хочешь!

Как то так...
monkbest; 1attimo; fillipok; GusevNA; Naposaram; +5 Ответить
41. Naposaram 229 10.06.15 08:26 Сейчас в теме
(40) pro1c@inbox.ru, довольно интересно, но немного не понял что значит:

трансформация данных
46. pro1c@inbox.ru 176 10.06.15 20:20 Сейчас в теме
(41)
это кода ноль - становится единицей!
когда слово "да" исправляется на "нет"
когда к итоговой сумме прибавляется случайное число от 1 рубля до 100 рублей, например.
т.е. защита не кричит об ошибке. ошибку видно потом, но Вы не виноваты! конфигурацию ведь - не купили!
47. webester 32 12.06.15 13:31 Сейчас в теме
(46)То же самое что и добраться до процедуры "При открытии". То есть в какой то момент, нашли проблему. Посмотрели в коде, где косяк. Нашли косяк посмотрели какими методами реализована "зашита", проанализировали глобальным поиском конфигурацию, на похожие места.
50. pro1c@inbox.ru 176 15.06.15 22:27 Сейчас в теме
(47) webester,
модули защиты варьировать, не повторяться... расставлять в неудобных местах...
43. alex_4x 81 10.06.15 11:49 Сейчас в теме
Меня вот реально интересует следующее: Умеет ли кто нибудь из тут присутствующих подменять исполняемый на форме или в модуле код ? То есть то что это возможно - я уверен, ведь этот текст просто считывается 1С-кой из бызы 1С и выполняется, значит как-то можно этот код подменить. Оператор Выполнить (КусокКода) - это не серьезно, большой кусок кода им не исполнить.
44. v3rter 10.06.15 12:46 Сейчас в теме
(43) Из общих модулей и модулей объектов код можно выпиливать, в модулях форм код можно обфусцировать (пример обфускатора http://infostart.ru/public/15907/ ), можно придумать какой угодно свой динамический интерпретатор (подобные технологии были придуманы и обкатаны ещё в MSDOS-вирусах), вариантов масса.

Сложно соблюсти баланс между простотой установки типовых обновлений на защищённую конфигурацию и сложностью выпиливания защиты.
45. alex_4x 81 10.06.15 14:54 Сейчас в теме
(44) v3rter, Скажите пожалуйста как выпиливать код из модулей ???
Можно примерчик обработки с выпеленным кодом (ну чтобы кнопку нажимаешь, он пишет "- привет мир!")
Или это надо какие-то платные и не на любой платформе работающие специальные напильники покупать ?

Обфускация - тема зачётная. Но я хочу понять про полную подмену (в одном случае один код, в другом - полностью другой чтобы был)

Спасибо!
48. v3rter 15.06.15 12:43 Сейчас в теме
(45) "Выпилить" можно только в модулях конфигурации. Вот тут обсуждали детали: http://forum.infostart.ru/forum26/topic74028/

Для тех, кому интересно: получаем консольной командой метку тома и серийный номер тома для всех подключенных флешек

WMIC LogicalDisk WHERE "DriveType='2' AND Name<>'A:' AND Name<>'B:'" GET Name, VolumeSerialNumber, VolumeName


(на всякий случай, если будет кем-то прочтено без контекста: серийный номер отформатированного раздела, а не железа флешки)
49. alex_4x 81 15.06.15 12:53 Сейчас в теме
(48) v3rter, Поставка без "кода" или с паролем - это блеф. Там весь код остается, его сто лет в обед через плагины и обработкой расшифровки достать можно.
Вопрос как код полностью взять из другого источника.
51. Dragonim 124 17.06.15 09:09 Сейчас в теме
А что мешает использовать клиент-серверный вариант 1С с настроенным входом через домен, а уже в самом домене настраивать всё как вам угодно? Зачем лишний физический посредник? Что он даёт?

Извиняюсь. Перечитал введение и понял что это способ защиты конфигурации, а не информации в конфигурации. Вопрос отпал.
54. ANT721455 29.03.17 11:56 Сейчас в теме
Это не защита. Уберите громкое название из заголовка статьи. Вся это "котовасия" рушится при комментировании строки ОткрытьФорму("Обработка.ПроверитьНаличиеКлючаЗащиты.Форма.Форма")
С аналогичным успехом можно было просто создать текстовый файлик на флешке и прописать туда что угодно...
5 см за такое - вы меня извините - это уровень старших классов средней школы.
k268kk; Zhilyakovdr; +2 1 Ответить
55. Naposaram 229 29.03.17 13:02 Сейчас в теме
(54) Да вы прям хакер ))) Вы возможно не поняли суть и назначение.
56. spy-83 186 29.03.17 21:32 Сейчас в теме
я вот тоже не понял сути.
закомментировали строку проверки и все.

1. Где закрытый код который не работает если не выполняется проверка ключа?
2. Если я работаю на Маке? то все? метод не применить?
А Маководов кстати становится все больше.
57. GSA3D 20.07.17 09:49 Сейчас в теме
а информацию о накопителе можно и без dll вроде получить http://infostart.ru/public/17199/
Оставьте свое сообщение

См. также

Запуск 1С под любым пользователем (без необходимости указания пароля) Промо

Пароли v8 v8::Права 1cv8.cf Абонемент ($m)

Предназначается для запуска сеанса другого пользователя из своего сеанса 1С (если пароль вам неизвестен).

1 стартмани

02.07.2019    16062    161    sapervodichka    0    

Настройка ограничений входа пользователей в базу (расширение)

Роли и права v8 v8::Права 1cv8.cf Абонемент ($m)

Настраиваем для пользователей 1С разрешенное количество открытых сеансов к текущей базе данных 1С в привязке к компьютерам. (У пользователя не будет возможности превысить допустимое количество сеансов или зайти с чужого компьютера).

2 стартмани

19.05.2020    4016    0    sapervodichka    10    

Информация о пользователях информационной базы (отчет на СКД)

Администрирование данных 1С Роли и права v8 v8::Права v8::СКД 1cv8.cf Абонемент ($m)

Два простых отчета по пользователям информационной базы и информации по ним.

1 стартмани

02.03.2020    3335    13    YPermitin    8    

1C и защищенное хранение данных на блокчейне: модуль интеграции от Acryl Platform

Защита и шифрование Блокчейн Расширения Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Модуль интеграция 1С и блокчейн платформы "Acryl Platform" без использования внешних компонент. Под катом реализация механизмов Base58, Blake2b, Keccak, Curv25519 (the elliptic curve Diffie–Hellman) в подсистеме "Crypt", примеры генерации ключей, адресов, подписи транзакций, запись данных в блокчейн, чтение и восстановление данных из блокчейн. Код открыть. Лицензия MIT.

1 стартмани

21.01.2020    3984    2    ArtemSerov    17    

Цифровая подпись Cades-BES для XML средствами 1С с помощью КриптоПро Промо

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Обработка иллюстрирует возможность подписания XML SOAP-конверта по стандарту Cades-BES средствами 1С с помощью внешней компоненты КриптоПРО "CAdESCOM" с учетом ГОСТ 2001 и ГОСТ 2012. Стандарт используется в различных механизмах государственных сайтов России, в том числе в СМЭВ и ГИС ЖКХ. Код не привязан к прикладному решению может быть встроен куда угодно, но только на платформе Windows.

1 стартмани

13.05.2019    8598    35    PythonJ    41    

Права на объект (расширение, отчет)

Роли и права v8 v8::Права 1cv8.cf Абонемент ($m)

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

1 стартмани

07.01.2020    13466    83    sapervodichka    20    

Обозреватель криптографии

Инструментарий разработчика Защита ПО v8 Абонемент ($m)

Отчет для просмотра доступных провайдеров и сертификатов криптографии на сервере и клиенте.

2 стартмани

21.10.2019    8158    10    YPermitin    10    

RLS - дубли условий в запросах к СУБД

Практика программирования Роли и права v8 v8::Права 1cv8.cf Абонемент ($m)

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

1 стартмани

07.10.2019    7202    16    geron4    4    

Просмотр прав пользователей Промо

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

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

1 стартмани

19.10.2012    30827    106    NILS2009    17    

Завершение работы пользователей

Роли и права v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

02.10.2019    5092    7    user921814    6    

Сравнение прав пользователей

Роли и права v8 v8::Права 1cv8.cf Россия Абонемент ($m)

Иногда требуется понять, почему какому-то пользователю не доступны какие-либо объекты или действия, а "вручную" сравнивать довольно утомительное занятие.

1 стартмани

23.09.2019    4720    19    ivnik    3    

Доступ к данным интернет-поддержки

Пароли v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Обработка позволяет получить логин и пароль интернет-поддержки.

1 стартмани

18.09.2019    5150    12    0ct0ber    25    

Отключение доступа уволенным пользователям Промо

Информационная безопасность Обработка справочников Администрирование данных 1С v8 v8::Права БП2.0 УПП1 Абонемент ($m)

Давно хотели навести порядок в пользователях? Надоело, что в списке мешаются давно уволенные сотрудники? Тогда эта обработка для Вас!

3 стартмани

15.10.2013    46555    50    VBod    17    

Запутывание кода 1С

Защита и шифрование v8 v8::УФ 1cv8.cf Абонемент ($m)

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

2 стартмани

02.09.2019    7619    37    leoxz    66    

Защищаем конфигурацию. Один ключ СЛК для всех клиентов

Защита и шифрование v8 Абонемент ($m)

Пользователь защищенной конфигурации вводит регистрационный номер и код доступа. Установка сервера СЛК у пользователя не требуется. Управляем лицензиями удаленно.

1 стартмани

30.08.2019    8530    9    mvxyz    62    

PowerShell из 1С: создание пользователя Active Directory

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

Пример создания пользователя Active Directory с помощью PowerShell из 1С.

2 стартмани

27.08.2019    7933    11    wowik    13    

Права доступа ролей Промо

Информационная безопасность v8 v8::Права 1cv8.cf Абонемент ($m)

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

1 стартмани

05.02.2018    16310    102    Serge R    1    

Шифрование текста и файлов с помощью 1С. Используется хеш-код SHA256, Без Capicom, Архиваторов и сторонних служб

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Данная статья описывает простейший собственный алгоритм шифрования средствами 1С. Без Capicom, Архиваторов и сторонних служб. Данный метод работает на Платформе 8.3 и т.п. 09.07.19 Добавлена обработка шифрования файлов

1 стартмани

26.06.2019    6846    6    Indgo    42    

Сравнение доступа профилей, ролей, пользователей по всем объектам конфигурации 8.3, 8.2 (обычные формы "ОФ" и управляемые формы "УФ") (выборочно)

Роли и права v8 v8::УФ v8::Права 1cv8.cf Абонемент ($m)

Сравнение профилей доступа по всем объектам конфигурации 8.3 (полноценно функционирует с версии 1С:Предприятия 8.1.10 - 8.3.X). Очень хотелось иметь обработку, которая бы показывала различия профилей доступа по каждому конкретному объекту конфигурации и по всем сразу. Желание было воплощено в данной обработке.

1 стартмани

23.06.2019    4851    17    AlexandrSmith    0    

[1С: БП 3] Роль "Кладовщик"

Учет ТМЦ Учет ТМЦ Роли и права v8 v8::БУ v8::Права БП3.0 Россия БУ Абонемент ($m)

Расширение, которое позволяет использовать роль "Кладовщик" для инвентаризации, оприходования и списания товаров.

1 стартмани

21.05.2019    8507    89    dima21m    52    

Регистры правил [Расширение] Промо

Инструментарий разработчика Информационная безопасность v8 v8::Права УТ11 Абонемент ($m)

Регистры правил - права доступа, запрет редактирования, автоподстановка реквизитов и т.д.

10 стартмани

15.03.2018    15650    7    33lab    1    

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

Информационная безопасность Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

03.04.2019    16173    16    binx    118    

Запуск 1С под другим пользователем без ввода пароля

Информационная безопасность v8 v8::УФ v8::Права 1cv8.cf Абонемент ($m)

Для проверки настроек ролей и прав или для отладки можно использовать это решение.

1 стартмани

22.03.2019    6241    31    pridecom    0    

Наследование ролей в профилях групп доступа в конфигурациях на базе БСП

Практика программирования БСП (Библиотека стандартных подсистем) Роли и права v8 v8::Права 1cv8.cf Абонемент ($m)

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

1 стартмани

15.03.2019    7730    8    ids79    1    

Матрица ролей и прав пользователей (управляемая форма, с настройкой оформления) Промо

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

Матрица ролей и прав пользователей, можно быстро посмотреть, какие конкретно права на конкретный объект у пользователя (или роли). UPD 11/07/17 Добавил форму настроек компоновки, теперь в конфигурациях перехватывающих формы настроек ошибка не появится ) Добавлена команда(по правой кнопки мыши) "отметить роли доступные пользователю" на второй закладке - ставить галочку по ролям к которым у пользователя есть доступ.

2 стартмани

11.11.2013    35745    407    sanek_gk    39    

PasswordHashViewer - просмотр хэшей пользовательских паролей

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

Программа для просмотра хэшей паролей пользователей в файловых и клиент-серверных базах 1С. Зачем это нужно? Для их проверки на криптостойкость.

1 стартмани

25.02.2019    5029    9    GeraltSnow    5    

Обезличивание базы ЗУП 3.1.*

Информационная безопасность Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 v8::СПР ЗУП3.x Абонемент ($m)

Обработка по перемешиванию/скрытию конфиденциальной информации в базе ЗУП.

1 стартмани

05.02.2019    8050    52    Skin123    6    

Получение логина и пароля ИТС из базы 1С

Информационная безопасность v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка показывает пароль от сайта https://releases.1c.ru прямо из базы 1С.

1 стартмани

02.11.2018    18939    89    Timur.V    21    

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

Информационная безопасность Журнал регистрации v8 1cv8.cf Абонемент ($m)

Включает (выключает) регистрацию событий отказа доступа в журнале регистрации.

1 стартмани

12.01.2011    33117    63    nexts    32    

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

Информационная безопасность v8 v8::УФ v8::Права 1cv8.cf Россия Абонемент ($m)

Столкнулся с небольшой проблемкой при создании "своих" ролей в конфигураторе и добавлении их пользователям. Пользователю не добавляются созданные в конфигураторе роли, 1С 8.3, Управляемые формы. Гуглил много, ответа толкового не нашёл, поэтому пришлось разбираться самому и как результат, решил поделиться опытом. Возможно, кому-то пригодится.

1 стартмани

29.10.2018    11795    7    d.saladin    12    

Запрет на запуск более одного сеанса для одного пользователя в 1С: Предприятие 8.3 ЗУП, БП, КА, ERP, УАТ и т.д.

Информационная безопасность v8 1cv8.cf Россия Абонемент ($m)

Ограничение запуска 1С: Предприятие нескольких сеансов под одним пользователем. Функционал разработан через расширение, конфигурацию с поддержки снимать НЕ НУЖНО. Функционал работает в файловом и клиент-серверном варианте работы конфигурации. Платформа 8.3.12.1529 Конфигурации КА 2.4.5.71; ERP 2.4.5.54; БП 3.0.64.21; ЗУП 3.1.7.87 (это релизы на которых была произведена проверка, так же будет работать на всех стандартных конфигурациях 1С с режимом совместимости Версия 8.3.10)

1 стартмани

29.08.2018    12248    56    mityushov.vv    34    

[Расширения] Управление видимостью разделов для разных пользователей

Работа с интерфейсом Информационная безопасность v8 1cv8.cf Россия Абонемент ($m)

Как скрыть/показать раздел в управляемом приложении используя расширение, на примере БП 3.0

1 стартмани

05.07.2018    10827    9    Alex_E    10    

Права пользователей Промо

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

Кросс-таблица прав пользователей (подсистема "Управление доступом")

1 стартмани

10.05.2016    26422    99    inspam    4    

"Открыть нельзя защищать!" - Где поставить запятую?

Защита и шифрование v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

16.02.2018    12005    14    adam26    9    

Пример добавления собственных ролей пользователям через расширение 1С

Практика программирования Информационная безопасность v8 v8::Права 1cv8.cf Абонемент ($m)

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

1 стартмани

18.01.2018    36194    12    flyDrag    19    

Запуск ИБ 1С под любым пользователем (только для разработчиков/администраторов)

Информационная безопасность v8 v8::Права 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

28.11.2017    9706    38    Diagnostiks    7    

Права по ролям Промо

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

Отчет выводит установленные права

2 стартмани

16.09.2015    23448    75    nad11    1    

Обфускация кода 1С

Защита и шифрование v8 1cv8.cf Абонемент ($m)

Обфускация кода 1С как вариант защиты кода.

10 стартмани

09.10.2017    31042    76    VsHome    5    

Выгрузка и загрузка пользователей между различными конфигурациями 1С 8.3, включая пароли (Управляемое приложение, обычное приложение, БСП)

Роли и права v8 v8::УФ v8::Права 1cv8.cf Абонемент ($m)

Предназначена для переноса пользователей между различными конфигурациями 1С 8.3, включая пароли. Только для БСП (библиотека стандартных подсистем). Проверено на "Документооборот 2.0", "Управление торговлей 11", БСП 2.3.

4 стартмани

07.07.2017    17751    92    TuneSoft    5    

Как помочь сисадмину при большой текучке кадров

Информационная безопасность v8 v8::СПР v8::Права ЗУП2.5 Россия Абонемент ($m)

Хотелось бы поделиться своим опытом создания пользователей AD из 1С:ЗУП 2.5.

1 стартмани

06.07.2017    12367    7    PhoenixAOD    31    

Анализ ролей доступа (обычная и УФ) Промо

Информационная безопасность v8 v8::УФ 1cv8.cf Абонемент ($m)

Анализ ролей доступа. Определяет доступность к справочникам, документам, отчетам и т.д. Не нужно пересматривать кучу ролей, чтобы понять, что Вам нужно.

1 стартмани

25.08.2015    26068    186    fugu    9    

"Набор юного строителя" для реализации внутреннего шифрования и ЭЦП

Универсальные обработки Документооборот и делопроизводство Защита и шифрование Документооборот и делопроизводство v8 1cv8.cf Абонемент ($m)

Набор процедур и функций для организации внутрикорпоративного документооборота и согласования.

1 стартмани

09.06.2017    12934    28    eskor    7    

Обезличивание базы данных средствами скрипта для MSSQL

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для сотрудников, которым необходимо подготовить обезличенную базу для передачи ее сторонним лицам. Для пользования обработкой необходимо запустить 1С: предприятие в режиме тонкого клиента управляемого приложения. Тестировалась обработка на 1С:Предприятие 8.3 (8.3.8.2088) Обработка генерирует SQL - скрипт на основе структуры метаданных.

10 стартмани

28.02.2017    11867    27    ZadachNik1C    1    

HMAC на встроенном языке 1С

Защита и шифрование v8 1cv8.cf Россия Абонемент ($m)

Внешняя обработка хеширования данных HMAC (SHA-1, MD5, SHA-256, CRC-32) без использования внешних компонент.

1 стартмани

25.02.2017    23680    63    Knup    35    

Запуск 1С под пользователем без сброса пароля Промо

Информационная безопасность v8 Россия Абонемент ($m)

Обработка позволяет запустить пользовательский режим 1С, не сбрасывая полностью пароль пользователя. Что очень удобно при отладке прав и RLS. Также есть возможность быстро установить пароль 123, и вернуть старый пароль вручную.

1 стартмани

18.11.2013    44222    309    mylogin    38    

Управление доступом к документам и справочникам

Информационная безопасность v8 БГУ ДО Абонемент ($m)

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

1 стартмани

16.09.2016    11578    61    sikvel2012    7    

Настройка прав пользователей

Информационная безопасность v8 1cv8.cf Россия Абонемент ($m)

Настройка прав пользователей в УТ 11.2

1 стартмани

26.08.2016    21721    29    shetill    3    

Матрица прав конфигурации по ролям (управляемая форма, "такси" для любых баз, работающих на платформах 8.2... и 8.3...)

Роли и права v8 v8::УФ v8::Права 1cv8.cf Абонемент ($m)

Данная обработка поможет в просмотре и анализе прав, которые используют роли конфигурации для всей конфигурации. Матрица строится динамически, есть отбор по синонимам метаданных, отбор по определенным ролям, также возможен экспорт данных матрицы. Работает на любой конфигурации, на платформе 8.2... и 8.3... Для обычного приложения, вида как УТ 10.3, БП 2.0. и прочих, должна быть встроена в конфигурацию.

2 стартмани

09.06.2016    16580    60    hakerxp    0    

Отчет для анализа прав доступа в разрезах Право/Объект/Роль/Профиль/Пользователь Промо

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

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

1 стартмани

16.04.2015    27001    330    unichkin    13    

1С 8.3 (УФ) Удаление лишних (спящих, с повторным входом пользователя, длительно простаивающих) сеансов в один клик

Информационная безопасность v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка для быстрого отключения "непотребных" (с точки зрения запустившего обработку) сеансов: спящих, с длительным временем неактивности (предел настраивается), множественные сеансы, открытые одним пользователем. Есть настраиваемый "белый список" (список пользователей, сеансы которых не будут закрыты ни при каких условиях)

1 стартмани

31.05.2016    16913    67    HorusTheOne    3    

"Зачистка" 1С от пользователей с отключенной учетной записью Windows

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

Задача: в справочнике пользователей вычислить по учетной записи windows уволенных (т.е. с отключенной учеткой), перенести таких пользователей в папку "Уволенные" (при отсутствии создать такую) а в карточке пользователя снять галку "Аутентификация windows".

1 стартмани

01.05.2016    13259    22    mi1man    2    

Шифрование и расшифровка строковых полей справочников методом Виженера (с улучшениями)

Защита и шифрование Обработка справочников v8 1cv8.cf Абонемент ($m)

Обработка по шифрованию и расшифровке строковых полей справочников модифицированным методом Виженера - реализация без внешних компонент, без com-объектов, чистый 1С.

1 стартмани

27.04.2016    29031    37    NikitaXa    17    

Защита разработок от копирования (Обычная и Управляемая форма)

Защита и шифрование v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

28.03.2016    36417    319    karpik666    123