Pull to refresh
1
-1
Антон Башарин @nirashab

Технический директор

Send message

Как в OWASP ZAP создать авторизационный контекст и задействовать его в автоматизации

Reading time7 min
Views2.8K

Привет, Хабр!

С вами инженерный отдел по динамическому анализу Swordfish Security. Продолжаем разбирать полезные кейсы, и сегодня мы рассмотрим, как в DAST-сканере OWASP ZAP настроить автоматическую авторизацию в приложении и переиспользовать ее в дальнейших сканированиях.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments6

Один в поле не воин. Полезные интеграции для инструментов анализа мобильных приложений

Reading time11 min
Views2.7K

Привет, Хабр!

Как вы уже наверняка помните, меня зовут Юрий Шабалин и я занимаюсь разработкой динамического анализатора мобильных приложений Стингрей. Сегодня мне хотелось бы затронуть тему интеграций с системами распространения (дистрибуции) мобильных приложений. В статье рассмотрим, что представляют собой такие системы, зачем они нужны и как могут использоваться для решения задач информационной безопасности. Материал будет полезен тем, кто хочет интегрировать проверки безопасности в свой процесс разработки, но не хочет менять процесс сборки. Расскажем также про инструмент, который может в этом помочь.

Поехали!

Читать далее
Total votes 8: ↑7 and ↓1+6
Comments0

Отечественные Линуксы: кто есть кто?

Reading time7 min
Views188K

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

Пошли разбираться!
Total votes 35: ↑34 and ↓1+33
Comments90

Развитие механизмов безопасности Android (от версии к версии)

Reading time28 min
Views12K

Привет, Хабр!

Я занимаюсь безопасностью мобильных приложений и с удовольствием слежу за развитием платформ Android и iOS, которые с каждым новым релизом становятся все привлекательнее для пользователей, «обрастают» новой интересной функциональностью и вместе с тем повышается их защищенность… или нет?

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

Надеюсь, статья понравится и будет полезна всем, кто увлекается безопасностью мобильных приложений и операционных систем.

Читать далее
Total votes 15: ↑15 and ↓0+15
Comments16

Организация кода в микросервисах и мой подход применения гексагональной архитектуры и DDD

Reading time7 min
Views14K

Привет, Хабр! В Монолите весь код должен быть в едином стиле, a в разных микросервисах можно использовать разные подходы, языки программирования и фреймворки. Для простых микросервисов с 1 — 2 контроллерами и 1 — 10 действиями особо смысла городить слои абстракций нет. Для сложных микросервисов с различными состояниями и логикой перехода между ними наоборот лучше изначально не лениться. Я хочу рассказать о моем опыте организации кода и использования подходов DDD, Портов и Адаптеров для обоих случаев. Есть кратко суть статьи: Джун — пишет код в контроллере. Мидл — пишет кучу абстракций. Сеньор — знает когда нужно писать код в контроллере, а когда нужны абстракции.
Читать дальше →
Total votes 13: ↑9 and ↓4+5
Comments8

Пример гексагональной архитектуры на Java

Reading time8 min
Views17K
Перевод статьи подготовлен специально для студентов курса «Разработчик Java».





Как разработчикам нам часто приходится сталкиваться с легаси кодом, который тяжело поддерживать. Вы знаете как бывает сложно понять простую логику в большом запутанном спагетти-коде. Улучшение кода или разработка новой функциональности становятся ночным кошмаром для разработчика.
Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments3

Гексагональная архитектура

Reading time31 min
Views164K
На недавнем Laracon NYC я читал доклад о гексагональной архитектуре. Несмотря на то, что я получил позитивную реакцию слушателей, мне кажется, что остались люди, которые хотели бы получить чуть более полное представление о том, что это такое. Разумеется, с примерами. Это моя попытка расширить тот доклад.

  1. Видео с доклада
  2. Слайды


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



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



