Ist dieser Link sicher?
Dieses Werkzeug prüft die Form einer URL auf die klassischen Warnzeichen einer Betrugsmasche: einen Kurzlink, der das Ziel verbirgt, ein @ zur Tarnung des echten Hosts, einen Host, der nur eine IP-Adresse statt einer Domain ist, und Punycode-Zeichen für eine Sosia-Domain.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Es liest die Adresse; es öffnet die Seite nicht, folgt keinen Weiterleitungen und gleicht die Domain nicht gegen eine Bedrohungsliste ab. Das Ergebnis zeigt, ob eines dieser Warnzeichen vorliegt, bevor Sie oder Ihre Nutzer klicken.
Warum ein Link allein wenig verrät
Ein Link wie »ihre-bank-sicherheit.de« sieht auf den ersten Blick harmlos und sogar vertrauenswürdig aus, kann aber auf eine originalgetreue Nachbildung einer bekannten Website führen, die nur auf den Diebstahl von Zugangsdaten ausgelegt ist. Optisch ist der Unterschied zwischen einem echten und einem gefälschten Link oft kaum zu erkennen, besonders auf einem kleinen Mobilbildschirm, in Eile oder wenn der eigentliche Linktext im E-Mail-Programm ohnehin verkürzt angezeigt wird und der Rest der Adresse verborgen bleibt.
Prüfung struktureller Warnzeichen
Die Prüfung untersucht die Form der eingegebenen URL auf strukturelle Warnzeichen: einen bekannten Kurzlink-Dienst (bit.ly, tinyurl, goo.gl), der das Ziel verbirgt, ein @ in der Adresse, das einen feindlichen Host wie einen vertrauenswürdigen aussehen lässt, einen Host, der nur eine rohe IP-Adresse ist, und Punycode (xn--), mit dem Sosia-Domains gebaut werden. Das Ergebnis nennt das erkannte Warnzeichen, statt nur einer pauschalen Ampel. Eine Bedrohungsliste wird dabei nicht abgefragt, und die Seite wird nicht geöffnet.
Was eine unauffällige Bewertung nicht bedeutet
Eine URL ohne strukturelles Warnzeichen ist nicht automatisch sicher: Eine Phishing-Seite auf einer normal aussehenden Domain, ohne Kurzlink oder Tarnung, löst keine Warnung aus. Die Prüfung erkennt Form-Merkmale, nicht die Reputation einer Seite; sie ist deshalb eine zusätzliche Absicherung und kein Ersatz für gesunde Vorsicht bei unbekannten Absendern, ungewöhnlichen Aufforderungen oder Links, die Dringlichkeit erzeugen sollen.
Einsatz in E-Mail und Support
Der Abgleich lässt sich über die Web-Oberfläche für einzelne, von Hand geprüfte Links nutzen oder per API in einen bestehenden Ablauf einbinden, etwa um Links aus eingehenden E-Mails automatisch zu prüfen, bevor ein Support-Team sie öffnet, oder um von Kunden eingereichte Links in einem Ticket-System vorab einzuordnen, bevor ein Mitarbeiter überhaupt mit der Nachricht in Berührung kommt und selbst entscheiden muss, ob ein Link vertrauenswürdig wirkt.
Anwendungsfälle
Ein Link aus einer verdächtigen E-Mail
Anna Hoffmann erhält eine E-Mail, die angeblich von ihrer Bank stammt. Vor dem Klick prüft sie den enthaltenen Link und erkennt, dass er ein getarnter Kurzlink mit einer Punycode-Sosia-Domain ist und als verdächtig markiert wird.
Links im Kundensupport prüfen
Das Support-Team der Weber Metallbau GmbH prüft Links, die Kunden in Tickets einreichen, bevor ein Mitarbeiter sie öffnet, und schützt so die eigenen Arbeitsplätze.
Automatisierte Prüfung eingehender E-Mails
Ein IT-Dienstleister bindet die Prüfung per API in die E-Mail-Verarbeitung eines Kunden ein, sodass strukturell auffällige Links automatisch markiert werden, bevor sie im Postfach landen.
Häufige Fragen
Was kostet eine Prüfung?
$0.002 pro geprüfter URL, ohne weitere Kosten. Der Preis gilt unabhängig vom Ergebnis der Prüfung.
Wird die geprüfte URL gespeichert?
Nein, die URL wird nur zur Prüfung verwendet und nicht mit weiteren persönlichen Daten verknüpft oder dauerhaft gespeichert.
Läuft die Prüfung im Browser oder auf einem Server?
Sie läuft serverseitig über die Web-Oberfläche oder die API und liefert das Ergebnis sofort zurück.
Ist eine unauffällige URL garantiert sicher?
Nein. Eine normal aussehende Betrugs-Domain ohne strukturelles Warnzeichen löst keine Warnung aus. Ein unauffälliges Ergebnis ist ein zusätzliches Indiz, keine Garantie.
Kann ich damit auch verkürzte Links prüfen?
Ja. Ein bekannter Kurzlink wird als Warnzeichen erkannt, weil er das Ziel verbirgt – aufgelöst wird er dabei nicht. Für die dahinterliegende Ziel-URL lösen Sie den Link zuerst selbst auf und prüfen dann das Ziel.
Brauche ich dafür ein Konto?
Nein. Es gibt derzeit keine Konten – Sie zahlen pro geprüfter URL, direkt über die Web-Oberfläche oder die API.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/verify/url-safe \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://bit.ly/xyz"}'const res = await fetch("https://api.kit.forhosting.com/verify/url-safe", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://bit.ly/xyz"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/verify/url-safe",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://bit.ly/xyz"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/verify/url-safe", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://bit.ly/xyz"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://bit.ly/xyz"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/verify/url-safe", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"url": "https://bit.ly/xyz"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "verify.url_safe",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |