Архив рубрики: Публикации

Закрываем уязвимость CVE-2018-0101 в Cisco ASA

Считается, что циски весьма отличаются секурностью, но и на старуху найдется проруха.

И не какая-то, а вполне себе полноценное RCE.

В данном случае речь о недавно анонсированной уязвимости CVE-2018-0101 в Cisco ASA, связанной с ошибками в обработке XML. Уязвимость позволяет без аутентификации удаленно выполнить произвольный код, ну или хотя бы вызвать отказ в обслуживании. Эсплуатируется через HTTPS сервисы или IKE2 RemoteAccess VPN. Эксплойтов не дам, сорян, ребята, они есть, но стоят $25k-$100k.

Далее имеем два пути – правильный и ленивый.

Правильный:

Вендор выпустил патчи уязвимости, надо их установить.

Исправленные версии: 9.1.7.23, 9.2.4.27, 9.4.4.16, 9.6.4.3, 9.7.1.21, 9.8.2.20, 9.9.1.2 и выше в ветках 9.1, 9.2, 9.4, 9.6, 9.7, 9.8 и 9.9. Другие ветки не поддерживаются и не обновлены.

Ленивый “не хотим ничего тестировать и обновлять”:

Можно отключить/ограничить доступ к уязвимым сервисам. Надо заметить, что способ ОЧЕНЬ неправильный, потому что сервисы когда-то могут оказаться внезапно включенными. Да и вообще нужны.

ASDM – скорей всего отключать не хочется, но можно ограничить доступ адресами админов:

 http <remote_ip_address> <remote_subnet_mask> <interface_name> 

AnyConnect IKEv2 Remote Access, AnyConnect SSL VPN и Clientless SSL VPN – либо отключить, либо повесить ACL для списка легитимных клиентов (доступ к портам TCP/443, UDP/500 и где у вас настроен Client Services) . Можно юзать IPSec Remote Access с IKEv1, но он совместим только со старым VPN-клиентом Cisco, мда…

Local Certificate Authority – либо отключить (но тогда отвалится аутентификация по сертификатам, если не используется сторонний центр сертификации), либо повесить ACL для тех же клиентов (порт TCP/443).

Mobile Device Manager (MDM) Proxy – выключить или повесить ACL.

Mobile User Security (MUS) – та же фигня, порт конфигурируем, найти можно в строке конфигурации mus server enable port <port #>.

Proxy Bypass – опять же выключить или ACL (порт TCP/443 или другие, если настроены).

Все еще не хочется обновляться? =)

Источник : https://t.me/informhardening



2018-02-08T14:20:12
Закрытие уязвимостей

Уязвимости EternalChampion, EternalRomance и EternalSynergy

Арсенал хакеров пополнился новым крутым эксплойтом уязвимостей EternalChampion, EternalRomance и EternalSynergy (это все входит в MS17-010, как и широкоизвестный EternalBlue).

Эксплойт доступен в виде двух модулей метасплойта https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/windows/smb/ms17_010_psexec.rb и https://github.com/rapid7/metasploit-framework/blob/master/modules/auxiliary/admin/smb/ms17_010_command.rb.

Работает для всех Windows от 2000, как 32, так и 64-битных. Более надежен, чем EternalBlue!

Вот так то, без обновлений дальше жить никак нельзя. (Ну вообще то и раньше нельзя было, но таки убедимся, что все хорошо)

PowerShell способ проверки:

При установке патча обновляется версия файла %systemroot%system32driverssrv.sys и по ее значению можно точно определить, установлено ли обновление.

Windows XP – 5.1.2600.7208 и выше

Windows Server 2003 с пакетом обновления 2 (SP2) – 5.2.3790.6021 и выше

Windows Vista, Windows Server 2008 с пакетом обновления 2 (SP2) – GDR:6.0.6002.19743, LDR:6.0.6002.24067 и выше

Windows 7, Windows Server 2008 R2 – 6.1.7601.23689 и выше

Windows 8, Windows Server 2012 – 6.2.9200.22099 и выше

Windows 8.1, Windows Server 2012 R2 – 6.3.9600.18604 и выше

Windows 10 TH1 v1507 – 10.0.10240.17319 и выше

Windows 10 TH2 v1511 – 10.0.10586.839 и выше

Windows 10 RS1 v1607, Windows Server 2016 – 10.0.14393.953 и выше

