Zweck
Cyber Guru bietet die Möglichkeit, Informationen über an Benutzer gesendete Phishing-Kampagnen zu erfassen, um deren Verhalten zu überwachen. Dies geschieht über eine REST-API, die einen Datensatz im JSON-Format zurückgibt.
Die Automatisierung der Datenerfassung, die von Cyber Guru bereitgestellt wird, hängt von den Prozessen und der Architektur des Kunden ab und kann daher nicht von Cyber Guru überwacht werden.
Diese Richtlinie enthält die Vorgaben und Parameter für die Nutzung des Dienstes durch den Kunden.
Geltungsbereich
Die Informationen gelten für die Cyber Security Awareness Plattform Cyber Guru 2.0
Voraussetzungen
Der Kunde muss über die technischen Ressourcen verfügen, um REST-APIs mit einer für seine Anforderungen angemessenen Frequenz aufrufen zu können.
Vorgehensweise
Cyber Guru stellt zwei REST-APIs zur Verfügung:
Get token
https://login.platform.cyberguru.eu/realms/{TENANT}/protocol/openid-connect/token
Mit dieser API kann ein Autorisierungstoken abgerufen werden.
Aufrufparameter (POST-Methode):
- client_id: ext-api
- client_secret: <von Cyber Guru bereitgestellt>
- grant_type: client_credentials
Get phishing campaigns data
https://<...>/ext/phishing/campaigns
Mit dieser API kann die Liste der Phishing-Kampagnen abgerufen werden, die für ein bestimmtes Unternehmen durchgeführt wurden. Die Daten sind standardmäßig nicht anonymisiert und können nach einem bestimmten Zeitraum und/oder Jahr gefiltert werden.
Um die API aufrufen zu können, muss das zuvor erhaltene Token als "Bearer Token" angegeben werden.
Methode: GET
Eingabeparameter:
- start_date: optional, Format JJJJ-MM-TT
- end_date: optional, Format JJJJ-MM-TT
- year: optional, Format JJJJ
- anon: optional, gibt an, ob die Daten anonymisiert (1) oder nicht (0) abgerufen werden sollen
Antwort:
Die Antwort enthält eine ausgewählte Teilmenge der Spalten, die im herunterladbaren Phishing-Excel-Bericht der Plattform enthalten sind
-
Antwort:
campaignName: Name/Code der Kampagne,
templateId: Template-ID,
templateName: Name des Templates,
template_type: Typ des Templates (E-Mail, SMS, etc.),
subject: Betreff des Templates (falls vorhanden),
targetId: Ziel-ID,
firstname: Vorname des Benutzers,
lastname: Nachname des Benutzers,
campaignType: Beschreibung des Kampagnentyps,
target_risk: Beschreibung des Risikolevels, das dem Benutzer zugeordnet ist,
email: E-Mail-Adresse des Benutzers,
language: Sprache des Templates,
country: Land des Benutzers,
sent: Versanddatum des Templates,
open: Datum, an dem das Template geöffnet wurde,
clicked: Gibt an, ob auf einen im Template enthaltenen Link geklickt wurde,
reported: Gibt an, ob das Template vom Benutzer als Phishing gemeldet wurde,
submitted_data: Datum der Meldung,
phished_device: Typ des verwendeten Geräts,
active: Werte 0/1,
Möglicherweise sind ein oder mehrere Organisationen des Benutzers vorhanden (zum Beispiel
Department: difesa), dargestellt als“Schlüssel”:”Wert”-Paare
Beispiel für eine Ausgabe bei erfolgreicher Antwort
[
{
"campaignName": "C-01",
"templateId": "1F1BFF1A305311ED9CCBA85E4535D801",
"templateName": "ESER - Poste",
"template_type": "email",
"subject": "Controllo credenziali d’accesso al portale",
"targetId": "4C51AC920AE74A2BA64AE92E1A11A1B0",
"firstname": "******",
"lastname": "******",
"campaignType": "Ordinary",
"target_risk": "Strong",
"email": "ba3fab89-2a30-11ee-96e0-02ad84ed1332@deletedtarget.xxx",
"language": "it",
"country": "IT",
"sent": "2023-06-20 15:35:34",
"open": null,
"clicked": null,
"reported": null,
"submitted_data": null,
"phished_device": null,
"active": 0
},
{
"campaignName": "C-01",
"templateId": "1F0A6E0D305311ED9CCBA85E4535D801",
"templateName": "ESER - iPhone",
"template_type": "email",
"subject": "Il suo ordine è stato spedito",
"targetId": "FDD947C5D85C45AEACC63BB6A1B4328E",
"firstname": "******",
"lastname": "******",
"campaignType": "Ordinary",
"target_risk": "Strong",
"email": "2bf3996d-5085-11ee-96e0-02ad84ed1332@deletedtarget.xxx",
"language": "it",
"country": "AL",
"sent": "2023-06-20 15:35:34",
"open": null,
"clicked": null,
"reported": null,
"submitted_data": null,
"phished_device": null,
"active": 0,
"Organleon52": "org1"
},
{
"campaignName": "C-01",
"templateId": "1EDB5763305311ED9CCBA85E4535D801",
"templateName": "PayPal_1",
"template_type": "email",
"subject": "1 Nuovo Messaggio: Account PayPal",
"targetId": "C5A9F8B7E8AE47488DF6EFE73012129C",
"firstname": "Sara",
"lastname": "Smith",
"campaignType": "Ordinary",
"target_risk": "Strong",
"email": "sara.s@example.it",
"language": "it",
"country": null,
"sent": "2023-06-20 15:35:35",
"open": null,
"clicked": null,
"reported": null,
"submitted_data": null,
"phished_device": null,
"active": 0
}
]
Fehlerbehandlung
Validierungsfehler (im Fehlertext wird dynamisch angegeben, welche Eingabeparameter ungültig sind)
{
"status": 400,
"error": {
"code": "EXT_1000",
"message": "The start date does not match the format Y-m-d."
}
}
Fehler, wenn beim internen Abruf der Benutzer des Unternehmens ein Problem auftritt
{
"status": 404,
"error": {
"code": "EXT_1002",
"message": "Users not found"
}
}
Fehler bei Problemen mit der Abfrage
{
"status": 404,
"error": {
"code": "EXT_1003",
"message": "An error occur retrieving data"
}
}
Fehler bei Problemen mit dem Lokalisierungsdienst
{
"status": 404,
"error": {
"code": "EXT_1004",
"message": "Unexpected error processing data in the requested or preset language"
}
}
Allgemeiner Server-seitiger Fehler
{
"status": 500,
"error": {
"code": "EXT_1001",
"message": "Unable to retrieve data. Token expired or not valid"
}
}