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

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Профессия «кибердетектив»: кто такой исследователь угроз и как им стать

Время на прочтение8 мин
Количество просмотров124

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

Меня зовут Алексей Вишняков, сегодня я руковожу процессами эмуляции атак и испытания экспертизы продуктов в Standoff 365, Positive Technologies, но долгое время был руководителем отдела обнаружения вредоносного ПО экспертного центра безопасности (PT Expert Security Center).

Разрушаем мифы ИБ вместе
Рейтинг0
Комментарии0

Новости

Непрекращающиеся AB-тесты: как делать продукт лучше и знать об этом

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров30

Основное предназначение A/B тестов — оценить эффективность вносимых изменений и, в случае увеличения целевых метрик, зафиксировать эти изменения, а в случае снижения — откатить. Как правило, один из критериев хорошего дизайна A/B-теста — это конкретное и реалистичное с практической точки зрения время его проведения.

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

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

Графика древности: пятая волна. Аутсайдеры и современность (часть 4/4)

Уровень сложностиСредний
Время на прочтение31 мин
Количество просмотров221

В предыдущих частях этого лонгрида мы узнали всё про лидеров пятого поколения игровых консолей и про параллельную реальность 3D-ускорителей на персональных компьютерах. Казалось бы, тема исчерпана. Но не спешите расслабляться. В заключительной, самой объёмной части статьи мы узнаем многое про аутсайдеров поколения, а также о современном наследии, которое оставила после себя пятая волна.
Читать дальше →
Всего голосов 3: ↑4 и ↓-1+5
Комментарии0

Денежный вопрос: обсуждаем затраты на Bug Bounty с Лукой Сафоновым

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров81

Награда за обнаружение багов разного уровня зависит от сектора и типа уязвимости. Активнее всего с программами Bug Bounty работают IT-компании, онлайн-сервисы, сфера услуг, торговля, финансовые организации и блокчейн-проекты. Средняя сумма вознаграждения может составить: 

критический уровень опасности — $40 000;
высокий уровень опасности — $20 000;
средний уровень опасности — $5000;
низкий уровень опасности — $0.

В одной из статей мы уже писали, что Bug Bounty — это не разовая услуга, которую можно приобрести и забыть, как в случае с пентестом. Компании должны понимать, что внедрение, поддержка и развитие этой практики обойдутся им недешево. Так, средняя стоимость годовой подписки на услуги платформ Bug Bounty начинается с $16 000 за рубежом и стартует с 600 000 ₽/год в России.

Мы решили поговорить с Лукой Сафоновым, чтобы узнать, могут ли компании сэкономить на Bug Bounty, и не потерять в эффективности программ. Вот, что из этого получилось.

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

Истории

Безопасность в Docker: от правильной настройки хоста до демона

Время на прочтение12 мин
Количество просмотров237

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

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

Сегодня сложно представить современное приложение без технологий контейнеризации. Поэтому я решила подробно изучить вопросы безопасности в этом направлении и собрала рекомендации, как лучше подойти к работе с Docker-платформой. Подробности под катом!
Читать дальше →
Всего голосов 4: ↑4.5 и ↓-0.5+5
Комментарии0

5 полезных JS-библиотек для анимации, которые могут пригодиться в работе

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

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

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

Терминал для работы с COM-портом TerminalTMB

Уровень сложностиСредний
Время на прочтение27 мин
Количество просмотров219

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

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

А что, если бы функция get в Lodash выводила типы за вас в TypeScript

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров94

Продвинутая реализация Lodash функции get используя за основу базовую реализацию "Typed Get" type-challenge, а затем покрывая пограничные случаи: опциональные пути, массивы, кортежи. В самом конце типы добавляются к решению на JS.

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

Телеграм-каналы для айтишников

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров461

Привет, дорогие читатели Хабра! Меня зовут Катерина, я занимаюсь переводами технических статей. Моя основная тема - Python, но, бывает, перевожу также статьи по другим технологиям и по тестированию.

Я уже опубликовала на Хабре подборки моих любимых ресурсов по Python и QA. Сегодня я набросала список Телеграм‑каналов по самым разным технологиям.

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

Читать далее
Всего голосов 2: ↑0 и ↓2-2
Комментарии1

RxJava — всё?

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров361

В “далеком” 2018 г. разработчик компании EPAM Systems Владимир Иванов провел опрос среди своих подписчиков в Twitter, пытаясь узнать, какой фреймворк для организации асинхронной работы предпочитают Android-разработчики. 65% опрошенных назвали RxJava, 28% выбрали корутины.

Ирония в том, что результаты опроса Владимир приводил в докладе “RxJava не нужен: меняем Rx на корутины в Котлине”. Сегодня, спустя 6 лет после релиза стабильной версии Kotlin Coroutines, с трудом верится, что когда-то в мире асинхронной работы под Android был другой хозяин. 

Действительно ли RxJava так плоха, что ей не осталось места в наших приложениях? Используется ли она сейчас на проектах? Есть ли смысл изучать RxJava новичку? Давайте разбираться.

Читать далее
Всего голосов 2: ↑2.5 и ↓-0.5+3
Комментарии0

Руководство по Next.js. 1/3

Уровень сложностиСредний
Время на прочтение45 мин
Количество просмотров161


Hello world!


Представляю вашему вниманию первую часть обновленного руководства по Next.js.


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


Предполагается, что вы хорошо знаете JavaScript и React, а также хотя бы поверхностно знакомы с Node.js.


Обратите внимание: руководство актуально для Next.js версии 14.


