mirror of
				https://github.com/django/django.git
				synced 2025-10-31 01:25:32 +00:00 
			
		
		
		
	[3.2.x] Fixed CVE-2021-33571 -- Prevented leading zeros in IPv4 addresses.
validate_ipv4_address() was affected only on Python < 3.9.5, see [1]. URLValidator() uses a regular expressions and it was affected on all Python versions. [1] https://bugs.python.org/issue36384
This commit is contained in:
		
				
					committed by
					
						 Carlton Gibson
						Carlton Gibson
					
				
			
			
				
	
			
			
			
						parent
						
							dfaba12cda
						
					
				
				
					commit
					9f75e2e562
				
			| @@ -136,6 +136,16 @@ TEST_DATA = [ | ||||
|     (validate_ipv4_address, '1.1.1.1\n', ValidationError), | ||||
|     (validate_ipv4_address, '٧.2٥.3٣.243', ValidationError), | ||||
|  | ||||
|     # Leading zeros are forbidden to avoid ambiguity with the octal notation. | ||||
|     (validate_ipv4_address, '000.000.000.000', ValidationError), | ||||
|     (validate_ipv4_address, '016.016.016.016', ValidationError), | ||||
|     (validate_ipv4_address, '192.168.000.001', ValidationError), | ||||
|     (validate_ipv4_address, '01.2.3.4', ValidationError), | ||||
|     (validate_ipv4_address, '01.2.3.4', ValidationError), | ||||
|     (validate_ipv4_address, '1.02.3.4', ValidationError), | ||||
|     (validate_ipv4_address, '1.2.03.4', ValidationError), | ||||
|     (validate_ipv4_address, '1.2.3.04', ValidationError), | ||||
|  | ||||
|     # validate_ipv6_address uses django.utils.ipv6, which | ||||
|     # is tested in much greater detail in its own testcase | ||||
|     (validate_ipv6_address, 'fe80::1', None), | ||||
| @@ -161,6 +171,16 @@ TEST_DATA = [ | ||||
|     (validate_ipv46_address, '::zzz', ValidationError), | ||||
|     (validate_ipv46_address, '12345::', ValidationError), | ||||
|  | ||||
|     # Leading zeros are forbidden to avoid ambiguity with the octal notation. | ||||
|     (validate_ipv46_address, '000.000.000.000', ValidationError), | ||||
|     (validate_ipv46_address, '016.016.016.016', ValidationError), | ||||
|     (validate_ipv46_address, '192.168.000.001', ValidationError), | ||||
|     (validate_ipv46_address, '01.2.3.4', ValidationError), | ||||
|     (validate_ipv46_address, '01.2.3.4', ValidationError), | ||||
|     (validate_ipv46_address, '1.02.3.4', ValidationError), | ||||
|     (validate_ipv46_address, '1.2.03.4', ValidationError), | ||||
|     (validate_ipv46_address, '1.2.3.04', ValidationError), | ||||
|  | ||||
|     (validate_comma_separated_integer_list, '1', None), | ||||
|     (validate_comma_separated_integer_list, '12', None), | ||||
|     (validate_comma_separated_integer_list, '1,2', None), | ||||
|   | ||||
		Reference in New Issue
	
	Block a user