WhatsApp использует номер IMEI как пароль
История с утечкой миллионов номеров Apple UDID ещё раз привлекла внимание специалистов к тому, как разные мобильные приложения обращаются с подобной информацией. Компания Apple не так давно запретила приложениям отправлять UDID пользователя на удалённый сервер, в целях безопасности, но разработчики приложений всегда найдут способ, где совершить ошибку.
Например, вот что делает популярная программа WhatsApp, с помощью которой более 20 миллионов человек обмениваются личными сообщениями (1 миллиард сообщений в день, по данным на декабрь 2011 года). Их система работает на модифицированной версии XMPP (Extensible Messaging and Presence Protocol), что вполне нормально, но аутентификация пользователя при этом происходит довольно странным образом.
Имя пользователя — телефонный номер
Пароль — md5(strrev(‘здесь-номер-imei’))
В качестве пароля автоматически используется MD5-хэш номера IMEI с цифрами в обратном порядке, без соли. По крайней мере, в Android-версии программы происходит именно так. Вполне возможно, что то же самое под iOS, Windows Mobile и Blackberry, ходя из iOS-устройства вытянуть IMEI не так просто.
Нечего и говорить, что злоумышленник может без особого труда получить значения логина и пароля для любого пользователя, просто нажав *#06# на его телефоне.
Как вариант, можно написать приложения под Android, которое будет собирать номера IMEI пользователей и пополнять базу данных. После этого хакер сливает в открытый доступ базу номеров IMEI — и всё, сервис WhatsApp может сушить вёсла.
Получение номера IMEI на устройстве Android осуществляется с помощью такого кода:
TelephonyManager tm = (TelephonyManager)
getSystemService(Context.TELEPHONY_SERVICE);
String device_id = tm.getDeviceId();
Получение номера телефона:
TelephonyManager tMgr =
(TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE);
mPhoneNumber = tMgr.getLine1Number();
Получение номера голосовой почты:
TelephonyManager.getCompleteVoiceMailNumber()
Более подробно интерфейсы WhatsApp проанализированы в открытом проекте WhatsAPI.
Подробнее: http://www.xakep.ru/post/59281/default.asp
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
- 2024-05-27 » Подборка сервисов для расшифровки аудио в текст
- 2024-05-27 » PostgreSQL 16. Изоляция транзакций. Часть 2
- 2024-05-06 » Как настраивать конверсионные стратегии: работа над ошибками
- 2024-04-22 » Комментирование кода и генерация документации в PHP
"В будущем на рынке останется два вида компаний: те, кто в Интернет и те, кто вышел из бизнеса." |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.