Имя: Пароль:
1C
1С v8
Защита паролем модуля http сервиса может привести к падению сервера 1С
,
0 МаксимБел
 
02.12.21
21:37
Ставили клиенту конфигурацию собственной разработки. Код обфусцировали нетленкой. На модули, не поддающиеся обфускации, вешали пароли. В конфигурации присутствовал http-сервис, для обмена данными с мобильным приложением. У клиента любой обмен данными с базой, через http сервис порождал ошибки, вплоть до падения сервера 1С. Причем падало всё на этапе аутентификации. До выполнения кода дело не доходило, поэтому в отладчик никто не думал соваться. Промучались неделю. Перепроверили всё сетевое окружение, все брандмауэры, антивирусы, всё ПО, ставили на разные ОС... Ничего не помогало - у клиента не работает, а у нас работает. В какой-то момент, решили сделать клиенту даунгрейд платформы 1С. У него стояла 8.3.19, а у нас 8.3.18. По всей логике, платформа более высокой версии должна быть полностью совместима с конфигурациями, разработанными на платформе более низкой версии. Но о чудо! На 18 платформе обмен заработал как часики! Вывод - надо апать нашу платформу. Дальше были танцы с бубном вокруг обновления нашей платформы до версии 8.3.20 и поднятием версии мобильного приложения. Убили полдня но справились. Счастливые и довольные развернули клиенту конфигурацию и мобильное приложение, собранное на платформе 8.3.20 и... Опять обмен не работает! Опять падает сервер! А на наших серверах опять всё летает! Не знаю сколько еще мы бы искали проблему, но в какой-то момент, во время тестирования, случайно развернули на нашем сервере защищенную конфигурацию... И наш сервер тоже начал падать. Дальше было всё просто. Разработка не может вестись на закрытой базе. Как только вернули открытую конфигурацию - всё снова заработало. Осталось проверить, будет ли работать обмен, если закрывать конфигурацию на той же платформе, на которой будет работать база.
Вот такие чудеса порой происходят в мире 1С. Надеюсь писал не зря и кому-нибудь пригодится.
1 polosov
 
02.12.21
21:40
(0) На Go сервис писать надо было.
2 МаксимБел
 
02.12.21
21:42
(1) это что за зверь?
3 PLUT
 
02.12.21
21:44
(0) секретный код собственной разработки

бедные (вернее богатые) клиенты :)
4 polosov
 
02.12.21
21:48
(2) Местный мем.
5 timurhv
 
02.12.21
21:56
(0) Когда SAP PI начинают тестировать с 1С новый интерфейс обмена по SOAP: rphost падает, если невалидный пакет пытаются затолкать больше 20 раз в секунду.
6 ДенисЧ
 
02.12.21
22:06
" Код обфусцировали нетленкой. На модули, не поддающиеся обфускации, вешали пароли."
Извините, цензурных слов для вас у меня нет.
7 acht
 
02.12.21
22:08
(0) > Код обфусцировали нетленкой. На модули, не поддающиеся обфускации, вешали пароли.

Ну вот мироздание на вас и оттопталось. Карма, она такая.
8 Ёпрст
 
02.12.21
22:10
Вскрываешь модули защищенные паролем и понимаешь, зачем это сделали - лучше это г.. и не видеть.
9 acht
 
02.12.21
22:12
Самое забавное, если окажется, что это не ошибка платформы, а их гениальный обфускатор порождал "код", который тупо не собирался в каком-нибудь режиме компиляции.
10 Юрий Лазаренко
 
02.12.21
22:14
(0) А зачем все модули обфусцировать и вешать пароли? У нас один закрыт и достаточно. Отлично работает через http-сервисы.
11 acht
 
02.12.21
22:15
Мне вот интересно, как они сопровождать это зашифрованое говно собрались? Ну там типа "ошибка в строке 30 поле не поле" и клиент над душой. С секундомером и фаллоимитатором.
12 acht
 
02.12.21
22:16
чудеса порой происходят в мире 1С...
13 mistеr
 
02.12.21
22:45
(0) Действительно не зря, спасибо.

В поддержку обращались?
14 timurhv
 
02.12.21
22:47
(11) А отраслевые как исправляют на СЛК? Там зашифровано надежнее, чем у автора.
15 vovastar
 
02.12.21
22:58
(0) Рассказ...
Я не хотел идти в школу и искал разные причины. Пришла великолепная мысль сломать ногу. Долго думал, как  же это сделать, чтобы не было больно. Кидал на ногу и кирпичи и блоки цементные, но увы, нога не ломалась, только причиняла мне боль. И вот решился я спрыгнуть с высоты. Не давало мне покоя, что вместо одной ноги я при падении с высоты сломаю обе. Но, страх не идти в школу преодолел страх от боли. И вот, стою я на 3 этаже и прыгаю. Как и ожидал, сломал обе ноги. Цель достигнута, не хожу в школу. Но, к великому сожалению, через 2 недели после моего остроумного падения, мне подарили ноутбук и я теперь могу учиться прям из кровати. Теперь думаю, что сделать с глазами, чтобы не видеть домашние задания....
16 acht
 
