Go 在任何平台上验证给定文件路径是否位于基本路径中的最安全和最安全的方法是什么?
路径最初以字符串形式提供并使用“/”作为分隔符,但它们是用户提供的,我需要假设大量恶意输入。我应该执行哪种路径规范化以确保评估诸如“..”之类的序列,以便我可以安全地检查基本路径?在各种文件系统和平台上需要注意哪些例外情况?在这方面,哪些 Go 库应该是安全的?
结果将被提供给外部函数,例如os.Create,sqlite3.Open并且任何未能识别出基本路径被留下将是安全违规。
os.Create
sqlite3.Open
互换的青春
相关分类