Pull to refresh
609
0
Андрей Карпов @Andrey2008

Директор по развитию бизнеса

Send message

Фильтрация предупреждений PVS-Studio, выявляющих критические ошибки (согласно классификации ГОСТ Р 71207-2024)

Level of difficultyEasy
Reading time8 min
Views753

ГОСТ Р 71207-2024 "Статический анализ кода" выделят класс дефектов в коде, называемых критическими ошибками. При разработке безопасного программного обеспечения (РБПО) такие дефекты должны в обязательном порядке выявляться и исправляться в приоритетном режиме. Статический анализатор PVS-Studio разрабатывается с учётом этого стандарта и позволяет выявлять все типы критических ошибок в коде программ, написанных на языках C, C++, C#, Java. Рассмотрим эти типы предупреждений и как их можно выделить среди других предупреждений, выдаваемых анализатором.

Читать далее

Поиск уязвимостей в исходном коде с помощью ручного статического анализа

Reading time7 min
Views4.3K

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

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

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

Читать далее

Сертификация ФСТЭК: самый подробный гайд. Часть вторая – процесс сертификации

Level of difficultyEasy
Reading time6 min
Views3.9K

Итак, вы определились со стратегией сертификации ФСТЭК, изучили регламенты и собрали список необходимых документов для ее прохождения. Очень подробно мы рассматривали эти этапы в первой части гайда. Напомню, что материалы собрала моя команда и я, CISO супераппа для бизнеса eXpress Максим Рубан. Во второй части мы по шагам рассмотрим процесс получения сертификата и поделимся всем, что знаем из своего опыта прохождения сертификации ФСТЭК России по 4 уровню доверия.

Читать далее

Сертификация ФСТЭК: самый подробный гайд. Часть первая – подготовка

Level of difficultyEasy
Reading time6 min
Views9K

Сертификация по требованиям ФСТЭК России остается ключевым инструментом обеспечения информационной безопасности в России, особенно в последние годы. На чем бы ни специализировалась ваша организация, лицензирование и сертификация товаров и услуг, связанных с защитой конфиденциальности и безопасной обработкой данных, имеет важное значение. Однако, для многих разработчиков процесс выглядит непонятным, приходится разбираться на ходу, из‑за чего проведение сертификационных испытаний может затянуться на год и более. Мы в eXpress изначально выбрали стратегию security‑first — и стали единственным супераппом в классе «онлайн‑коммуникации», сертифицированным ФСТЭК России по 4 уровню доверия.

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

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

Читать далее

Использование статических анализаторов кода при разработке безопасного ПО

Level of difficultyMedium
Reading time9 min
Views2.4K

Как часто анализировать проект? Сколько анализаторов использовать? Как размечать полученные предупреждения? Отвечаем на эти и другие вопросы, разбираясь в подробностях свежего ГОСТ Р 71207–2024, посвящённого статическому анализу.

Читать далее

ChatGPT как мутная ксерокопия Интернета

Reading time13 min
Views26K

В 2013 году сотрудники одной немецкой строительной компании заметили кое-какую странность в работе корпоративного аппарата Xerox. Всякий раз, когда копировалась планировка этажа в стоящемся здании, копия отличалась от оригинала в одном тонком, но в очень важном аспекте. В оригинальной версии планировки в доме различались три комнаты, и у каждой из них в прямоугольнике была подписана площадь этой комнаты: 14,13, 21,11 и 17,42 квадратных метра соответственно. Но на ксерокопии было написано, что все три комнаты имеют площадь по 14,13 квадратных метра. Компания обратилась к информатику Давиду Кризелю с просьбой, почему получается такой, казалось бы, немыслимый результат. Здесь требовалась именно консультация информатика, так как в современных аппаратах не применяется физический ксерографический процесс, впервые популяризованный в 1960-е. Вместо этого аппарат создаёт цифровую копию документа, а затем распечатывает полученный файл (изображение). При этом учтём, что для экономии дискового пространства почти все цифровые файлы изображений подвергаются сжатию — и разгадка этого таинственного случая начинает напрашиваться сама собой.

Читать далее

17 вредных советов для тех, кто проверяет документацию и технические тексты

Reading time3 min
Views6.9K

Вы пишете документацию, статьи или другие тексты? Тогда наверняка у вас есть проверяющие. Я уверен, что вы нежно и трепетно любите своих проверяющих. Вы, скорее всего, с нетерпением ждёте, когда они пришлют вам свои правки и комментарии. Благоговейно изучаете и перечитываете крупицы мудрости, которыми проверяющие благосклонно поделились с вами. Лучшие из комментариев вы записываете в специальную тетрадочку или даже распечатываете и вешаете их на стену...

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

