如何在Python中清理URL字符串?

时间:2019-04-10 13:18:12

标签: python bash url sanitize

我有一个Python应用程序,可以处理URL列表并生成bash脚本作为输出。

如何清理URL,以便恶意用户无法注入将在我的基础结构上执行的bash命令。

例如:

let student = JSON.parse (params['student']);

1 个答案:

答案 0 :(得分:2)

我猜想urllib是解析URL的选项,以逃避有害字符。至少对于您的用例而言,它看起来像是很好的资源。请参阅url-quoting的文档。

from urllib.parse import quote

quote('touch foo', safe='/')
quote('rm -Rf /etc', safe='/')
quote('http://www.circl.lu/a.php?rm -Rf /etc', safe='/:?&')

#'touch%20foo'
#'rm%20-Rf%20/etc'
#'http://www.circl.lu/a.php?rm%20-Rf%20/etc'