SilentShield

WordPress-űrlapok védelme a SilentShielddel

A hivatalos „SilentShield – Captcha & Anti-Spam” bővítmény beilleszti a szkriptet, és minden beküldést ellenőriz az Ön szerverén — saját kód nélkül. Ez az útmutató csak azt sorolja fel, amit mi magunk teszteltünk a bővítménnyel.

A bővítmény megtekintése a WordPress-könyvtárban

Feltételek

  • WordPress 5.2 vagy újabb és PHP 7.4 vagy újabb (a bővítmény WordPress-könyvtárbeli adatai szerint).
  • Webhelye https-en keresztül fut. Biztonságos környezet nélkül a böngésző nem biztosít Web Crypto funkciókat, nem jön létre nonce, és a védett űrlapok nem küldhetők el.
  • SilentShield-fiók egy, az Ön domainjéhez tartozó kulccsal. Az olyan aldomainek, mint a www. vagy a staging., ebbe beletartoznak.

Mely űrlapok védhetők

Tesztelve: 2026. 10. 07., 2.15.14 bővítménnyel és WordPress 7.1.2 verzióval: az ember átjut, és a szerveren megerősítést kap, a böngésző nélküli beküldést a rendszer elutasítja.

ŰrlapTesztelt verzióÁllapot
Contact Form 76.2Működik
Fluent Forms6.2.15Működik
WordPress-hozzászólások7.1.2Működik
WordPress-bejelentkezés7.1.2Működik
WordPress-regisztráció7.1.2Működik
WooCommerce pénztár (klasszikus)11.1.2Működik
WPForms2.0.2.2Működik
WooCommerce pénztár (blokkos pénztár)11.1.2Működik
Elementor Forms4.3.4 (Pro 4.2.1)Működik
Avada Forms7.11.7Működik

Telepítés

  1. A WordPressben nyissa meg a „Bővítmények → Új hozzáadása” menüpontot, és keressen rá a „SilentShield” kifejezésre.
  2. Telepítse és kapcsolja be a „SilentShield – Captcha & Anti-Spam for WordPress” bővítményt.
  3. A menüben megjelenik a „SilentShield” menüpont.

A kulcs megadása és az űrlapok bekapcsolása

  1. Hozzon létre egy kulcsot a domainjéhez a SilentShield irányítópulton, és másolja ki.
  2. A WordPressben nyissa meg a „SilentShield → API / SilentShield” oldalt, illessze be a kulcsot az „API Key” mezőbe, és kattintson a „Validate” gombra.
  3. Kapcsolja be az „Activate API” opciót, és kattintson a „Save” gombra.
  4. Nyissa meg a „SilentShield → Forms” oldalt, és kapcsolja be a védelmet minden olyan űrlapbővítménynél, amely a fenti táblázatban „Működik” jelölést kapott.

A bővítmény a webhelykulcsot használja a böngészőben és az Ön szerverén végzett ellenőrzéshez is. Ehhez nincs szükség szerverkulcsra.

Szerverkulcs az f12-security bővítményhez

Az f12-security bővítmény opcionálisan botokra vonatkozó jelzéseket cserélhet a SilentShielddel: jelenti az ismert botok ujjlenyomatait, és letölt egy aláírt listát az Ön fiókjához. Ezeket a hívásokat az Ön szervere indítja, nem a látogatók böngészője. Ehhez a bővítménynek az Ön domainjének szerverkulcsára van szüksége — nem a megszokott webhelykulcsra, amely az oldalai forráskódjában látható.

  1. A SilentShield irányítópultján nyissa meg az „API-kulcsok” menüpontot, majd a domainjéhez tartozó kulcsot.
  2. Lépjen a „Biztonság” oldalra, és a „Szerverkulcs” szakaszban kattintson a „Szerverkulcs létrehozása” gombra.
  3. Az értéket azonnal másolja ki. Csak ez az egy alkalom látható, és mi nem őrzünk másolatot.
  4. Írja be az f12-security bővítményben a szerverkulcsként feliratozott mezőbe, majd mentse.

