Назад | Перейти на главную страницу

Что делает «python -c import pty; pty.spawn (» bash «)»?

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

Когда я делаю верх, я вижу, что он занимает ~ 99% ЦП.

с участием ps aux Я вижу, что речь идет о следующей команде:

python -c import pty;pty.spawn("bash")

Я читаю документы, и они говорят

pty.spawn (argv [, master_read [, stdin_read]])

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

Функции master_read и stdin_read должны быть функциями, которые читают из файлового дескриптора. По умолчанию каждый раз при вызове пытается прочитать 1024 байта.

Но я не понимаю, зачем кому-то это делать. Зачем кому-то использовать оболочку для вызова python для создания оболочки? И почему он так сильно загружает процессор?

Я что-то упускаю или мне нужен кофе?

В основном я хочу знать, что этот процесс на самом деле «делает» с 99% ЦП, чтобы я мог решить, убивать его или нет (помните, не только я на коробке).

Я не системный администратор. Я один из тех разработчиков, которые знают достаточно, чтобы выжить.

Я не совсем уверен, как углубиться в это - есть идеи?

Изменить: является ли эксплойт единственным использованием этого типа команды? Опять же, у многих людей есть доступ к этому ящику. Разве у этого не могло быть законной цели? Как я могу отличить одно от другого?