저는 우분투 리눅스를 사용합니다. 제가 실수로 키 입력을 기록하는 악성 프로그램을 다운로드했다고 가정해 보겠습니다. 이제 이 프로그램은 내 sudo 비밀번호에 액세스할 수 있습니다. 이제 이 프로그램이 루트 액세스 권한으로 다른 프로그램을 실행할 수 있습니까? 예를 들어 sudo 명령을 터미널 애플리케이션에 보낼 수 있고, 비밀번호를 묻는 메시지가 표시되면 터미널 애플리케이션에 전송된 키 입력을 시뮬레이션하여 비밀번호를 보낼 수 있습니까?
답변1
예, 의사 터미널을 사용하여 이 작업을 수행할 수 있습니다. 이는 SSH 서버, GNU 화면 및 모든 GUI 터미널 에뮬레이터와 같은 프로그램이 실행되는 프로그램에 터미널을 제공하는 방법입니다.
를 사용하면 screen
직접 테스트할 수 있습니다. 약간 간단합니다. screen
세션을 시작하고 실행합니다 screen -X 'sudo id\nsecretpassword\n'
(내부 또는 외부에서 screen
).
screen
세션 에 명령과 해당 출력이 표시됩니다 .
$ sudo id
[sudo] password for ilkkachu:
uid=0(root) gid=0(root) groups=0(root)
$