Linux의 루트 사용자가 터미널 또는 SSH를 통해 로그인 한 다른 사용자가 실행중인 셸 명령에 대한 실시간 (또는 거의 실시간)보기를 가질 수 있습니까? 분명히 그것들은 .bash_history에 저장되지만 사용자가 로그 오프 할 때만 저장되며 비활성화 할 수도 있습니다.
편집 : 이상적으로 쉽게 켜고 끌 수있는 것.
답변
루트로서, 쉘을 실제 쉘로 전달하기 전에 명령을 기록한 간단한 랩퍼 스크립트로 쉘을 대체 할 수 있습니다. 이것은 로그인하기 전에 만 작동합니다.
답변
사용자 세션에 침입하거나 협력이 필요한 경우 sniffy를 사용하십시오 screen -x
.
그러나 사용자를 감시하는 행위는 현지 법률에 따라 규제를 받거나 심지어 불법으로 간주 될 수 있습니다.
답변
쉘을 변경하는 것은 회피하기가 매우 쉽지 않으므로 쉘 자체를 패치하는 것이 좋습니다. 그러나 모든 쉘을 패치해야합니다. 우리가 가장 좋아하는 크래커는 이것을 bash_history 비활성화로 귀찮게하지 않는 보너스로 사용합니다.
ssh host /bin/sh -i
스누피 는 exec 함수를 감싸는 래퍼 이며 실행되는 모든 외부 바이너리 를 기록합니다 (쉘 내장이 아님).
@ 데이비드 슈미트의 제안 구린 사용하는 더 나은 방법은, 그것은 의사 터 도청.
ttysnoop 은 동일한 방법을 사용하지만 유지 관리되지 않습니다. (아마도 ssh 연결을 기록하는 데 문제가 있었으며 기억할 수 없습니다)
ssh 패치를 시도해 볼 수 있습니다 를 하여 세션을 기록 있지만 해당 패치는 오래되었습니다 .
pseudopod 및 rootsh 를 사용하여 합법적 인 sudos를 로깅 할 수 있습니다. 그리고 shwatcr은 모니터 로그인 또 다른 일이다.
답변
협력하고 있다면 GNU 화면을 사용할 수 있습니다 두 사용자간에 한 명은 화면 세션을 설정하고 다른 한 명은을 사용하여 참여할 수 screen -x
있습니다.
다른 사용자가 모르게 루트를 “스파이”하려면 가장 효율적이고 효과적인 솔루션은 키로거 소프트웨어 / 하드웨어 일 수 있습니다.
답변
Sysdig 는 시스템 레벨 탐색을위한 강력한 도구입니다.
예:
sysdig -i spy_users
카테고리 : 보안
spy_users 대화식 사용자 활동 표시
사용자가 대화식으로 시작하는 모든 명령 (예 : bash) 및 모든 디렉토리 사용자가 방문하는 모든 명령을 나열합니다.
답변
bash-BOFH 패치를 사용해 볼 수 있습니다. 패치를 검색하십시오.
답변
패치 또는 특수 실행 도구를 사용하지 않고 모든 ‘bash’명령 / 내장 파일을 텍스트 파일 또는 ‘syslog’서버에 기록하는 방법을 작성했습니다.
‘bash’를 초기화 할 때 한 번 호출해야하는 간단한 셸 스크립트이므로 배포하기가 매우 쉽습니다.
여기 방법을 참조하십시오 :
http://blog.pointsoftware.ch/index.php/howto-bash-audit-command-logger