2011-07-17 4 views
0

다른 사용자로 실행되는 몇 가지 명령이 필요한 bash 스크립트가 있습니다. 내가 su와 함께하고 싶지만 자동으로 암호를 물어 보지 않고 su를 할 수 없다.su에 암호를 전달할 수 없습니다

스크립트를 실행하는 사용자는 centos로 아파치가됩니다 (예 : 실제 사용자 계정이 아닙니다. 예를 들어 su sudo apache를 수행 할 수없고 apache 사용자 아래에 프롬프트가 표시되지 않음).

따라서 저는 기대하지 않는 것이 효과가 있다고 생각하지 않습니다. 또한 ssh 키를 사용하여 다른 로컬 호스트 계정으로 아파치에서 ssh 수 없습니다.

내 목표를 달성하는 방법이 있습니까? 암호를 하드 코딩하는 것은 나에게 받아 들일 만합니다.

+0

sudo를 사용하면 아파치가 암호없이 다른 사용자로 일부 파일을 실행할 수 있습니다 – knittl

답변

3

이것은 sudo에 대한 것이므로 세분화 된 권한 상승입니다. 아파치가 sudo (/etc/sudoers 파일에 있음)와 함께 실행할 수있는 것으로 스크립트를 추가하면 제한된 권한 에스컬레이션을 제공 할 수 있습니다.

그러나 아파치 사용자로부터 호출 된 것을 요구하는 것은 매우 위험합니다. 제한된 로컬 익스플로잇을 신속하게 루트 익스플로잇으로 바꿀 수 있습니다. 입력 내용을 소독하거나 쉘이 변수를 확장하는 방법을 잘 이해하십시오.