취약점 스캐너와 같은 일부 제품은 지정된 사용자로 Linux 호스트에 로그인하여 궁극적으로 문제의 계정의 bash 기록을 "오염"시킵니다. 다음은 Tenable의 Nessus 스캐너로 생성된 명령줄 예입니다.
LANG=C; printf "priv_escl_start_%s" "4Xoo3InT"; sudo -u root -p Password: sh -c 'printf "command_start_%s" "ljsL6ec8"; lspci -v 2>/dev/null; printf "command_done_%s" "e0bC8nmu"'; printf "priv_escl_end_%s" "NpM6tFCP"
이와 같은 여러 명령줄이 기록에 기록되지 않도록 하는 방법이 있습니까?
변수 를 시도했지만 HISTIGNORE
extglob을 활성화해도 이를 캡처할 만큼 표현력이 충분하지 않습니다. 나는 또한 이러한 명령이 use 에서 나온 것이라고 생각합니다 set -o history
. $PROMPT_COMMAND
아마도 유일한 옵션은 대화식으로 로그인한 동안 .bash_history를 스캔하고 이러한 유형의 행을 삭제하고 기록을 다시 작성한 다음 다시 로드하는 것입니다.
어떤 도움이라도 대단히 감사하겠습니다.
답변1
이를 처리하는 가장 좋은 방법은 스캐너 전용 계정(아마도 nessus
. 여기에는 스캐너에 대한 세분화된 권한 제어 기능과 스캐너가 시스템에 액세스할 때 감사하는 기능이라는 추가 이점이 있습니다.
기록을 기록하지 않기로 정말로 약속했다면 기록과 혼합하는 대신 기록을 전혀 기록하지 않도록 nessus 계정의 셸 초기화 파일을 조정할 수 있습니다.