Flex Gateway新着情報
Governance新着情報
Monitoring API Manager機密情報検出 (SID) を使用すると、機密情報の漏洩の可能性がある場所を特定できます。
WAF ポリシーを Runtime Fabric に適用し、[WAF policy (WAF ポリシー)] 設定で [Detect sensitive information (機密情報を検出)] オプションを選択した場合、要求と応答に機密情報の漏洩がないかどうかが検査されます。rtfWafSecurityPolicySummary メッセージは、1 分の収集期間を使用して、違反した SID ルールのリストと、ルールに違反した要求および応答の件数をログに報告します。
rtfWafSecurityPolicySummary ログには WAF カテゴリが含まれ、SID 関連カテゴリも示されます。SID 関連カテゴリ内のいずれかのルールがトリガーされた場合、ルール ID と、違反の検出件数が表示されます。この件数は、収集期間中に特定のルールに違反した要求と応答の件数です。
次にログの例を示します。これは、収集期間中に requestSidPiiCore カテゴリをトリガーした SID ルール ID 600100 (TAXID) がこのペイロード内で 1 回検出されたことを示しています。
{
	"timeStamp": "2019-04-15T16:13:00.045Z",
	"collectionIntervalInMinutes": "1",
	"node": "node-host",
	"wafSummary": {
		"requestScannerDetection": [
		],
		"requestProtocolEnforcement": [
		],
		"requestProtocolAttack": [
		],
		"requestApplicationAttackLfi": [
		],
		"requestApplicationAttackRfi": [
		],
		"requestApplicationAttackRce": [
		],
		"requestApplicationAttackPhp": [
		],
		"requestApplicationAttackXss": [
		],
		"requestApplicationAttackSqli": [
		],
		"requestApplicationAttackSessionFixation": [
		],
		"requestSidPiiCore": [{
			"ruleId": "600100",
			"count": 1
		}],
		"requestSidPiiEnhanced": [
		],
		"requestSidPci": [
		],
		"requestSidPhi": [
		],
		"responseDataLeakages": [
		],
		"responseDataLeakagesSql": [
		],
		"responseDataLeakagesJava": [
		],
		"responseDataLeakagesPhp": [
		],
		"responseDataLeakagesIis": [
		],
		"responseSidPiiCore": [
		],
		"responseSidPiiEnhanced": [
		],
		"responseSidPci": [
		],
		"responseSidPhi": [
		]
	}
}
WAF ポリシーを Runtime Fabric に適用し、[Detect sensitive information (機密情報を検出)] オプションを選択した場合、rtfSidSummary ログが生成されます。この概要ログには、1 分の収集期間中に 1 つ以上のトリガーが発生したルールインスタンス (ルール ID、API、メソッド、方向、件数) のリストが含まれます。
件数はメッセージ (要求または応答) のみに適用され、収集期間中にどれだけの数のメッセージがルールインスタンスをトリガーしたかを示します。
たとえば、出生証明書申請の要求が過去 1 分間に 1 回のみ実行され、要求に次の内容が含まれていたとします。
DOB of Mother SSN of Mother DOB of Father SSN of Father DOB of Father DOB of Baby CCN to pay for the application
概要メッセージには、違反したルールごとに 1 つずつ、3 つの項目 (DOB、SSN、CCN) が含まれます。つまり、1 つのメッセージ内に同じルールの違反が複数あっても、1 つのメッセージ内の各ルール違反は 1 回のみ数えられます。
これは、ペイロード内で機密情報 (SSN) が検出された要求の rtfSidSummary ログの例です。
{
	"timeStamp": "2019-05-03T20:28:00.493Z",
	"collectionIntervalInMinutes": "1",
	"node": "node-host",
	"sidSummary": [{
		"api": "myapi",
		"envId": "a2f87a26-6ee9-4843-a145-bf258e630aa8",
		"method": "POST",
		"rule": "Social Security Number key value pair",
		"direction": "Request",
		"count": 1
	}]
}
SID ルールでは、次のコンテンツタイプを照合して、機密データのタグと値を確認します。
要求種別:
text/plain
application/json
応答種別:
text/plain
application/json
機密情報検出ルールは、以下を含むルールカテゴリに属します。
PII: 個人情報 (生年月日、社会保障番号、パスポート番号など)。
PCI: 支払カード情報 (Visa または Mastercard 番号など)。
PHI: 保護健康情報。
SID ルールとルール ID は Anypoint Security ポリシー RAML 内で参照できます。
公開の MuleSoft 開発者ポータルに移動し、「Anypoint Security Policies API」 (Anypoint Security ポリシー API) を検索します。
RAML をダウンロードし、ZIP ファイルを展開します。
<Download_location>/anypoint-security-policies-api-<version>-raml/dataTypes/policies/WafRules/Rulesets.json に移動します。
「MULESOFT_SID」を検索し、名前 (msg) と id を含め、SID ルールとその詳細を確認します。
RAML ファイルのコンテンツの例を次に示します。
{
	"id": 600780,
	"ver": "",
	"rev": "1",
	"phase": "response",
	"severity": "WARNING",
	"accuracy": "5",
	"maturity": "1",
	"taglist": ["MULESOFT_SID"],
	"msg": "VISA CARD",
	"variables": "RESPONSE_BODY",
	"operator": "UkVTUE9OU0VfQk9EWSAoPzwhWy5cdy1dKTRbMC05XXszfShbIC1dPylbMC05XXs0fVwxWzAtOV17NH1cMVswLTldezR9KD8hWy5cdy1dKQo=",
	"paranoia": 1,
	"chain": "no"
}