Eine Sicherheitslücke in dem Python Urllib-Modul hat zur Folge, dass ein Angreifer Sicherheitsrestriktionen umgehen kann.
Das Problem liegt in der urlopen()-Funktion, welche via local_file auch das Lesen lokaler Dateien ermöglicht. Dies sollte eigentlich aus Sicherheitsgründen verhindert werden. Allerdings ist ein solcher Zugriff unter Python 2.x bis 2.7.16 möglich. So sind Aufrufe der Art
urllib.urlopen(‘local_file:///etc/passwd’)
realisierbar. Unter Python 3.x funktioniert dies allerdings nicht:
>> import urllib.request
>>> urllib.request.urlopen(‘local_file:///et/passwd’).read()
Traceback (most recent call last):
File “<stdin>”, line 1, in <module>
File “/usr/lib64/python3.6/urllib/request.py”, line 223, in urlopen …
File “/usr/lib64/python3.6/urllib/request.py”, line 549, in
urllib.error.URLError: <urlopen error unknown url type: local_file>
Ebenso ist der Dateizugriff auch nicht via urllib2 möglich.
