S3 Tables: validate ARN namespace to prevent path traversal

- Enforce validation on decoded namespace in parseTableFromARN.
- Ensures path components are safe after URL unescaping.
This commit is contained in:
Chris Lu
2026-01-28 12:09:09 -08:00
parent f13e250fc3
commit ae19621230

View File

@@ -43,6 +43,11 @@ func parseTableFromARN(arn string) (bucketName, namespace, tableName string, err
return "", "", "", fmt.Errorf("invalid namespace encoding in ARN: %v", err)
}
_, err = validateNamespace([]string{namespaceUnescaped})
if err != nil {
return "", "", "", fmt.Errorf("invalid namespace in ARN: %v", err)
}
return matches[1], namespaceUnescaped, matches[3], nil
}