회원가입 스팸을 방지하는 방법

개인 포럼에서도 스팸 가입 문제가 있었지만, 지금은 꽤 줄었습니다. 지금은 하루에 1~2개, 많아야 (오늘처럼) 5개 정도만 옵니다. 스팸 계정을 꼼꼼히 삭제하고 차단 목록에 추가하는 것이 효과적입니다. “새로운 사용자 계정은 사이트 접근을 허용하기 전에 스태프의 승인을 받아야 합니다.” 옵션을 활성화해 두었기 때문에, 새로운 사용자는 편리한 검토 대기열에 들어가고, 몇 초 만에 빠르게 처리할 수 있습니다. 명백한 스팸을 식별하기 위해 사용자 정의 질문을 추가하는 것도 도움이 됩니다.

업무용 포럼에서는 wp-discourse 워드프레스 플러그인과 SSO를 사용하며, 가입 양식이 매우 깁니다. 그렇게 하면 스팸 가입이 거의 발생하지 않습니다.

새로운 가입/로그인 플러그인은 스팸을 방지하는 해결책인가요?

이런 방식으로 데이터를 추출하는 방법을 알 수 있을까요?

호기심이 발동해서问一下, 어떻게 이 CAPTCHA를 통과할 수 있나요? CAPTCHA를 풀지 않고도 가입 과정을 완료할 수 있는 방법은 무엇인가요?

이러한 경우 과도한 스팸 메일이 발송되면 자신의 메일 서버가 블랙리스트에 등록될 수 있다는 점도 기억해 두시기 바랍니다.

봇이 실제 이메일 주소를 사용하여 등록을 시도하는 경우, 이는 매우 빠르게 발생할 수 있습니다.
저는 discourse 도커 인스턴스를 위한 외부 nginx 프록시를 사용하고, fail2ban으로 로그 파일을 모니터링하는 방식으로 이 문제를 해결했습니다. 즉:

/etc/fail2ban/filter.d/nginx-discourse.conf

[Definition]
failregex = ^<HOST>.*"GET /u/account-created HTTP/2.0" 200.*$

/etc/fail2ban/jail.d/defaults-debian.conf

[nginx-discourse]
enabled = true
port = http,https
filter = nginx-discourse
logpath = /var/log/nginx/your.discourse.access.log
bantime = 43200
findtime = 3600
maxretry = 3
banaction = ufw

이 예시는 동일한 IP 주소에서 1시간 이내에 3회 등록을 시도하면 해당 IP가 12시간 동안 차단된다는 것을 의미합니다.
이 값들은 용도와 시스템 환경에 맞게 조정하세요!

인도에서 온 인증된 봇들이 gmail(네, gmail!) 계정으로 스팸 가입을 계속하고 있습니다. 다른 도메인도 몇 개 있지만, gmail 계정이 쓰인다는 점이 놀랍습니다.

구글은 대체 어떻게 된 건가요.

저도 마찬가지입니다.
그들이 게시물을 올리지 않는 한, 해가 되지 않습니다. 비활성 사용자의 새 계정은 방문객이나 일반 사용자에게 표시되지 않으며, 사용자 프로필도 인덱싱되지 않습니다. 따라서 이러한 스팸 계정은 관리자/모더레이터를 제외하고는 사실상 누구에게도 보이지 않으며, 주기적인 정리 사이드킥 작업 덕분에 일정 시간이 지나면 자동으로 삭제됩니다.

게시글을 올릴 수는 없지만, 검색 쿼리 실행과 같은 무작위 동작을 수행합니다.

또는 인증 시스템을 해킹하려는 시도로 보이는 동작도 있습니다:

Job exception: Net::SMTPAuthenticationError
(google_oauth2) Authentication failure! invalid_credentials: OAuth2::Error, invalid_grant: Bad Request { "error": "invalid_grant", "error_description": "Bad Request" }
(google_oauth2) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected