Производство фотообоев в Новосибирске. Интернет магазин фотообоев. Изготовление - один день! Каталог 10 000 изображений!
13 Февраль 2024

Что делать при обнаружении взлома сайта на 1С Битрикс? Практические рекомендации

Волею судеб попал на ветку официального форума 1С Битрикс по взлому данной системы управления сайтом — как то в давнее время несколько клиентов были взломаны, пришлось вникать в тему.
Собственно, тема актуальна и по сей день — в форум постоянно приходят новые люди с той же самой проблемой.
«Сайт на движке Битрикс взломали — что делать?»
Накидал в ветке небольшую инструкцию
https://dev.1c-bitrix.ru/community/forums/messages/forum6/topic147346/message746142/?result=edit#message746142

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

Итак, рекомендации при взломе сайта:

* сделать бэкап текущего состояния сайта, скопировать логи для дальнейшего изучения

* сменить все пароли — ssh, ftp, все админские учетные записи на сайте

* воспользоваться штатными средствами Проактивная защита
начать с поиска троянов /bitrix/admin/xscan_worker.php?lang=ru

* воспользоваться сторонними средствами ( aibolit и т.п.)

* поискать по файлам вручную (самое быстрое в консоли по ssh), довольно много сингатур публиковались в этой ветке — конкретный пост не подскажу, давненько было дело — нужно искать. Я по ним много раз находил заразу.

* посмотреть агентов — чтобы лишних не было (если зараза в агентах, то смысла в файловой системе искать нет — всё равно будет заново создано)

* так же в памяти не помешает глянуть (или ребутнуть аппача), бывает зараза сидит в памяти и при удалении сама себя сразу же восстанавливает

* добавить код сайта в гит (будете изменения быстро вылавливать, а так же контролировать новые файловые изменения)

* поставить какой нибудь скриптик по отлову изменений (например, при изменении сразу письмо на электронку)

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

* по логам вычислить заразу и прибить

* после чистки — режим наблюдения (скрипт изменений + гит либо просто регулярно git status в ручном режиме)

* регулярное резервное копирование (желательно не сюда же — в облако или стороннее хранилище, при наличии гита можно бэкапить только БД)

как то так …

P.S.

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

Либо банально найти специалистов по взлому и безопасности и обратиться к ним, но это естественно уже не бесплатно 🙂

рубрики: Bitrix, взлом и безопасность | Комментарии (0)

9 Октябрь 2023

VMBitrix настройка почты на mail.ru

Ранее я настраивал почту без привлечения стороннего почтового сервера, по такому мануалу
https://dev.1c-bitrix.ru/community/webdev/user/53386/blog/11674/

Но такая настройка не проста, несколько постов на эту тему
https://gtalex.ru/?s=%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0+%D0%BF%D0%BE%D1%87%D1%82%D1%8B

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

В общем в этот раз я решил, что почтой должен заниматься почтовый сервер — имхо только так корректно и правильно.
Своего почтовика у меня нет, поэтому выбор пал на mail.ru только там осталась возможность бесплатно использовать свой домен для адресов вида info@mydomain.ru (раньше ещё и Яндекс был, но они закрыли лавочку с бесплатным предоставлением такого сервиса).

Собственно, инструкция
Идём сюда
https://biz.mail.ru/mail/
Добавляем домен, подтверждаем, прописываем MX запись, добавляем учётную запись (непосредственно почтовый ящик info@mydomain.ru).
После прописания MX нужно будет подождать какое то время (в районе 1-2 часов, бывает быстрее) пока обновится зона на DNS серверах.

Далее идём в безопасность и генерируем пароль для внешних приложений — именно его нужно будет далее прописать в конфигурации виртуальной машины Битрикс
https://account.mail.ru/user/2-step-auth/passwords/add

Тут одна неприятность — на один телефон нельзя прикрепить несколько ящиков, поэтому придётся привлекать телефоны клиентов. Это конечно дольше получается — но правильнее.

После чего в меню виртуальной машины в настройках сайтов
6. Configure pool sites
4. Change a site’s email settings
прописываем настройки со страницы https://help.mail.ru/biz/userguide

а именно адрес почтового сервера smtp.mail.ru порт 465 ящик info@mydomain.ru и пароль (аутентификация нужна — будет спрашивать)

