Technologique
663 subscribers
144 photos
3 videos
42 files
949 links
Deeply involved developers about various aspects, tendencies & conceptions of programming technologies, FLOSS, Linux, security, cloud infrastructures & DevOps practices, distributed systems, data warehousing & analysis, DL/ML, web3, etc.
Author: @andrcmdr
Download Telegram
Я тут столкнулся с интересной проблемой...
Микросервисы как оказалось не панацея от всего 😂 и не везде применимы!
Вообще с моей точки зрения микросервисы это принцип UNIX примененный для современных сетевых приложений - когда монолитная система разбивается на взаимодействующие между собой по определенному принципу/протоколу самостоятельные инструменты, каждый из которых хорошо заточен под выполнение строго определенной задачи.
И в сетевой среде этот принцип хорошо работает благодаря самой среде и её протоколам.
Но принцип "микро" подходит для разбиения архитектуры не всех монолитных систем - там где генерируется большое количество данных и передаётся по сети, производительность сетевого стека и линий связи является критичной, а активное сетевое взаимодействие повышает накладные расходы по времени и ведёт к снижению производительности системы, тогда сеть становится узким местом в производительности системы!
И хорошо если все модули системы находятся локально в одном датацентре и их можно объединить в кластер физически через оптические подключения InfiBand.
Но другое дело если это сеть высокой доступности сервиса с CDN и контент с модулями сервиса находятся в разных удаленных датацентрах.
К примеру, если скажем платёжную систему, обработку транзакций, банковский процессинг, его интеграцию с внешними системами можно и нужно разбивать на микросервисы в stateless неизменяемых образах контейнеров, то вот для операторских биллинговых и data-mining систем с обработкой больших массивов данных с сетевого железа лучше сохранять принцип монолитности.
Особенно это стало актуально в свете недавно принятого в ГосДуме РФ пакета законов депутата Яровой, который в след за Россией скоро будет копироваться, как рекомендация для операторов связи в виде best practice от спецслужб, и тиражирования в соседних с Россией странах для обеспечения информационной и физической безопасности гражданского сектора и общества в целом.
И это касается не только российских производителей биллинговых и сетевых critical систем, которые чаще всего применяются в телеком и сетевых проектах на территории СНГ, но и всех систем подобного класса, применяемых в отрасли связи на территории СНГ, что обязывает производителей соблюдать требования независимо от их происхождения и локации.

#microservices
#bigdata
#infosec
#security
Technologique
Последнее время много пишут про DL/ML (deep learning, machine learning) Для машинного обучения есть фреймворки Torch, Leaf, Theano и MXNet весьма круты! 👍 Google DeepMind использует Torch https://en.wikipedia.org/wiki/Comparison_of_deep_learning_software…
Вообще это очень правильная идея - нужна регуляция и тестирование AI (три закона робототехники, описанные в рассказах Айзека Азимова очень пригодятся! 😄), иначе получим SkyNet, потому что машинное обучение на датасетах с использованием алгоритмов нейронных сетей это как магия (юзал недавно Torch на Lua и Leaf на Rust), потому что получается закрытая blackbox система, в отличии от экспертных систем.
Да, есть движки, фреймворки визуализации процесса обучения и анализа его эффективности, визуализации работы HTM памяти нейросети вплоть до каждого нейрона.
Но это как например реверс инженерить программу без исходников, атомарно, вникая в суть того, что делают на самом деле целые блоки инструкций!
Поэтому остаётся не до конца понятен механизм работы глубокого машинного обучения, даже самим авторам того же Torch - как нейросеть обучается на наборах данных и представлениях, образует стабильные синаптические связи А элементов (ассоциативных) разных порядков, степени стабильности связей и продолжительности элементов, образуя графы между S-A-R элеметами в одном слое и между слоями многослойного перцептрона как с прямым, так и с обратным распространением сигналов (реккурентная нейросеть с обратной связью нейронов), как сохраняет о них данные (Hierarchical Temporal Memory (HTM), графовые структуры данных похожи на графовую БД), которые фактически являются картой, snapshot-ами нейросети, её памятью.

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

Однако, история с ботом запущенным под аккаунтом в Twitter от лаборатории нейросетей и AI в Microsoft, который начал кидать "зигу" и чуть ли не написал свой "майн кампф" спустя всего пару дней активного общения с сообществом показывает, что наборы данных и учителя могут быть не только хорошими, с благими намерениями, а так же показывает к чему приводит неконтролируемое обучение!

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

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

#AI
#neuroscience
#neuronetworks
#security
В реализации протокола DCCP (Datagram Congestion Control Protocol) сетевого стэка ядра Linux (вплоть до текущей stable версии 4.9.11) вновь обнаружена и ликвидирована критическая уязвимость с эскалацией привелегий и исполнением кода в пространстве ядра.

Проблема вызвана двукратным освобождением буфера dccp_skb функцией __kfree_skb(), вызываемой повторно из функции dccp_rcv_state_process(), по причине игнорирования поледней флага состояния IPV6_RECVPKTINFO использования буфера, что позволяет передать в пространство ядра данные с указателями при освобождении буфера при обработке пакета и исполнить код как данные в привелегированном режиме, используя технику heap spraying. Таким образом буфер может быть проэксплуатирован удалённо посылкой DCCP пакета с эксплоит-кодом.

