Архив автора: admin

Как реализовать защиту по SSL в Apache Tomcat👨⚕️

Одной из важных задач защиты Tomcat является настройка SSL-сертификата, потому что веб-приложение доступно через HTTPS.

Есть много способов добиться этого.

  • Вы можете ограничить SSL при балансировке нагрузки
  • Внедрить SSL на уровне CDN
  • Используйте веб-серверы, такие как Apache, Nginx и т. д., И внедряйте SSL там

Однако, если вы не используете ни одно из указанных выше методов, или вам необходимо установить SSL непосредственно в Tomcat, то вам поможет следующая статья.

В этой статье мы сделаем, как показано ниже.

  • Сгенерировать CSR (запрос подписи сертификата)
  • Импорт сертификата в файл хранилища ключей
  • Включить SSL в Tomcat
  • Настройка протокола TLS
  • Изменение Tomcat для прослушивания на 443-порте
  • Тест Tomcat для уязвимости SSL

Давайте начнем…

Подготовка сертификата SSL / TLS

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

Мы будем использовать утилиту keytool для управления сертификатами.

  • Вход на сервер Tomcat
  • Перейдите к пути установки tomcat
  • Создайте папку с именем ssl
  • Выполнить команду для создания хранилища ключей:

 # keytool -genkey -alias domainname -keyalg RSA -keysize 2048 -keystore filename.jks 

В приведенных выше командах есть две переменные, которые вы можете изменить.

Alias – лучше сохранить его значимым, поэтому в будущем вы сможете быстро распознать. Я предпочитаю хранить его как доменное имя.

Filename- опять же, полезно сохранить доменное имя.

Пример:

 [root@itsecforu.ru ssl]# keytool -genkey -alias itsecforu.ru -keyalg RSA -keysize 2048 -keystore itsecforu.ru .jks

Enter keystore password:

Re-enter new password:

What is your first and last name?

[Unknown]: itsecforu.ru

What is the name of your organizational unit?

[Unknown]: itsecf

What is the name of your organization?

[Unknown]: itsecforu

What is the name of your City or Locality?

[Unknown]:

What is the name of your State or Province?

[Unknown]:

What is the two-letter country code for this unit?

[Unknown]:

Is CN=itsecforu.ru , OU=itsecforu.ru , O=itsecforu.ru , L=Unknown, ST=Unknown, C=Unknown correct?

[no]: yes



Enter key password for <itsecforu.ru >

(RETURN if same as keystore password):



[root@itsecforu.ru ssl]# 

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

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

Далее следует создать новый CSR с вновь созданным хранилищем ключей с помощью команды, представленной ниже.

 # keytool -certreq -alias itsecforu -keyalg RSA -file itsecforu.csr -keystore itsecforu.jks 

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

Если вы тренеруетесь или пробуете, вы можете подумать о том, что можете использовать БЕСПЛАТНЫЙ провайдер сертификатов, чтобы дальше в случае серьезности перейти на премиальный.

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

Импорт корневого сертификата предоставленного поставщиком:

 # keytool -importcert -alias root -file root -keystore itsecforu.jks  

Импортировать промежуточный сертификат:

 # keytool -importcert -alias intermediate -file intermediate -keystore itsecforu.jks 

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

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

Импортировать сертификат домена

 # keytool -importcert -file itsecforu.cer -keystore itsecforu.jks -alias itsecforu 

и вы получите подтверждение, что он был установлен.

Certificate reply was installed in keystore

Отлично, мы видим что хранилище сертификатов уже готово.

Перейдем к следующему шагу.

Включить SSL в Tomcat

Предполагая, что вы все еще зарегистрированы на сервере Tomcat, перейдите в папку conf

  1. Сделайте резервную копию файла server.xml
  2. Перейдите в раздел <Connector port = “8080” protocol = “HTTP / 1.1” и добавьте строку:

 SSLEnabled="true" scheme="https" keystoreFile="ssl/bloggerflare.jks" keystorePass="chandan" clientAuth="false" sslProtocol="TLS"

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

4. Перезапустите tomcat, и вы увидите, что Tomcat доступен через HTTPS

Стандартный порт HTTPS

Зачем?

Ну, если вы посмотрите на скриншот выше, я обращаюсь к Tomcat с портом 8080 по https, который не является стандартным и еще несколько причин.

Вы не хотите спрашивать пользователей использовать ли пользовательский порт

Браузер будет выдавать предупреждение, поскольку сертификат выдается на имя домена без порта

Поэтому идея состоит в том, чтобы заставить Tomcat прослушивать порт 443, чтобы он был доступен только через https: // без номера порта.

