Pull to refresh
0
@9mayread⁠-⁠only

User

Send message

Наши танки. История нагрузочного тестирования в Яндексе

Reading time7 min
Views61K
Я хочу сегодня вспомнить о том, как нагрузочное тестирование в Яндексе появилось, развивалось и устроено сейчас.

image

Кстати, если вам понравится этот рассказ, приходите на Тестовую среду в нашем питерском офисе 30 ноября (зарегистрироваться), – там я расскажу больше об игровых механиках в тестировании и с удовольствием вживую с вами поговорю. Итак.

В 2005-2006 годах часть не поисковой инфраструктуры Яндекса стала испытывать нагрузки растущего как на дрожжах Рунета. Появилась необходимость тестировать производительность смежных с поиском сервисов, в первую очередь — баннерную крутилку. Тимур Хайруллин, на тот момент руководивший нагрузочным тестированием, озадачился поиском подходящего инструмента.
Читать дальше →
Total votes 96: ↑87 and ↓9+78
Comments41

Эскалация привилегий при помощи polkit: как заполучить root-доступ в Linux, воспользовавшись семилетним багом

Reading time14 min
Views8.7K

polkit – это системный сервис, по умолчанию устанавливаемый во многих дистрибутивах Linux. Он используется демоном systemd, поэтому в любом дистрибутиве Linux, где применяется system, также используется polkit. Автор этой статьи, входя в состав a GitHub Security Lab, работает над улучшением безопасности опенсорсного софта; он ищет уязвимости и докладывает о них. Именно он однажды нашел уязвимость в polkit, позволяющую злоумышленнику увеличить его привилегии. Раскрытие уязвимости было скоординировано с командой по поддержке polkit, а также с командой по обеспечению безопасности в компании Red Hat. О раскрытии этой уязвимости было объявлено публично, патч для нее был выпущен 3 июня 2021 года, и ей был присвоен код CVE-2021-3560.

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

История уязвимости CVE-2021-3560 и какие дистрибутивы она затронула

Рассматриваемый баг достаточно старый. Он вкрался в код более восьми лет назад в коммите bfa5036 и впервые мог использоваться в версии 0.113 программы polkit. Однако, во многих популярных дистрибутивах Linux эта уязвимая версия не использовалась до относительно недавнего времени.

Немного специфической историей этот баг обладает в Debian и его производных (например, в Ubuntu), так как Debian использует форк polkit, в котором есть своя особенная схема нумерации версий. В форке Debian этот баг появился в коммите f81d021 и впервые попал в дистрибутив в версии 0.105-26. В стабильном релизе Debian 10 (“buster”) используется версия 0.105-25, таким образом, уязвимости в нем нет. Но некоторые производные Debian, в том числе, Ubuntu, основаны на нестабильной версии Debian, а она уязвима.

Читать далее
Total votes 24: ↑22 and ↓2+20
Comments3

Яндекс.Танк и автоматизация нагрузочного тестирования

Reading time6 min
Views95K
В ходе тестирования некоторых продуктов компании Positive Technologies возникла необходимость проведения быстрых стресс-тестов одного веб-сервиса. Эти тесты должны были быть простыми и быстрыми в разработке, нетребовательными к аппаратным ресурсам и одновременно с этим давать значительную нагрузку однотипными HTTP-запросами, а также предоставлять статистические данные для анализа системы под нагрузкой.

Для их реализации мы исследовали и опробовали некоторое количество инструментов, среди которых были Apache JMeter и написанный нами на Python скрипт LogSniper, который выполнял реплей заранее подготовленных серверных логов с HTTP-запросами на цель.
Читать дальше →
Total votes 65: ↑61 and ↓4+57
Comments4

Приложения для электронных книг на операционной системе Android. Часть 2. Книжные магазины и приложения для чтения книг

Reading time9 min
Views96K
В первой части обозрения приложений для электронных книг на операционной системе Android были изложены причины, по которым далеко не всякое приложение для системы Android будет корректно работать на электронных книгах с этой же операционной системой.

Электронная книга ONYX BOOX Monte Cristo 4

Именно этот печальный факт и побудил нас протестировать множество приложений и выбрать те, которые будут работоспособны на «читалках» (пусть и с ограничениями).

Кратко причины сложностей в работе приложений на «читалках» состоят в следующем:

  1. «Читалки» имеют черно-белый экран; отображение цвета в приложениях не должно быть принципиально важным;
  2. Экраны «читалок» также и довольно медленно обновляются, поэтому приложения не должны показывать быстро меняющийся контент;
  3. Приложения не должны быть платными, т.к. электронные книги не имеют магазина Google Play; необходимого для установки платных приложений (но платный контент в приложении при этом не исключается!);
  4. Приложения должны быть принципиально совместимыми с «читалками» даже при выполнении всех трёх предыдущих условий.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments28

Хочется лучше жить? Просто начни просить

Level of difficultyEasy
Reading time7 min
Views63K

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

Читать далее
Total votes 181: ↑152 and ↓29+123
Comments282

Балансировка двух провайдеров на основе BGP и EEM

Reading time15 min
Views27K

Статья рассматривает способ управления BPG-анонсами на маршрутизаторах Cisco, c операционной системой IOS XE, с помощью Cisco Embedded Event Manager (EEM) для балансировки входящего трафика и резервирования uplink от нескольких вышестоящих провайдеров.

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

Мониторинг коммутаторов Cisco, D-Link, 3Com, Zyxel в системе Zabbix

Reading time5 min
Views278K
Мониторинг — это один из столпов обеспечения высокой доступности ИТ-систем.
Как правило, системные администраторы при установке системы мониторинга в первую очередь настраивают ее на проверку параметров серверов и обнаружение недоступности сервисов, запущенных на этих серверах. Безусловно это приоритетная задача, но не стоит забывать и о другом оборудовании: ИБП, системах кондиционирования, сетевом оборудовании.

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

модная карта сети
Читать дальше →
Total votes 31: ↑29 and ↓2+27
Comments35

Используем tcpdump для анализа и перехвата сетевого трафика

Reading time7 min
Views213K


Утилита tcpdump — отличный инструмент командной, который способен перехватывать и анализировать сетевой трафик. Может оказаться большим подспорьем при решении сетевых проблем. Пакеты можно сохранить в файл и анализировать позже. Рекомендуется время от времени запускать эту утилиту, чтобы следить за своей сетью.


Содержание:


  • Вывод tcpdump
  • Установка tcpdump
  • Опции tcpdump
  • Фильтры tcpdump:
    • Фильтр выражений
    • Фильтр портов
    • Фильтр хостов
    • Комбинирование фильтров
  • Сохранение заголовков в файл
  • Просмотр сведений о пакете
  • Вывод

Вывод tcpdump


Утилита tcpdump позволяет проверять заголовки пакетов TCP/IP и выводить одну строку для каждого из пакетов. Она будет делать это до тех пор, пока не нажать Ctrl + C.


Давайте рассмотрим одну строку из примера вывода:


20:58:26.765637 IP 10.0.0.50.80 > 10.0.0.1.53181: Flags [F.], seq 1, ack 2, win 453, options [nop,nop,TS val 3822939 ecr 249100129], length 0

Каждая строка включает:


  • Метка времени Unix (20: 58: 26.765637)
  • протокол (IP)
  • имя или IP-адрес исходного хоста и номер порта (10.0.0.50.80)
  • имя хоста или IP-адрес назначения и номер порта (10.0.0.1.53181)
  • Флаги TCP (Flags [F.]). Указывают на состояние соединения и могут содержать более одного значения:
    • o S — SYN. Первый шаг в установлении соединения
    • F — FIN. Прекращение соединения
    • — ACK. Пакет подтверждения принят успешно
    • P — PUSH. Указывает получателю обрабатывать пакеты вместо их буферизации
    • R — RST. Связь прервалась
  • Порядковый номер данных в пакете. (seq 1)
  • Номер подтверждения. (ack 2)
  • Размер окна (win 453). Количество байтов, доступных в приемном буфере. Далее следуют параметры TCP
  • Длина полезной нагрузки данных. (length 0)
Читать дальше →
Total votes 9: ↑7 and ↓2+5
Comments5

Тестируем китайские rack-серверы Gooxi

Reading time6 min
Views16K

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

Хм, интересно
Total votes 16: ↑15 and ↓1+14
Comments18

Строим IPTV/OTT сервис: защита контента

Reading time7 min
Views20K
В этой статье я хочу рассказать, как защищают видео контент, какие технологии для этого применяют. Речь пойдет в основном про интернет вещание, но придется затронуть и про DVB, и про Multicast, чтобы было понятнее, в чем разница.

Stalker Middleware, которую мы установили в прошлой статье, имеет интеграцию с нашей системой защиты контента, а так же с NGINX X-accel и Secure Link.

Статья рассчитана не только для профессионалов, но и для тех, кто еще ничего не знает про IPTV/OTT.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments13

3. От обучения пользователей к тренировке навыков по ИБ. Антифишинг

Reading time15 min
Views5.2K

Приветствую друзья! Сегодня мы в рамках цикла статей по борьбе с фишингом познакомимся с российским решением “Антифишинг”. Для того, чтобы более подробно изучить концепцию и архитектуру системы, мы пообщались с представителями вендора и проверили решение на себе, обучая и тренируя сотрудников нашей компании - TS Solution, но обо всем по порядку.

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

1. Континент 4 Getting Started. Введение

Reading time5 min
Views24K

Приветствую всех читателей. Это первая статья из цикла Континент Getting Started, посвященных продукту компании «Код Безопасности» Континент 4.

