Имя: Пароль:
1C
1С v8
Поле HTML документа на УФ: почему eval не сочли безопасным и вырубили?
,
0 Вуглускр1991
 
12.01.22
12:44
Добрый день!
Некоторое время назад (годы) читал информацию о том, что поле HTML документа позволяло создавать объекты ActiveX и выполнять разные скрипты, которые (почему-то) не считались безопасными. И вот сейчас не могу найти на эту тему публикаций и соображений.
Что конкретно было небезопасно? Какие вектора атаки считались возможными?
Платформа в настоящее время использует webkit и хотелось бы сравнить и понять, что из того, что не считалось безопасным тогда, можно реализовать сейчас, а что удалось защитить полностью.
Кто-нибудь помнит?
Прошу мнения. Заранее благодарю.
1 acht
 
12.01.22
12:56
Кто вырубил eval? Причем тут ActiveX?
2 acht
 
12.01.22
12:58
Раньше поле HTML документа было реализовано через IE, на который влияли политики безопасности. В других движках ActiveX никогда не работал.

Что ты там от чего защищаешь?
3 Вуглускр1991
 
12.01.22
13:31
Надо принять решение о том, чтобы использовать HTML поле в ДМЗ. И собираю информацию о возможных негативных последствиях.
4 Kassern
 
12.01.22
13:33
(3) что за "ДМЗ"? Демиховский машиностроительный завод?)
5 Йохохо
 
12.01.22
13:34
(3) при чем тут демилитаризованная зона? шлейф новогодних праздников накрыл ершалаим
6 acht
 
12.01.22
13:36
(3) HTML поле - это браузер.
Ты собираешь информацию, о возможных негативных последствиях использования браузера в ДМЗ?
7 Вуглускр1991
 
12.01.22
13:41
(5) Ну, например в зоне, которая защищена через авторизацию в AD все пользователи - сотрудники, которым мы доверяем работу в 1С в браузере и тонком клиенте. А из ДМЗ к нам на сайт кто угодно зайдет, в том числе те, кто будут пытаться атаковать.
Вот вопрос в том и состоит, что если кто-то с такими намерениями зайдет, что что же он сможет атаковать?
8 Вуглускр1991
 
12.01.22
13:45
(6) Сейчас рабочие места доступны из офиса. Но если опубликовать базу, тогда она станет доступна с территорий, которые не контролируются службой охраны, видео-наблюдением и брошенный ноутбук с незаблокированным экраном с активной сессией в базе данных становится возможностью для атак
на что?
9 Вуглускр1991
 
12.01.22
13:48
И если до публикации базы в ДМЗ можно было думать, что все вокруг сотрудники, объединены общей целью получать ЗП и не будут использовать окно 1С для взлома чего бы то ни было. Ну может шутку какую-нибудь над коллегой провернут. То после публикации - это уже инструмент людей (потенциально) которые умею много больше чем нанятый менеджер по продажам.
10 Йохохо
 
12.01.22
13:52
если разрешать веб-клиент, то уже весь клиент одно "поле хтмл"
11 Kassern
 
12.01.22
13:57
(7) у вас все в куче, начинали тему с поле HTML, сейчас пришли уже к web публикации базы. Вам тут верно сказали, веб кит это лишь движок для браузера. Поле html как раз работает с ним. Можно без всякого инета использовать данный объект для своих скриптов, или красивой верстки форм. А по поводу безопасности, про какие "дыры" речь?
12 acht
 
12.01.22
14:00
(8) Отличный переход от "ДМЗ" к "территорий, которые не контролируются службой охраны, видео-наблюдением и брошенный ноутбук с незаблокированным экраном с активной сессией в базе данных"

Браво!
13 Вуглускр1991
 
12.01.22
14:00
(11) Не давая ссылку на сторонний ресурс, приведу цитату "Для начала необходимо реализовать возможность вызова функции eval из контекста 1C, так как она в ПолеHTML изначально не работает. При этом eval доступна при вызове из javascript. Это открывает перед нами возможность перехитрить платформу и переопределить вызов функции."
Вопрос был об этом, кто и почему, исходя из каких соображений запретил использовать eval в HTML поле.
А потом я уже начал рассказывать зачем мне это знать.
14 acht
 
12.01.22
14:01
(13) Херней, вы, батенька, маятесь. Толстой такой херней.
Замените везде "ПолеHTML" на "браузер" и давайте еще раз.
15 Сергиус
 
12.01.22
14:12
(13)Для начала нужно поставить запрет на использование внешних обработок пользователями. Уже как минимум не смогут что то свое запускать.
16 Вуглускр1991
 
12.01.22
14:54
(14) Скорее всего - да: в поле HTML приходит вся "мощь" браузера в котором открывается база. Но тогда eval должно работать и в Поле HTML и в консоли разработчика. Но люди жалуются, что eval не работает и значит речь идет о тонком клиенте.
А хамства в интернете полно и Вы тут не оригинальны.
К тому же когда соображения безопасности по поводу HTML поля выкладывались в дискуссии, Вы таблицу умножения изучали и поэтому не можете помнить что-то на эту тему.
17 pechkin
 
12.01.22
14:58
18 Kassern
 
12.01.22
15:01
(13) я так понимаю речь идет об https://habr.com/ru/post/481768/ ?
19 Вуглускр1991
 
12.01.22
15:08
(18) Да, не приведет ли пост на хабре к посту на хакере
https://xakep.ru/2013/12/02/vzlom-1c/#
не буквально, конечно, другой вектор атаки, другая цель ..
20 Kassern
 
