Как стать автором
Обновить
7
Карма
0
Рейтинг
Андрей Макеев @bassmack

Кибербезопасность

  • Подписчики 27
  • Подписки 1
  • Публикации
  • Комментарии

Уязвимости Android 2020

Блог компании OTUS Информационная безопасность *Программирование *Разработка под Android *

Операционная система Android считается одной из самых защищенных операционных систем в наше время. Разработчики этой ОС на своем официальном сайте рассказывают, что в ОС сделано очень много работы для того чтобы создание традиционных эксплойтов было нерентабельно, сложно, невозможно. Возникает вопрос, а есть ли вообще уязвимости в ОС, которые могли бы привести к компрометации системы? Будут ли эти уязвимости отличаться от стандартных уязвимостей программного обеспечения? Можно ли найти эти уязвимости в CWE TOP 25? Или в Android уникальные уязвимости? Эта статья попытка собрать воедино несколько уязвимостей платформы Android в разных частях её архитектуры за 2020 год.

Уязвимости Android
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 4.9K
Комментарии 0

Печать Ковида

Здоровье

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

Читать далее
Всего голосов 97: ↑86 и ↓11 +75
Просмотры 96K
Комментарии 127

PVS-Studio вступает в битву с захардкоженными паролями

Блог компании PVS-Studio

PVS-Studio – статический анализатор, позволяющий обнаружить множество проблем, скрытых в исходном коде. Среди них также присутствуют ошибки, связанные с безопасностью приложений. К примеру, недавно анализатор научился определять наличие в коде конфиденциальных данных, таких как пароли. Данная потенциальная уязвимость находится в списке OWASP Top Ten и является куда более опасной, чем может показаться на первый взгляд. В чём же эта опасность состоит и как статический анализатор может от неё уберечь? Что ж, об этом (и не только) и написана данная заметка!

Читать далее
Всего голосов 19: ↑17 и ↓2 +15
Просмотры 4.1K
Комментарии 11

Удобный вид для проверки результатов сканирования Nmap

Информационная безопасность *

Введение




Всем привет!

Я работаю в сфере информационной безопасности и занимаюсь анализом защищенности веб приложений. В свободное время я стараюсь повысить свои технические скилы и поэтому практикую bughanting на платформе hackerone или решаю лабы на hackthebox.

Вообще любой анализ web-приложения логично проводить с этапа сбора информации или разведки (кому как нравится, сути это не меняет). На этапе сбора информации о исследуемой системе я использую инструмент под названием nmap. Смею предположить, что данная легендарная утилита не нуждается в представлении, но, если вдруг кто-то не слышал вот ссылка.
Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 7.1K
Комментарии 1

Облегчаем себе жизнь с помощью BeautifulSoup4

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

Статья ориентирована на новичков, таких же как и я.
Читать дальше →
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 21K
Комментарии 8

Как перестать бояться и полюбить регулярные выражения

Блог компании Миландр Регулярные выражения *

В работе и повседневной жизни мы буквально окружены текстами: книги и статьи, письма и чаты, веб-страницы и программный код. Да что там — сама биологическая жизнь основана на ДНК. И для эффективной работы по поиску или модификации текста уже давно был придуман мощный инструмент — регулярные выражения, или regex. Однако по ряду причин далеко не все их используют, или имеют дело с ними только когда заставили при крайней необходимости. В этой статье я попытаюсь исправить эту печальную ситуацию.



Чтобы функции отыскать, воедино созвать и единою чёрною волей сковать.
Читать дальше →
Всего голосов 34: ↑31 и ↓3 +28
Просмотры 17K
Комментарии 26

Открытый курс машинного обучения. Тема 1. Первичный анализ данных с Pandas

Блог компании Open Data Science Python *Data Mining *Визуализация данных Машинное обучение *


Открытый курс машинного обучения mlcourse.ai сообщества OpenDataScience – это сбалансированный по теории и практике курс, дающий как знания так и навыки (необходимые, но не достаточные) машинного обучения уровня Junior Data Scientist. Нечасто встретите и подробное описание математики, стоящей за используемыми алгоритмами, и соревнования Kaggle, и примеры бизнес-применения машинного обучения в одном курсе. С 2017 по 2020 годы yorko и большая команда ODS проводили живые запуски курса дважды в год – с домашними заданиями, соревнованиями и общим рейтингом учатсников (имена героев все еще запечатлены тут). Верим, что силами ODS такой формат возродится, а пока, на август 2021, курс – в режиме самостоятельного прохождения.


