Dokumentace Domluvit pilot

Ukládejte dešifrované odpovídající payloady do protokolů

Zašifrovaný shodující se payload můžete zahrnout do Logpush úlohy přidáním Obecné > Metadata pole ze sady dat Firewall Events do vaší úlohy.

Payload v zašifrované podobě je dostupný v encrypted_matched_data vlastnost Metadata .

Můžete však chtít dešifrovat odpovídající payload předtím, než protokoly uložíte do svého Systém SIEM podle vlastního výběru. Cloudflare poskytuje ukázkový projekt Worker ↗ na GitHubu, který provádí následující:

  1. Chová se jako úložiště kompatibilní s S3 pro příjem protokolů ze služby Logpush. Tyto protokoly budou obsahovat šifrovaná data odpovídajícího payloadu.
  2. Dešifruje data odpovídajícího payloadu pomocí vašeho privátního klíče.
  3. Odesílá protokoly do koncového systému úložiště protokolů s dešifrovanými daty payloadu.

Ve vzorovém projektu budete muset provést několik úprav, aby bylo možné odesílat protokoly obsahující dešifrovaná data payloadu do vašeho úložiště protokolů.

V projektu Worker viz README ↗ s dalšími informacemi o konfiguraci a nasazení tohoto projektu Worker.

Struktura encrypted_matched_data vlastnost v Logpush

Informace o shodném payloadu obsahuje konkrétní řetězec, který aktivoval pravidlo, spolu s částí textu bezprostředně před tímto řetězcem a za ním.

Jakmile dešifrujete jeho hodnotu, encrypted_matched_data vlastnost objektu Metadata pole má v Logpush strukturu podobnou této:

{
	// for fields with only one match (such as URI or user agent fields):
	"<match_location>": {
		"before": "<text_before_match>",
		"content": "<matched_text>",
		"after": "<text_after_match>"
	},
	// for fields with possible multiple matches (such as form, header, or body fields):
	"<match_location>": [
		{
			"before": "<text_before_match_1>",
			"content": "<matched_text_1>",
			"after": "<text_after_match_1>"
		},
		{
			"before": "<text_before_match_2>",
			"content": "<matched_text_2>",
			"after": "<text_after_match_2>"
		}
	]
}

before a after vlastnosti jsou nepovinné (před shodným textem nebo za ním nemusí být žádný obsah) a budou obsahovat nejvýše 15 bajtů obsahu, který se objevuje před shodou a za ní.

Níže jsou uvedeny příklady shod v payloadu:

Shoda URI
{
	"http.request.uri": {
		"before": "/admin",
		"content": "/.git/",
		"after": "config"
	}
}
Shoda hodnoty hlavičky
{
	"http.request.headers.values[3]": [
		{ "content": "phar://", "after": "example" }
	]
}
Shoda podle obsahu nezpracovaného těla
{
	"http.request.body.raw": {
		"before": "NY>",
		"content": "<!ENTITY xxe SYSTEM \"file:///dev/random\">] > ",
		"after": "<foo>&xxe;</foo>"
	}
}

Požádejte o pilot zdarma

Domluvit pilot