Русский
Русский
English
Статистика
Реклама

Пользователи

А давайте заставим пользователя использовать безопасный пароль

01.10.2020 12:15:50 | Автор: admin

Когда-то для защиты пароля было достаточно иметь злую бабушку на входе в машинный зал

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

Если у вас есть пользователи и они авторизуются по паролю, я предлагаю еще раз посмотреть на свежие рекомендации от таких организаций как National Institute of Standards and Technologies и National Cyber Security Centre.

В частности, требовать ротации паролей уже не модно. И требовать определенных символов в лучших традициях анекдота про 1ГРЕБАНАЯрозоваяроза тоже. Давайте пробежимся по основным тезисам и попробуем сделать пользователям удобнее и безопаснее.


Аутентификация не бинарна


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

Идеально доверенный пользователь сумел верно ввести пароль и заходит с авторизованного устройства. Чуть меньше доверия пользователю, который зашел с доверенного устройства, но ошибся при вводе пароля. И совсем плохо, если пользователь верно ввел пароль, но устройство недоверенное, второй фактор не подтвержден и IP принадлежит выходной ноде Тора. Вот в третьем случае пора дергать рубильник с надписью Аларма! Волк украл зайчат!.

Наша задача, как людей предоставляющих сервис, сделать людям удобно, безопасно и не очень больно, если они ошибаются. Поэтому стоит расставить определенные признаки аномальной активности по порядку, чтобы включать те или иные дополнительные меры защиты аккаунта. Например, после 3-5 неверного ввода пароля предложить пользователю пройти CAPTCHA. Да, ее все ненавидят, но большинство пользователей с ней не столкнется. А те, кто понизил свой рейтинг доверия просто немного замедлятся перед очередным вводом пароля. Зато мы отсечем автоматические атаки на перебор пароля.

Не надо ограничивать максимальную длину пароля



Длинные пароли безопаснее. Дайте пользователям их использовать.

Ну не то, чтобы совсем не надо. Жирные пароли длиной в несколько мегабайт могут потенциально аукнуться переполнением в неожиданном месте или другими странными эффектами. Но условная максимальная длина в 300 символов гарантированно устроит любого типичного пользователя. Более того, этих же рекомендаций придерживается NIST:
Аутентифицирующая сторона должна разрешать пользователю использование запоминаемых паролей длиной не менее 64 символов.

А еще для особо одаренных сервисов NIST также дает еще одну важную рекомендацию:
Усечение пользовательского пароля недопустимо.

Да, есть крайне странные сервисы, которые считают, что и 12 символов хватит, а значит остальные 28 можно спокойно отрезать и проверять хеш только первого фрагмента. Не знаю, что за пораженный разум до такого додумался, но подобным нередко страдают те же банковские организации. Не делайте так. Если пользователь хочет использовать кусок из Иллиады пополам с фрагментами текстов группы Кровосток пусть использует.

Убедитесь, что любые ASCII символы допустимы


Есть определенные проблемы со спецсимволами. Например, использование "{}/\" или других подобных символов может быть потенциально недопустимым в некоторых ситуациях. Скажем, фигурные скобки могут ломать валидный JSON и вызывать падение обработки пароля. Или символ апострофа, который может использоваться в SQL-инъекциях. Да, форма ввода пароля тоже может быть входными воротами для атаки.

В теории вы могли бы просто запретить использование подобных символов, чтобы сделать себе проще. Но тем самым вы снизите энтропию пароля пользователя и сделаете ему неудобно, если пароль генерируется автоматически. Придется подбирать определенные паттерны для исключений. Опять же обратимся к Марксу NIST:
Все печатаемые символы ASCII [RFC 20], включая пробел, должны быть допустимыми для ввода в качестве пароля. Символы Unicode [ISO/ISC 10646] так же должны быть допустимыми.

Да. Все верно. Это ваша головная боль и дополнительное тестирование. Но если пользователь хочет использовать или дайте ему это сделать. Или добавить символ буррито в пароль для криптостойкости. Имеет право.

А еще отстаньте от пользователя с требованиями использования специальных символов. Да, вот просто не трогайте его. Пусть использует, что хочет. Исследования массовых утечек говорят о том, что люди все равно используют дурацкие замены со спецсимволами, что совершенно не улучает ситуацию. В частности Microsoft пишет:
Большинство людей использует однотипные паттерны, например, заглавная буква в качестве первого символа, спецсимволы и цифры на последних двух позициях. Киберпреступники знают об этом и настраивают свои атаки с перебором по словарю с учетом типичных замен, таких как s на "$", a на "@" и i на l.

Да-да, тот самый Microsoft из-за которого миллионы людей каждый месяц придумывают новый пароль, не совпадающий с предыдущими, содержащие спецсимволы и буквы в разном регистре. Именно они в своих гайдлайнах теперь пишут Eliminate character-composition requirements.

Ведь в итоге, типичные утилиты вроде cain and abel, hashcat, john the ripper могут подобрать пароль в течение нескольких часов или даже минут на типичной видеокарте, если использовалось стандартное словарное слово и типичный паттерн замены.

Не используйте подсказки для паролей


Забытый пароль гораздо безопаснее похоронить навсегда, чем хранить в БД подсказку для пользователя в открытом виде.

В 2013 году у Adobe утекла база с паролями. Зашифрована она была криво, но самое неприятное, что она содержала подсказки для восстановления, над чем и не преминул поиздеваться Рэндал Монро в xkcd.
Того же мнения придерживается NIST, не рекомендующий хранение подсказок в любом виде. Забыл восстанавливай через почту со всеми дополнительными проверками.

Снизьте нагрузку на мозг пользователя


National Cyber Security Centre выпустил крутую инфографику. Позволю себе процитировать небольшой фрагмент:

Обратите внимание, что основная проблема с паролями связана с тем, что хороший пароль случаен и его почти нереально запомнить. Если сервисов много, то пользователь почти неизбежно будет использовать один и тот же пароль везде, где можно. Особо продвинутые сделают что-то вроде myp@ssword_habr.com. Естественно, что компрометация пароля в одном месте автоматически ставит под удар аккаунты во всех остальных сервисах.
Поэтому, дайте пользователю использовать менеджеры паролей. Да, это как специальный кошелек для банковских карт, который позволяет потерять их одновременно. Но тут надо понимать, что компрометация оффлайн хранилища паролей довольно редкая ситуация, в отличие от компрометации одинаковых паролей на разных ресурсах. Менеджеру паролей не нужно быть идеальным. Ему нужно быть лучше, чем однотипные пароли везде. Не будьте как некоторые нехорошие сервисы, которые блокируют возможность вставки пароля в поле из буфера обмена. Это явно заставляет пользователя отказаться от менеджера паролей и использовать слабый вариант.

Второй пункт говорит о том, что не надо заставлять пользователя менять свой пароль, если нет явных признаков его компрометации. Это лишь мотивирует его использовать паттерн с одним и тем же паролем. Гораздо лучше поднять тревогу, если пароль всплывет в одном из многочисленных словарей утечек. Естественно, что нельзя давать пользователю создавать пароль, который уже попал в словари.

Выводы


  1. Будьте добрее к пользователю. Не надо заставлять его придумывать типовые паттерны и делать глупости. Стандартные привычные требования прям подталкивают его к этому. Просто соблюдайте несколько пунктов:
  2. Используйте аутентификацию по ключу вместо паролей там, где это применимо.
  3. Не давайте пользователю использовать пароль, если он есть в словарных базах. Неважно, он их туда слил или кто-то еще.
  4. Сообщайте пользователю, если его пароль появился в словарных базах. Поднимайте тревогу и требуйте второй фактор при следующем входе. Скомпрометированные пароли будут применены почти сразу.
  5. Требуйте определенной длины паролей и не препятствуйте, если пользователь хочет действительно длинный пароль.
  6. Убедитесь, что вы допускаете любые символы в качестве пароля.





Подробнее..

Как мы в СберМаркете боремся с товарами-призраками

14.01.2021 12:05:51 | Автор: admin
Так могла бы выглядеть наша команда, но мы на удаленкеТак могла бы выглядеть наша команда, но мы на удаленке

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

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