Дисклеймер. Все совпадения фрагментов этого текста с реальными комментариями в вашей документации совершенно случайны. При написании этого текста не пострадал ни один проверяющий.

Читать далее

Конструкции ферритовых запоминающих устройств (часть первая)

Reading time18 min
Views29K
Вот уже несколько лет я коллекционирую образцы отечественных ферритовых запоминающих устройств. Данная статья, первая часть из планируемых трёх, посвящена обзору оперативной памяти на тороидальных магнитных сердечниках, но не со стороны исторической справки или физических принципов хранения информации, а со стороны технического устройства и инженерных решений, лежащих в конструкциях матриц, пластин, собираемых из них кубов, кассет и блоков памяти.

Куб Soemtron 381
Много текста и фотографий

ML SAST. Часть 1: как работают инструменты SAST и какие проблемы может решить применение машинного обучения?

Reading time13 min
Views3.4K

Машинное обучение (ML) в сфере анализа безопасности приложений SAST (Static Application Security Testing) — это область, которая с каждым годом становится все более актуальной в мире разработки ПО. Многие компании активно исследуют ее, а некоторые уже внедряют машинное обучение в продукты для анализа кода. УЦСБ разрабатывает собственную платформу по непрерывному анализу защищенности приложений и занимается внедрением моделей машинного обучения в качестве рекомендательной системы при поиске и верификации проблем безопасности. В серии статей, посвященной этой теме, планируем рассказать о потенциале внедрения машинного обучения в инструменты SAST и пошагово разработать модель анализа кода.

Читать далее

Детектор Судного дня или как я разработал датчик радиации для Home Assistant

Level of difficultyEasy
Reading time6 min
Views10K


С чего всё началось


В начале 2023 года, во многих СМИ появилась информация, что стрелки часов Судного дня перевели на десять секунд. Сейчас они замерли на отметке 90 секунд до полуночи, и теперь часы показывают самый высокий уровень риска ядерной катастрофы за всю историю проекта. Эта информация побудила меня создать устройство для мониторинга фоновой радиации — мог бы написать я, но на самом деле, всё началось гораздо раньше и об этом расскажу далее.
Читать дальше →

Svace: фича-реквесты для отечественного статического анализатора

Level of difficultyEasy
Reading time4 min
Views7.3K

В прошлом году многие российские компании стали оперативно сертифицировать разрабатываемое ПО. Так я познакомилась со статическим анализатором Svace.

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

Вот наша история использования Svace в 2022 году.

Читать далее

SAST для самых маленьких. Обзор open-source инструментов поиска уязвимостей для C/C++

Reading time33 min
Views25K


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


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

Читать дальше →

Как айтишнику издать свою книгу. Часть 5. Сколько получают авторы

Reading time8 min
Views10K

Можно ли прожить IT-шнику без привычных зарплат, а подавшись, скажем, в авторы? Материалы для разработчиков востребованы, да и зарабатывать своим хобби — чем не мечта.
С другой стороны, все мы откуда-то слышали, что писатели — Пелевина не берем — получают копейки.

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

Считаем деньги

Чем быстрее вы забудете ООП, тем лучше для вас и ваших программ

Reading time7 min
Views220K

Объектно-ориентированное программирование — чрезвычайно плохая идея, которая могла возникнуть только в Калифорнии.

— Эдсгер Вибе Дейкстра

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

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

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

C++20. Coroutines

Reading time33 min
Views69K

В этой статье мы подробно разберем понятие сопрограмм (coroutines), их классификацию, детально рассмотрим реализацию, допущения и компромиссы, предлагаемые новым стандартом C++20.


image

Читать дальше →

Как мы искали в компанию человека с инвалидностью

Reading time4 min
Views15K


Даже выбирая заголовок для этой статьи пришлось столкнуться с дилеммой относительно правильности использованной терминологии. «Инвалид», «Человек с ограниченными возможностями», «Человек с инвалидностью», «Человек с ограничениями по здоровью» или «Человек с особыми потребностями», как правильно?

Например, Комитет ООН по правам инвалидов рекомендует использовать определение «человек с инвалидностью». Сами же люди с инвалидностью термин «инвалид» недолюбливают.

И действительно, английское слово «invalid» можно перевести на русский, как «немощный» или «болезненный», что, согласитесь, звучит мягко говоря не очень.

За мировой стандарт принято правило «people-first language» ─ когда говорят о ком-то, первым делом называют его человеком, а уже затем говорят про его болезни или особенности. Таким образом, сегодня в ходу нейтральное выражение – «people with special needs» (люди с особыми потребностями) или люди с инвалидностью.