12.01.22
15:31
(19) вы поймите, что тут дело не в поле HTML документа. Запретите юзверам запускать внешние обработки и они уже не смогут попасть на сервер и получить данные о каталогах
21 Kassern
 
12.01.22
15:35
допустим у юзера есть форма с полем HTML, дальше то что? Как он напишет и запустит там скрипт?
22 Вуглускр1991
 
12.01.22
15:36
(17) Спасибо, в принципе ясно почему. И 1С помимо чистого JS также распространяет расширения типа для работы с файлами и для буфера обмена. И сама она тоже решила запретить eval в своём урезанном webkit-е для тонкого клиента. Но почему? Что же можно было такого сделать с этим eval?
Больше всего атак на страницы HTML (которые мне удалось посмотреть в описаниях) - это фишинговые атаки. Но для клиента 1С фишинговая атака неактуальна. Не будет пользователь сам себе подменять содержимое страницы, чтобы узнать собственный пароль от клиент банка.
И потом - мы в первую очередь защищаемся от того, чтобы под личиной пользователя не хакнули содержимое БД,
а вот чтобы не хакнули конкретного пользователя при помощи нашей страницы - ну тоже защищаемся но во вторую уже очередь.
23 Вуглускр1991
 
12.01.22
15:36
(21) Ctrl-Alt-Shift-F12
24 Kassern
 
12.01.22
16:21
(23) Что вам эта консоль даст? Ну подмените вы сами себе страничку, а толку то?
25 Kassern
 
12.01.22
16:26
Другое дело, если на форме есть метод, который можно вызвать через джава. какой нить
&НаКлиенте
Функция ВычислитьКод1СИзJavascript(Код) Экспорт
    
    Возврат Вычислить(Код);
        
КонецФункции

В этом случае, это дыра не поля HTML, с тем же успехом, можно дать юзверам форму с текстовым полем и кнопкой Выполнить (Текст)
26 Вуглускр1991
 
12.01.22
17:38
(25) Да, такая функция позволит многое и юзер, подменив сам себе содержимое HTML поля, сможет писать произвольный код &НаКлиенте. У меня есть такая форма и такая функция, только я проверяю, чтобы на вход подавались команды из списка. Но вдруг можно обойти проверку и выполнить функцию сразу со строчки "Выполнить", ведь код на клиенте - это JS в браузере, там, ведь нет BSL интерпретатора.
27 Kassern
 
12.01.22
17:49
(26) Да, только откуда таким функциям взяться в 1с в ваших/типовых формах с html полями? Поэтому сам по себе инструмент вебкит по уровню безопасности такой же как и обычный браузер для юзвера. Сама по себе подмена html документа в поле ничего не даст, без написания доп функций в коде 1с.
28 Вуглускр1991
 
12.01.22
18:02
(27) А раньше (до WebKit) почему бесились с этого html-поля и говорили, что дырка это по безопасности жёсткая?
29 Вуглускр1991
 
12.01.22
18:03
(28+) Рассматривая формы выложенные в интернет для работы с географическими картами Яндекс и т.п. и даже коммерческие подсистемы типа ГЕОС я вижу таким образом сделанные функции.
30 Kassern
 
13.01.22
10:04
(28) я же вам про вебкит и пишу, раньше емним можно было форму клиенскую передать в параметр для js и выполнять все ее функции. Сейчас же все более менее изолировано. Я могу ошибаться, так как, редко с этим объектом приходится связываться, но вроде как, сейчас только через события данного объекта можно как-то из js взаимодействовать с 1с.
31 Kassern
 
13.01.22
10:07
(29) вы можете хоть 1 пример для вебкита привести, где можно, хоть как-то 1с ковырнуть? Я лично не нашел, все что может теперь юзвер, это подменить DOM и не более. Взаимодейстовать при этом с 1с он не сможет.
32 Вуглускр1991
 
13.01.22
10:31
(31) Он может вызвать консоль разработчика и отправлять HTTP запросы на сервер от имени клиента.
Помимо того, что на форме есть некоторый функционал, скрытый "Видимостью" или ФО или по правам, в теле HTTP запроса можно указать все, что угодно
33 Kassern
 
13.01.22
10:38
(32) ну так он и через браузер все это может, в чем разница?
34 Kassern
 
13.01.22
10:38
Для этого есть файрволы и прочие политики безопасности, чтобы юзвер не стучался, куда не надо
35 Kassern
 
13.01.22
10:41
вы сами пробовали через эту консоль вебкита в 1с проследить сетку и обращения, юзать консоль?)
36 Kassern
 
13.01.22
10:43
(32) "Он может вызвать консоль разработчика и отправлять HTTP запросы на сервер от имени клиента" вы сами пробовали так делать?
37 Kassern
 
13.01.22
10:44
консоль сможет открыть, а вот от имени клиента запросы слать оооочень маловероятно, по крайней мере на современных платформах
38 Kassern
 
13.01.22
10:45
я лично не нашел способа так сделать, без доступа к внешним обработкам и конфигуратору
39 Вуглускр1991
 
13.01.22
11:05
40 Kassern
 
13.01.22
11:21
(39) еще раз повторю, вы из 1с в консоли в нетворк заходили, сами смотрели? Пробовали от туда стучаться запросы слать? У меня нетворк всегда пустой из 1с и нет возможности там запросы подменять
41 Kassern
 
13.01.22
11:21
браузер у юзверов запрещен?
42 Kassern
 
13.01.22
11:23
вот так выглядит нетворк из 1с https://disk.yandex.ru/i/hP55bYcesPEUYA