03.12.21
00:20
(14) Кстати да. Такой же вопрос - "Как они сопровождать это зашифрованое СЛК говно собрались? Ну там типа "ошибка в строке 30 поле не поле" и клиент над душой. С секундомером и фаллоимитатором."
17 vovastar
 
03.12.21
00:37
(16) договор же заключили, первый год бесплатно, а потом каждый месяц по 10% акций предприятия.
Больше тревожит тот факт, почему Гений до сих пор не ставит пароли на свои велосипеды.
18 Злопчинский
 
03.12.21
01:15
Тоже встречал пару раз пароли. или вынесенное в ДЛЛ. ладно бы действительно что-то стоящее каких нибудь хитровыжеванных математических оптимизаций, не, прозрачно все достаточно...
19 МаксимБел
 
03.12.21
07:02
(13) Готовим обращение
(11) Клиент скидывает dt, а дальше всё просто
20 МаксимБел
 
03.12.21
07:11
(10) Хз. Чукча не директор)
21 Мимохожий Однако
 
03.12.21
07:30
ОФФ: Мало зашифровать свою нетленку. Надо еще умудриться найти клиента, который согласится работать с подобной конфигурацией длительное время.
22 Мультук
 
гуру
03.12.21
07:31
(0) Просто гениально

У заказчика 8.3.19
У программиста 8.3.18

Происходит неведомая х@йня.
Чтобы объективно разобраться, программист ставит не версию заказчика, а 8.3.20

P.S.
Без обид. В этой ситуации нет никакой "вашей логики". Есть только 1С. Как данность свыше.
23 Кирпич
 
03.12.21
08:05
"Код обфусцировали нетленкой. На модули, не поддающиеся обфускации, вешали пароли."
(0)Где вы находите таких лохов? Неужели такие еще остались.
24 vovastar
 
03.12.21
08:16
(23) "Даешь 200 паролей на конфигурацию!"
25 Партийный членовоз
 
03.12.21
08:47
(23) Почти все отраслевки содержат закрытые модули, а эти модули содержат ошибки. СЛК тоже глючит.
26 Адинэснег
 
03.12.21
09:13
>> Вот такие чудеса порой происходят в мире 1С. Надеюсь писал не зря и кому-нибудь пригодится.
название компании еще скажи, что б не пересечься на да б-г
27 Партийный членовоз
 
03.12.21
09:29
(16) Сопровождают удаленно. Девачки из ТП франча пишут отписки - типа на нашей демо-базе ошибка не воспроизводится. Далее следует длинный список тупых рекомендаций, которые клиент должен выполнить. И эта переписка тянется неделями (иногда месяцами), потом клиент доходит до белого каления, пишет в контрольную группу, угрожает подать на франча в суд (приехать переломать ноги директору франча и тд) и только тогда наконец-то кто-то из разрабов нетленки дойдет до отладчика и на реальных данных увидит ошибку.
28 lodger
 
03.12.21
10:00
(10) тогда пришлый фрилансер г1с придёт и наговнокодит в вашу нетленку невозбранно в любых других местах.
29 PLUT
 
03.12.21
10:03
(28) потому что нетленка априори обфусцирована без обфускации. никто разбираться не будет, проще свой велосипед сбоку прикрутить
30 МаксимБел
 
03.12.21
15:17
(22) Не беспокойтесь, на 19 тоже проверяли)
(21) (23) (24) (26) (28) (29) Народ, мне плевать с высокой колокольни, в каком виде компания продает конфу. Я не владелец и даже не руководитель, и на эти решения влиять не могу. Я просто описал нестандартный баг с которым лично мне пришлось повозиться, чтобы эта инфа могла кому-то помочь в аналогичной ситуации)
31 vovastar
 
03.12.21
18:12
(30) ну, ты то вывод сделал, что участвуешь в на*балове несчастных клиентов?
Пусть даже, прикрываясь благими намерениями?
32 ДедМорроз
 
04.12.21
13:31
А зачем ставить пароль?
Есть же поставка без исходных текстов,если уж очень хочется.

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

И,падение http сервисов,насколько я помню,был такой баг,причем с закрытостью модуля не очень связанный,а связанный с директивами препроцессора.
33 МаксимБел
 
06.12.21
08:53
(31) Клиенты не мелкие, и их айтишники не идиоты. Раз покупают, значит выгодно. Мб там какие-то свои договоренности.
(32) Пароль ставился, потому что до 19-ой версии платформы модуль http сервиса не поддавался обфускации.
34 dmpl
 
06.12.21
10:07
(19) Как клиент скинет dt? У вас клиент ларек чтоли, что за 5 минут база в DT выгружается и загружается?
35 lodger
 
06.12.21
10:09
(34) часто, людям не жалко денег и мощностей на содержание клона базы. с него можно в любой удобный час снять dt
36 dmpl
 
06.12.21
10:13
(35) Там, где людям не жалко на это денег - на сторону базу в принципе не отдадут. Должен будет приехать мальчик и на месте все смотреть в тестовом контуре. Максимум дадут удаленку в DMZ и с логированием действий.
37 Мультук
 
гуру
06.12.21
10:33
(33)

>> Пароль ставился, потому что до 19-ой версии платформы модуль http сервиса не поддавался обфускации.

А зачем ТАМ делать обфускацию?
В модуле только обработчики событий, далее вызовы функций из защищенных модулей.

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