Код патча:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=5edabca9d4cff7f1f2b68f0bac55ef99d9798ba4

Как вы можете заметить по коду патча, использование оператора goto всё ещё в моде в исходниках на Си при реализации драйверов, модулей ядра и сетевых протоколов, не смотря на всю критику goto, порождаемого им спагетти-кода и как ответ на это создание структурной парадигмы Эдсгером Дейкстрой, Никлаусом Виртом и Чарльзом Хоаром ещё в конце 60-х годов прошлого века!

Патчи для Debian и Ubuntu уже доступны в security репозиториях дистрибутивов.

https://security-tracker.debian.org/tracker/CVE-2017-6074

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

http://openwall.com/lists/oss-security/2017/02/22/3

https://opennet.ru/opennews/art.shtml?num=46084


#security
Интернет интимных вещей

#IoT
#Security
#InfoSec

Отличный proof of concept безопасности IoT, очень хорошо иллюстрирующий до каких интимных вещей (или мест 😆) может дойти интернет.
"Нейромант", "Ghost in the shell" и "Матрица" меркнут в сравнении с этим - прежде, чем подключить к интернету мозг и нервную систему, нужно подключить и другие органы тела... Sorry guys, I lost the words, just read yourself, carefully. 😆

Я прям чётко увидел сейчас весь потенциал нового рынка "интернета интимных вещей" и кучу стартапов из области VR/AR-sex. 😆😂
Теперь даже более понятно для чего нужен был IPv6.

Были известны случаи эксплуатации уязвимостей некоторых моделей IP камер, но никогда не думал, что IP камеру применят в таком весьма необычном эндоскопе! 😆😂

https://youtu.be/NdfD4Pod9ho

Надеюсь исходные тексты эксплоита опубликуют - можно будет применить в исходном коде бот-нета Mirai. 😆😂

Материал по теме от Motherboard (осторожно, строго 18+):
https://motherboard.vice.com/en_us/article/camera-dildo-svakom-siime-eye-hacked-livestream

The Internet of Shit gets up close and personal.
Meltdown & Spectre.

Опубликована информация по некорректной работе процессоров Intel, приведшей к двум критическим уязвимостям, касающимся особенностей аппаратной реализации в процессоре защиты страниц памяти ядра и приложений (Meltdown), её поддержки ядрами современных ОС (главным образом Linux и Windows), а также работы процессорного конвейера (pipeline) и спекулятивного предсказания инструкций при переходах и ветвлении кода (Spectre).

Уязвимы процессоры выпускавшиеся последние 10 лет, начиная с поколений архитектур Nehalem и Sandy Bridge.

https://www.youtube.com/watch?v=bReA1dvGJ6Y

https://googleprojectzero.blogspot.com/2018/01/reading-privileged-memory-with-side.html

https://lwn.net/Articles/738975/

Атака эксплуатирующая уязвимость Meltdown позволяет в непривелегированном режиме читать данные из адресного пространства ядра, вынесенные в user space memory, а также возможна запись кода в данные области памяти с последующим их исполнением в привелегированном режиме работы ядра.

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

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

Однако первая эксплуатация была проведена 1.5 года назад и отчёт по данным уязвимостям был сдан в Intel ещё в июне 2016 года.

Для предотвращения атаки Meltdown в Linux возможно применение двух уже вышедших и включенных в ядро патчей - KAISER и kernel address space layout randomization (KASLR).

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

На данный момент разработчики ядра Linux, патча KAISER и патч-сета GRSecutiry ведут разработку патча Kernel Page Table Isolation (KPTI) на базе патча KAISER.

Описание уязвимости:
https://meltdownattack.com и https://spectreattack.com (доменные псевдонимы одного и того же сайта)

https://meltdownattack.com/meltdown.pdf

https://spectreattack.com/spectre.pdf

http://www.opennet.ru/opennews/art.shtml?num=47849

#security

See also:
https://t.me/technologique/709
https://t.me/technologique/710

https://t.me/technologique/964
https://t.me/technologique/999
https://t.me/technologique/1004
🔑 Librem Key by Purism

Recently Purism announced the stages and release dates for Librem 5, the most secure mobile device ever made, based on open source technological stack, but usefulness of this coolest thing from Purism is read off scale!
Bryan Lunduke and his guest from Purism tells us why:

https://youtu.be/8Uy5EKNtgbU

https://puri.sm/posts/introducing-the-librem-key/

Just look at this device - hardware security and encryption key, based on open source technologies and open encryption standards & algorithms, selling just for $60:
https://puri.sm/products/librem-key/

It has on board support for elliptic curve cryptography, hardware true random numbers generator (40 kbit/s) for strong entropy, one-time password storage (HOTP & TOTP), integrated password manager and private keys vault & generator, and other exceptionally useful functionality!

#security
#crypto
#cryptokey
https://www.youtube.com/live/AyH7zoP-JOg

Great conversation!

The privacy and confidentiality should be a fundamental human right in the information and ubiquitous computations era.

Always think about how your data will be used, what you say, message and what you'll prompt to search engine or AI model, how it can be and will be used, especially against your interests.

#AI
#AGI
#privacy
#confidentiality
#confidential_computing
#CC
#security