При подготовке руководства я опирался в основном на официальную документацию, но в "отсебятине" мог и приврать (или просто очепятаться) 😁 При обнаружении подобного не стесняйтесь писать в личку 😉


Парочка полезных ссылок:


Читать дальше →
Рейтинг0
Комментарии0

Как мы ускорили Golang-тесты на CI

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров180

Привет, Хабр 👋! Меня зовут Александр, я занимаюсь разработкой ПО. В этом посте я расскажу про свой опыт, как желание улучшить свой рабочий процесс CI, помогло ускорить все golang пайплайны в PaaS в СберМаркета.

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

Мониторинг Celery

Уровень сложностиСредний
Время на прочтение27 мин
Количество просмотров437

Существует популярный подход к покрытию метриками Celery: он заключается в запуске некоторого процесса, который слушает события из специальной очереди, на основе этих событий обновляются объекты метрик, а фоновый поток сервера отдаёт собранные метрики скраперу. В этой статье подробно разберём события, их жизненный цикл, откуда и как их принимать. Также поговорим про механизм удалённого управления (remote control), какие у него есть возможности и как им пользоваться. Обсудим существующие решения, чем они отличаются, и почему вам, возможно, будет выгодно сделать своё.

Читать далее
Всего голосов 12: ↑13 и ↓-1+14
Комментарии0

Ближайшие события

PG Bootcamp 2024
Дата16 апреля
Время09:30 – 21:00
Место
МинскОнлайн
EvaConf 2024
Дата16 апреля
Время11:00 – 16:00
Место
МоскваОнлайн
Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн

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

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров525

Микросервисы и контейнеры для их развертывания сейчас являются стандартом в крупных компаниях. Для разработчиков и DevOps-инженеров это удобный подход: он дает больше возможностей и ускоряет процессы.

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

Меня зовут Саша Рахманный, я разработчик в команде информационной безопасности в Lamoda Tech. В этой статье я сравню разные базовые образы для .NET с точки зрения безопасности их компонентов и быстродействия. 

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

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии1

Веб-страничка строит график спектра отражения и пропускания света стопкой пластин

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров204

Стопка пластин – это не только оконный стеклопакет – это еще и слои глины и известняка в недрах земли, это «атмосфера» далекой звезды и атмосфера Земли, это живая ткань под микроскопом, тонкие плёнки. И «свет» – это не только видимый диапазон – это и радиоизлучение, и ультрафиолет. То есть, такие спектры интересны геологам, астрономам, биологам.

Математические методы вычисления этого спектра преподаются в ВУЗах. Предмет называется «Матричная оптика».

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

И назвал веб-страничку «Калькулятор Прашкевич» (это название – подарок на Первое апреля дорогому мне человеку).

Ссылка на Прашкевича

Есть один нюанс со смартфонами. В ссылке смартфоны автоматически приписывают букву "s" к слову "http". Получается "https". С этой припиской ссылка не работает – надо в адресной строке руками удалить эту букву.

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

Буду благодарен за отзывы и критические замечания.

спасибо
Всего голосов 2: ↑1 и ↓10
Комментарии0

Не становитесь безопасниками

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3K

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

Возможно, в комментариях напишут «Не надо обобщать, у меня все не так» — это правда, многое зависит от конкретной компании или специализации. Но в ИБ есть общие «болячки», о которых нельзя молчать.

Читать далее
Всего голосов 9: ↑5 и ↓4+1
Комментарии2

Статический анализ мультиязычности Angular приложения c помощью ngx-translate-lint

Время на прочтение3 мин
Количество просмотров175

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

Предлагаю вашему вниманию практическое руководство по внедрению статического анализа мультиязычности Angular приложения с помощью ngx-translate-lint (подразумевается, что для локализации Angular приложения уже используется пакет @ngx-translate/core).

Читать далее
Всего голосов 4: ↑5 и ↓-1+6
Комментарии0

35+ бесплатных ресурсов для начинающих разработчиков С++

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров853

Привет. Предположим, вы захотели начать изучать языĸ программирования C++ или, возможно, тех материалов, что уже изучили, вам недостаточно.

Я — Савва, программирую уже больше 7 лет, работаю менеджером команды наставников в Практикуме на курсе «Разработчик С++», а с недавнего времени — разработчиком в Positive Technologies. В этой статье мы с вместе с Практикумом собрали леĸции, ĸниги, курсы и всяĸое таĸое, чтобы шансов выстрелить себе в ногу самостоятельно было меньше :) По C++ существуют и другие подборĸи, но, ĸ удивлению, на Хабре их всего две.

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

Разбираем на винтики учебный процессор TOY

Время на прочтение10 мин
Количество просмотров672

А давайте возьмём простейший процессор и напишем его эмулятор на Python. А потом скормим ему бинарник с программой, чтобы получить, например, такой результат:

# python emulator.py -f add_two_numbers.bin
Enter a number > -3
Enter a number > 8
Output > 5

Статья для тех, кто всегда хотел разобраться в машинном коде, но боялся начать.

Читать далее
Всего голосов 1: ↑1.5 и ↓-0.5+2
Комментарии2

Как я делал загрузчик файлов на react и выложил на npm

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров624

Как я создавал гибкий и настраиваемый компонент React для загрузки файлов с возможностью перетаскивания , и выложил на npm. Создана с использованием инструмента create-react-library, который позволяет быстро и легко создать новую библиотеку React.

Читать далее
Всего голосов 4: ↑2 и ↓20
Комментарии6
1
23 ...