EDITOR="nano visudo" 내보내기는 visudo와 관련하여 어떻게 심각한 보안 위험으로 간주됩니까?

EDITOR="nano visudo" 내보내기는 visudo와 관련하여 어떻게 심각한 보안 위험으로 간주됩니까?

하나 읽어보세요안전 가이드Arch Linux를 강화하는 방법과 관련하여 다음 팁을 발견했습니다. 내보내기는 EDITOR=nano visudo심각한 보안 위험으로 간주됩니다.

힌트:

[ 추가 ] nano대신 제한된 버전을 사용하려면 ,vivisudo/etc/sudoers

Defaults editor=/usr/bin/rnano

출구는 EDITOR=nano visudo모든 것이 사용될 수 있기 때문에 심각한 보안 위험으로 간주됩니다 EDITOR.

visudoin?을 사용하여 기본 편집기를 지정하는 맥락에서 이것이 왜 언급되는지 잘 모르겠습니다 .Defaults editor=/user/bin/rnano/etc/sudoers

또한, 에디터는 하나만 지정하면 안되나요 $EDITOR, 아니면 여러 에디터를 공백으로 구분해서 지정해도 되나요?

EDITOR=nano visudo전체 경로가 지정되지 않았기 때문에 호출되는 바이너리를 nano현재 디렉터리에 배치하여 악용할 수 있지만 어떻게 악용할 수 있습니까 visudo?

EDITOR="nano visudo"보너스: 설정에 따옴표( 그림 참조)를 사용하도록 가이드를 수정해야 합니까 $EDITOR?

답변1

EDITOR=nano visudo 실행 하고 사용하려는 편집기를 visudo검색하라고 지시하면 됩니다 . $PATH이제 통제 $PATH가 됐으니 $USER...

그것이 세상을 소유 하고 소유하게 visudo되기를 바랍니다.$EDITORroot

일반적으로 /이름이 " "로 시작하지 않는 실행 파일은 다음 의사 코드로 찾을 수 있습니다.

# executing "nano"
for p in $( echo $PATH | tr ':' ' ' ) ; do
    [[ -x $p/nano ]] && exec $p/nano
done

따라서 이라는 실행 파일이 이전 nano디렉터리에 있으면 해당 실행 파일이 실행됩니다. 그렇기 때문에 그것을 사용해야합니다.$PATH/usr/bineditor=/usr/bin/nano visudo

현재 디렉터리. " ."는 위 의사코드에 자동으로 포함되어서는 안 됩니다. " ." 를 $PATH.​​​ (my ) 가 실행됩니다 . 게임 끝.cd /media/$USER/Found.$PATHnanoEDITOR=nano visudo./nanonano

관련 정보