При этом, пару лет назад Минтруду РФ пришлось даже опровергать в прессе новости о том, что они планируют исключить употребление термина «инвалид».

Под катом краткий рассказ о том, как мы искали в нашу компанию людей с этими самыми особыми потребностями.
Читать дальше →

Основываясь на статистике: неофициальное предложение Топ-10 OWASP 2021

Reading time6 min
Views6.9K

image


Многим из нас встречался список угроз Топ-10 OWASP. А некоторые даже знают, что он обновляется каждые 3-4 года. И срок следующего обновления уже подошел. Но процесс создания списка угроз OWASP плохо документирован, поэтому нам захотелось предложить прозрачный, основанный на статистике рейтинг для тех же категорий угроз.
Мы проанализировали 2 миллиона различных отчетов о безопасности из 144 открытых источников. Под катом вы найдете наш вклад в анализ Топ-10 угроз OWASP на 2021 год. При этом каждый из читающих сможет воспроизвести результаты на основе понятных метрик.

Читать дальше →

Гугл-программисты. Как идиот набрал на работу идиотов

Reading time4 min
Views174K
В стародавние времена я, на постоянной основе, занимался техническими собеседованиями – отбирал кандидатов на должность программиста в компанию. У меня была простая, понятная, шикарная методика (не мной придуманная). Чувак сначала проходил длинное собеседование по куче разнообразных вопросов, потом решал несколько задач. На бумаге, как мы делали в ВУЗе.

Оглядываясь назад, понимаю – отбор действительно работал шикарно. Все, кого я тогда отобрал, стали уважаемыми в нашей деревне специалистами. Больше половины из них давно открыли собственный it-бизнес, в самых разных сферах – от 1С до разработки CRM-систем.

Вот этот опыт и замутил моё сознание. Настолько, что я решил поменять методику – подумал, что дело не в ней, а во мне. Я есть великий специалист по техническим собеседованиям.
Читать дальше →

Линукс-порт Far Manager: прогресс за 4 года

Reading time5 min
Views70K
Первая публикация исходников far2l, порта Far Manager под Линукс — штуки, которая когда-то считалась принципиально невозможной — состоялась 10 августа 2016го. Поскольку главный разработчик поговаривает о переходе проекта в статус беты, решил написать обзорный пост, как там идут дела и чего удалось добиться за прошедшие четыре года.

Консольная версия


Первый же вопрос, который все задавали и здесь, и на опеннете, и на лоре — а чего не в консоли? Изначально far2l действительно работал только в графическом режиме, через wxWidgets. Это оказалось самым простым способом быстро получить работающий порт со всеми пользовательскими удобствами: иксовым буфером обмена и всеми сочетаниями клавиш, причем с поддержкой событий не только KeyDown, но и KeyUp.

Сейчас это ограничение в прошлом: far2l прекрасно себя чувствует в консоли. Более того, там появились так называемые расширения терминала far2l, поэтому если запускать консольный far2l внутри графического (например, зайдя куда-нибудь по ssh), они «сконнектятся» между собой, и внутренний far2l тоже будет видеть и буфер обмена (с разрешения пользователя, конечно), и все возможные горячие клавиши. Более того, сделана даже специальная сборка putty, позволяющая наслаждаться всеми этими фишками из Windows.

Вот, смотрите, это far2l в GNOME Terminal


Читать дальше →

От Threat Modeling до безопасности AWS: 50+ open-source инструментов для выстраивания безопасности DevOps

Reading time21 min
Views19K

Привет, Хабр! Я консультант по информационной безопасности в Swordfish Security по части выстраивания безопасного DevOps для наших заказчиков. Я слежу за тем, как развивается тенденция развития компаний в сторону DevSecOps в мире, пытаюсь транслировать самые интересные практики в русскоговорящее сообщество и помогаю выстраивать этот процесс с нашей командой у заказчиков. За последние 2 года тема DevSecOps стала привлекать все больше внимания. Новые инструменты не успевают стать частью быстро растущего набора практик, из-за чего у меня появилось желание поставить некоторую контрольную точку в виде списка инструментов. Отправной точкой стал выход статьи коллег из Mail.ru, где отдельно был выделен раздел по безопасности Kubernetes. Я решил расширить этот список, охватив другие этапы жизненного цикла SDLC и приведя пару новых инструментов.

Читать далее
1
23 ...

Information

Rating
Does not participate
Works in
Date of birth
Registered
Activity

Specialization

Specialist
C++
C
Software development