@@ -20,7 +20,8 @@ const COOKIE_HEADER_RE = /\b(Cookie|Set-Cookie)\s*:\s*[^\r\n]+/giu;
2020const AWS_ACCESS_KEY_ID_RE = / \b (?: A K I A | A S I A ) [ A - Z 0 - 9 ] { 16 } \b / gu;
2121const JWT_RE = / \b e y J [ A - Z a - z 0 - 9 _ - ] { 10 , } \. [ A - Z a - z 0 - 9 _ - ] { 10 , } \. [ A - Z a - z 0 - 9 _ - ] { 10 , } \b / gu;
2222const URL_USERINFO_RE = / \b ( [ a - z ] [ a - z 0 - 9 + . - ] * : \/ \/ ) ( [ ^ / @ \s : ? # ] + ) (?: : ( [ ^ / @ \s ? # ] + ) ) ? @ / giu;
23- const URL_PARAM_RE = / ( [ ? & ] ) ( [ ^ = & \s ] + ) = ( [ ^ & # \s ] + ) / giu;
23+ const URL_SENSITIVE_PARAM_RE =
24+ / ( [ ? & ] ) ( a p i [ - _ ] ? k e y | a p i k e y | a c c e s s [ - _ ] ? t o k e n | a u t h [ - _ ] ? t o k e n | c l i e n t [ - _ ] ? s e c r e t | h o o k [ - _ ] ? t o k e n | r e f r e s h [ - _ ] ? t o k e n | t o k e n | k e y | s e c r e t | p a s s w o r d | p a s s | p a s s w d | a u t h | s i g n a t u r e ) = ( [ ^ & # \s ) " ' < > ] + ) (?: & [ ^ # \s ) " ' < > ] * ) ? / giu;
2425const EMAIL_RE = / \b [ A - Z 0 - 9 . _ % + - ] + @ [ A - Z 0 - 9 . - ] + \. [ A - Z ] { 2 , } \b / giu;
2526const MATRIX_USER_ID_RE = / @ [ A - Z a - z 0 - 9 . _ = - ] + : [ A - Z a - z 0 - 9 . - ] + / gu;
2627const MATRIX_ROOM_ID_RE = / ! [ A - Z a - z 0 - 9 . _ = - ] + : [ A - Z a - z 0 - 9 . - ] + / gu;
@@ -306,7 +307,7 @@ function redactUrlSecretsForSupport(value: string): string {
306307 . replace ( URL_USERINFO_RE , ( _match , scheme : string , _username : string , password ?: string ) =>
307308 password ? `${ scheme } <redacted>:<redacted>@` : `${ scheme } <redacted>@` ,
308309 )
309- . replace ( URL_PARAM_RE , ( match , prefix : string , key : string ) =>
310+ . replace ( URL_SENSITIVE_PARAM_RE , ( match , prefix : string , key : string ) =>
310311 isSensitiveUrlQueryParamName ( key ) ? `${ prefix } ${ key } =<redacted>` : match ,
311312 ) ;
312313}
0 commit comments