Pull to refresh
14
0
Игорь Хмелёв @KeyMan

Инженер

Send message

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

А так для целочисленных значений, в диапазоне от 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. Скорей всего, все можно обойти) По тем способам, которые я знаю мы немного защитились, а по остальным нужно смотреть

2. Примеры использование:
— дать доступ к системе людям со стороны, что бы не сломали и можно было контроллированно ограничить их действия
— передача настроенной системе пользователям, что бы могли ее использовать и не сломали (ограничить доступ к критическим файлам и директориям)

Данная задача возникает, если мы считаем что пользователь системы может ее сломать)
Через chroot получается немного другой подход (песочница).
Спасибо за вопрос, он действителен важен.
На сколько я знаю основные атаки заключается в следующем:
изменить переменную PATH
Для блокировки данной уязвимости мы добавляем alias в файл .bashrc:
alias set=':'
alias uset=':'
alias export=':'
alias typeset=':'
alias declare=':'
alias alias=':'
alias unalias=':'
— переход в полноценную оболочку через скрипт или через утилиты vi, vim, nano, awk и т.д
Так же можно защитится через alias в файле .bashrc:
alias bin=':'
alias sh=':'
alias ln=':'
— также, для дополнительной защиты все команды через которые можно получить доступ к файлу или выполнить скрипты необходимо делать через обертки (п.8, п.9)

Если есть еще варианты взлома, напишите пожалуйста.
1

Information

Rating
Does not participate
Date of birth
Registered
Activity