diff --git a/assemblyline_service_utilities/common/balbuzard/patterns.py b/assemblyline_service_utilities/common/balbuzard/patterns.py index cd30646..8a436cf 100644 --- a/assemblyline_service_utilities/common/balbuzard/patterns.py +++ b/assemblyline_service_utilities/common/balbuzard/patterns.py @@ -226,7 +226,7 @@ class PatternMatch(object): rb"(?:[\w!$-.:;=~@]{,2000}@)?" # userinfo rb"(?:[A-Z0-9.-]{4,253}|\[[0-9A-F:]{3,39}\])" # hostname rb"(?::(?:6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5]?[0-9]{0,4}))?" # port - rb"(?:[/?#](?:[\w!#$-/:;=@?~]{,2000}[\w!#$%&(*+\-/:;=@?~])?)?" # path, query and fragment + rb"(?:[/?#](?:[\w!#$-/:;=@?~]{,2000}[\w!#$%&(*+\-/:=@?~])?)?" # path, query and fragment ) PAT_ANYHTTP = ( rb"(?i)http://" diff --git a/test/balbuzard/test_patterns.py b/test/balbuzard/test_patterns.py index 7c0d609..9a8cedd 100644 --- a/test/balbuzard/test_patterns.py +++ b/test/balbuzard/test_patterns.py @@ -1,7 +1,6 @@ import re import pytest - from assemblyline_service_utilities.common.balbuzard.patterns import PatternMatch @@ -70,6 +69,8 @@ def test_PAT_URL_basic_auth(url): (b"barefunction(https://example.com)", 1), (b'in a string content "https://example.com"works.', 7), (b"whitespaceless('https://example.com'){script;}", 11), + (b"'https://example.com/';", 2), + (b"('https://example.com'); ", 4), ], ) def test_PAT_URL_in_context(url, suffix_len):