Как стать автором
Обновить
7
0

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

Отправить сообщение

Витамин B12: как узнать свой уровень и причем здесь старение мозга

Время на прочтение14 мин
Количество просмотров77K

Сегодня команда Lifext расскажет:


  • Как был открыт витамин B12;
  • Что ради этого пришлось пережить первым пациентам;
  • Что он из себя представляет и откуда берется;
  • Какую роль играет в старении и когнитивном здоровье человека;
  • Почему наш организм не усваивает тот, что синтезирован внутри;
  • В каких случаях нужно сдавать анализы;
  • Какие продукты есть и нужно ли принимать добавки;

image

Приятного чтения!


Читать дальше →
Всего голосов 23: ↑23 и ↓0+23
Комментарии22

Прикручиваем ActiveDirectory авторизацию к Kubernetes c помощью Keycloak

Время на прочтение7 мин
Количество просмотров19K
Данная статья написана с целью расширить уже существующую, но рассказывает про особенности связки именно с Microsoft ActiveDirectory, а так же дополняет ее.

В этой статье я расскажу как установить и настроить:

  • Keycloak — это проект с открытым исходным кодом. Который обеспечивает единую точку входа для приложений. Работает с множеством протоколов, в том числе с LDAP и OpenID которые нас интересуют.
  • Keycloak gatekeeper — реверс прокси приложения, позволяющее интегрировать авторизаию через Keycloak.
  • Gangway — приложение которе генерирует конфиг для kubectl с помощью которого через OpenID можно авторизоваться и подключиться к Kubernetes API.
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии3

LDAP-«аутентификация» — это антипаттерн

Время на прочтение7 мин
Количество просмотров82K

Сегодня в любой организации есть LDAP-каталог, наполненный пользователями этой организации. Если присмотреться, вы найдете одно или несколько приложений, которые используют этот же каталог для «аутентификации». И кавычки здесь неспроста, ведь LDAP — это протокол доступа к каталогам, спроектированный для чтения, записи и поиска в службе каталогов. Это не протокол аутентификации. Термин «LDAP-аутентификация», скорее, относится к той части протокола (операции bind), где определяется, кто вы такой, и какие права доступа имеете к информации каталога.
Читать дальше →
Всего голосов 18: ↑14 и ↓4+10
Комментарии36

С хорошим микроконтроллером и время летит быстро или осциллограф выходного дня

Время на прочтение4 мин
Количество просмотров20K

Некоторое время назад автор этих строк взялся разрабатывать компактный регистратор одно-полярного аналогового сигнала в пределах 3 вольт с максимально возможной скоростью считывания и минимально возможными затратами и размерами. В список минимально возможных затрат я вписал также и свою головную боль и выбрал хорошо знакомый мне STM32F303. Это, напомню, Cortex-M4 на 72 мегагерца от известной компании, со встроенными 12 разрядными, довольно шустрыми, аналого-цифровыми преобразователями (АЦП или ADC, кому как нравится) и с CAN интерфейсом на борту.


Таких небольших регистраторов требовалось несколько десятков. А наличие у микроконтроллера корпуса о 48-ми ногах вселяло надежду на то, что получится назвать этот считыватель компактным. Интерфейс CAN, с которым у меня уже тогда были хорошие отношения, давал мне возможность объединить весь этот джаз в достаточно удобной манере.


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


Однако, некоторый осадок остался. Осталась мысль, что, в отношении быстродействия, выжато было не все.


И вот, совсем недавно появляется серия STM32G4 с тактовой частотой до 170 мегагерц с вариантом в маленьком корпусе, и с почти такими же шустрыми АЦП на борту в количестве пяти штук. Надо было что-то делать.

Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии20

Современная игра для NES, написанная на Lisp-подобном языке

Время на прочтение10 мин
Количество просмотров8.2K
What Remains — это повествовательная игра-адвенчура для 8-битной видеоигровой консоли NES, выпущенная в марте 2019 года как бесплатный ROM, запускаемый в эмуляторе. Она создавалась небольшой командой Iodine Dynamics на протяжении двух лет с перерывами. В настоящий момент игра находится на этапе реализации в «железе»: мы создаём из переработанных деталей ограниченный набор картриджей.


В игре есть 6 уровней, на которых игрок ходит по нескольким сценам с картами с прокруткой в четырёх направлениях, общается с NPC, собирает улики, знакомится их миром, играет в мини-игры и решает простые головоломки. Я был главным инженером проекта, поэтому столкнулся со множеством трудностей при реализации видения команды. Учитывая серьёзные ограничения оборудования NES, достаточно сложно создавать для неё любую игру, не говоря уже о проекте с таким количеством контента, как в What Remains. Только благодаря созданным полезным подсистемам, позволяющим скрыть эту сложность и управлять ею, мы смогли работать как одна команда и завершить игру.


В этой статье я расскажу о некоторых технических подробностях отдельных частей движка игры. Надеюсь, другим разработчикам они окажутся полезными или хотя бы любопытными.
Читать дальше →
Всего голосов 25: ↑24 и ↓1+23
Комментарии3