Гексагональная архитектура, ни в коем случае не новый подход к разработке с применением фреймворков. Напротив, это всего лишь обобщение «лучших практик» — практик новых и старых. Я обернул эти слова в кавычки, чтобы люди не воспринимали их совсем буквально. Лучшие практики, которые работают для меня, могут не работать для вас — все зависит от задачи и преследуемых целей.



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


Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments16

Matthias Noback Об Идеальной Архитектуре — Слои, Порты и Адаптеры (Часть 3 — Порты и Адаптеры)

Reading time4 min
Views12K

Matthias Noback (автор A year with Symfony) опубликовал цикл из трех статей, в котором описал свои взгляды на идеальную архитектру корпоративных приложений, сформировавшуюся за долгие годы практики.Первая часть является вводной и не представляет особого интереса(можно ознакомиться в оригинале). Перевод второй — по ссылке. И так как он вызвал БЕШЕННЫЙ ажиотаж(целых ДВА человека подискутировали со мной в комментах), то не перевести третью было бы преступлением.


В предыдущей статье мы обсудили разумную систему расслоения проекта, состоящую из трех слоёв:


  • Домен
  • Прикладной слой
  • Инфраструктура

Сейчас, подробно рассмотрим инфраструктурный слой.

Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments4

Matthias Noback Об Идеальной Архитектуре — Слои, Порты и Адаптеры(Часть 2 — Слои)

Reading time7 min
Views15K

В 2017 году Matthias Noback (автор A year with Symfony) опубликовал цикл из трех статей, в котором описал свои взгляды на идеальную архитектру корпоративных приложений, сформировавшуюся за долгие годы практики.Первая часть является вводной и не представляет особого интереса(можно ознакомитсья в оригинале). Переводом второй является данная статья. Перевод третьей будет доступен в скором времени.


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

Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments15

Слои, Луковицы, Гексогоны, Порты и Адаптеры — всё это об одном

Reading time4 min
Views54K
Перевод статьи Mark Seemann о популярных архитектурах разработки ПО и о том, что между ними общего.

Один из моих читателей спросил меня:
Вернон, в своей книге «Implementing DDD» много говорит об архитектуре Порты и Адаптеры, как о более продвинутом уровне Слоистой Архитектуры. Хотелось бы услышать ваше мнение на этот счёт.
Если не вдаваться в детали, то в своей книге я описываю именно этот архитектурный паттерн, хотя никогда не называю его этим именем.

TL;DR Если применить принцип инверсии зависимостей к слоистой архитектуре, то в конечном счете получим Порты и Адаптеры.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments9

Страх и ненависть DevSecOps

Reading time22 min
Views46K
У нас было 2 анализатора кода, 4 инструмента для динамического тестирования, свои поделки и 250 скриптов. Не то, чтобы это всё было нужно в текущем процессе, но раз начал внедрять DevSecOps, то надо иди до конца.



Источник. Авторы персонажей: Джастин Ройланд и Дэн Хармон.

Что такое SecDevOps? А DevSecOps? В чем отличия? Application Security — о чём это? Почему классический подход больше не работает? На все эти вопросы знает ответ Юрий Шабалин из Swordfish Security. Юрий подробно на всё ответит и разберет проблемы перехода от классической модели Application Security к процессу DevSecOps: как правильно подойти к встраиванию процесса безопасной разработки в процесс DevOps и ничего не сломать при этом, как пройти основные этапы тестирования на безопасность, какие инструменты можно применять, чем они отличаются и как их правильно настроить, чтобы избежать подводных камней.
Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments3

Гости программы «Корпоративные лаборатории тестирования на проникновение»

Reading time1 min
Views5.7K
Всем привет!
Предоставляем видеозаписи выступлений гостей программы «Корпоративные лаборатории тестирования на проникновения», в которой в дополнении к основной, платной программе, приглашенные эксперты делятся своими глубокими знаниями и опытом на различные темы практической ИБ.

1. Гость программы обучения «Корпоративные лаборатории» Григорий Земсков, руководитель компании Revisium, эксперт в области ИБ и автор уникального отечественного веб-сканера Ai-Bolit, провел мастер класс на тему: «Поиск и удаление редиректов c сайта».



2. Гость программы обучения «Корпоративные лаборатории» Олег Михальский, директор по облачным сервисам Acronis, выступил с докладом на тему:
«Облачное хранение данных. Возможности и угрозы». Олег рассказал об облачной модели ИТ и проблемах безопасности, продемонстрирует практические решения и осветит тему будущих угроз и возможностей в данной области.


Читать дальше →
Total votes 8: ↑5 and ↓3+2
Comments0

Криптографические решения. От криптопровайдеров до браузерных плагинов

Reading time11 min
Views53K
Производители средств криптографической защиты информации (СКЗИ) предлагают различные механизмы для интеграции криптосредств в информационные системы. Существуют решения, ориентированные на поддержку систем с Web-интерфейсом, мобильных и десктопных приложений, серверных компонентов. СКЗИ интегрируются в приложения Microsoft и в продукты Open Source, обеспечивают поддержку различных прикладных протоколов и форматов электронной подписи.

С учетом растущего количества проектов с применением ЭЦП и появления массовых проектов для физических лиц, разработчикам подобных проектов требуется хорошо ориентироваться в предлагаемых производителями решениях по ЭЦП для того, чтобы сделать систему удобной в эксплуатации и недорогой в плане техподдержки. Таким образом, если еще лет 5 назад главным фактором выбора криптосредства являлось его полное соответствие требованиям регуляторов, то при сегодняшнем разнообразии важными критериями могут выступать охват поддерживаемых платформ, возможность интеграции с браузером, поддержка мобильных пользователей, возможность установки без прав системного администратора и т.п.

В данном материале сделана попытка классифицировать средства криптографической защиты информации.
  • Рассмотрены в основном СКЗИ, использующиеся на клиентских местах для защиты клиент-серверных соединений по протоколу TLS, для организации ЭЦП, шифрования передаваемых данных;
  • Не рассматриваются СКЗИ, применяемые для создания VPN и шифрования файловой системы, хранимых данных, а так же УЦ;
  • Отдельно выделены аппаратные криптографические устройства.

Классификация построена на основе:
  • технологий интеграции (CryptoAPI, Active-X, NPAPI и др.), которые поддерживают СКЗИ для встраивания в приложения и прикладные системы;
  • интерфейсов, которые предоставляют СКЗИ для встраивания в приложения и прикладные системы.

Кроме того, показаны способы интеграции СКЗИ с Web-приложениями и возможность его использования на мобильных платформах

Общая схема классификации приведена в таблице:
Криптопровайдеры Нативные библиотеки (openssl-style, PKCS#11, NSS, собственные интерфейсы) Локальные прокси Браузерные плагины Облачная подпись Браузеры с российской криптографией
Почтовые клиенты с российской криптографией Российская криптография в фреймворках, платформах, интерпретаторах Настольные криптографические приложения Криптография в BIOS UEFI Сервис-провайдеры ЭЦП Эмуляторы доверенной среды
Аппаратные средства

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

Читать дальше →
Total votes 21: ↑16 and ↓5+11
Comments18

По мотивам «трёх интервью о статических анализаторах», или четвертое интервью

Reading time5 min
Views5.5K
интервью
Примерно неделю назад на Хабре мною была опубликована статья "Три интервью о статических анализаторах кода", в которой на читательский суд были представлены точки зрения опытных программистов из Acronis, AlternativaPlatform и НПО «Эшелон» о методике разработки ПО, а также некоторые их размышления относительно использования статических анализаторов кода.

Поскольку спонсором статьи выступила компания ООО «СиПроВер» — разработчик статического анализатора PVS-Studio, — я решил попросить Андрея Карпова (технический директор) также ответить на некоторые вопросы. А именно — прокомментировать интересные моменты всех трёх интервью. Плюс сделать обращение к коллегам и читателям. Получился вот такой интересный результат.

Читать дальше →
Total votes 26: ↑21 and ↓5+16
Comments14

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity

Specialization

Chief Technology Officer (CTO), Software Architect
Java
Git
SQL
OOP
PostgreSQL
Docker
Linux