Основная часть статьи сосредоточена на вопросе запуска двух сервисов на одном сокете. В результате, часть сетевых пакетов будут отправляться к одному сервису, а часть – ко второму. Если между веб-клиентом и веб-сервером происходит множество взаимодействий, это может быть заметным – например, половина изображений может не загрузиться.
Если у вас есть доступ к серверу, все исходящие подключения разрешены, и вам необходимо удалённо выполнять команды, вы можете легко создать обратный SSH-туннель, и всё)
Что касается обхода МЭ (нужно считать, что он все таки внешний), можно дополнительно усилить правила, например, полностью запретив исходящие подключения (кроме к доверенным IP-адресам). Однако, имея доступ к серверу, злоумышленник может перехватывать сетевые пакеты через libcap или XDP.
Поскольку разрешенный трафик и трафик злоумышленника будут схожи на транспортном уровне, то МЭ с правилами по портам и статусу соединения будет уже неэффективен; необходимо внедрять более сложные решения, работающие на уровне приложений, например WAF.
Я тоже думал, что стать с названием "Разберем по винтикам" предполагает что мы заглянем под крышку корпуса и посмотрим на чем построен data plane и control plane, asic или fpga, cpu на arm или risc-v?
В электронику название «шина» проникло из электротехники. Туда оно попало из немецкого: у них «шина» означает и «резина на колесе», и «рельс».
Интересная справка 🤔, если посмотреть на шину заземления, то она действительно напоминает рельс 🙂 Также в электротехнике используются токоведущие шины или шинопроводы
В статье, я к сожалению не увидел данных по вполне легитимному трафику, были ли проверки системы на нём? Что это за трафик и какое количество ложноположительных срабатываний на нём было?
Согласен с данным комментарием, что ноль очень важен. Но определение классов эквивалентов это отдельная тема, в принципе, автор данной статьи в заключение это и сказал.
А так для целочисленных значений, в диапазоне от 10 до 20, классами эквивалентности будут:
А для диапазона от -10 до 10, классами эквивалентности будут:
Для строковых типов данных все еще интереснее) Есть различные символы, включая и спецсимволы, есть кодировки (например, ASCII и UTF-8), также есть XSS инъекции и прочее. В данном случае начинает работать принцип "тестирование зависит от контекста", классы эквивалентности будет завесить от того, куда попадает текст, например, записан в базу данных или это имя файла (в ОС и файловых систем есть свои особенности).
В приведенных Вами примерах используется один сценарий - есть мощный источник цифрового сигнала и приемник этого сигнала.
С БПЛА ситуация немного иная, необходимо не только принимать сигнал, но и отправлять его, при этом есть ряд ограничений в части стоимости, массогабаритных показателей, условий эксплуатации, вычислительных возможностей и потребляемой мощности электронными компонентами.
Текст петиции хорошо так нагнетает и рисует все в черных тонах.
На протяжении всей петиции автор сетует на недостаточный цифровой контроль со стороны государства, а в конце раскрыл еще одну цель:
Только повсеместный запрет использования протокола TCP/IP позволит нашей стране сохранить контроль над умами своих граждан. Других способов не существует.
Видно автор петиции разочаровался в других способах воздействия на общество)
Все зависит от задач, если нужно один раз получить отчет выполнения тестов или запуск производится в полу-ручном режиме то вполне достаточно отчета от pytest. Если же строится CI, то конечно нужно использовать более сложные инструменты: для сборки проектов, разворачивания, запуска тестов (например jenkins), ну и соответственно систему для агрегации результатов тестов в качестве которой можно использовать allure.
Возможно, только я не разобрался как сделать chroot для локального пользователя (по ssh без проблем), буду признателен если подскажите как это лучше сделать.
один whitelist лист, к сожалению не поможет, можно использовать такую комбинацию:
cat /home/zuser/../../etc/passwd
Данную угрозу можно конечно снизить совместив blacklist и whitelist, но как Вы правильно заметили, всех возможностей учесть достаточно сложно.
Согласен, изначально идея была дать оболочку которая ничего не умеет и только после этого добавлять в нее инструменты и тут кроется камень преткновения безопасности — эти инструменты пользователь может использовать для выхода за пределы оболочки.
т.е. Для пользователя создана металлическая коробка и он в нее помещен, но для работы ему нужна болгарка, ты ему ее даешь, и вместо того что бы пилить детали внутри коробки, он начинает пилить саму коробку.
Да действительно он не обеспечивает 100% защиту. Статья немного изменила вектор: инструкция превратилась в анализ безопасности данного способа, что очень важно.
Задача передать готовую систему, что бы пользователь мог ее контролировать и выполнять минимальные действия. Дело в том, что уровень знания пользователя неизвестен и он может что-то сломать. Искать что он сломал трудоемко, быстро починить можно только откатив систему, что бы минимизировать данные риски решили урезать возможности пользователю.
Основная часть статьи сосредоточена на вопросе запуска двух сервисов на одном сокете. В результате, часть сетевых пакетов будут отправляться к одному сервису, а часть – ко второму. Если между веб-клиентом и веб-сервером происходит множество взаимодействий, это может быть заметным – например, половина изображений может не загрузиться.
Если у вас есть доступ к серверу, все исходящие подключения разрешены, и вам необходимо удалённо выполнять команды, вы можете легко создать обратный SSH-туннель, и всё)
Что касается обхода МЭ (нужно считать, что он все таки внешний), можно дополнительно усилить правила, например, полностью запретив исходящие подключения (кроме к доверенным IP-адресам). Однако, имея доступ к серверу, злоумышленник может перехватывать сетевые пакеты через libcap или XDP.
Поскольку разрешенный трафик и трафик злоумышленника будут схожи на транспортном уровне, то МЭ с правилами по портам и статусу соединения будет уже неэффективен; необходимо внедрять более сложные решения, работающие на уровне приложений, например WAF.
Я тоже думал, что стать с названием "Разберем по винтикам" предполагает что мы заглянем под крышку корпуса и посмотрим на чем построен data plane и control plane, asic или fpga, cpu на arm или risc-v?
Интересная справка 🤔, если посмотреть на шину заземления, то она действительно напоминает рельс 🙂 Также в электротехнике используются токоведущие шины или шинопроводы
В статье, я к сожалению не увидел данных по вполне легитимному трафику, были ли проверки системы на нём? Что это за трафик и какое количество ложноположительных срабатываний на нём было?
Согласен с данным комментарием, что ноль очень важен. Но определение классов эквивалентов это отдельная тема, в принципе, автор данной статьи в заключение это и сказал.
А так для целочисленных значений, в диапазоне от 10 до 20, классами эквивалентности будут:
А для диапазона от -10 до 10, классами эквивалентности будут:
Для строковых типов данных все еще интереснее) Есть различные символы, включая и спецсимволы, есть кодировки (например, ASCII и UTF-8), также есть XSS инъекции и прочее. В данном случае начинает работать принцип "тестирование зависит от контекста", классы эквивалентности будет завесить от того, куда попадает текст, например, записан в базу данных или это имя файла (в ОС и файловых систем есть свои особенности).
Согласен с замечанием, текст статьи поправил. Болты, шестерни, подшипники и сельсины в большей части имеют типовую конструкцию.
Спасибо за комментарий, полностью с ним согласен.
Таблицу из статьи я удалил, поскольку не имеет смысла сравнивать аналоговый и цифровой сигнал в отрыве от прочих характеристик и технологий.
В приведенных Вами примерах используется один сценарий - есть мощный источник цифрового сигнала и приемник этого сигнала.
С БПЛА ситуация немного иная, необходимо не только принимать сигнал, но и отправлять его, при этом есть ряд ограничений в части стоимости, массогабаритных показателей, условий эксплуатации, вычислительных возможностей и потребляемой мощности электронными компонентами.
Текст петиции хорошо так нагнетает и рисует все в черных тонах.
На протяжении всей петиции автор сетует на недостаточный цифровой контроль со стороны государства, а в конце раскрыл еще одну цель:
Видно автор петиции разочаровался в других способах воздействия на общество)
cat /home/zuser/../../etc/passwd
Данную угрозу можно конечно снизить совместив blacklist и whitelist, но как Вы правильно заметили, всех возможностей учесть достаточно сложно.
т.е. Для пользователя создана металлическая коробка и он в нее помещен, но для работы ему нужна болгарка, ты ему ее даешь, и вместо того что бы пилить детали внутри коробки, он начинает пилить саму коробку.
Спасибо.