pg_stat_statements + pg_stat_activity + loq_query = pg_ash?

Время на прочтение10 мин
Количество просмотров3.5K
В качестве короткого дополнения к статье Попытка создать аналог ASH для PostgreSQL.

Задача


Необходимо связать историю представлений pg_stat_statemenets, pg_stat_activity. В результате, используя историю планов выполнения из сервисной таблицы log_query, можно получить очень много полезной информации, для использования в процессе решения инцидентов производительности и оптимизации запросов.
Предупреждение.
В связи с новизной темы и незавершением периода тестирования, статья может содержать ошибки. Критика и замечания всячески приветствуются и ожидаются.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии7

Почему для открытия меню Windows читает один файл сто тысяч раз?

Время на прочтение4 мин
Количество просмотров157K

«Проводник тратит 700 мс на то, чтобы открыть контекстное меню панели задач. 75% этого времени он выполняет 114 801 операцию считывания из одного файла, средний объём считываемых данных 68 байт.

Мне стоит написать пост об этом, или достаточно саркастичного твита?»


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

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

Этот пост написан как проверка скоростного блогинга. От момента нахождения проблемы и саркастичного твита о ней до публикации поста прошло примерно 90 минут.
Читать дальше →
Всего голосов 195: ↑189 и ↓6+183
Комментарии591

Разработка монолитной Unix подобной OS — Начало (1)

Время на прочтение4 мин
Количество просмотров11K
В связи с отрицательными отзывами пробной статьи «Разработка микроядерной Unix подобной OC — планировщик» я решил перезапустить серию статей с учетом некоторых замечаний. Теперь, осознав свою целевую аудиторию, я смог сместить фокус с подобных себе на тех кому это действительно нужно.
Читать дальше →
Всего голосов 27: ↑24 и ↓3+21
Комментарии6

Отладка игр для NES: как она происходит сегодня

Время на прочтение5 мин
Количество просмотров8.1K
image

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

Инструменты отладки


Один из лучших способов отладки кода — использование отладчика. В некоторых версиях эмуляторов FCEUX и Mesen есть встроенный отладчик, позволяющий прерывать в любой момент времени выполнение программы для проверки работоспособности кода.


Отладчик эмулятора FCEUX

Стоит заметить, что этот способ больше подходит для продвинутых программистов, работающих с языком ассемблера. Но мы новички, поэтому будем писать на языке C (cc65). Разумеется, компилятор станет играть по своим собственным правилам, и нам будет трудно разбираться с машинным кодом, скомпилированным из кода на C.
Всего голосов 32: ↑32 и ↓0+32
Комментарии11

Что делать, если протухли сертификаты и кластер превратился в тыкву?

Время на прочтение5 мин
Количество просмотров37K
Если в ответ на команду kubectl get pod вы получаете:

Unable to connect to the server: x509: certificate has expired or is not yet valid

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

image
Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии13

Как обустроить себе рабочее место

Время на прочтение7 мин
Количество просмотров119K
В офисе вопросами обустройства рабочего места озабочен работодатель, но его экономный подход не так уж часто нравится сотрудникам. Помня о том, как приходилось сидеть на неудобном стуле в шумном опенспейсе, начинающий удаленщик пытается закрыться в тихом кабинете и купить себе кресло подороже, да железо пошустрее. И на этом в большинстве случаев фантазия заканчивается. Но вопрос подготовки рабочего места намного шире.

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

image
(рабочее место одного из наших сотрудников)
Читать дальше →
Всего голосов 45: ↑39 и ↓6+33
Комментарии85

Sampler. Консольная утилита для визуализации результата любых shell команд

Время на прочтение5 мин
Количество просмотров84K

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


Sampler


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


Код доступен на гитхабе. Инструкции по установке — для Linux, macOS и (экспериментально) Windows.

Читать дальше →
Всего голосов 298: ↑297 и ↓1+296
Комментарии54

Серийное производство электроники в России. Как мы делали телеметрию

Время на прочтение9 мин
Количество просмотров26K


Часто встречаемся с мнением, что производить в России электронику – занятие бессмысленное. Дорого, долго, плохо и вообще лучше делать в Китае.

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

[первоначальный текст статьи был изменён по просьбе заказчика]
Читать дальше →
Всего голосов 42: ↑41 и ↓1+40
Комментарии91

HDMI-LVDS. Разработка на TSUMV59 от MStar

Время на прочтение3 мин
Количество просмотров11K
Доброго времени суток, Хабр!



В продолжение прошлой статьи на тему DisplayPort-LVDS, решил написать о своей новой разработке контроллера HDMI-LVDS на чипе TSUMV59 от MStar. Контроллер имеет много интересного на борту, например, аналоговый выход звука, ИК порт, кнопки управления и даже OSD меню.
Читать дальше →
Всего голосов 28: ↑27 и ↓1+26
Комментарии22

Подборка полезных слайдов от Джулии Эванс

Время на прочтение1 мин
Количество просмотров52K
Перевели новую порцию слайдов. Права доступа в Unix, файловые дескрипторы, потоки, магия proc. И на закуску пара советов о том, как общаться, когда ты не согласен. А вдруг пригодятся =)



Читать дальше →
Всего голосов 115: ↑111 и ↓4+107
Комментарии42

Как обнаружить атаки на Windows-инфраструктуру: изучаем инструментарий хакеров

Время на прочтение11 мин
Количество просмотров26K


С каждым годом растет количество атак в корпоративном секторе: например в 2017 году зафиксировали на 13% больше уникальных инцидентов чем в 2016 г., а по итогам 2018 — на 27% больше инцидентов, чем в предыдущем периоде. В том числе и тех, где основным рабочим инструментом является операционная система Windows. В 2017—2018 годах группировки APT Dragonfly, APT28, APT MuddyWater проводили атаки на правительственные и военные организации Европы, Северной Америки и Саудовской Аравии. И использовали для этого три инструмента — Impacket, CrackMapExec и Koadic. Их исходный код открыт и доступен на GitHub.

Стоит отметить, что эти инструменты используются не для первичного проникновения, а для развития атаки внутри инфраструктуры. Злоумышленники используют их на разных стадиях атаки, следующих после преодоления периметра. Это, к слову сказать, сложно детектируется и зачастую только с помощью технологий выявления следов компрометации в сетевом трафике или инструментов, позволяющих обнаружить активные действия злоумышленника после проникновения его в инфраструктуру. Инструменты обеспечивают множество функций — от передачи файлов до взаимодействия с реестром и выполнения команд на удаленной машине. Мы провели исследование этих инструментов, чтобы определить их сетевую активность.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии3

Глубокое погружение в Linux namespaces

Время на прочтение7 мин
Количество просмотров100K

Часть 1
Часть 2
Часть 3
Часть 4


В этой серии постов мы внимательно рассмотрим один из главных ингредиентов в контейнере – namespaces. В процессе мы создадим более простой клон команды docker run – нашу собственную программу, которая будет принимать на входе команду (вместе с её аргументами, если таковые имеются) и разворачивать контейнер для её выполнения, изолированный от остальной системы, подобно тому, как вы бы выполнили docker run для запуска из образа.

Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии9

Настройка параметров ядра Linux для оптимизации PostgreSQL

Время на прочтение9 мин
Количество просмотров42K
Оптимальная производительность PostgreSQL зависит от правильно определенных параметров операционной системы. Плохо настроенные параметры ядра ОС могут привести к снижению производительности сервера базы данных. Поэтому обязательно, чтобы эти параметры были настроены в соответствии с сервером базы данных и его рабочей нагрузкой. В этом посте мы обсудим некоторые важные параметры ядра Linux, которые могут повлиять на производительность сервера базы данных и способы их настройки.

SHMMAX / SHMALL


SHMMAX — это параметр ядра, используемый для определения максимального размера одного сегмента разделяемой памяти (shared memory), который может выделить процесс Linux. До версии 9.2 PostgreSQL использовал System V (SysV), для которой требуется настройка SHMMAX. После 9.2 PostgreSQL переключился на разделяемую память POSIX. Так что теперь требуется меньше байтов разделяемой памяти System V.

До версии 9.3 SHMMAX был наиболее важным параметром ядра. Значение SHMMAX задается в байтах.
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии26

Атаки на домен

Время на прочтение19 мин
Количество просмотров82K

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

К примеру, по итогам пентеста в одной компании мы пришли к выводу, что все доступные машины в домене были не ниже Windows10/Windows Server2016, и на них стояли все самые свежие патчи. Сеть регулярно сканировалась, машины хардились. Все пользователи сидели через токены и не знали свои «20-символьные пароли». Вроде все хорошо, но протокол IPv6 не был отключен. Схема захвата домена выглядела так:

mitm6 -> ntlmrelay -> атака через делегирование -> получен хеш пароля локального администратора -> получен хеш пароля администратора домена.

К сожалению, такие популярные сертификации, как OSCP, GPEN или CEH, не учат проведению тестирования на проникновение Active Directory.

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

Итак, для демонстрации используем ноутбук на Kali Linux 2019 и поднятые на нем виртуальные хосты на VMware. Представим, что главная цель пентеста — получить права администратора домена, а в качестве вводных данных у нас есть доступ в корпоративную сеть компании по ethernet. Чтобы начать тестировать домен, нам понадобится учетная запись.
Читать дальше →
Всего голосов 50: ↑50 и ↓0+50
Комментарии18

Читаем даташиты 2: SPI на STM32; ШИМ, таймеры и прерывания на STM8

Время на прочтение24 мин
Количество просмотров37K


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


Сегодня я покажу, как с помощью даташитов решить довольно простые, но необходимые для множества проектов задачи на контроллерах STM32 (Blue Pill) и STM8. Все демо-проекты посвящены моим любимым светодиодам, зажигать мы их будем в больших количествах, для чего придется задействовать всякую интересную периферию.

Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии26

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность