要避免使用不安全的函数,如system(),可以采用以下解决方法之一:
import subprocess
# 使用subprocess模块的call()函数代替system()函数
subprocess.call(["command", "arg1", "arg2"])
import re
# 过滤和验证用户输入
user_input = input("请输入命令:")
if re.match(r'^[a-zA-Z0-9_]+$', user_input):
system(user_input)
else:
print("无效的命令")
import os
# 使用低权限用户执行命令
os.system("sudo -u limited_user command")
无论采用哪种方法,都应该始终考虑安全性,并在可能的情况下避免使用不安全的函数。