4장.  Linux-PAM 보안 관련 사안

차례

4.1. 표준 라이브러리 호출에 유의하기
4.2. 서비스 이름 선정
4.3. 대화 함수
4.4. 사용자 신원
4.5. 충분한 자원

응용 관점에서 PAM은 사용자 인증을 위한 편리한 API다. PAM 모듈들은 일반적으로 응용에서 소유한 것 이상의 특권을 가지지 않는다. 그러므로 PAM이 동작하는 환경을 보호할 궁극적 책임을 응용에서 져야 한다.

잘못 (또는 악의적으로) 작성된 응용에서는 반환 값을 무시하는 것만으로 모든 Linux-PAM 모듈의 인증 메커니즘을 무력화할 수 있다. 특권과 서비스 접근을 인가하는 것은 응용의 일이자 책임이다. Linux-PAM 라이브러리는 사용자 인증을, 즉 사용자가 자칭하는 그 사람이 맞는지 확인하는 일을 맡을 뿐이다. Linux-PAM 라이브러리 함수의 문서에 나와 있는 모든 동작 방식에 대응할 수 있도록 주의를 기울여야 한다. 그렇게 하지 못하면 틀림없이 미래의 보안 침해로 이어지게 된다.