Điểm:0

Làm cách nào tôi có thể ngăn chặn Webform Spam?

lá cờ ae

Chúng tôi đang nhận được thư rác từ một biểu mẫu web Liên hệ với chúng tôi đơn giản. Chúng tôi đang chạy Drupal 7, sử dụng mô-đun Captcha và Honeypot. Thử thách Captcha được đặt thành hình ảnh và giới hạn thời gian Honeypot được đặt thành 4 giây và được bật cho tất cả các biểu mẫu web. Nhưng gần đây chúng tôi bắt đầu bị spam với tốc độ 4 hoặc 5 bài đăng mỗi phút, tất cả đều từ các địa chỉ gmail hoặc ru khác nhau. Hiện tại, chúng tôi chưa xuất bản biểu mẫu web vi phạm. Có ai có lời khuyên về những gì khác chúng ta có thể thử?

Điểm:2
lá cờ ph

Dưới đây là một số điều để thử

  • Đặt tên phần tử honeypot thành tên khác
  • Đặt giới hạn gửi theo địa chỉ IP trên biểu mẫu web
  • Đặt giới hạn gửi theo cookie trên biểu mẫu web
  • Cố gắng reCaptcha v3 nếu bạn vẫn đang sử dụng Captcha kiểu cũ hơn

Nhược điểm của giới hạn gửi là những người trên máy tính/mạng dùng chung có thể bị chặn và nếu bạn sử dụng cookie thì bạn phải xử lý luật về cookie.

Nhược điểm của ReCaptcha là bạn đang để Google quyết định ai là kẻ gửi thư rác. Có thể không phải là nhược điểm tùy thuộc vào quan điểm của bạn đối với Google.

No Sssweat avatar
lá cờ ua
Hãy thử `reCaptcha v3` theo kinh nghiệm của tôi, nó không hoạt động tốt. Tôi thấy v2 hiệu quả hơn (
sonfd avatar
lá cờ in
Một thứ khác mà tôi đã sử dụng và đạt được một số thành công là [mô-đun Antibot](https://www.drupal.org/project/antibot). Mặc dù nó yêu cầu bật javascript.
berramou avatar
lá cờ gb
mô-đun này cũng hữu ích https://www.drupal.org/project/webform_spam_words
Điểm:1
lá cờ in

Tôi sử dụng phụ trợ của https://www.stopforumspam.com/ cùng với honeypot rất thành công. Nhưng bạn phải kiểm tra xem các số liệu SFS có khớp với hồ sơ rủi ro người dùng của bạn hay không.

Không chắc có mô-đun nào không nhưng đây là mã của tôi nếu bạn muốn sao chép, dán và chơi với nó...

  /**
   * @param $ip - ip hoặc ip[]
   * @param $name - tên hoặc tên[]
   * @param $email - mailadr hoặc mailadr[]
   *
   * @return float|int - độ tin cậy thư rác trung bình của api.stopforumspam.org
   */
  hàm tĩnh công khai checkStopForumSpam($ip, $name, $email) {
    $client = Drupal::getContainer()->get('http_client');
    $endpoint = 'https://api.stopforumspam.org/api';
    $names = $mails = [];
    nếu (is_array($name)) {
      foreach ($name as $n) $names[] = urlencode($n);
    } khác {
      $names[] = urlencode($name);
    }
    nếu (is_array($email)) {
      foreach ($email là $n) $mails[] = md5($n);
    } khác {
      $mails[] = md5($email);
    }
    $postdata = [
      'form_params' => [
        'tên người dùng' => $names,
        'emailhash' => $mail,
        'ip' => $ip,
        "badtorexit",
        "json",
        "unix"
      ],
      'tiêu đề' => [
        'Chấp nhận' => 'ứng dụng/json',
      ]
    ];
    cố gắng {
      $response = $client->post($endpoint, $postdata);
      $response_data = json_decode((string) $response->getBody(), TRUE);
    } bắt (\Ngoại lệ $e) {
      $response_data = [];
      $response_data['success'] = 0;
      Drupal::logger('asdentbase')->error('stopforumspam exception '.$e->getMessage());
    }
    $ tự tin = 0,0;
    $conficount = 0;
    $confimax = 0;
    array_walk_recursive($response_data, function ($v, $k) use (&$trust, &$conficount, &$confimax) {
      if ($k == 'sự tự tin') {
        $ tự tin += $v;
        nếu ($v > $confimax) $confimax = $v;
      }
      nếu ($k == 'giá trị') {
        $conficount++;
      }
    });

    $sumconfi = $conficount == 0 ? 0,0 : $conficount / $conficount;
    nếu ($confimax > 80) {
      nếu ($sumconfi < $confimax) $sumconfi = $confimax;
    }


    trả về $sumconfi;
  }

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.