我有一个预定义的路径,它与用户输入连接以删除特定目录。当前代码看起来像这样,并且给定这样的用户输入会造成非常严重的伤害:
import os
import shutil
userinput = '../../'
path = os.path.join('/my/self/defined/path', userinput)
shutil.rmtree(path)
这显然将允许用户删除任何文件或目录。什么是“监禁”用户的好方法,所以只能输入下面的任何路径/my/self/defined/path
,处理../
或启动字符串/
以及我可能没有想到的所有其他恶意输入?