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

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

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

Как Linux создаёт и подсчитывает сокеты

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

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

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

Python — тестирование с помощью pytest(ч.1)

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

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

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

Простой SOCKS4 прокси на Python

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

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

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

Дескрипторы в Python

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

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

Дескриптор — это объектовый атрибут с поведением, определяемым методами в его классе. Если просто — это способ, с помощью которого объект может контролировать доступ к его атрибутам, используя специально определенные методы __get__, __set__, и __delete__. Если говорить еще проще — дескрипторы позволяют задавать точки доступа к атрибутам объекта, добавляя дополнительную логику, когда атрибут читается, записывается или удаляется.

В этой статье поговорим подробней про дескрпиторы.

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

Как веб-специалисту начать пентест API мобильного приложения и не сломать макбук

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

Я активный участник программ Bug Bounty и достаточно часто смотрю не только веб‑приложения, но и мобильные приложения, чтобы определить все конечные точки API сервиса и попробовать найти баг в функционале до которого не всегда просто добраться. А почему непросто? Потому что в мобильных приложениях часто встречается SSL Pinning, который не дает перехватывать трафик, а поэтому анализ API приложения становится более сложным. В этой статье я изложу:

1. Как отключить SSL Pinning и получить возможность внедряться в процессы iOS приложений.

2. Как отключить SSL Pinning и внедриться в Android приложение без наличия смартфона на одноименной ОС.

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

Секреты логических операторов в Python

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

Логические операции играют важную роль в программировании. Они используются для создания условных конструкций и составления сложных алгоритмов. В Python для проведения логических операций используются логические операторы:

not — логическое отрицание

and — логическое умножение

or — логическое сложение

В этой статье мы поговорим о неочевидных деталях и скрытых особенностях работы логических операторов в Python.

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

Обнаружение объектов на изображении с помощью моделей YOLOv5 и YOLOv8

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

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

Одной из самых популярных архитектур нейронных сетей для таких задач, является YOLO (you only look once), созданная в 2015 году. С тех пор появилось довольно много версий данных алгоритмов. Последние выпуски сети предназначены для таких задач как распознавание, обнаружение и сегментация изображений. 

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

Полное руководство по Suricata: основы и важные команды

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

Введение

Suricata — это многофункциональная и мощная система обнаружения вторжений в сеть (IDS), система предотвращения вторжений (IPS) и инструмент мониторинга сетевой безопасности (NSM). Разработанная Фондом открытой информации безопасности (OISF), Suricata известна своей высокой производительностью и масштабируемостью, что делает её популярной среди специалистов по безопасности для мониторинга и защиты сетевых инфраструктур. Это полное руководство охватывает основы Suricata, её ключевые функции, процесс установки, детали конфигурации и важные команды, чтобы помочь вам максимально использовать её потенциал.

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

Работа с YOLOV8. Детекция, сегментация, трекинг объектов, а также подготовка собственного датасета и обучение

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

Если вам кажется, что начать работу с нейросетями - это сложно, то этот материал для вас!

В статье подробно, с примерами кода, разберем основные функции базовой модели YOLOV8 - детекция, сегментация, трекинг объектов, а также создание собственного датасета и дообучение нейросети для работы с собственными объектами!

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

FastStream — новый убийца Celery?

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

FastStream - это относительно новая блестящая игрушка в руках Python'истов, которая создана специально для работы с брокерами сообщений.

В Python сложилось устойчивое убеждение, что если мы работаем с MQ - то нам нужен Celery, но он слегка устарел. Именно поэтому люди пытаются выкинуть "деда" и затащить вместо него любой новый многообещающий MQ-инструмент. Кроме того, культ Celery настолько силен в умах, что практически все новые библиотеки для работы с MQ пытаются стать его "убийцей" и заменой.

Однако, это не совсем верно. Существует огромный пласт проектов, которым нужен не фреймворк для менеджмента задач, а просто "голый" функционал Kafka/RabbitMQ/NATS/whatever для межсервисного взаимодействия. И все эти проекты вынуждены довольствоваться "сырыми" python-клиентами к своим брокерам, а всю обвязку вокруг этих клиентов писать самостоятельно. FastStream целится как раз в эту нишу.

В рамках статьи я хочу убедить вас, что не Celery мы едины, и для альтернативных инструментов найдется место под солнцем. А также рассмотрим фичи FastStream, которые он привносит в застоявшийся мир MQ-инструментов.

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

Celery: разбираемся с Celery Beat

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

Это продолжение цикла статей про Celery. Первая часть тут.
Сегодня мы более глубоко разберем работу с Celery. Узнаем как работает Celery Beat внутри, научимся настраивать и создавать периодические задачи. И конечно же коснемся практических вопросов.

Роль Celery Beat проста: это планировщик и он запускает задачи с установленными интервалами. Эти задачи затем выполняются доступными рабочими узлами.
Для начала нам нужно разобраться с основными компонентами и названиями, которые будут использоваться в дальнейшем.

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

Пентест gRPC

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

В последнее время в современных веб-приложениях с микросервисной архитектурой всё чаще в качестве API используется фреймворк удалённого вызова процедур gRPC. Данный фреймворк чаще всего использует protocol buffers(protobuf) в качестве языка определения интерфейсов и в качестве основного формата обмена сообщениями. Однако, в отличие от более привычных форматов обмена сообщениями (JSON,XML и тд), которые являются текстовыми, в protobuf фигурируют бинарные данные. Помимо этого, gRPC в качестве транспорта использует исключительно HTTP/2. Чаще всего эти обстоятельства вызывают затруденения при тестировании безопасности веб-приложений, которые используют данный фреймворк.

Данная статья поможет разобраться в том, как тестировать веб-приложения, использующие gRPC. Содержание статьи частично пересекается с моим докладом на OFFZONE 2023, однако, если в нём был сделан упор на рассказ об аспектах protobuf и gRPC и обзор существующих инструментов для тестирования безопасности, то здесь мы рассмотрим практический пример по поиску уязвимостей на демонстрационном стенде с использованием Burp Suite и расширения prototbuf-magic, разработанным нами. Для ознакомления с основами protobuf и gRPC рекомендую послушать мой доклад.

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

DIY для шпиона: использование обнаружения объектов с помощью YOLOv8 в рамках военных стратегий

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

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

В рамках глобальной системы мониторинга, известной как «The Machine». , функционируют разнообразные элементы. Данная система объединяет множество устройств, распределенных по всему земному шару, что обеспечивает комплексное наблюдение. Это позволяет государственным органам осуществлять мониторинг за индивидуальными лицами, анализировать общественные поведенческие тенденции и контролировать военные объекты на международном уровне. Геопространственная разведка (GEOINT) занимает центральное место в этой системе.

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

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

SPARK для «малышей»

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

Примеры кода на Python для работы с Apache Spark для «самых маленьких» (и немного «картинок»).

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

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

Охота за кредами

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

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

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

Обращение к айтишникам Qiwi

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

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

Не ведитесь!

Читать далее
Всего голосов 232: ↑217 и ↓15+246
Комментарии116

Работа с Kubernetes: поднимаем локальный кластер и деплоим в него приложения

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

Павел Агалецкий, ведущий разработчик юнита Platform as a Service Авито, написал, как поднять кластер Kubernetes на локальном компьютере Mac с помощью подручных инструментов, а потом задеплоить в него простейшие приложения.

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

Разработка Desktop приложений на Python и библиотеки PySide6/PyQt6. Часть 2. Знакомство с виджетами и Qt Designer

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

Мы продолжаем изучать PySide6/PyQt6 и сейчас мы с Вами познакомимся с виджетами, компоновкой и Qt Designer

Ссылка на 1 урок с установкой PySide6 и создания первого приложения.

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

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

Полезные модули PowerShell. Переводчик в консоли, SpeedTest, Syslog и другие

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

Всем привет! Порой, написать графическую форму для консольного приложения может оказаться очень удобным решением, тем самым не нужно запоминать все ключи программы, особенно, если пользоваться им приходится изредка, тем самым автоматизируя работу с данным приложением в дальнейшем. Но, ситуация может быть обратной, когда приложение имеет только графический интерфейс, а вам нужно получить вывод его работы в консоли, например, для возможности передачи метрик в систему мониторинга. С тех пор как начал проводить все больше времени в консоли, заметил, что становится менее удобно переключаться на ранее привычные инструменты, лишний раз использовать мышь, держать открытыми излишние приложения или вкладки в браузере, особенно, если работаешь на удаленной машине без прямого доступа к графическому интерфейсу. У меня накопилась небольшая коллекция полезных модулей, большинство из которых написаны совсем недавно, успел привыкнуть при регулярном использовании и хотелось бы ими поделиться. Осознавая, что тенденция ухода Windows систем на территории РФ растет, тем не менее думаю еще очень много людей, кто так же как и я продолжают использовать данную систему и автоматизировать свою работу, возможно, представленные модули так же смогут пригодятся. Все модули опубликованы в репозитории на GitHub и менеджере пакетов Nuget, откуда их можно установить одной командой.

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

Галопом по Европам: Легитимные процессы Windows на пальцах

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

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

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

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирован
Активность