드루팔은 무차별 대입 로그인 공격으로부터 안전합니까?


9

무차별 대입 공격은 다양한 암호 조합을 지속적으로 생성하고 입력하여 웹 사이트에 무단으로 액세스하려는 시도입니다. 이 작업은 일반적으로 성공 또는 실패 메시지를 찾고 성공 메시지가 표시 될 때까지 새 암호를 계속 시도하는 자동화 소프트웨어 ( "봇")에 의해 수행됩니다.

Drupal 7은 기본적으로 안전한가요? 더 안전한 구성은 무엇입니까? 보다 안전한 로그인을 위해 어떤 모듈이 도움이됩니까?


1
답은 어떤 종류의 공격을하는지에 달려 있습니다. 침입자가 사용자 "admin"이 "Password1"의 암호를 가지고 있다고 추측하고 암호가 "javagod"인 것으로 추측하는 무차별 대입 공격을 의미합니까?
greggles

예, 질문 무차별 대입 로그인 공격의 제목으로 :(
Yusef

답변:


12

코드에서 볼 수 있듯이 user_login_final_validate 함수 는 플러드 이벤트를 등록합니다. 즉, 동일한 IP가 사용자 / 로그인 비밀번호를 여러 번 연결하려고하면 잠시 동안 "금지"됩니다.

이것은 Drupal이 제공하는 보호 중 하나입니다. 또 다른 하나는 웹 사이트에서 발생하면 매우 빠르다는 것을 알 수 있습니다. Drupal이 각 양식에 대해 생성하는 CSRF 토큰입니다.

즉, 공격자 봇은 양식을 생성 한 다음 토큰을 가져 와서 제출 양식과 연결해야합니다. 이는 시간이 많이 걸리고 공격자를 낙담시킬 것입니다. 그러나 먼저 서버가 뜨거워지는 것을 볼 수 있습니다.


시뮬레이션 로그인 양식의 경우 복사 / 붙여 넣기 drupal 로그인 양식이 필요합니다. 로컬 테스트 파일에 다른 drupal 사이트의 html을 복사 / 붙여 넣기하면 양식 작업이 절대적으로 domain.com/user/로 리디렉션되는지 테스트 할 수 있습니다. login ), 로컬로 실행하여 유효한 사용자로 채우고 로그인 된 것을 전달하십시오 !!!!!
Yusef

이 양식은 데이터베이스에 캐시 된 토큰 (및 양식)만큼 Drupal만큼 작동합니다. 캐시가 만료되면 양식이 작동하지 않습니다.
yvan

캐시를 비
웠지만

1
CSRF 보호는 비활성화 할 수 있으며 로그인 양식에서 비활성화됩니다. 검색 양식에서도 사용할 수 없습니다. 그러나 yvan이 언급했듯이 홍수 방지는 양식 자체에 대한 무차별 대입 공격을 방지합니다. 이렇게하면 봇넷에 액세스 한 사람의 분산 공격을 막을 수는 없지만 동일한 사용자에 대해 반복적으로 실패한 로그인을 찾는 로그 분석 (Droptor와 같은 것)이이를 해결합니다.
greggles

3

Drupal 7이 로그인 시도를 중지하기 위해 구현하는 좋은 방법 외에도 Spambot 모듈을 설치하는 것이 좋습니다 . 이는 특히 새로운 사용자 등록 시도를 처리합니다.

모든 새로운 사용자 등록시, 해당 모듈은 포럼 스팸 중지 서버를 쿼리 하여 등록을 시도하는 사용자가 알려진 봇인지 확인합니다.

선택적으로 웹 사이트의 등록 시도로 포럼 스팸 중지에 기여할 수 있습니다.


3

홍수 제어

이 프로젝트는 로그인 시도 제한 기 및 향후 숨겨진 변수와 같이 Drupal 7의 숨겨진 홍수 제어 변수에 대한 관리 인터페이스를 추가하기위한 것입니다.

핵심 홍수 제어 시스템을 정의하고 상호 작용하는 기능

범람 시스템은 다음과 같은 세 가지 기능을 제공합니다.

flood_register_event($name, $window = 3600, $identifier = NULL)

현재 방문자의 이벤트를 홍수 제어 메커니즘에 등록하십시오.

flood_clear_event($name, $identifier = NULL)

현재 방문자의 이벤트에 대해 홍수 방지 메커니즘을 잊어 버리십시오.

flood_is_allowed($name, $threshold, $window = 3600, $identifier = NULL)

사용자가 지정된 이벤트를 진행할 수 있는지 확인합니다. 기본적으로 flood_is_allowed를 호출하여 사용자에게 액세스 권한이 있는지 확인합니다. FALSE를 반환하면 '액세스 거부'를 던집니다. 사용자가 작업을 수행 할 때마다 flood_register_event를 호출합니다.

기본적으로 사용자의 IP 주소를 확인합니다. 그러나 사용자 ID와 같은 다른 고유 식별자를 전달할 수 있습니다.

는 Drupal의 홍수 시스템으로 재생


1
적절한 속성없이 웹에서 복사하여 붙여 넣지 마십시오
Clive

1
@Clive 나는 지금부터 그것을 돌볼 것입니다. 그리고 그것이 내가 전달하고 싶은 것입니다.
niksmac

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.