Timofeev Tales
619 subscribers
4.57K photos
4.58K videos
38 files
2.3K links
Про создание дронов, эксплуатацию электромобилей, путешествиях на них, технологии, Tesla, Apple, умный дом, вот это всё.

YouTube: youtube.com/@timofeevtales

Автор — Артём @iProfi Тимофеев, CEO @yaprofi, CIO @dronexcom, @ecarcom
Download Telegram
Media is too big
VIEW IN TELEGRAM
Актуальненько
❗️❗️Обнаруженные на старте электронного голосования проблемы – не самые существенные. Эксперты из технической рабочей группы рассказали «Открытым медиа», что у организаторов онлайн-голосования сохранилась техническая возможность подменять выбор избирателей после заполнения бюллетеня. Это может повлиять на волеизъявление сильнее любого административного давления – в систему уже запишется исправленный голос, причем избиратель об этом не узнает.

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

Перед стартом голосования по Конституции глава смарт-проектов правительства Москвы Артем Костырко в ответ на замечание об уязвимости системы во время встречи с рабочей группой назвал ее «ошмётком» с прошлого года и пообещал убрать – но эксперты считают, что это не сделано, и система голосования по-прежнему уязвима для подтасовок.

https://openmedia.io/j6ra
Forwarded from Политрук 2.0
Уязвимость тайны голосования при ЭГ: сценарий проверки.

После публикации о проблемах с тайной ЭГ с нами через нашего бота связался аккаунт "ДИТ Москва" и попробовал убедить, что у администраторов нет технической возможности соотнести гражданина с его голосом. Господа, вы нас за кого держите?

Мы публикуем подробный сценарий проверки, понятный для технических специалистов, и каждый, кто записан на электронное голосование, но еще не голосовал, может его проверить до 20:00 мск 30 июня. Для этого нужно в браузере открыть консоль разработчика и проследить сетевые запросы.

Заранее поясним ключевую мысль: все ваши запросы можно логировать на сервере (ЭГ использует веб-сервер Nginx) ПОЛНОСТЬЮ, вместе с заголовками и потрохами, и складывать с разных серверов в единое хранилище, например, Elasticsearch, для последующей аналитики.

Поехали:

1. Заходим на сайт 2020og.ru и логинимся. В процессе вас перебросит на elec.2020og.ru, login.2020og.ru, потом обратно, и все ответы от этих серверов будут ставить вам cookie laravel_session=abcdef123 (содержимое у каждого из вас будет свое). Это те самые куки для идентификации пользователя, о которых сейчас каждый сайт спрашивает "хотите ли вы их принять". ДИТ не спрашивает, ДИТ просто их ставит.

2. Обратите внимание на запрос при проверке номера телефона на сайте ЭГ, вот он в сокращенном виде
POST https://elec.2020og.ru/common/ajax/confirm/sms/
Cookie: laravel_session=
abcdef123
'type=sms&value=9261234567&voitingId=0'
Внимание, гипотеза (неопровержимая): сервер elec.2020og.ru сохранил этот запрос, содержащий ваш cookie и номер телефона, в логи и отправил в единое хранилище.

3. Соглашаемся с условиями и получаем бюллетень. Вот как происходит его выдача, тут происходит несколько переадресаций, видимо, это и есть тот самый "анонимайзер", но спойлер: он ничего не анонимизирует:
POST https://elec.2020og.ru/#complete
Cookie: laravel_session=abcdef123
ответ: HTTP/2 302 Found
location:
https://elec.moscow/election/check/ длинная-длинная-цепочка-из-букв-и-цифр=
(на самом деле тут скрыт ваш номер бюллетеня, допустим, 777-ggg-aaa. Как проверить: вставить эту длинную цепочку на сайт https://www.base64decode.org/, раскодировать, потом взять из результата url и еще раз раскодировать. Нас наперстками не проведешь!)

GET https://elec.moscow/election/check/ длинная-длинная-цепочка-из-букв-и-цифр=
ответ: HTTP/2 302 Found
location:
https://elec.moscow/election/ 777-ggg-aaa (тот самый номер вашего бюллетеня, уже в открытом виде)
Видите? Сервер (никто не сможет этого опровергнуть) сохранил лог, в котором есть ваш cookie, уже связанный с номером телефона, и номер вашего бюллетеня!

4. Ставим галочку и отправляем голос. Ваш голос зашифровывается, создается транзакция и отправляется на сервер, чтобы потом попасть в блокчейн.
POST https://elec.moscow/election/vote
rawStoreBallotTx=
транзакция_с_голосом
guid=777-ggg-aaa (номер вашего бюллетеня)
votingId=...
district=...
accountAddressBlock=...
keyVerificationHash=...
rawTxHash=
xxxyyyzzz (вашу транзакцию можно будет найти в выгрузке блокчейна на сайте https://observer2020.mos.ru/observer/blocks-list по этому хэшу)

Что же, время собирать камни! После всего этого процесса в логах ДИТ, по неопровержимой гипотезе, хранится:
- связка cookie - номер телефона (laravel_session=abcdef123 и 9261234567)
- связка cookie - номер бюллетеня (laravel_session=abcdef123 и 777-ggg-aaa)
- связка номер бюллетеня - зашифрованный голос (777-ggg-aaa и транзакция_с_голосом, ищется в блокчейне по rawTxHash=xxxyyyzzz)

Дальше сотрудникам ДИТ остается только расшифровать голоса (что будет сделано при подсчете голосов, либо заранее, потому что ключ-то у ДИТ есть, хоть они разделили его на три части, но и себе могли оставить копию про запас), сопоставить их через логи с номерами телефонов и сделать для начальства красивую табличку в экселе. Верите ли вы, что они этого не сделают?
Десять лет назад компания Tesla Motors вышла на публичное размещение акций, собрав $226 млн при цене одной акции $17. К концу первого дня торгов курс акций вырос до $23,89, а на момент написания этой публикации он преодолел отметку в $1079.

Получается, что за десять лет присутствия на фондовом рынке акции Tesla выросли в цене в 63 раза🚀
PayPal прекратит внутренние переводы по России с августа 2020 года. Компания сосредоточится на международных платежах. (vc)
Автомобильная отрасль, более 130 лет опиравшаяся на двигатели внутреннего сгорания, готовится к грандиозным переменам. Впервые в истории производитель электромобилей стал самой крупной автокомпанией в мире. Теперь уже официально, Tesla:
В #iOS14 по свайпу вверх к любой фотографии в Фото можно добавить подпись. Мелочь, иногда полезно.
Timofeev Tales
В #iOS14 по свайпу вверх к любой фотографии в Фото можно добавить подпись. Мелочь, иногда полезно.
А вообще, написать о новых фишках #iOS14, о которых не было сказано на презентации?
Про доступ к буферу обмена в iOS14

Сегодня я неоднократно получил в сообщениях ссылки на материалы о том, как «приложения на iOS данные из буфера обмена воруют». Иллюстрируется это все уведомлениями, которые появились в iOS 14, когда какое-то приложение пытается вставить содержимое этого буфера. Тут же, конечно, понеслось о том, что все приложения пытаются украсть ваши данные, хотя реальность на самом деле не так ужасна.

Собственно, алерт появляется, когда приложение пытается вставить что-то из буфера, и таким образом может прочитать его содержимое. Такой баннер в iOS14 показывается достаточно часто и пользователи обратили на него внимание. Надо понимать, что не все приложения делают это с вредоносной целью, хотя, безусловно, есть приложения с рекламными СДК, которые могли попытаться тырить содержимое контента. Вот есть исследование на эту тему — Precise Location Information Leaking Through System Pasteboard | Mysk, и, думаю, именно оно стало толчком для этих изменений) Например, приложение Chrome проверяет содержимое клипборда, чтобы понять, присутствует ли там УРЛ, для того, чтобы при вставке в поле адреса предложить команду Paste and Go. Сторонний клиент для Reddit — Apollo — пытается обнаружить в буфере ссылку на пост на Reddit, чтобы сразу открыть его в приложении. Текстовые редакторы иногда пытаются просто вставить текст из клипборда в пустой документ для упрощения жизни пользователям. Но суть в том, что раньше на iOS проверить тип контента в буфере можно было, только попробовав вставить его — то есть чтобы Chrome понял, что в клипборде URL, его надо было попробовать в бекграунде вставить.

В iOS 14 появился новый API для разработчиков (UPasteboard.DetectionPattern), который позволяет разработчикам узнать тип содержимого в клипборде без его вставки в приложение. Когда разработчики в iOS 14 начнут использовать этот СДК, они смогут, используя эти СДК, проверять тип контента, не вставляя его. Таким образом честные приложения не будут триггерить подобные алерты, а нечестные спалятся. Думаю, потенциальным улучшением (и одновременно ухудшением) user experience будет очередной диалог-подтверждение из серии «разрешить приложению доступ к буферу обмена».
Forwarded from Laika Pro Apple
This media is not supported in your browser
VIEW IN TELEGRAM
Примерно так рвутся шлейфы матрицы на всех тачбарах:)
Наследие