A szerverkulcs kizárólag a szervere beállításaiba tartozik, soha nem a látogatóknak kiszolgált oldalba vagy szkriptbe. Ha elveszíti, hozzon létre újat az irányítópulton; a régi ezzel érvénytelenné válik.

A működés ellenőrzése

Valódi beküldés

Nyissa meg az űrlapot tartalmazó oldalt egy privát ablakban, töltse ki kézzel, és küldje el. Az űrlap szokásos visszaigazolását látja, a beküldés pedig az ítéletével együtt megjelenik a SilentShield irányítópulton.

Elutasított beküldés

Küldje el ugyanezt böngésző nélkül, például egy hozzászólást curl segítségével egy nyitott hozzászólású bejegyzéshez. Cserélje ki a címet és a bejegyzés azonosítóját:

Terminalbash
curl -i -X POST https://example.com/wp-comments-post.php \
  -d "comment_post_ID=1&author=Test&[email protected]&comment=Test"

Elutasítás várható a bővítmény üzenetével, angol nyelvű webhelyen: „Captcha not correct: Behavior check”. Contact Form 7 esetén az űrlapon a „Behavior check” szöveg jelenik meg.

Hibaelhárítás

A „Küldés” gombra kattintva nem történik semmi.
Az oldal http-n fut https helyett? A böngésző konzolja ekkor ezt a figyelmeztetést mutatja: „[SilentShield] Web Crypto fehlt im Worker …” (az üzenet német nyelvű). Szolgálja ki az oldalt https-en keresztül.
A Contact Form 7 ezt jelzi: „There was an error trying to send your message”.
Az ellenőrzés sikeres volt; a WordPress levélküldése hiúsult meg. A levelezési beállításokat ellenőrizze (például SMTP), ne a botvédelmet.
Valódi látogatók a „Behavior check” üzenetet kapják.
A leggyakoribb ok egy optimalizáló bővítmény, amely késlelteti vagy összevonja a JavaScriptet — lásd az alábbi megjegyzést. Ellenőrizze azt is, hogy a kulcs az oldal domainjéhez tartozik-e.
Egy WPForms-űrlap nem küldhető el, vagy a blokkos pénztár minden rendelést elutasít.
Frissítse a SilentShield bővítményt a 2.15.14-es vagy újabb verzióra. Mindkét problémát a 2.15.12-es verziónál mértük; a 2.15.14-esnél már nem jelentkeznek.
Szeretné látni, mit csinál a szkript.
Fűzze hozzá a ?silentshield-debug paramétert az oldal címéhez. A böngésző konzolja ekkor az ellenőrzés minden lépését mutatja.

Zárja ki a SilentShieldet a JavaScript-optimalizálókból

A gyorsítótár- és sebességnövelő bővítmények (WP Rocket, Perfmatters, LiteSpeed, Autoptimize és mások) képesek a JavaScriptet a látogató első interakciójáig késleltetni, és a fájlokat egyetlen csomagba vonni. Mindkettő tönkreteszi a SilentShieldet: a widget csak kattintásra indul, hiányoznak az oldalbetöltéstől számított viselkedési jelek (egérmozgás, gépelési ritmus, időzítés), és a védelem töredéknyi adatból dolgozik. Az űrlapvizsgálatok egyáltalán nem futnak. Vegye fel ezeket a mintákat az optimalizáló kizárási listáira — a „JavaScript késleltetése” ÉS az „JavaScript egyesítése” beállításnál is:

Kizárási mintáktext
client.js
behavior-captcha
silentshield

Ellenőrzés: nyisson meg egy űrlapot tartalmazó oldalt, és futtassa a performance.getEntriesByType("resource").map(r=>r.name).filter(n=>n.includes("client.js")).join() parancsot a böngészőkonzolban, kattintás NÉLKÜL. Az üres eredmény azt jelenti, hogy a SilentShield még nem töltődött be — hiányzik egy kizárás.