Прилагается PowerShell скрипт, который автоматически проверяет соответствие версии.

Сетевой способ проверки:

 # nmap -p445 --script smb-vuln-ms17-010 -Pn -n <target> 

Проверка по KB, содержащим патч:

Их десятки. Перечислены вот тут: https://support.microsoft.com/ru-ru/help/4023262/how-to-verify-that-ms17-010-is-installed

Источник : https://t.me/informhardening



2018-02-07T12:21:14
Закрытие уязвимостей

wget: команда не найдена

У некоторых дистрибутивов Linux отсутствует пакет wget из коробки. Поэтому могут возникнуть сложности с установкой и работой других программ и обновлений. Читать

Как настроить Mozilla Firefox для приватности

Mozilla решил дополнительно подсуетиться о приватности пользователей.

В 59-м Firefoxе заголовок Referer будет содержать не полный URL страницы, а только имя домена. Это при условиях, что включен private browsing и запрос на сторонний домен.

А что вообще стоит включить в Firefoxe для приватности?

network.http.sendSecureXSiteReferrer=false – можно отключить отправку Referer на HTTPS-сайтах

network.cookie.cookieBehavior=1 – отключает использование сторонних cookie

privacy.trackingprotection.enabled=true, privacy.trackingprotection.pbmode=true – включает защиту от отслеживания, которая реализуется в блокировке контента с определенного списка сайтов, замеченных в слежке за пользователями (формируется by Disconnect и встроен в Firefox)

geo.enabled=false – отключает геолокацию

Все настроечки доступны в about:config. Ну и че? А если 100 браузеров надо настроить?

Фаерфокс умеет считывать настроечки из файла, ага, даже не из реестра =/ Считывает он .js файлы из папки defaults/pref (Win, Linux) или Firefox.app/Contents/Resources/defaults/pref (Mac). Однако тут должна быть только ссылка на файл конфигурации, в общем надо создать .js файл со следующим содержанием:

// Any comment. You must start the file with a single-line comment!

pref("general.config.filename", "mozilla.cfg");

pref("general.config.obscure_value", 0);

Ну а теперь в директории, где лежит бинарь Фаерфокса, создаем файл mozilla.cfg уже с интересующими настройками, примерно так:

// Any comment. You must start the file with a comment!

lockPref("network.http.sendSecureXSiteReferrer", false);

lockPref("network.cookie.cookieBehavior", 1);

lockPref("privacy.trackingprotection.enabled ", true);

lockPref("privacy.trackingprotection.pbmode", true);

lockPref("geo.enabled", false);

Тут можно использовать разные уровни применения натроек:

lockPref – юзер не может изменить настройку

pref – настройка считывается при каждом запуске браузера, но юзер может ее перенастроить на время сессии

defaultPref – если юзер задаст новое значение настройки, оно будет использоваться и в новых сессиях

Источник: https://t.me/informhardening

 



2018-02-06T11:54:47
Закрытие уязвимостей

Как отключить Adobe Flash в браузерах Firefox, Internet Explorer , Microsoft Edge , Chrome

Adobe Flash славу получил как плагин небезопасный, густо снабженный уязвимостями и к отключению рекомендуемый. Вот и новая уязвимость в нем найдена – CVE-2018-4878, и хакерами эксплуатируется в wild. Ежели плагином вы пользуетесь, можете просто обновить до версии 28.0.0.137 превышающей, а в случае ином – можно и получше что-то сотворить.

Так как HTML5 потихоньку (или уже и не потихоньку) вытесняет Flash, на мобильных платформах Flash уже и не поддерживается, и вообще, вы мало где можете встретить потребность в нем, самый действенный способ – отключить или удалить его. Если на такое вы пока решиться не готовы, обязательно стоит включить функцию подтверждения запуска содержимого для флеша.

Internet Explorer

Тут у нас флеш установлен по умолчанию.

Чтобы отключить: открываем меню -> “Manage add-ons” -> “All add-ons”, находим “Shockwave Flash Object” и жмем “Disable”.

Отключаем массово: через групповые политики в User ConfigurationWindows ComponentsInternet ExplorerSecurity FeaturesAdd-on Management:Turn off Adobe Flash in Internet Explorer and prevent applications from using Internet Explorer technology to instantiate Flash objects