Курс состоит из:


  • 10 статей на Хабре (и то же самое на Медиуме на англ.)
  • 10 лекций (Youtube-канал на русском + более свежие лекции на англ.), подробное описание каждой темы – в этой статье
  • воспроизводимых материалов (Jupyter notebooks) в репозитории mlcourse.ai и в виде Kaggle Dataset (нужен только браузер)
  • отличных соревнований Kaggle Inclass (не на "стаканье xgboost-ов", а на построение признаков)
  • домашних заданий по каждой теме

Опубликован план самостоятельного прохождения курса (англ.) – https://mlcourse.ai/roadmap.

Читать дальше →
Всего голосов 44: ↑43 и ↓1 +42
Просмотры 760K
Комментарии 57

Введение в машинное обучение с tensorflow

Python *Алгоритмы *Машинное обучение *
Из песочницы
Если мы в ближайшие пять лет построим машину с интеллектуальными возможностями одного человека, то ее преемник уже будет разумнее всего человечества вместе взятого. Через одно-два поколения они попросту перестанут обращать на нас внимание. Точно так же, как вы не обращаете внимания на муравьев у себя во дворе. Вы не уничтожаете их, но и не приручаете, они практически никак не влияют на вашу повседневную жизнь, но они там есть.
Сет Шостак

Введение.


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

  1. Введение, знакомство с tensorflow и базовыми алгоритмами (эта статья)
  2. Первые нейронные сети
  3. Свёрточные нейронные сети
  4. Рекуррентные нейронные сети

Изложенная ниже первая часть нацелена на то, чтобы объяснить азы работы с tensorflow и попутно рассказать, как машинное обучение работает впринципе, на примере tensorfolw. Во второй части мы наконец начнём проектировать и обучать нейронные сети, в т.ч. многослойные и обратим внимание на некоторые нюансы подготовки обучающих данных и выбора гиперпараметров. Поскольку свёрточные сети сейчас пользуются очень большой популярность, то третья часть выделена для подробного объяснения их работы. Ну, и в заключительной части планируется рассказ о рекуррентных моделях, на мой взгляд, — это самая сложная и интересная тема.
Читать дальше →
Всего голосов 54: ↑49 и ↓5 +44
Просмотры 170K
Комментарии 9

Основы линейной регрессии

Математика *Машинное обучение *
Здравствуй, Хабр!

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

! Осторожно, трафик! В статье присутствует заметное число изображений для иллюстраций, часть в формате gif.
Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 46K
Комментарии 34

Улучшение Python-кода: 12 советов для начинающих

Блог компании RUVDS.com Python *Программирование *
Перевод
В мои обязанности входит наём Python-разработчиков. Если у заинтересовавшего меня специалиста есть GitHub-аккаунт — я туда загляну. Все так делают. Может быть, вы этого и не знаете, но ваш домашний проект, не набравший ни одной GitHub-звезды, может помочь вам в получении работы.

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



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

В чём разница между новичком и более опытным разработчиком? Новичок не работал с устаревшими кодовыми базами. Поэтому он не видит ценности в том, чтобы вкладывать время в написание кода, который легко поддерживать. Часто новички работают в одиночку. Они, в результате, не особенно заботятся о читабельности кода.
Читать дальше →
Всего голосов 61: ↑53 и ↓8 +45
Просмотры 30K
Комментарии 18

Прощай, Google! 15 Альтернативных поисковиков, которые не шпионят, а сажают деревья и раздают воду

Поисковые технологии *Экология IT-компании


Аве Кодер!

В этой статье речь пойдет о крутых инди поисковиках, которые могут составить конкуренцию поисковым гигантам, а также удовлетворить вкусы как утонченного мусьё, так и идейного борца за личную жизнь.
Читать дальше →
Всего голосов 62: ↑54 и ↓8 +46
Просмотры 114K
Комментарии 112

Букварь по дизайну систем (Часть 1 с дополнениями по микросервисам)

Разработка веб-сайтов *Анализ и проектирование систем *DevOps *
Перевод


Несколько лет назад, для закрытия одного их предметов мне довелось перевести данный букварь. Де-факто этот вариант стал официальным переводом. Но развитию этого перевода мешает, тот факт, что он был написан в Google Drive и закрыт на редактирования. Сегодня я уделил время на переформатирования всего этого текста в MD формат с помощью редактора Хабра, с радостью публикую здесь и вскоре отдам текущим контрибьюторам.


Словарь


Node — нода — узел с каким либо ресурсом
Content — контент — данныe
Traffic — трафик — запрос/ответ, данные которые передаются от сервера клиенту и наоборот
Hardware — железо — аппаратная часть
Instance — инстанс — созданный объект какой либо сущности. Например инстанс сервера API
Headers — хедеры — заголовки (как правило TCP пакета, но может быть и HTTP запроса)



Читать дальше →
Всего голосов 35: ↑32 и ↓3 +29
Просмотры 16K
Комментарии 3

Сохраните в закладках эту статью, если вы новичок в Python (особенно если изучаете Python сами)

Python *Программирование *
Из песочницы

Привет, Хабр! Представляю вашему вниманию перевод статьи "Bookmark this if you are new to Python (especially if you self-learn Python)" в двух частях (1, 2) c простыми, но полезными советами и трюками в Python.



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


Уточнение: в настоящее время я использую Python 3.8. Если вы столкнулись с какими-либо проблемами во время запуска моих примеров, пожалуйста, проверьте, не связано ли это с вашей версией Python.

Читать дальше →
Всего голосов 30: ↑24 и ↓6 +18
Просмотры 37K
Комментарии 22

Курс MIT «Безопасность компьютерных систем». Лекция 20: «Безопасность мобильных телефонов», часть 1

Блог компании ua-hosting.company Информационная безопасность *Программирование *Анализ и проектирование систем *IT-инфраструктура *
Перевод
Tutorial

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Лекция 7: «Песочница Native Client» Часть 1 / Часть 2 / Часть 3
Лекция 8: «Модель сетевой безопасности» Часть 1 / Часть 2 / Часть 3
Лекция 9: «Безопасность Web-приложений» Часть 1 / Часть 2 / Часть 3
Лекция 10: «Символьное выполнение» Часть 1 / Часть 2 / Часть 3
Лекция 11: «Язык программирования Ur/Web» Часть 1 / Часть 2 / Часть 3
Лекция 12: «Сетевая безопасность» Часть 1 / Часть 2 / Часть 3
Лекция 13: «Сетевые протоколы» Часть 1 / Часть 2 / Часть 3
Лекция 14: «SSL и HTTPS» Часть 1 / Часть 2 / Часть 3
Лекция 15: «Медицинское программное обеспечение» Часть 1 / Часть 2 / Часть 3
Лекция 16: «Атаки через побочный канал» Часть 1 / Часть 2 / Часть 3
Лекция 17: «Аутентификация пользователя» Часть 1 / Часть 2 / Часть 3
Лекция 18: «Частный просмотр интернета» Часть 1 / Часть 2 / Часть 3
Лекция 19: «Анонимные сети» Часть 1 / Часть 2 / Часть 3
Лекция 20: «Безопасность мобильных телефонов» Часть 1 / Часть 2 / Часть 3
Всего голосов 28: ↑27 и ↓1 +26
Просмотры 10K
Комментарии 0

Что такое *args и **kwargs в Python?

Блог компании RUVDS.com Разработка веб-сайтов *Python *Программирование *
Перевод
Функции — это жизнь. Правда? Если вы только начали осваивать Python, неважно — первый ли это ваш язык программирования, или вы пришли в Python из другого языка, то вы уже знаете о том, что количество параметров в объявлении функции соответствует количеству аргументов, которые передают функции при вызове.



Это — основы. Это то, что помогает людям понимать окружающий мир. Но утверждение «количество параметров равно количеству аргументов» закладывает в голову новичка бомбу замедленного действия, которая срабатывает после того, как он увидит в объявлении функции таинственные конструкции *args или **kwargs.

Не позволяйте всяким значкам загонять себя в ступор. Тут нет ничего архисложного. В общем-то, если эти конструкции вам незнакомы — предлагаю с ними разобраться.
Читать дальше →
Всего голосов 58: ↑51 и ↓7 +44
Просмотры 124K
Комментарии 14

О работе ПК на примере Windows 10 и клавиатуры ч. 1

C++ *Системное программирование *C *C# *Разработка под Windows *
Из песочницы
image

Меня зовут Андрей Артемьев, я работаю в Microsoft над ядром ОС Windows 10, ранее я работал над Windows 10x (WCOS), XBox, Windows Phone и Microsoft Edge. Я хочу популярно в образовательных целях рассказать о том как работает компьютер на примере клавиатурного ввода и Windows 10. Данный цикл статей рассчитан в первую очередь на студентов технических специальностей. Мы рассмотрим какой путь проходит информация о нажатой клавише от клавиатуры до отображения в Notepad.exe. В виду обширности и междисциплинарности темы в статьях могут быть неточности, о которых сообщайте в комментариях. Какая-то информация может быть устаревшей в виду скорости с которой развивается Windows.
Читать дальше →
Всего голосов 85: ↑78 и ↓7 +71
Просмотры 85K
Комментарии 412