Для этого отредактируйте файл server.xml вашим любимым тестовым редактором

  • Перейдите к <Connector port = “8080”

  • Изменить порт с 8080 до 443

  • Это должно выглядеть так

 <Connector port="443" protocol="HTTP/1.1"

connectionTimeout="20000"

SSLEnabled="true" scheme="https" keystoreFile="ssl/bloggerflare.jks" keystorePass="chandan" clientAuth="false" sslProtocol="TLS"

redirectPort="8443" /> 

Перезапустите Tomcat и получите доступ к вашему приложению с помощью https без номера порта

Впечатляет, это успех!

Проверка уязвимости SSL / TLS

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

Существует множество онлайн-инструментов, которые я обсуждал здесь, и здесь я буду использовать SSL Labs.

Перейдите в SSL Labs и введите URL-адрес, чтобы начать тест

Как видно, наш рейтинг зеленый

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

Надеюсь, это поможет вам узнать о процедуре обеспечения безопасности Tomcat с сертификатом SSL / TLS. 

 



2018-01-25T17:42:14
Закрытие уязвимостей

Усиление сетевых настроек Linux

Как это так вышло, что мы до сих пор не подкрутили сетевые настроечки Linux?! Срочно, срочно…

Править будем файл модифицируемых в процессе работы настроек ядра /etc/sysctl.conf.

Первым делом отключаем роутинг, добавляем строку:

 # net.ipv4.ip_forward = 0 

Отключаем ICMP- и IPv6-редиректы, чтобы нам не подменили роутер:

net.ipv4.conf.all.accept_redirects = 0

net.ipv4.conf.default.accept_redirects = 0

net.ipv4.conf.all.secure_redirects = 0

net.ipv4.conf.default.secure_redirects = 0

net.ipv6.conf.all.accept_redirect = 0

net.ipv6.conf.default.accept_redirect = 0

И сами их не шлем, мы же приличные люди

net.ipv4.conf.all.send_redirects = 0

net.ipv4.conf.default.send_redirects = 0

Отключаем прием маршрутов из опций IP-протокола, чтобы нас не обманули

net.ipv4.conf.all.accept_source_route = 0

net.ipv4.conf.default.accept_source_route = 0

net.ipv6.conf.all.accept_ra = 0

net.ipv6.conf.default.accept_ra = 0

Отключаем ответы на броадкаст и мультикаст ICMP-запросы, защита от атаки Smurf:

net.ipv4.icmp_echo_ignore_broadcasts = 1

Включаем поддержку SYN-cookies, чтобы валидные сессии в случае SYN-флуда продолжали работать:

net.ipv4.tcp_syncookies = 1

Отключаем реакцию на пакеты, нарушающие RFC-1122, чтобы не допустить переполнения логов:

net.ipv4.icmp_ignore_bogus_error_responses = 1

Включаем проверку обратного маршрута, чтобы защититься от спуфинга (не включаем, если в сети несимметричная маршрутизация):

net.ipv4.conf.all.rp_filter = 1

net.ipv4.conf.default.rp_filter = 1

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

net.ipv4.conf.all.log_martians = 1

net.ipv4.conf.default.log_martians = 1

Если не используем IPv6, можно запросто его отключить и избавиться от кучи потенциальных проблем:

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

net.ipv6.conf.lo.disable_ipv6 = 1

Вона скока настроили! Применяем:

/sbin/sysctl -w net.ipv4.route.flush=1

/sbin/sysctl -w net.ipv6.route.flush=1</code>

/sbin/sysctl -p

Теперь у нас приличные сетевые настройки =)

А что у нас на эту тему могут предложить Юниксы?

Solaris:

Отключаем роутинг:

 routeadm -d ipv4-forwarding -d ipv4-routing</code>

<code>routeadm -d ipv6-forwarding -d ipv6-routing</code>

<code>routeadm -u

Отключаем редиректы:

ipadm set-prop -p _ignore_redirect=1 ipv4</code>

<code>ipadm set-prop -p _ignore_redirect=1 ipv6</code>

<code>ipadm set-prop -p send_redirects=off ipv4</code>

<code>ipadm set-prop -p send_redirects=off ipv6

Отключаем маршруты из опций IP:

ipadm set-prop -p _rev_src_routes=0 tcp

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

ipadm set-prop -p _respond_to_timestamp_broadcast=0 ip</code>

<code>ipadm set-prop -p _respond_to_address_mask_broadcast=0 ip</code>

<code>ipadm set-prop -p _respond_to_echo_broadcast=0 ip</code>

<code>ipadm set-prop -p _respond_to_echo_multicast=0 ipv4</code>

<code>ipadm set-prop -p _respond_to_echo_multicast=0 ipv6