Включаем запрос о запуске: открываем меню -> “Manage add-ons” -> “All add-ons”, находим “Shockwave Flash Object”, жмакаем пракой кнопкой и “More information”. Там есть поле с перечнем разрешенных сайтов, а под ним кнопка “Remove all sites”, жмем ее и готово.

Microsoft Edge

Опять же, флеш добавлен по умолчанию.

Отключить: Settings -> “View advanced settings”, найти “Use Adobe Flash Player” и отключить.

Отключить массово: с помощью групповой политики Computer ConfigurationPoliciesAdministrative TemplatesWindows ComponentsMicrosoft EdgeAllow Adobe Flash

Включаем запрос о запуске: массово с помощью групповой политики Computer ConfigurationPoliciesAdministrative TemplatesWindows ComponentsMicrosoft EdgeConfigure the Adobe Flash Click-to-Run setting или в реестре HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftMicrosoftEdgeSecurity:FlashClickToRunMode в значение 1.

Chrome

По умолчанию флеш установлен.

Отключить: открываем chrome://plugins/, находим Adobe Flash Player и кликаем “Отключить”.

Включить запрос о запуске: массово с помощью политики Computer ConfigurationAdministrative TemplatesGoogleGoogle ChromeContent SettingsDefault Plugins Setting. Или в Settings -> Show Advanced Settings -> Content settings, находим “Plugins” и выбираем “Let me choose when to run plugin content”, а еще под ним проверяем исключения.

Firefox

Флеш не установлен по умолчанию.

Выбрать поведение: Tools -> Addons -> Plugins, находим Flash и выбираем опцию “Ask to activate” или “Never activate”.

Источник : https://t.me/informhardening

 



2018-02-05T11:41:08
Закрытие уязвимостей

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



Менеджеры паролей, такие как KeePass, 1Password и множество других, в значительной степени решают эту проблему. С их помощью вы можете генерировать уникальный и безопасный пароль для каждого сайта, который вы посещаете. Но такой менеджер защищен ровно настолько, насколько безопасен главный пароль, который вы используете для доступа к нему. Вы должны быть уверены, что его достаточная случайность и неугадываемость подтверждена количественными измерениями, а не только тем, что вы воспринимаете его случайным по причине наличия нескольких цифр или восклицательных знаков. Если нам требуется истинная случайность, нам понадобится кое-что специальное.

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



Бросание игральной кости позволяет получить случайное число от 1 до 6, которое даёт нам 2,58 бита информации.

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

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



В действительности нет нецелых, поэтому мы всегда округляем до ближайшего бита. В этом случае нам нужно 3 бита для хранения числа от 1 до 6, но на самом деле мы можем хранить и от 0 и до 7:

000 - 0
001 - 1
010 - 2
011 - 3
100 - 4
101 - 5
110 - 6
111 - 7


Количество комбинаций 0 и 1 определяет, насколько большое число вы можете хранить с помощью определенного количества бит. Каждый раз, когда вы добавляете еще один бит, вы удваиваете количество комбинаций. Это достаточно просто: если вы добавите еще один бит к двоичному числу, у вас будут все комбинации, которые у вас были раньше дважды: с 0 слева от них и с 1.

По сути, переменная с n-ным количеством битов может иметь 2^n (2 в степени n) возможных значений. Поскольку байт состоит из 8 битов, то он может иметь 2^8 (256) возможных значений.

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

Компьютеры имеют ограниченное количество свободной памяти. Каждый раз, когда мы объявляем переменную, небольшая часть этой свободной памяти выделяется до тех пор, пока переменная существует. Поскольку современные компьютеры имеют много памяти, то в большинстве случаев – это не проблема, особенно когда в программе всего лишь несколько переменных. Тем не менее, для программ, которые требуют большого количества переменных (например, 100 000), разница между использованием 1-байтовых или 8-байтовых переменных может быть значительной.


Так видеоигра The Legend of Zelda, выпущенная в 1987 году была 8-битной и имела ограничение для значений переменных равное 255.

Я хотел бы, чтобы энтропия для подбора моего пароля была по крайне мере 128 бит. По большинству исследований, взлом 128-битного шифрования практически невозможен с использованием методов грубой силы менее чем за несколько миллиардов лет. Используя уравнение 2^n, мы можем хранить одно из 3.4*10³⁸ различных значений, используя 128 бит. Если бы вы могли протестировать 100 миллиардов возможных значений в секунду, все равно потребовались бы десятки триллионов лет, чтобы угадать правильный пароль. Я считаю это достаточно хорошо. 128-битный пароль почти наверняка не будет слабым звеном в цепочке вашей онлайн-безопасности.

Если каждый из наших кубиков вырабатывает 2,58 бита энтропии за один бросок, то подбрасывание пяти даст нам 12,9 бита. Если мы используем 5 игральных костей 10 раз, то мы получим 129 бит информации, а для тех кто не знает результатов создадим неопределенность или энтропию равную 129 битам.

Но как превратить эти результаты в безопасный, но запоминающийся пароль?

Я использую Diceware, который является словарем слов, индексированных с помощью результатов подбрасывания пяти игральных костей. Каждый раз, когда вы бросаете 5 кубиков (или один 5 раз), числа, которые получаются, соответствуют слову в списке. Например, если на 5 кубиках выпало 1-4-2-6-3, нужно перейти на страницу со всеми словами 14xxx и обнаружить, что 14263 соответвтует «blab». Сделайте это десять раз, и вы получите строку из десяти слов. Эти десять слов — потенциальный пароль.

Далее нам поможет мнемотехника — совокупность специальных приёмов и способов, облегчающих запоминание нужной информации и увеличивающих объём памяти путём образования ассоциаций (связей). Например, можно использовать «принцип сюжета» — сочинить рассказ (сюжет), в котором задействованы запоминаемые слова. Например, чтобы запомнить последовательность слов: «Слон, домик, телевизор», — придумываем: «Слон шёл к себе в домик смотреть телевизор». Возможно, вы будете чувствовать себя глупо, но это работает, и вы будете удивлены, как быстро вы можете запомнить вещи таким образом.



В PDF формате одна из версий словаря доступна по ссылке тут, а тут версия на русском языке.

Если все это кажется излишним, помните, что это пароль, за которым хранится вся ваша финансовая и онлайн-жизнь. Если считаете, что этого того стоит, спуститесь в магазин комиксов и купите кубики. Зайдите в комнату, где нет камер, телефонов или компьютеров, бросьте кубики и напишите соответствующие слова из словаря (я бы выбрал 15 слов, чтобы убрать несколько, которых бы не знал). Затем выберите десять слов и запомните их. Это ваш пароль. Храните запись в течение нескольких дней, пока не убедитесь, что запомнили пароль, который предложено использовать для входа в менеджер паролей.

Теперь вы знаете как получить пароль, который действительно и доказуемо случайный, который не контролировался или не генерировался для вас третьей стороной и который безопасно хранится в вашем уме. Вы можете использовать его в течение нескольких лет, и это единственный пароль, который вам нужно будет знать. Даже если кто-то знает, что вы использовали 10 слов, и знаете, какой словарь вы использовали, им все равно придется «пробиваться» через 129 изнурительных бит энтропии.

Снимите шапочку из фольги и продолжайте свою жизнь. Надевать её время от времени — это нормально.

Комментарий Cloud4Y


Ранее этот вопрос поднимался на Хабрахабре в постах «Ликбез по псевдослучайным генераторам» и «Практические рекомендации по выбору паролей по результатам взлома antichat.ru«.

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

1. Не столь важно, каким образом программа генератор получает пароли, сколь — откуда берет начальные данные. Если не происходит никакого интерактива вообще, следует усомниться.
2. Человек едва ли может уследить за отсутствием статистически популярных комбинаций в пароле, что подтверждается подбором 31790 паролей из 41037 MD5 хешей за 8 часов.

В связи с этим метод описанный Charlie Hoey может быть полезным особенно при отсутствии двухфакторной аутентификации.

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

1 2 3 4 5 6
1 ~! # $% ^
2 & * ( ) — =
3 + [ ] { }
4:; » < >
5? / 0 1 2 3
6 4 5 6 7 8 9

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

P.S.
Также рекомендую статью Charlie Hoey «A Eulogy for the Headphone Jack» (Хвала «джеку»), в которой он описывает то, как, не имея страховки, сэкономил 1000 долларов на проверке собственного здоровья, собрав аппарат ЭКГ и почему нам важно сохранить разъем для наушников и не потерять доступ к почти универсальному и свободному от лицензий порту ввода-вывода. 

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

Автор: Валерий Фетисов
Дата публикации: 2018-02-04T07:44:00.000+02:00