Кто такие дата-инженеры, и как ими становятся?

Блог компании OTUS Big Data *Хранение данных *Data Engineering *
Перевод
И снова здравствуйте! Заголовок статьи говорит сам о себе. В преддверии старта курса «Data Engineer» предлагаем разобраться в том, кто же такие дата-инженеры. В статье очень много полезных ссылок. Приятного прочтения.



Простое руководство о том, как поймать волну Data Engineering и не дать ей затянуть вас в пучину.

Складывается впечатление, что в наши дни каждый хочет стать дата-саентистом (Data Scientist). Но как насчет Data Engineering (инжиниринга данных)? По сути, это своего рода гибрид дата-аналитика и дата-саентиста; дата-инженер обычно отвечает за управление рабочими процессами, конвейерами обработки и ETL-процессами. Ввиду важности этих функций, в настоящее время это очередной популярный профессиональный жаргонизм, который активно набирает обороты.

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

Итак, начнем!
Читать дальше →
Всего голосов 14: ↑11 и ↓3 +8
Просмотры 61K
Комментарии 3

Откуда возникла необходимость в Threat Intelligence

Блог компании Информзащита IT-инфраструктура *
Как показывает статистика, ежедневно количество угроз стремительно растет. Так, например, по аналитике, проведенной антивирусной лабораторией Pandalabs в компании Panda Security за 1 квартал 2017 года, количество новых типов угроз ежедневно увеличивается на 350 000.
Атаки и компрометации могут осуществляться за минуты, а процесс АтакаКомпрометацияУтечка данныхОбнаружение инцидента Реагирование и Устранение занимает дни, недели и даже месяцы. И чаще всего это происходит уже после того, как злоумышленник скомпрометировал данные. При этом согласно ежегодному отчету по информационной безопасности Cisco специалисты по безопасности в течение своего рабочего дня способны обработать лишь 56% поступающих сообщений об угрозах, а среди этих оповещений об угрозах обоснованным признается только каждое второе (т.е. 28%). Таким образом, 44% инцидентов остаются без внимания!

При этом на рынке критически не хватает не только ресурсов, позволяющих обработать все инциденты, но и общей системы, благодаря которой стало бы возможным реагировать на них на ранних стадиях кибератак — в идеале до эксплуатации, а также накапливать распределенные знания об угрозах, обмениваться полученными данными, расследовать причины угроз и мгновенно реагировать на них. Для более быстрого накопления информации о возможных угрозах следует стремиться к совместному использованию полезных данных от широкого круга источников. При этом важно, чтобы эта информация была стандартизирована, то есть стандарты и протоколы передачи и предоставления данных были определены заранее.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 12K
Комментарии 1

Эпичная сага о сведениях Threat Intelligence

Блог компании Инфосистемы Джет Информационная безопасность *


На определенном этапе зрелости ИБ многие компании начинают задумываться о том, как получить и использовать сведения об актуальных для них киберугрозах. В зависимости от отраслевой специфики организации, интерес могут вызывать разные типы угроз. Подход к применению таких сведений был сформирован ещё компанией Lockheed Martin в материале Intelligence Driven Defence.

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

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

Мы решили поделиться своим видением TI в Jet CSIRT и рассказать о попытках адаптации различных потенциально полезных подходов к управлению сведениями о киберугрозах.
Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 5.1K
Комментарии 2

Криптографические атаки: объяснение для смятённых умов

Информационная безопасность *Криптография *Алгоритмы *Серверное администрирование *Тестирование веб-сервисов *
Перевод
При слове «криптография» некоторые вспоминают свой пароль WiFi, зелёный замочек рядом с адресом любимого сайта и то, как трудно залезть в чужую почту. Другие вспоминают череду уязвимостей последних лет с говорящими аббревиатурами (DROWN, FREAK, POODLE...), стильными логотипами и предупреждением срочно обновить браузер.

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

За последние годы коллекция криптографических атак превратилась в зоопарк кричащих логотипов, набитых формулами научных статей и породила общее мрачное ощущение, что всё сломано. Но на самом деле многие из атак основаны на нескольких общих принципах, а бесконечные страницы формул часто сводятся к простым для понимания идеям.
Читать дальше →
Всего голосов 103: ↑103 и ↓0 +103
Просмотры 39K
Комментарии 22
1

Информация

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