Как стать автором
Обновить
15
0
Игорь Хмелёв @KeyMan

Инженер

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

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

Если у вас есть доступ к серверу, все исходящие подключения разрешены, и вам необходимо удалённо выполнять команды, вы можете легко создать обратный SSH-туннель, и всё)

Что касается обхода МЭ (нужно считать, что он все таки внешний), можно дополнительно усилить правила, например, полностью запретив исходящие подключения (кроме к доверенным IP-адресам). Однако, имея доступ к серверу, злоумышленник может перехватывать сетевые пакеты через libcap или XDP.

Поскольку разрешенный трафик и трафик злоумышленника будут схожи на транспортном уровне, то МЭ с правилами по портам и статусу соединения будет уже неэффективен; необходимо внедрять более сложные решения, работающие на уровне приложений, например WAF.

Я тоже думал, что стать с названием "Разберем по винтикам" предполагает что мы заглянем под крышку корпуса и посмотрим на чем построен data plane и control plane, asic или fpga, cpu на arm или risc-v?

В электронику название «шина» проникло из электротехники. Туда оно попало из немецкого: у них «шина» означает и «резина на колесе», и «рельс».

Интересная справка 🤔, если посмотреть на шину заземления, то она действительно напоминает рельс 🙂 Также в электротехнике используются токоведущие шины или шинопроводы

В статье, я к сожалению не увидел данных по вполне легитимному трафику, были ли проверки системы на нём? Что это за трафик и какое количество ложноположительных срабатываний на нём было?

Согласен с данным комментарием, что ноль очень важен. Но определение классов эквивалентов это отдельная тема, в принципе, автор данной статьи в заключение это и сказал.

А так для целочисленных значений, в диапазоне от 10 до 20, классами эквивалентности будут:

(-\infty;-1];\:\: [0];\:\: [1;9];\:\: [10;20];\:\: [21; \infty)

А для диапазона от -10 до 10, классами эквивалентности будут:

(-\infty;-11];\:\: [0];\:\: [-10;10];\:\: [11; \infty)

Для строковых типов данных все еще интереснее) Есть различные символы, включая и спецсимволы, есть кодировки (например, ASCII и UTF-8), также есть XSS инъекции и прочее. В данном случае начинает работать принцип "тестирование зависит от контекста", классы эквивалентности будет завесить от того, куда попадает текст, например, записан в базу данных или это имя файла (в ОС и файловых систем есть свои особенности).

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

Спасибо за комментарий, полностью с ним согласен.

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

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

С БПЛА ситуация немного иная, необходимо не только принимать сигнал, но и отправлять его, при этом есть ряд ограничений в части стоимости, массогабаритных показателей, условий эксплуатации, вычислительных возможностей и потребляемой мощности электронными компонентами.

Текст петиции хорошо так нагнетает и рисует все в черных тонах.

На протяжении всей петиции автор сетует на недостаточный цифровой контроль со стороны государства, а в конце раскрыл еще одну цель:

Только повсеместный запрет использования протокола TCP/IP позволит нашей стране сохранить контроль над умами своих граждан. Других способов не существует.

Видно автор петиции разочаровался в других способах воздействия на общество)

Все зависит от задач, если нужно один раз получить отчет выполнения тестов или запуск производится в полу-ручном режиме то вполне достаточно отчета от pytest. Если же строится CI, то конечно нужно использовать более сложные инструменты: для сборки проектов, разворачивания, запуска тестов (например jenkins), ну и соответственно систему для агрегации результатов тестов в качестве которой можно использовать allure.
Возможно, только я не разобрался как сделать chroot для локального пользователя (по ssh без проблем), буду признателен если подскажите как это лучше сделать.
один whitelist лист, к сожалению не поможет, можно использовать такую комбинацию:
cat /home/zuser/../../etc/passwd
Данную угрозу можно конечно снизить совместив blacklist и whitelist, но как Вы правильно заметили, всех возможностей учесть достаточно сложно.
Согласен, изначально идея была дать оболочку которая ничего не умеет и только после этого добавлять в нее инструменты и тут кроется камень преткновения безопасности — эти инструменты пользователь может использовать для выхода за пределы оболочки.
т.е. Для пользователя создана металлическая коробка и он в нее помещен, но для работы ему нужна болгарка, ты ему ее даешь, и вместо того что бы пилить детали внутри коробки, он начинает пилить саму коробку.
Согласен, данный способ сделан на коленке в качестве примера. По сути надежный способ нужно продумывать и разрабатывать, это отдельная задача.
Да действительно он не обеспечивает 100% защиту. Статья немного изменила вектор: инструкция превратилась в анализ безопасности данного способа, что очень важно.
Очень интересно, согласен что 100% защиты конечно же нет, но Ваш пример добавим в blacklist.
Спасибо.
Да все верно, выполнив echo /«tab» пользователь увидит структуру каталогов.
Задача передать готовую систему, что бы пользователь мог ее контролировать и выполнять минимальные действия. Дело в том, что уровень знания пользователя неизвестен и он может что-то сломать. Искать что он сломал трудоемко, быстро починить можно только откатив систему, что бы минимизировать данные риски решили урезать возможности пользователю.
Спасибо большое, посмотрим что можно сделать.
1

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность