@ -1,4 +1,4 @@
using System ;
using System ;
using System.Linq ;
using System.Net ;
using System.Text.RegularExpressions ;
@ -11,7 +11,7 @@ namespace NzbDrone.Common.Instrumentation
private static readonly Regex [ ] CleansingRules = new [ ]
{
// Url
new Regex ( @"(?<=\?|&|: )((?:api|auth|pass)?key|(?:access[-_]?)?token|auth|user|uid|api|[a-z_]*apikey|account|passwd)=(?<secret>[^&= ]+?)(?= |& |$)", RegexOptions . Compiled | RegexOptions . IgnoreCase ) ,
new Regex ( @"(?<=\?|&|: )((?:api|auth|pass)?key|(?:access[-_]?)?token|auth|user|uid|api|[a-z_]*apikey|account|passwd)=(?<secret>[^&= ""]+?)(?=[ ""&=] |$)", RegexOptions . Compiled | RegexOptions . IgnoreCase ) ,
new Regex ( @"(?<=\?|&)[^=]*?(username|password)=(?<secret>[^&=]+?)(?= |&|$)" , RegexOptions . Compiled | RegexOptions . IgnoreCase ) ,
new Regex ( @"torrentleech\.org/(?!rss)(?<secret>[0-9a-z]+)" , RegexOptions . Compiled | RegexOptions . IgnoreCase ) ,
new Regex ( @"torrentleech\.org/rss/download/[0-9]+/(?<secret>[0-9a-z]+)" , RegexOptions . Compiled | RegexOptions . IgnoreCase ) ,
@ -46,7 +46,11 @@ namespace NzbDrone.Common.Instrumentation
new Regex ( @"(?<=\?|&)(authkey|torrent_pass)=(?<secret>[^&=]+?)(?=""|&|$)" , RegexOptions . Compiled | RegexOptions . IgnoreCase ) ,
// Good Reads
new Regex ( @"(?<=""(token|tokensecret)"":\s)""(?<secret>[^""]+?)""" , RegexOptions . Compiled | RegexOptions . IgnoreCase )
new Regex ( @"(?<=""(token|tokensecret)"":\s)""(?<secret>[^""]+?)""" , RegexOptions . Compiled | RegexOptions . IgnoreCase ) ,
// Webhooks
// Notifiarr
new Regex ( @"api/v[0-9]/notification/readarr/(?<secret>[\w-]+)" , RegexOptions . Compiled | RegexOptions . IgnoreCase )
} ;
private static readonly Regex CleanseRemoteIPRegex = new Regex ( @"(?:Auth-\w+(?<!Failure|Unauthorized) ip|from) (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})" , RegexOptions . Compiled ) ;