в этой доке подглядел, что желательно прописать ещё два параметра

set_from_header on
tls_starttls off

Далее в настройках Битрикса в главном модуле и в настройке сайта прописываем электронку info@mydomain.ru

Всё, проверяем систему — почта у меня заработала.

Для уверенности с php ком.строки выполняем скрипт и ловим письмо у себя в ящике.

PS
Почтовые настройки лежат тут /home/bitrix/.msmtprc
Логи тут /home/bitrix/msmtp_mydomain.ru.log

Доступ в ящик с интерфейсом mail.ru
https://e.mail.ru/inbox/

PPS
Пока настраивал почту увидел, что они ещё и ДНС Хостинг бесплатно предоставляют — вообще супер, т.к. у nic.ru эта услуга платная.

рубрики: Bitrix, Администрирование | Комментарии (0)

2 Октябрь 2023

Ошибка при установке Let’s Encrypt сертификата в Bitrix VM (виртуальная машина CentOs с установленным bitrix env)

Наконец то дошли руки — на выходных прикрутил к блогу бесплатный сертификат Let’s Encrypt, теперь работаем по защищённому соединению.
Т.к. для хостинга я использую Bitrix VM настройка сего действия производится в меню bitrix env.

Оставлю ссылку для истории
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=37&LESSON_ID=11451&LESSON_PATH=3908.8809.8873.11449.11451

Не пойму почему, но сертификат сразу с менюшки не вставал, в логах ошибка

Failed to set a new url https://github.com/lukas2511/dehydrated.git for origin: fatal: detected dubious ownership in repository at ‘/home/bitrix/dehydrated’\nTo add an exception for this directory, call:\n\n\tgit config —global —add safe.directory /home/bitrix/dehydrated\n

пришлось добавить в исключения, как и посоветовал git
git config —global —add safe.directory /home/bitrix/dehydrated

и всё «поехало»
имхо Битрикс тут чёт намутил … надо по идее править, не должно так вываливаться

Далее в ближайших планах переезд на PHP 8.1 и перевод сайтов всех Битрикс хостеров на актуальные платформы — ждать больше нельзя, платформу снова ломанули — нужно срочно обновляться.
На этот раз модуль landing — который настоятельно рекомендую просто удалить на всех сайтах (я ни разу не использовал и не видел, чтобы кто нибудь использовал).
Подробности тут https://bdu.fstec.ru/vul/2023-05857

рубрики: SEO | Комментарии (0)

27 Июль 2023

SSH туннели и проброс портов

Если честно даже не понимаю, как я к своим годам так и не заюзал такой супер-удобный инструмент как SSH туннели и проброс портов…

Началось с того, что мне понадобился доступ к удалённой БД, порт снаружи закрыт.
Попробовал настроить SSH туннелирование в настройках БД в PHPStorm …
При тестировании соединения в ssh всё ОК, тест проходит успешно а непосредсвенно при тестировании соединения к БД ругается на то, что не может создать ssh туннель
SSH tunnel creation failed: Connection refused.
Победить так и не смог — хз чего ему не нравится 🙁

Собственно, сразу решение — запускаю с ком.строки (Ubuntu)

ssh -L 3307:localhost:3306 root@SERVER_IP -p SERVER_SSH_PORT -N

и вуаля — цепляемся любым софтом по работе с БД локально на 3307 порт

Так же можно и в обратном порядке — т.е. всё с удалённого порта прокидывать себе на локальный, но это ещё не юзал …

Источник SSH туннели и проброс портов

рубрики: MYSQL, NIX, Ubuntu, Администрирование, Полезности | Комментарии (0)

25 Июль 2023

Ubuntu PHPStorm — символ E при нажатии комбинации для комментирования записи

С ком.строки выполняем две команды и проблемы нет
gsettings set org.freedesktop.ibus.panel.emoji hotkey «[]»
gsettings set org.freedesktop.ibus.panel.emoji unicode-hotkey «[]»

Источник
https://intellij-support.jetbrains.com/hc/en-us/community/posts/4409874924178-Ctrl-inserts-a-weird-letter-e

рубрики: PHPStorm, Ubuntu | Комментарии (0)

25 Июль 2023

Ubuntu Grub — уменьшение таймаута выбора вариантов загрузки

правим
/etc/default/grub

GRUB_TIMEOUT=3
GRUB_DEFAULT=3
GRUB_RECORDFAIL_TIMEOUT=3

sudo update-grub
reboot

рубрики: Ubuntu | Комментарии (0)

12 Июль 2023

vmware player on Ubuntu 22.04: Could not open /dev/vmmon: No such file or directory.

Настраиваю новый ноут — установил свежую Ubuntu 22.04.2 LTS (ядро 5.19.0-46-generic) и решил перетащить готовые виртуалки с компа, поставил vmplayer 17.0.2
И при запуске любой ВМ ловлю ошибку
Could not open /dev/vmmon: No such file or directory.

Собственно, третий день плотной борьбы наконец то принесли свои плоды!

Перепробовал многое … вот пару хороших статей и ссылка на репозиторий с костылями
https://routerus.com/how-to-install-vmware-workstation-player-on-ubuntu-20-04/
https://linux.how2shout.com/install-vmware-workstation-player-on-ubuntu-22-04-lts/
https://github.com/mkubecek/vmware-host-modules.git

не знаю может «все танцы с бубном» которые я раньше произвёл мне как то и помогли, и без этого финальное решение на подхватилось, но по факту всё оказалось очень просто:

Disable secure boot via BIOS !!!

Т.е. нужно вырубить в биосе этот secure boot
Далее
sudo vmware-modconfig —console —install-all
и всё собралось!

рубрики: VM | Комментарии (0)

13 Май 2023

Битрикс — сайт редиректит на старый домен

Бывает, что при настройке локальной разработки или тестовой среды сайт упорно редиректит на старый сайт — такое часто бывает если БД переносится не средствами бэкапа Битрикса.
Чтобы запустить админку временно в файле «bitrix/modules/main/include.php» комментируем строки 162 и 163 подключающие OnPageStart

либо временно убрать папку /bitrix/modules/security/ из /modules/

далее заходим в админку, перенастраиваем домен (в главном модуле и настройках сайтов)

далее в мускуле скидывааем опцию

либо в php командной строке

скидываем весь кеш!

после чего возвращаем всё на место

рубрики: Bitrix | Комментарии (0)

21 Апрель 2023

Как перенести запрос из Chrome в Postman

Просто бомбическая штука!

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

А делается это так

В хроме
F12->Сеть->Правой кнопкой мыши по запросу -> Копировать -> Копировать как curl

В постмане
file->import-> paste Raw text

рубрики: Лайфхак, Полезности | Комментарии (0)

24 Март 2023

MailHog — отладка почтового функционала в среде разработки. Установка и настройка на CentOs Bitrix_env.

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

Один из вариантов решений — mailhog

Сервис настраивается вместо smtp почтового сервера и всё — он ловит всю исходящую почту, для просмотра есть веб мордочка.

Для установки и настройки MailHog

Берём отсюда
https://gist.github.com/Caffe1neAdd1ct/ea28bb49baaea86c203407629b442681
установочный скрипт — запускаем.

Далее с этой же страницы берём сам скрипт запуска (я взял тот, что без авторизации — пониже который) и заменяем /etc/init.d/mailhog
Всё сервис должен работать.

Далее настраиваем веб мордочку.
Берём тут конфиг https://gist.github.com/blakethepatton/7928abb131593fd192606b681ee47b2b и вставляем в nginx (я предварительно создал сайт mailhog.mysite.loc и там уже подменил)

Всё — веб мордочка тоже должна заработать.

Далее нужно в самой системе установить mhsendmail и в конфиге php.ini указать, что при отправке почты использовать именно его.

Я ставил так


yum install go
go install github.com/mailhog/mhsendmail@latest
ln ~/go/bin/mhsendmail /usr/bin/mhsendmail
mhsendmail -h

далее идём в /etc/php.d/bitrixenv.ini
и правим
sendmail_path = mhsendmail

ребутим аппач — должно работать

у меня сразу не взлетело т.к. в настройках сайта sendmail_path был переопределён — так что если что смотрите конфиги nginx и httpd на предмет sendmail_path

после того как в php.ini добавили sendmail_path = mhsendmail можно проверить отправку письма с командной строки https://github.com/mailhog/mhsendmail


> mhsendmail test@mailhog.local <
To: Test
Subject: Test message

Some content!
EOF

рубрики: Полезности, Программирование | Комментарии (0)