Korlátok

  • Csak azok az űrlapbővítmények védettek, amelyeket a „SilentShield → Forms” alatt bekapcsol.
  • Csak tesztelt verziókat sorolunk fel. A bővítmény további űrlapbővítményeket is felismer; azt, hogy ezek működnek-e a SilentShielddel, nem teszteltük.
  • A bővítmény saját ellenőrzéseket is tartalmaz (például honeypot és időmérés), és ezekhez saját üzeneteket jelenít meg, mint a „JavaScript check”.
  • A SilentShield a botoktól védi az űrlapokat. Nem helyettesít webalkalmazás-tűzfalat vagy DDoS-védelmet.

Üzemeltetés

  • A bővítményt a WordPressen keresztül frissíti, mint bármely mást. A böngészőben futó szkript mindig az aktuális verzióban érkezik tőlünk.
  • Minden beküldés kétszer számít bele a keretbe: egyszer a böngészőből érkező jelentés, egyszer az Ön szerverén végzett ellenőrzés.
  • Az ítéleteket és az elutasított beküldéseket a SilentShield irányítópulton látja.

Árak és keretek megtekintése

Bővítmény nélkül: saját integráció

Saját űrlapokhoz vagy bővítmény nélkül illessze be saját maga a szkriptet, és ellenőrizzen minden beküldést a szerverén. Ezen ellenőrzés nélkül a szkript nem véd: a közvetlenül küldött kérést nem állítja meg.

1. A script hozzáadása

Adja hozzá ezt a kódot a témája functions.php fájljához, vagy használjon egy bővítményt, például az 'Insert Headers and Footers'-t:

functions.phpphp
// functions.php
function silentshield_enqueue() {
    wp_enqueue_script(
        'silentshield',
        'https://api.silentshield.io/client.js?k=YOUR_API_KEY',
        array(),
        null,
        true
    );
}
add_action('wp_enqueue_scripts', 'silentshield_enqueue');

2. Szerveroldali ellenőrzés

Adja hozzá a nonce-ellenőrzést az űrlapkezelőjéhez. Egyedi űrlapoknál illessze be ezt a feldolgozó függvénybe:

PHPphp
function verify_silentshield_nonce() {
    $nonce = sanitize_text_field($_POST['behavior_nonce'] ?? '');
    if (empty($nonce)) {
        wp_die('Missing verification', 'Error', array('response' => 422));
    }

    $response = wp_remote_post('https://api.silentshield.io/api/v1/captcha/verify-nonce', array(
        'headers' => array(
            'Content-Type' => 'application/json',
            'X-Api-Key' => SILENTSHIELD_API_KEY,
        ),
        'body' => wp_json_encode(array('nonce' => $nonce)),
        'timeout' => 5,
    ));

    if (is_wp_error($response)) {
        return; // fail open
    }

    $body = json_decode(wp_remote_retrieve_body($response), true);
    if (($body['ok'] ?? false) !== true || ($body['verdict'] ?? '') !== 'human') {
        wp_die('Bot detected', 'Forbidden', array('response' => 403));
    }
}

Az API-kulcs tárolása

A biztonság érdekében adja hozzá API-kulcsát a wp-config.php fájlhoz:

wp-config.phpphp
// wp-config.php
define('SILENTSHIELD_API_KEY', 'your-api-key-here');

MI-ügynökök megfigyelése

Az űrlapvédelmen túl a WordPress azt is rögzítheti, mely AI-crawlerek (GPTBot, ClaudeBot, PerplexityBot, …) olvassák a webhelyét — ma egy kis must-use bővítményfájllal; egy közelgő bővítményfrissítés ezt beépítve hozza.

Bővebben: MI-ügynökök megfigyelése →