如何清理 Python 中的 url 字符串?
How to sanitize url string in Python?
我有一个 python 应用程序,它使用 URL 列表并生成 bash 脚本作为输出。
如何清理 URL 以便恶意用户无法注入将在我的基础架构上执行的 bash 命令。
例如:
http://www.circl.lu/a.php?rm -Rf /etc
我想 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'
我有一个 python 应用程序,它使用 URL 列表并生成 bash 脚本作为输出。
如何清理 URL 以便恶意用户无法注入将在我的基础架构上执行的 bash 命令。
例如:
http://www.circl.lu/a.php?rm -Rf /etc
我想 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'