내 넷북이 매우 느리기 때문에 Firefox나 넷북을 막고 있는 다른 것을 종료할 수 있는지 확인하기 위해 가상 터미널로 이동해 보았습니다. tty2에 접속하여 로그인 프롬프트에 "root"를 성공적으로 입력했지만 Enter 키를 누르면 비밀번호 프롬프트가 표시되지 않습니다. 영원히 거기 앉아서 이렇게 말합니다.
Login timed out after 60 seconds.
이 비밀번호 프롬프트가 당밀처럼 느린 이유가 있습니까(반면 사용자 이름 프롬프트는 적시에 완료할 수 있을 만큼 충분히 빠릅니다)? 길 잃은 프로세스를 정리해야 할 때 tty 세션을 항상 사용할 수 있도록 하려면 어떻게 해야 합니까?
답변1
이 동작에는 두 가지 기본 이유가 있습니다.
- 처리: 한 줄 텍스트 프롬프트를 출력하는 것과 안전한 비밀번호 입력 및 처리를 시작하는 것
login
사이에는 엄청난 계산상의 차이가 있습니다 . - 안전: 이 역시 보안 문제입니다.
- 공격자가 확인에 걸리는 시간(완료하는 데 소요되는 시간)을 기준으로 암호 길이를 교묘하게 결정하는 것을 방지하기 위해 일반적인 방법은 작업에 임의의 지연을 추가하는 것입니다.
- 비밀번호 확인을 제한하면 특정 기간 내에 시스템이 수행할 수 있는 시도 횟수를 줄이는 이점도 있습니다. 예를 들어, 비밀번호 확인에 5배의 시간이 더 걸린다면할 수 있다, 공격자가 이를 크랙하는 데 5배의 시간이 더 걸립니다.
문제는 시스템에 과부하가 걸려서 필요한 리소스의 균형을 적절하게 맞출 수 없어 기본 작업이 시간 초과되기 때문에 발생합니다.
문제가 있는 프로그램을 찾으면 메모리 사용량, 처리 우선 순위 등을 제한하여 이러한 유형의 정지를 방지할 수 있는 방법을 찾아야 합니다.