In diesem Dokument erfahren Sie, wie Sie den reCAPTCHA-Schutz vor Mautbetrug bei SMS verwenden zur Erkennung und Verhinderung von SMS Pumping-Angriffen in Unternehmen, die SMS für die Bestätigung in zwei Schritten oder eine telefonische Bestätigung, Ziel für SMS-Gebührenbetrug.
Die SMS-basierte Authentifizierung (2FA und Anmeldung) ist ein Branchenstandard für die Sicherheit bei Anmeldungen und Registrierungen. Sie bietet jedoch keinen Schutz vor SMS-Gebührenbetrug oder SMS-Pumping-Betrug. Vor dem Senden einer SMS bietet Ihnen der reCAPTCHA-Schutz vor Mautbetrug mit einem Risikowert, der angibt, wie wahrscheinlich es ist, dass diese Telefonnummer SMS-Gebührenbetrug. Basierend auf diesem Wert kannst du betrügerische SMS zulassen oder blockieren bevor sie an Ihren SMS-Anbieter gesendet werden.
Weitere Informationen finden Sie im Blog zum Schutz vor Gebührenbetrug bei SMS mit reCAPTCHA.
Hinweise
Folgen Sie der Anleitung auf dem entsprechenden Tab, je nachdem, ob Sie reCAPTCHA bereits verwenden oder neu dabei sind:
Bestehender reCAPTCHA-Nutzer
Wenn Sie bereits reCAPTCHA nutzen, aktivieren Sie reCAPTCHA-Schutz vor SMS-Gebührenbetrug in Ihrem Google Cloud-Projekt:
Rufen Sie in der Google Cloud Console die Seite „reCAPTCHA“ auf.
Prüfen Sie, ob der Name Ihres Projekts in der Ressourcenauswahl angezeigt wird.
Wenn Sie den Namen Ihres Projekts nicht sehen, klicken Sie auf die Ressourcenauswahl. und wählen Sie dann Ihr Projekt aus.
Klicken Sie auf
Einstellungen.Wenn reCAPTCHA Account Defender für Ihr Konto nicht aktiviert ist Projekt arbeiten, gehen Sie so vor:
- Klicken Sie im Bereich Kontoschutz auf Aktivieren.
- Klicken Sie im Dialogfeld Account Defender konfigurieren auf Aktivieren.
Klicken Sie im Bereich SMS-Gebührenbetrugsschutz auf Konfigurieren.
Klicken Sie auf den Schalter Aktivieren und dann auf Speichern.
Es kann einige Minuten dauern, bis die Aktivierung des SMS-Gebührenbetrugsschutzes von reCAPTCHA in unseren Systemen übernommen wird. Nachdem die Feature-Aktivierung in unserem erhalten Sie Antworten zum reCAPTCHA-Schutz vor Mautbetrug bei SMS. im Rahmen der Bewertungen.
Neuer reCAPTCHA-Nutzer
Wenn Sie reCAPTCHA noch nicht verwendet haben, gehen Sie so vor:
-
Je nachdem, ob Sie den reCAPTCHA-Schutz vor SMS-Gebührenbetrug auf einer Website oder auf einem Mobilgerät verwenden möchten Anwendung finden, führen Sie zum Einbinden von reCAPTCHA die folgenden Schritte aus:
Website
Mobile Anwendung
- Erstellen Sie einen auf Punktzahlen basierenden Schlüssel für Ihre mobile App.
- reCAPTCHA in einer iOS-App oder Android-App einbinden
- Aktivieren
reCAPTCHA-Schutz vor SMS-Gebührenbetrug in Ihrem Google Cloud-Projekt:
Rufen Sie in der Google Cloud Console die Seite „reCAPTCHA“ auf.
Prüfen Sie, ob der Name Ihres Projekts in der Ressourcenauswahl angezeigt wird.
Wenn Sie den Namen Ihres Projekts nicht sehen, klicken Sie auf die Ressourcenauswahl. und wählen Sie dann Ihr Projekt aus.
Klicken Sie auf
Einstellungen.Wenn reCAPTCHA Account Defender für Ihr Konto nicht aktiviert ist Projekt arbeiten, gehen Sie so vor:
- Klicken Sie im Bereich Kontoschutz auf Aktivieren.
- Klicken Sie im Dialogfeld Account Defender konfigurieren auf Aktivieren.
Klicken Sie im Bereich SMS-Gebührenbetrugsschutz auf Konfigurieren.
Klicken Sie auf den Schalter Aktivieren und dann auf Speichern.
Es kann einige Minuten dauern, bis die Aktivierung des SMS-Gebührenbetrugsschutzes von reCAPTCHA in unseren Systemen übernommen wird. Nachdem die Feature-Aktivierung in unserem erhalten Sie Antworten zum reCAPTCHA-Schutz vor Mautbetrug bei SMS. im Rahmen der Bewertungen.
Bewertung mit der Telefonnummer erstellen
Erstellen Sie für den reCAPTCHA-Schutz vor SMS-Gebührenbetrug Bewertungen mit dem Token,
execute()
-Funktion und die Telefonnummer generiert werden. Dazu verwenden Sie entweder das Attribut
reCAPTCHA-Clientbibliotheken oder die REST API aus Ihrem Back-End.
In diesem Dokument erfahren Sie, wie Sie mit der REST API eine Bewertung erstellen. Informationen zum Erstellen einer Bewertung mit Clientbibliotheken Weitere Informationen zum Erstellen von Bewertungen
Führen Sie vor dem Erstellen einer Bewertung die folgenden Schritte aus:
Richten Sie die Authentifizierung bei reCAPTCHA ein.
Welche Authentifizierungsmethode Sie auswählen, hängt von der Umgebung ab, in der reCAPTCHA ist eingerichtet. Die folgende Tabelle hilft Ihnen bei der Auswahl der eine geeignete Authentifizierungsmethode und die unterstützte Schnittstelle aus, Authentifizierung:
Umgebung Schnittstelle Authentifizierungsmethode Google Cloud - REST
- Clientbibliotheken
Verwenden Sie angehängte Dienstkonten. Lokal oder ein anderer Cloud-Anbieter REST Verwenden Sie API-Schlüssel oder die Workload Identity-Föderation. Wenn Sie API-Schlüssel verwenden möchten, empfehlen wir, die API-Schlüssel durch Anwenden von Einschränkungen für API-Schlüssel zu sichern.
Clientbibliotheken Verwenden Sie:
- Verwenden Sie für Python oder Java API-Schlüssel oder die Identitätsföderation von Arbeitslasten.
Wenn Sie API-Schlüssel verwenden möchten, empfehlen wir, die API-Schlüssel durch Anwenden von Einschränkungen für API-Schlüssel zu sichern.
- Für andere Sprachen verwenden Sie Workload Identity-Föderation.
Wähle eine stabile Konto-ID (
accountId
) aus, die vom Nutzer nicht oft geändert wird und stellen sie für die Bewertung improjects.assessments.create
-Methode. Diese stabile Konto-ID sollte für alle Ereignisse, die sich auf denselben Nutzer beziehen, denselben Wert haben. Sie können Folgendes als Konto-ID angeben:Nutzerkennungen
Jedes Konto kann eindeutig einem stabilen Nutzernamen, einer E-Mail-Adresse oder einer Telefonnummer zugeordnet werden. können Sie sie als
accountId
verwenden. Wenn Sie solche websiteübergreifenden (Kennungen, die websiteübergreifend wiederverwendet werden können), verwendet reCAPTCHA diese um den Schutz Ihrer Nutzerkonten auf der Grundlage von websiteübergreifenden Modellen zu verbessern, indem Missbrauch von Konto-IDs melden und Kenntnis von websiteübergreifenden Missbrauchsmustern im Zusammenhang mit zu diesen IDs.Alternativ können Sie, wenn Sie über eine interne Nutzer-ID verfügen, die jedem Konto eindeutig zugeordnet ist, stellen Sie sie als
accountId
bereit.Gehasht oder verschlüsselt
Wenn Sie keine interne Nutzer-ID haben, die jedem Konto eindeutig zugeordnet ist, können Sie in eine intransparente, websitespezifische Konto-ID umwandeln. Diese Kennung ist weiterhin erforderlich, damit reCAPTCHA Account Defender die Nutzeraktivitätsmuster nachvollziehen und anormales Verhalten erkennen kann. Sie wird jedoch nicht für andere Websites freigegeben.
Wählen Sie eine stabile Konto-ID aus und machen Sie sie undurchsichtig, bevor Sie sie an reCAPTCHA senden, indem Sie sie verschlüsseln oder hashen:
Verschlüsselung (empfohlen): Verschlüsseln Sie die Konto-ID mit einer deterministischen Verschlüsselungsmethode, die einen stabilen Geheimtext erzeugt. Eine ausführliche Anleitung finden Sie unter Daten deterministisch verschlüsseln. Wenn Sie die symmetrische Verschlüsselung anstelle des Hashwerts verwenden, müssen Sie keine Zuordnung zwischen Ihren Nutzer-IDs und den entsprechenden undurchsichtigen Nutzer-IDs beibehalten. Entschlüsseln Sie die von reCAPTCHA zurückgegebenen opaken Kennungen, um sie in den User-ID.
Hash-Technologie: Wir empfehlen, die Konto-ID mit der SHA256-HMAC-Methode mit einem benutzerdefinierten Salt Ihrer Wahl zu hashen. Da Hashes nur in eine Richtung funktionieren, müssen Sie eine Zuordnung zwischen den generierten Hashes und Ihren Nutzer-IDs beibehalten, damit Sie die gehashte Konto-ID, die zurückgegeben wird, den ursprünglichen Konten zuordnen können.
Fügen Sie den Parameter accountId
und die Telefonnummer im E.164-Format als UserId
hinzu, um sie in der Prüfung in der Methode projects.assessments.create
zu überprüfen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID ist Ihre Google Cloud-Projekt-ID.
- TOKEN: vom Aufruf
grecaptcha.enterprise.execute()
zurückgegebenes Token - KEY_ID: der leistungsbasierte Schlüssel, den Sie auf Ihrer Website installiert haben.
- ACCOUNT_ID: Eine eindeutige Kennung für ein Nutzerkonto auf Ihrer Website.
- PHONE_NUMBER: die Telefonnummer, die auf Schadsoftware überprüft werden soll. Die Telefonnummer muss im E.164-Format vorliegen und darf nicht gehasht oder verschlüsselt sein.
HTTP-Methode und URL:
POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/assessments
JSON-Text der Anfrage:
{ "event": { "token": "TOKEN", "siteKey": "KEY_ID", "userInfo": { "accountId": "ACCOUNT_ID", "userIds": [ { "phoneNumber": "PHONE_NUMBER" } ] } } }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/assessments"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/assessments" | Select-Object -Expand Content
Sie sollten in etwa folgende JSON-Antwort erhalten:
{ "event": { … }, "name": "ASSESSMENT_ID", "smsFraudAssessment": { "smsFraudRisk": 0.3 } }
Die Antwort, die Sie erhalten, enthält den smsFraudRisk
-Wert in den
smsFraudAssessment
-Feld . Je höher der Wert, desto wahrscheinlicher ist die Telefonnummer riskant. Je niedriger der Wert, desto wahrscheinlicher ist die Telefonnummer legitim.
Sie sind für die Maßnahmen verantwortlich, die Sie auf Grundlage der Bewertung ergreifen.
Für die einfachste Integration können Sie Schwellenwerte für smsFraudRisk
festlegen, um Ihre Entscheidung zu unterstützen.
Bewertung mit Anmerkungen versehen
Damit Sie den SMS-Traffic im Blick behalten und die Betrugserkennung verbessern können, müssen Sie die Bewertungen innerhalb von 10 Minuten nach dem Senden der SMS oder nach der erfolgreichen Bestätigung der Telefonnummer annotieren.
Sie können eine Bewertung mit der Methode projects.assessments.annotate
annotieren, indem Sie eine Anfrage mit der Bewertungs-ID senden. Geben Sie im Anfragetext im Feld phoneAuthenticationEvent
die Telefonnummer im E.164-Format an.
So fügen Sie Anmerkungen zu einer Bewertung hinzu:
Legen Sie die Informationen und Labels fest, die dem JSON-Anfragetext hinzugefügt werden sollen je nach Anwendungsfall.
In der folgenden Tabelle sind die Labels und Werte aufgeführt, mit denen Sie Ereignisse annotieren können:
Label Beschreibung Beispielanfrage reasons
Erforderlich. Ein Label, das Ihre Bewertungen unterstützt.
Geben Sie Echtzeit-Ereignisdetails im
reasons
-Label innerhalb weniger Sekunden oder Minuten nach dem Ereignis an, da sie die Echtzeiterkennung beeinflussen.Mögliche Werte:
INITIATED_TWO_FACTOR
: ein Bestätigungscode über SMS wird gesendet.PASSED_TWO_FACTOR
: Der Bestätigungscode lautet wurde bestätigt.FAILED_TWO_FACTOR
: Der Bestätigungscode ist ungültig.
{ "reasons": ["INITIATED_TWO_FACTOR"], "phoneAuthenticationEvent": { "phoneNumber": "+18005550175" } }
annotation
Optional. Ein Label, das die Legitimität von Bewertungen angibt.
Geben Sie Fakten zur Anmeldung und zur Validierung oder Korrektur Ihrer Risikobewertungen Label „
annotation
“.Mögliche Werte:
LEGITIMATE
oderFRAUDULENT
.Wir empfehlen, diese Informationen innerhalb weniger Sekunden oder Minuten nach dem Ereignis zu senden, da sie die Echtzeiterkennung beeinflussen.
{ "annotation": "LEGITIMATE" }
Erstellen Sie eine Anmerkungsanfrage mit den entsprechenden Labels.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- ASSESSMENT_ID: Wert des
name
-Felds, der vomprojects.assessments.create
-Aufruf zurückgegeben wurde. - ANNOTATION: Optional. Ein Label zur Angabe, ob die Bewertung legitim oder betrügerisch ist.
- REASONS: Gründe, die Ihre Anmerkung unterstützen. Eine Liste der möglichen Werte finden Sie unter Werte für „Grund“.
- PHONE_NUMBER: die Telefonnummer, die geprüft wurde Die Telefonnummer muss im E.164-Format vorliegen und darf nicht gehasht oder verschlüsselt sein.
HTTP-Methode und URL:
POST https://recaptchaenterprise.googleapis.com/v1/ASSESSMENT_ID:annotate
JSON-Text der Anfrage:
{ "annotation": ANNOTATION, "reasons": REASONS, "phoneAuthenticationEvent": { "phoneNumber": "PHONE_NUMBER" } }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen
request.json
und führen Sie den folgenden Befehl aus:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/ASSESSMENT_ID:annotate"PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen
request.json
und führen Sie den folgenden Befehl aus:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/ASSESSMENT_ID:annotate" | Select-Object -Expand ContentSie sollten einen erfolgreichen Statuscode (2xx) und eine leere Antwort als Ausgabe erhalten.
- ASSESSMENT_ID: Wert des