ALL ALL=(ALL) NOPASSWD:ALL
라인은자동으로 두 번 추가됨내 파일 끝에/etc/sudoers
.
- 내 Linux는 sudo 명령을 실행할 때마다 갑자기 비밀번호 요청을 중단했습니다. 이로 인해 문제를 조사하게 되었습니다.
- 재설정 유예기간을 실행한 후에도
sudo -k
비밀번호를 묻지 않습니다. - 나는 그 줄이 무엇을 의미하는지 파악하고 문제를 해결하기 위해 그 두 줄을 주석 처리했고 모든 것이 정상으로 돌아왔습니다.
하지만 내 검색에 따르면 sudoers 파일은수동 편집모든 사용자에게 모든 명령에 대한 NOPASSWD 권한을 부여하는 것은 불가능합니다. 이는 내가 실행한 스크립트가 sudoers 파일을 변경했다는 의미입니까? 이것이 우려할 만한 이유입니까?
운영 체제: 리눅스 민트 18.3 시나몬
답변1
이 명령을 실행한 후
sudo grep -rl 'NOPASSWD:ALL' /etc /lib /usr /var /home /root
일치하는 파일이 여러 개 있다고 제안합니다.
/etc/sudoers
/usr/lib/snapd/snapd
/var/log/auth.log
/home/neon/HUAWEI-4g_Dongle/Linux/install
이러한 파일 중 처음 세 개는 일치 항목을 포함할 것으로 합리적으로 예상할 수 있으므로 무시해도 됩니다. 반면 네 번째가 범인일 가능성이 높아 추가 조사가 필요해 보인다.
실제로 당신의페이스트빈다음 스니펫을 표시하세요.
SOFTWARENAME="Mobile Partner"
SOFTWARENAME=$(echo $SOFTWARENAME | sed s\#\ \#_\#g)
TEMPFILE="${SOFTWARENAME}_install_$PPID"
...
grep -v "MobilePartner.sh" /etc/sudoers >/tmp/${TEMPFILE} 2>&1
echo -e "ALL ALL=(ALL) NOPASSWD:ALL" >> /tmp/${TEMPFILE}
...
cp -f /tmp/${TEMPFILE} /etc/sudoers
예, 이것은 꽤 나쁜 품질의 코드에서 비롯된 (끔찍한) 보안 허점이라고 말하고 싶습니다.
파일에서 이 줄을 제거(또는 주석 처리)한 후 /etc/sudoers
파일에 대한 권한도 확인하는 것이 좋습니다. ug=r,o=
( 0440
= r--r-----
) 이어야 하며 다음 에 속할 수 있습니다 root
.root