Из-за отмены всем станет грустно. Есть шанс, что в такой ситуации покупатель и вовсе откажется от сервиса, а компания потеряет потенциальную выручку. Чтобы пользователи не расстраивались и оставались с нами дольше, мы ввели метрику под названием доля ненайденных товаров. Она показывает процент таких продуктов от общего числа заказов.

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

Как работает СберМаркет

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

К СберМаркету подключены сотни магазинов по всей России. В каждом уникальный ассортимент из десятков тысяч товаров. В общем каталоге сервиса больше 16 млн позиций. На таких объемах контролировать актуальность и наличие тяжело.

Чтобы улучшить сервис, нам предстояло не только сделать эффективный алгоритм, но и внедрить его в кратчайшие сроки. За время пандемии количество заказов выросло в 15 раз нужно соответствовать.

Идея алгоритма

В каждом из магазинов, подключенных к СберМаркету, есть постоянная команда сборщиков. Лидеры команды регулярно присылают в отдел контента список артикулов тех товаров, которые нужно отключить в каталоге: например, когда случилась задержка поставки или истек срок годности.

Исторически 70% таких артикулов имеют очень высокий показатель ненайденных товаров за последние дни продаж более 50%. Значит, нужно срочно заблокировать позицию в каталоге, чтобы клиенты не смогли купить то, что мы не можем привезти.

Выше представлена динамика неуспешных сборок по товару из категории фрукты в одном магазине. С 21 июня по 1 июля показатель ненайденных товаров был 100%. Хотя ретейлер передавал нам другие данные.

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

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

И начали писать его на Python.

Как работает алгоритм

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

  2. Из базы данных наших заказов вытаскиваем историю последних сборок. Для каждого ненайденного товара берём историю THRESHOLD_ORDERS.

  3. Если в последних THRESHOLD_ORDERS заказах процент ненайденных товаров более THRESHOLD_CANCELLATION процентов, то эту позицию нужно заблокировать.

  4. Если товар ещё ни разу не блокировался или с момента последней блокировки уже прошло DAYS_NO_CANC дней, то товар блокируется на HIDE_1 дней.

  5. Если с момента последней блокировки товара прошло менее DAYSNOCANC дней, то:

    ~ товар блокируется на HIDE_2 дней, если текущая блокировка ставится второй раз подряд;
    ~ товар блокируется на HIDE_3 дней, если уже блокировался более двух раз подряд.

Пример параметров алгоритма для магазина:

'params': {  'DAYS_NO_CANC': 4,  'HIDE_1': 2,  'HIDE_2': 11,  'HIDE_3': 9,  'THRESHOLD_CANCELLATION': 0.4,  'THRESHOLD_ORDERS': 3  }

Параметры алгоритма подбирались отдельно для каждого магазина на исторических данных с использованием библиотеки hyperopt на Python. В процессе оптимизации максимизировалась метрика F-мера с beta 0.7.

Зачем так усложнять

Почему нельзя просто всегда блокировать товары на N дней? Зачем нам параметры DAYS_NO_CANC, HIDE_1, HIDE_2 и HIDE_3?

Теоретически можно блокировать сразу все ненайденные позиции на несколько недель вперед. Мы точно поймаем всех призраков, но в таком случае выключим практически весь ассортимент магазина в каталоге. В этой задаче нам важно сохранить высокую точность.

Кейс 1: товары нужно блокировать на маленький срок

У ретейлера A в магазине закончились бананы. Новую поставку смогут выложить в торговый зал через 1-2 дня. Бананы необходимо заблокировать на максимально маленький срок после этого они точно будут доступны для клиентов и сборщиков.

Кейс 2: товары нужно блокировать на большой срок

У ретейлера B случился сбой в поставке яблочного сока. Возможно, новая партия доедет до магазина через 2-3 недели. Нет смысла блокировать товар на маленький срок, так как после такой блокировки клиенты все равно смогут заказать товар, но сборщик не сможет его собрать.

Со всеми эвристическими параметрами мы даем возможность алгоритму идентифицировать сезонные и аномальные ненайденные товары.

