From 8855162b088d7a9d45949df6d5d4f39a9acdf5aa Mon Sep 17 00:00:00 2001 From: Phil Cole Date: Sat, 26 Feb 2022 21:11:06 +0000 Subject: [PATCH] Add timeout to Regex to prevent DOS I learnt this from here: https://youtu.be/RSFiiKUvzLI?t=470, and I think it might be useful. 250ms might be too short, or might be useful as an optional input parameter --- RegexReplace/Script.csx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RegexReplace/Script.csx b/RegexReplace/Script.csx index 720c5e9..e180d32 100644 --- a/RegexReplace/Script.csx +++ b/RegexReplace/Script.csx @@ -28,7 +28,7 @@ public class Script : ScriptBase var pattern = (string)requestContentAsJson["pattern"]; var replacement = (string)requestContentAsJson["replacement"]; - var regexResult = Regex.Replace(input, pattern, replacement); + var regexResult = Regex.Replace(input, pattern, replacement, TimeSpan.FromMilliseconds(250)); // Manipulate the response data as applicable before returning it JObject output = new JObject