-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Closed
Description
Describe the bug
IPv6 regex accepts invalid formats.
Examples
- BC:e4d5:c:e7b9::%40i0nccymtl9cwfKo.5vaeXLSGRMe:EDh2qs5wkhnPws5xQKqafjfAMm6wGFCJ.bVFsZfb
- 1dC:0DF8:62D:3AC::%KTatXocjaFVioS0RTNQl4mA.V151o0RSy.JIu-D-D8.d3171ZWsSJ7PK4YjkJCRN0F
Recommended Fix
The issue can be fixed by changing lines 44 & 45 in isIP.js file to the following:
(?::((?::${IPv6SegmentFormat}){0,5}:${IPv4AddressFormat}|(?::${IPv6SegmentFormat}){1,7}|:)) +
')([0-9a-fA-F]{1})?$');
Additional context
Validator.js version: 13.7.0
Node.js version: v16.14.2
OS platform: Linux