В первом кейсе с бананами блокировка произойдет только на HIDE_1 дней, после чего товар больше блокироваться не будет. Сок из второго кейса сперва заблокируется на HIDE_1 дней, а из-за повторных случаев ненайденных товаров заблокируется еще раз, но теперь уже на HIDE_2 дней.

Параметр HIDE_3 нужен для того, чтобы сохранять длительные блокировки. Возможно, сок из второго кейса появится не через 2-3 недели, а через месяц. В этом случае после блокировки на HIDE_2 дней сок заблокируется на HIDE_3 дней.

Параметр DAYS_NO_CANC нужен для того, чтобы повторно блокировать товары. Мы как бы ждем DAYS_NO_CANC дней, чтобы удостовериться, что с товаром действительно все хорошо и его не нужно блокировать повторно.

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

СберМаркет генерирует огромные массивы данных и этим открывает возможности для экспериментов с подходами машинного обучения. Мы уже разрабатываем модель, которая будет предсказывать доступность товаров в магазине в нужный момент времени.

Чего вам не хватает в сервисах доставки продуктов или у нас? Делитесь в комментариях подумаем над решением.

Подробнее..

Перевод Почему в Docker не работает Strace

02.07.2020 10:04:35 | Автор: admin
Когда я редактировала страницу о возможностях контейнеров для журнала How Containers Work, мне потребовалось объяснить, почему в Docker не работает strace. Вот что случалось при запуске strace в Docker-контейнере на моем ноутбуке:

$ docker run  -it ubuntu:18.04 /bin/bash$ # ... install strace ...root@e27f594da870:/# strace lsstrace: ptrace(PTRACE_TRACEME, ...): Operation not permitted

strace работает через системный вызов ptrace, поэтому без разрешения для ptrace ничего не заработает! Но это легко исправить, и на моем ноутбуке я все сделала вот так:

docker run --cap-add=SYS_PTRACE  -it ubuntu:18.04 /bin/bash

Но мне было интересно не решить проблему, а разобраться, почему эта ситуация вообще возникает. Так почему же strace не работает, а --cap-add=SYS_PTRACE все исправляет?

Гипотеза 1: У процессов контейнеров нет собственной привилегии CAP_SYS_PTRACE


Так как проблема стабильно решается через --cap-add=SYS_PTRACE, мне всегда казалось, что у процессов контейнеров Docker по определению нет собственной привилегии CAP_SYS_PTRACE, но по двум причинам тут кое-что не сходится.

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

