信用できないスクリプトをプラグイン的に実行したい場合にどうすると良いのか
使ってほしくない関数を消してしまう
例えば環境変数を 簡単 に参照するのを防止しようとos.environを安直に消してしまう。
# untrusted_script.py
import os
def execute():
print(os.environ.get('HOME'))
# main.py
import os
from importlib import import_module
def run(name):
m = import_module(name)
m.execute()
if __name__ == '__main__':
del os.environ
run("untrusted_script")