Comments 22
Выполнять свои программы при этом запрещается? Пользователи на это соглашаются?
allowed_cmd_path — каталоги, в которых пользователю разрешено запускать исполняемые файлы или свои программы.
Что ему помешает запустить из своей программы bash?
Насколько я помню, выполнение команд напрямую через команду ssh не затрагивает shell юзера. Скорей всего для ssh надо еще ограничить запуск команд только lshell-ом.
Да, извините сразу забыл указать это, уже поправил
затем достаточно добавить шел пользователю
user:x:502:502::/home/user:/usr/bin/lshell
Затрагивает, в таком случае коммагда запускается как "$SHELL -c command", чтобы проверить попробуйте установить в качестве shell /bin/false.
Естественно, «обычного ftp не хватает», кто им кроме старперов и ньюфагов пользуется? Жутко бесят некоторые хостинги, которых нужно упрашивать дать доступ по ssh. Благо своё всё давно на выделенках, но иногда просят помочь чуваки с хостингами «скажите спасибо, что есть mysql».
Давным-давно на StackOverflow была реклама ObserveIT: эта вещь записывает SSH-сеансы и позволяет просмотреть, что там понаделали.
Очень удобно, рекомендую посмотреть livedemo на их сайте.
А вообще, у основных потребителей lshell мозга не хватит даже на то, чтобы почистить authorized_keys для рута 8).
Очень удобно, рекомендую посмотреть livedemo на их сайте.
А вообще, у основных потребителей lshell мозга не хватит даже на то, чтобы почистить authorized_keys для рута 8).
Никогда не используйте этот мусор. Оно дырявое насковозь:
Помимо очевидной проблемы с наивным кодом я усматриваю здесь ещё другую проблему. Группа Centos-admin рекомендует читателям и интегрируют клиентам такой дырявый шлак. Возникает большой вопрос насчёт их профессиональной пригодности.
Решето и побег из курятника
vladislav@dt1:~$ getent passwd testuser
testuser:x:1002:1003:,,,:/home/testuser:/usr/bin/lshell
vladislav@dt1:~$ su - testuser
Пароль:
You are in a limited shell.
Type '?' or 'help' to get the list of allowed commands
testuser:~$ ?
cd clear echo exit help history ll lpath ls lsudo
testuser:~$ ls
examples.desktop
testuser:~$ which bash
*** forbidden command: which
testuser:~$ ls'usb'
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 046d:c05a Logitech, Inc. M90/M100 Optical Mouse
Bus 001 Device 002: ID 046d:c31c Logitech, Inc. Keyboard K120
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
testuser:~$ echo && 'bash'
testuser@dt1:~$ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
testuser@dt1:~$ reboot --help
reboot [OPTIONS...] [ARG]
Reboot the system.
--help Show this help
--halt Halt the machine
-p --poweroff Switch off the machine
--reboot Reboot the machine
-f --force Force immediate halt/power-off/reboot
-w --wtmp-only Don't halt/power-off/reboot, just write wtmp record
-d --no-wtmp Don't write wtmp record
--no-wall Don't send wall message before halt/power-off/reboot
Помимо очевидной проблемы с наивным кодом я усматриваю здесь ещё другую проблему. Группа Centos-admin рекомендует читателям и интегрируют клиентам такой дырявый шлак. Возникает большой вопрос насчёт их профессиональной пригодности.
Ещё два вектора атаки для побега:
https://github.com/ghantoos/lshell/issues/148
https://github.com/ghantoos/lshell/issues/149
https://github.com/ghantoos/lshell/issues/148
https://github.com/ghantoos/lshell/issues/149
Да нормально все, просто надо запретить vi, echo, && и разрешить только самое необходимое типа chmod, chown ))
Пользователям для которых с таким заморачиваются больше и не нужно. Файлы они редактируют обычно через ftp (больше трэша!!). Хорошо если какой-нибудь git вообще используют.
Пользователям для которых с таким заморачиваются больше и не нужно. Файлы они редактируют обычно через ftp (больше трэша!!). Хорошо если какой-нибудь git вообще используют.
Sign up to leave a comment.
Information
- Website
- to.slurm.io
- Registered
- Founded
- Employees
- 51–100 employees
- Location
- Россия
- Representative
- Антон Скобин
Lshell вместо chroot ssh