$ getpcaps $$Capabilities for `11589': =

Причина 2: в man capabilities о привилегии CAP_SYS_PTRACE сказано следующее:

CAP_SYS_PTRACE       * Trace arbitrary processes using ptrace(2);

Вся суть CAP_SYS_PTRACE заключается в том, чтобы мы, по аналогии с root, могли перехватывать контроль над произвольным процессом любого пользователя. Для ptrace обычного процесса вашего пользователя такая привилегия не нужна.

Кроме того, я провела еще одну проверку: я запустила Docker контейнер через docker run --cap-add=SYS_PTRACE -it ubuntu:18.04 /bin/bash, затем отменила привилегию CAP_SYS_PTRACE и strace продолжил корректно работать даже без привилегии. Почему?!

Гипотеза 2: Дело в пользовательском пространстве имен?


Моя следующая (и намного хуже обоснованная) гипотеза звучала в духе хмм, возможно процесс находится в другом пользовательском пространстве имен и strace не работает просто потому что? Выглядит как набор не очень связных высказываний, но я все же попробовала посмотреть на проблему и с этой стороны.

Итак, находится ли процесс в другом пользовательском пространстве имен? Так он выглядит в контейнере:

root@e27f594da870:/# ls /proc/$$/ns/user -l... /proc/1/ns/user -> 'user:[4026531837]'

А так он выглядит на хосте:

bork@kiwi:~$ ls /proc/$$/ns/user -l... /proc/12177/ns/user -> 'user:[4026531837]'

root в контейнере это тот же самый пользователь, что и root на хосте, поскольку у них общий идентификатор в пользовательском пространстве имен (4026531837), так что с этой стороны не должно быть никаких мешающих работе strace причин. Как можно видеть, гипотеза оказалась так себе, но тогда я еще не осознавала, что пользователи в контейнере и на хосте совпадают, и этот поход казался мне интересным.

Гипотеза 3: Системный вызов ptrace блокируется правилом seccomp-bpf


Я уже знала, что для ограничения запуска большого числа системных вызовов процессорами контейнеров в Docker есть правило seccomp-bpf, и оказалось, что в его списке блокируемых по определению вызовов есть и ptrace! (На самом деле список вызовов это лист исключений и ptrace попросту в него не попадает, но результат от этого не меняется.)

Теперь понятно, почему в Docker контейнере не работает strace, ведь очевидно, что полностью заблокированный ptrace вызвать не получится.

Давайте проверим эту гипотезу и посмотрим, сможем ли мы воспользоваться strace в Docker контейнере, если отключим все правила seccomp:

$ docker run --security-opt seccomp=unconfined -it ubuntu:18.04  /bin/bash$ strace lsexecve("/bin/ls", ["ls"], 0x7ffc69a65580 /* 8 vars */) = 0... it works fine ...

Отлично! Все работает, и секрет раскрыт! Вот только

Почему --cap-add=SYS_PTRACE решает проблему?


Мы все еще не объяснили почему --cap-add=SYS_PTRACE решает возникающую проблему с вызовами. Главная страница docker run следующим образом объясняет работу аргумента --cap-add:

--cap-add=[]   Add Linux capabilities

Все это не имеет никакого отношения к правилам seccomp! В чем же дело?

Давайте посмотрим на исходный код Docker.


Если уже и документация не помогает, все что нам остается это погрузиться в исходники.
В Go есть одна приятная особенность: благодаря вендорингу зависимостей в репозитории Go вы через grep можете пройтись по всему репозиторию и найти интересующий вас код. Так что я склонировала github.com/moby/moby и прошерстила его в поисках выражений вида rg CAP_SYS_PTRACE.

На мой взгляд, тут происходит вот что: в имплементации seccomp в контейнере, в разделе contrib/seccomp/seccomp_default.go полно кода, который через правило seccomp проверяет, есть ли у процесса с привилегиями разрешение на использование системных вызовов в соответствии с этой привилегией.

case "CAP_SYS_PTRACE":s.Syscalls = append(s.Syscalls, specs.LinuxSyscall{Names: []string{"kcmp","process_vm_readv","process_vm_writev","ptrace",},Action: specs.ActAllow,Args:   []specs.LinuxSeccompArg{},})


Там еще есть код, который в moby и для profiles/seccomp/seccomp.go, и для seccomp профиля по определению проводит похожие операции, так что, наверное, мы нашли наш ответ!

В Docker --cap-add способен на большее, чем сказано


В итоге, похоже, --cap-add делает не совсем то, что написано на главной странице, и скорее должен выглядеть как --cap-add-and-also-whitelist-some-extra-system-calls-if-required. И это похоже на правду: если у вас есть привилегия в духе CAP_SYS_PTRACE, которая разрешает вам пользоваться системным вызовом process_vm_readv, но этот вызов блокируется профилем seccomp, вам это мало чем поможет, так что разрешение на использование системных вызовов process_vm_readv и ptrace через CAP_SYS_PTRACE выглядит разумно.

Оказывается, strace работает в последних версиях Docker


Для версий ядра 4.8 и выше благодаря этому коммиту в Docker 19.03 наконец-то разрешены системные вызовы ptrace. Вот только на моем ноутбуке Docker все еще версии 18.09.7, и этот коммит, очевидно, отсутствует.

Вот и все!


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

Если вам понравился этот пост, вам может понравиться и мой журнал How Containers Work, на его 24 страницах объясняются особенности ядра Linux по организации работы контейнеров. Там же вы можете ознакомиться с привилегиями и seccomp-bpf.
Подробнее..

Перевод Как найти своих первых 10 клиентов

02.05.2021 16:16:26 | Автор: admin
image

Майкл Сайбл сооснователь (в 25 лет) стартапов Justin.tv/Twitch (капитализация $15 млрд) и Socialcam, член правления Reddit. Ex-CEO Y Combinator.

Меня зовут Майкл Сайбл и я являюсь партнёром Y Combinator. Один из вопросов, который мы часто получаем: Как найти своих первых 10 клиентов?

Начнём с того, что, как мы надеемся, вы решаете проблему, которая есть у вас или у кого-то из ваших знакомых. Поэтому, в идеальном варианте, ваш первый клиент или первая пара клиентов должны быть теми людьми, которых вы знаете. Во-вторых, YC советует всегда находить 10 человек, которым нравится ваш продукт, и делать немасштабируемым способом.

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

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

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

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

Отсев


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

Вы должны попытаться обслужить только квалифицированных клиентов, которые правильно ответят на эти вопросы. Как насчёт других клиентов? Ничего страшного, если вы пока оставите их в покое и сосредоточитесь на них позже.

Итак, подытожим.

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

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

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

Взимайте плату с клиентов. Используйте это как сигнал интенсивности проблемы, которая у них есть.

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

Удачи!



Следите за новостями YC Startup Library на русском в телеграм-канале или в фейсбуке.

Полезные материалы


Подробнее..

Обратный звонок vs онлайн-чат на сайте враги или союзники? Опрос 300 собственников и маркетологов внутри

05.03.2021 20:15:40 | Автор: admin

Все привет! Меня зовут Юля Прима, я в маркетинге 6 лет, сейчас развиваю сервис мессенджер-маркетинга 13chats. В этом материале расскажу о свежем исследовании, посвященном онлайн-чатам, их потенциалу и вектору развития в ближайший год.

Итак, ваш сайт готов. Пора решить, какие варианты связи внедрить и начать получать первые лиды.

Варианты:

  • звонок;

  • заказ обратного звонка;

  • онлайн-чат;

  • всплывающие формы для сбора контактов;

  • виджеты соцсетей;

  • переход в мессенджеры.

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

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

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

Согласна: в 2021-м борьба за внимание пользователей ужесточилась. Но здравый смысл подсказывает, что всплывающие окна лучше оставить для исключительных случаев, а в качестве основных способов связи оставить обратный звонок и/или онлайн-чат.

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

Стоит ли устанавливать онлайн-чат на сайт?

По прогнозу независимой аналитической компании Forrester Research, онлайн-чаты и чат-боты входят в топ-10 инструментов, которые будут использоваться в рамках покупательского пути (buying journey) в 2021 году.

4 из 10 опрошенных отметили, что живое взаимодействие с продавцом менее важно по сравнению с возможностью получить мгновенный ответ онлайн.

41% посетителей сайта ожидают увидеть живой чат.

60% B2B-компаний акцентируют внимание на CRM-маркетинге, чтобы отслеживать поведенческие паттерны пользователей, автоматически определять предпочтительный канал и время контакта и вооружать команду актуальными данными.

Что выберет именно ваш клиент чат или звонок?

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

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

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

Онлайн-чат актуальнее для локальной сферы услуг и eCommerce. Миллениалы и поколение Z ценят возможность получить консультацию и совершить покупку онлайн в удобное для них время без отрыва от основной деятельности. Например, мамы младенцев часто совершают покупки во время ночных кормлений, а молодые люди заказывают доставку продуктов или уборку в дороге или очереди.

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

Благодаря грамотной организации работы операторы онлайн-чата ведут до 4 диалогов одновременно, снижая нагрузку на входящую линию.

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

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

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

За неделю получили 272 показа виджета с конверсией в диалог 5%. Планируем улучшить формулировку и продолжить тест.

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

Принимайте решения только после полноценного теста на реальном трафике.

Что говорит бизнес и digital-маркетологи: мнения и прогнозы

Чтобы изучить отношение к онлайн-чатам на рынке СНГ, я провела небольшое исследование с помощью инструментов 13chats, чтобы понимать потребности рынка и улучшать продукт. В опросе приняли участие 327 человек. Я выяснила, с какой целью внедряют чаты на сайте, какую пользу они приносят и какие функции, по мнению опрошенных, будут востребованы в ближайший год.

Структура выборки

Сейчас онлайн-чат установлен на сайтах 25% опрошенных. 57% планируют внедрение в ближайшее время, а 18% не видят потенциала и не планируют установку до конца 2021 года.

Почему вам нужен онлайн-чат на сайт

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

Многим клиентам проще написать, чем позвонить. Если на сайте нет возможности написать и сразу получить ответ, потенциальный клиент просто уйдет.

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

К тому же, онлайн-чаты минимизируют рутину и ускоряют обработку однообразных обращений.

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

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

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

Рассматриваем чат-боты для первичного прогрева аудитории перед личным контактом с менеджером. Это помогает достичь нужного уровня доверия, отработать страхи и увеличить средний чек в 2 раза.

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

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

Во вне рабочее время компания видит приходящих клиентов. Они остаются довольны, что их не оставили без ответов.

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

Важно начать коммуникацию с клиентами, подогреть их интерес, а потом заманить в мессенджер, где уже пустить по воронке.

Установили онлайн-чат с целью внедрения чат-бота и перевода клиента в мессенджеры.

Как показывает статистика, своевременная поддержка и постепенное вовлечение прямо влияет на продажи.

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

Установка онлайн-чата в гостинице позвонила увеличить продажи в 2 раза.

Использование чат-бота повысило количество заявок с сайта на 35%.

Среди причин, из-за которых осознанно отказываются от внедрения, лидируют две:

  • необходимость расширять штат, чтобы предоставлять быструю квалифицированную поддержку в чате;

  • непонимание, как объединить чат на сайте, CRM, аналитику и рассылки в омникальную систему.

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

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

Как внедрение онлайн-чата меняет компанию

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

21% респондентов, у которых установлен онлайн-чат на сайте, сделали акцент на увеличении продуктивности поддержки.

Мне нравится, что чат с использованием ботов может сфокусировать клиентский запрос и провести его к узкому эксперту компании.

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

17% опрошенных отметили персонализацию общения, 16% повышение удовлетворенности клиентов, подтвержденное NPS-опросами.

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

Другие изменения в компании, которые дает онлайн-чат:

  • уменьшается процент брошенных корзин;

  • на 5-7% повышается средний чек;

  • в долгосрочной перспективе увеличивается ROI и LTV.

Какие функции онлайн-чатов будут востребованы в будущем

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

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

Может, функции чат-бота: автоответы, персонализация, видео-консультации?

Хотелось бы видеть оплату услуг, напоминания, ответы на частые вопросы, мобильное обучение. И интеграции с другими сервисами, календарями, планировщиками, перепостами из других источников; фактически, весь знакомый нам веб внутри чата.

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

Возможность коммуницировать персонализировано за счет качественной автоматической сегментации с последующей аналитикой и улучшением тактики работы.

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

Например, лид-боты собирают первичную информацию, квалифицируют потенциальных клиентов и назначают диалог или встречу на конкретного менеджера. Связка чат-бота с онлайн-чатом помогает автоматизировать обработку популярных вопросов, записывать клиента на услугу и собирать обратную связь. Объединение аналитики, CRM, IP-телефонии с данными онлайн-чата происходит с помощью веб-хуков, API или сервисов для интеграций.

Также реализованы возможности для работы с онлайн-пользователями. Например, в 13chats менеджер видит посетителей сайта в реальном времени, анализирует их активность и историю предыдущих взаимодействий и начинает диалог, вооруженный необходимой информацией.

Рынку не хватает знаний о том, что уже реализовано и как это применить на практике.

Также бизнесу хочется минимизировать человеческий фактор:

  • организовать автоматические ответы на популярные вопросы без привлечения оператора;

  • внедрить подбор товаров или услуг по параметрам без помощи менеджера;

  • конструировать цепочки ответов по принципу чат-ботов в зависимости от выбора пользователя;

  • автоматизировать лидогенерацию и продажи, оставив сейлзам общение по телефону;

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

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

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

Выводы

Исследование подтвердило мою гипотезу: онлайн-чат теряет актуальность как отдельный инструмент для связи потенциального клиента с компанией. Сегодня он становится частью персонализированного CRM-маркетинга и должен встраиваться в омниканальные системы независимо от ниши.

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

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

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

Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru