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

问题描述 投票:0回答:1

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

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

例如:

http://www.circl.lu/a.php?rm -Rf /etc
python bash url sanitize
1个回答
2
投票

我想urllib是一个解析网址的选项,以逃避有害的角色。至少它看起来像是一个很好的资源用于你的用例。参见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'
© www.soinside.com 2019 - 2024. All rights reserved.