Код Безопасности – отечественная компания, занимающаяся разработкой программных и аппаратных средств защиты информации. Центральный офис находится в Москве. Имеются офисы в Санкт-Петербурге и Пензе.

«Код безопасности» ранее входил в ГК «Информзащита» как отдел разработки. В 2008 году «Код Безопасности» стал самостоятельной компанией. Из продуктов, на тот момент уже были разработаны первые версии Secret Net Studio (защита АРМ от НСД), ПАК «Соболь» (средство доверенной загрузки) и АПКШ «Континент» (защита периметра сети). Основная задача состояла в дальнейшем развитии собственной линейки программно-аппаратных средств защиты.

История развития компании представлена на рисунке ниже:

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

Freebsd. Фильтрация трафика PF

Reading time7 min
Views9K

Введение


  1. Файрвол PF в ОС FreeBSD
  2. Фильтрация трафика PF <- Вы здесь
  3. FreeBSD. Трансляции, тэги и якоря в PF
  4. FreeBSD. Условная маршрутизация средствами PF
  5. FreeBSD. Путь сетевого пакета внутри ядра

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


В этот раз попробуем различные варианты более продвинутой фильтрации:


  • Макросы в различных местах конфигурационного файла.
  • Списки — набор параметров. PF раскроет его в отдельные правила.
  • Правила, ограничивающие количество подключений с одного IP, их частоту.
  • Таблицы. Это список IP адресов с которыми может сравнивать правило. Возможные варианты динамического заполнения. И проверку состояния наших таблиц.

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

Как работает VMware DRS

Reading time1 min
Views42K
Сегодня мы поговорим о профильной теме — балансировке нагрузки с помощью VMware DRS (Distributed Resource Scheduler). Для осуществления этой задачи он использует доступные ресурсы виртуальной инфраструктуры.

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

Mutt, ssmtp и отправка отчетов

Reading time3 min
Views60K
В свое время, когда меня еще не было на Хабре, эта статья была опубликована в песочнице. К сожалению, она никому не понравилась и со временем была удалена. Долго думал, что с ней делать — забить, запостить таки на Хабре или в своем блоге Записки программиста. Решил, раз она писалась для Хабра, пусть на нем и будет опубликована. Итак, под катом — статья о практике отправки отчетов по e-mail. Сейчас, перечитывая текст, понимаю, что статья — не фонтан, но может кому-нибудь пригодится.
Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments6

Как мы переходили на доменную авторизацию AD в 1С (двигаем SSO в компании)

Reading time4 min
Views29K

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

Данный кейс с реальной практики, проект начался в начале 2019 и все "n" баз были переведены в течении полугода на доменную авторизацию(надеюсь все понимают что это значит), но мне больше нравится SSO.

Значит что имеем.

Читать далее
Total votes 7: ↑5 and ↓2+3
Comments18

Strace в Linux: история, устройство и использование

Reading time17 min
Views55K


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


Следить за «интимной жизнью» программ на Linux помогает утилита strace, которой и посвящена эта статья. К примерам использования «шпионского» оборудования прилагаются краткая история strace и описание устройства подобных программ.

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

Мой опыт фриланса на Upwork

Reading time5 min
Views67K
Впервые я столкнулся с Upwork (тогда еще oDesk) в 2011м году, когда брат прислал на них ссылку в скайпе. Я только начинал работать на русских биржах, и подумал — почему бы не попробовать еще и на зарубежной. Но тогда все закончилось ничем. Результаты были слабыми, и, разочаровавшись во фрилансе как таковом, я бросил это дело.

Вернулся на Upwork только спустя два года, когда узнал, что есть те, кто серьезно занимаются фрилансом, и отлично живут на этом. Решил в этот раз ориентироваться только на зарубежных заказчиков, т. к. по первому опыту у них бюджеты были больше, а также они выше ценили свое и мое время. Так я снова оказался на Upwork.
Читать дальше →
Total votes 43: ↑40 and ↓3+37
Comments23

Взгляд изнутри на OpenBMC применительно к системам OpenPOWER

Reading time11 min
Views25K
В одной из предыдущих статей Максим затронул аппаратную часть платы BMC (Baseboard Management Controller). Я хочу продолжить повествование и рассказать о нашем подходе к BMC и участии в проекте OpenBMC.

Для полноты истории придётся начать немного издалека и рассказать о назначении сервисных процессоров и роли BMC в работе сервера, затронуть протокол IPMI и программную часть. После этого кратко опишу, как BMC участвует в загрузке систем на POWER8. Закончу обзором проекта OpenBMC и нашим отношением к вопросу. Опытные в теме сервисных процессоров читатели могут сразу отмотать на нижние разделы.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments4

История одного взлома 1С или проверьте вашу систему на безопасность

Reading time12 min
Views40K

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

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

Information

Rating
Does not participate
Registered
Activity