我需要使用Python防止目录遍历攻击
。以下是我的代码:
if request.GET.get('param') is not None and request.GET.get('param') != '':
param = request.GET.get('param')
startdir = os.path.abspath(os.curdir)
requested_path = os.path.relpath(param, startdir)
requested_path = os.path.abspath(requested_path)
print(requested_path)
tfile = open(requested_path, 'rb')
return HttpResponse(content=tfile, content_type="text/plain")
这里需要用户运行类似于 http://127.0.0.1:8000/createfile/?param=../../../../../../../../etc/passwd
这样的内容,同时需要防止目录遍历攻击。