using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"\""tag\"":\""(?<tag>[^\""]*)";
string input = @"{""type"":""akamai_siem"",""format"":""json"",""version"":""1.0"",""attackData"":{""rules"":[{""data"":""Majestic12"",""action"":""monitor"",""selector"":"",""tag"":""AKAMAI/BOT/AKAMAI_CATEGORIZED"",""id"":""3991006"",""message"":""Web Search Engine Bots"",""version"":""1""},{""data"":""WEBSCRP=5"",""action"":""alert"",""selector"":"",""tag"":""REPUTATION"",""id"":""REP_2817425"",""message"":""Web Scrapers (Low Threat)"",""version"":""}],""clientReputation"":""ID=2a01:4f9:1a:aba3::;WEBSCRP=5"",""configId"":""79391"",
{""type"":""akamai_siem"",""format"":""json"",""version"":""1.0"",""attackData"":{""rules"":[{""data"":"",""action"":""monitor"",""selector"":""&REQUEST_HEADERS:Accept-Encoding"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900003"",""message"":""Missing Accept-Encoding Header"",""version"":""1""},{""data"":""Request from Cloud IaaS, ASNUM 24940""
{""type"":""akamai_siem"",""format"":""json"",""version"":""1.0"",""attackData"":{""rules"":[{""data"":"" /bin/cat"",""action"":""alert"",""selector"":""REQUEST_HEADERS:User-Agent"",""tag"":""ASE/WEB_ATTACK/CMDI"",""id"":""3000005"",""message"":""CMD Injection Attack Detected"",""version"":""1""},{""data"":""() { :; }; ech"",""action"":""alert"",""
{""type"":""akamai_siem"",""format"":""json"",""version"":""1.0"",""attackData"":{""rules"":[{""data"":""swiftype.com"",""action"":""monitor"",""selector"":"",""tag"":""AKAMAI/BOT/AKAMAI_CATEGORIZED"",""id"":""3991017"",""message"":""Enterprise Data Aggregator Bots"",""version"":""1""},{""data"":""3 message units per second"",""action"":""alert"",""selector"":"",""tag"":""IPBLOCK/ADAPTIVE/BURST"",""id"":""IPBLOCK-BURST4-174009"",""message"":""IP 169.46.90.162 recently having excessive BURST qualification(4) rate on category bucket(2,Page View Requests))"",""version"":""}
{""type"":""akamai_siem"",""format"":""json"",""version"":""1.0"",""attackData"":{""rules"":[{""data"":"",""action"":""monitor"",""selector"":"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900005"",""message"":""Missing Referer Header"",""version"":""1""},{""data"":"",""action"":""monitor"",""selector"":""REQUEST_HEADERS:User-Agent"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900020"",""message"":""Chrome Signature Anomaly"",""version"":""1""},{""data"":""%(HEADER_ORDER{RULEID})"",""action"":""alert"",""selector"":"",""tag"":""CUSTOM_AKA/Visibility Rule"",""id"":""60108508"",""message"":""6cb759ebed153546"",""version"":""}],""configId"":""79391"",""policyId"":""1765_152119"",
{""type"":""akamai_siem"",""format"":""json"",""version"":""1.0"",""attackData"":{""rules"":[{""data"":"",""action"":""monitor"",""selector"":""&REQUEST_HEADERS:Accept-Encoding"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900003"",""message"":""Missing Accept-Encoding Header"",""version"":""1""},{""data"":"",""action"":""monitor"",""selector"":""&REQUEST_HEADERS:Cookie"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900006"",""message"":""Missing Cookie Header"",""version"":""1""},{""data"":""Request from Cloud IaaS, ASNUM 24940"",""action"":""monitor"",""selector"":"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900013"",""message"":""Originates from Cloud IaaS Provider Network"",""version"":""1""},{""data"":"",""action"":""monitor"",""selector"":""REQUEST_HEADERS:User-Agent"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900020"",""message"":""Chrome Signature Anomaly"",""version"":""1""},{""data"":"",""action"":""monitor"",""selector"":""REQUEST_HEADERS:User-Agent"",""tag"":""AKAMAI/BOT/REQUEST_ANOMALY"",""id"":""3900021"",""message"":""Chrome Version Anomaly"",""version"":""1""},{""data"":""Bot_C19B02BF5C1DCDC636B02EC053B5FF0C"",""action"":""monitor"",""selector"":"",""tag"":""AKAMAI/BOT/UNKNOWN_BOT"",""id"":""BOT-ANOMALY-HEADER"",""message"":""Unknown Bots (Request Anomaly)"",""version"":""1""},{""data"":"",""action"":""alert"",""selector"":"",""tag"":""AKAMAI/WAF/PENALTYBOX"",""id"":""IPBLOCK-PENALTY-BOX"",""message"":""Client IP+UA 65.108.195.47 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrom recently violated a web application firewall rule"",""version"":""},{""data"":""WEBATCK=5"",""action"":""alert"",""selector"":"",""tag"":""REPUTATION"",""id"":""REP_2817419"",""message"":""Web Attackers (Low Threat)"",""version"":""},{""data"":""SCANTL=5"",""action"":""alert"",""selector"":"",""tag"":""REPUTATION"",""id"":""REP_2817423"",";
RegexOptions options = RegexOptions.Multiline;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx