1
私はファイルを取得してユーザに提供するビューを持っています。ビューには、以下の通りである。セキュリティ上の問題Django URL Conf Regexに。*(ドットスター)を配置するとき
@login_required
def file(request, mid_id, file_name):
user = request.user
authorized_mids = user.profile.authorized_mids(True)
mid = get_object_or_404(Mid, id=mid_id)
try:
authorized_mids[mid.id]
except KeyError:
raise Http404
mid_file_path = settings.PATH_TO_REPORTS + ('/%s/' % mid.pk) + file_name
to_return = open(mid_file_path, 'r')
mimetype = mimetypes.guess_type(mid_file_path)
response = HttpResponse(to_return, mimetype=mimetype)
response['Content-Disposition'] = 'attachment; filename=%s' % file_name;
return response
私のURLは次のようになります。
url(r'^mid/(?P<mid_id>\d+)/file/(?P<file_name>.*?)/$', 'mid.views.file', name='fetch_report')
持つ任意のセキュリティ上の懸念* URLではありますか。?悪意のあるユーザーがハッキングして、アクセスできないファイルにアクセスできるようになりますか?