AIX:

Отключаем роутинг:

no -p -o ipforwarding=0

Отключаем редиректы:

no -p -o ipignoreredirects=1

Отключаем маршруты из опций IP:

no -p -o ipsrcrouterecv=0

Отключаем ответы на ICMP броадкаст запросы:

no -p -o bcastping=0

Включаем защиту от внедрения поддельных TCP-пакетов:

no -p -o tcp_tcpsecure=7

HP-UX:

Отключаем роутинг:

ndd -set /dev/ip ip_forwarding 0

С редиректами тут паршиво, только с помощью фаервола:

Добавляем строку block in quick proto icmp from any to any icmp-type redir в таблицу правил в файле /etc/opt/ipf/ipf.conf

ipf -Fa -A -f /etc/opt/ipf/ipf.conf

Отключаем маршруты из опций IP:

ndd -set /dev/ip ip_forward_src_routed 0

Отключаем ответы на ICMP броадкаст запросы:

ndd -set /dev/ip ip_respond_to_echo_broadcast 0</code>

<code>ndd -set /dev/ip ip_respond_to_timestamp_broadcast 0

 

Источник



2018-01-25T16:47:35
Закрытие уязвимостей

Сканер ВС | Описание сервисов | Как запустить OpenVAS

  1. Аудит беспроводных сетей Wepcrackgui 0.9.2
  2. Аудит обновлений ОС Windows – средство разработки ЗАО НПО «Эшелон»
  3. ПИК – средство разработки ЗАО НПО «Эшелон» /usr/bin/pik_lite
  4. Cканер безопасности Openvas /usr/sbin/openvassd
  5. Сетевой анализатор usr/sbin/zenmap использует компонент hydra4
  6. Локальный аудит паролей Epassa /usr/bin/epassa
  7. Сетевой анализатор Ettercap NG-0.7.1 /usr/bin/ettercap
  8. Cетевой аудит паролей Xhydra– использует компонент hydra4
  9. Поиск остаточной информации /usr/bin/diskfinder_gui
  10. Системный аудитор – средство разработки ЗАО НПО «Эшелон»
  11. Гарантированное удаление информации – средство разработки ЗАО НПО «Эшелон»
  12. Терминал Консоль /bin/bash/ из состава Debin Gnu/Linux0
  13. Устройства из состава Debin Gnu/Linux0
  14. Снимок экрана /usr/bin/xfce4-screenshooter из состава Debin Gnu/Linux0
  15. Вэб браузер ice weasel /usr/bin/iceweasel средство разработки Mozilla Foundation

 

 

Как начать сканирование уязвимостей OpenVas в Сканер ВС ?

Нажмите на сервис под номером 4 на рисунке

Выполните команду:

 # iceweasel 

Впишите в браузере localhost:9390.

Какой пароль и логин для входа в админку?

Login: admin

Password : admin

Как проверить что OpenVAS запущен?

OpenVas использует порты 9390, 9391 , 9392, 9393

Откройте терминал Сканер-ВС ( 12 на картинке) и введите команду

 # netstat –tupln 

 



2018-01-25T15:27:18
Аудит ИБ

Беттельматт — «элита» итальянских сыров

Беттельматт -

Этот итальянский сыр родом из Оссоланских долин (Антигорио и Формацца) считается одним из лучших горных сыров в мире и имеет очень ограниченное производство. Сегодня рассказываем интересные факты о производстве сыра Беттельматт, который входит в элитную касту сыров не только Италии, но и всего мира.

Скажем сразу, этот сыр стоит дорого, очень дорого для среднестатистического потребителя. Но высокая цена вполне оправдывает ожидания сырного гурмана. Беттельматт (Bettelmatt) — специалитет долин Валь д’Оссола, которую могут попробовать только немногое число счастливчиков, учитывая, что производство ограничено несколькими тысячами форм в год — всего 5 596 в 2016 году. Читать

Кто такие викинги и что мы о них знаем?

Кто такие викинги и что мы о них знаем?

В статье кратко рассказывается о викингах, раннесредневековых скандинавских мореходах, в VIII-XI вв. совершавших морские походы. Это были племена в стадии разложения родоплеменного строя, жившие на территории современных Швеции, Дании и Норвегии, которых толкало за пределы родных стран перенаселение и голод. В летописях Киевской Руси они были известны как варяги. Летом 789 года в одном из прибрежных поселений королевства Уэссекс произошло, по тем временам, рядовое происшествие. К берегу причалили три ладьи, из которых вышли высокие мужчины со светлыми волосами и бородами. Встретил их тан Беохтрик с небольшой дружиной.

В Китае ученые начали массово редактировать ДНК людей

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