Level①
直接运行challenge目录下的enbeyoio_level1(目标文件)
Level②
运行目标文件后需要输入密码,直接输入密码就行
Level③
运行目标文件后,报告提示需要使args[1]的值等于一个提示上给的值:
使用embryoio_level3 (value)
(传参)
即可
Level④
设置环境变量
export xxx = xxx
Level⑤
重定向输入(>)重定向输出(<)
这道题考的是重定向输入
需要在tmp目录下,重定向输入一个题上给的文件名,然后执行
./embryoio_level5 < /tmp/名字
结果发现提示说里面需要在那个文件里输入一个密码,vim输入,:wq保存退出
继续执行命令即可
Level⑥
考的是重定向输出
运行目标文件后,提示上说:你没有重定向我的标准输出,说明直接输出即可
那么直接./embryoio_level6 < /tmp/名字
Level⑦
考的零环境变量的设置
需要用到env 命令
env -i <命令>是设置一个空的环境变量
那么直接
env -i ./embryoio_level7
Level⑧
在tmp目录下,用touch 文件名.sh
命令创建一个sh文件,里面输入/challenge/embryoio_level8
,然后在tmp目录下bash 文件名.sh
即可
Level⑨
同⑧,不过是要bash之后输入一个密码
Level⑩
这题需要传参密码
只需在sh文件里的embryoio_level10后面加一个所需要的密码就行
Level①①
先在文件里用export设置一个环境变量,再执行/chall…/embry…11指令
Level①②
需要在tmp目录下把密码重定向输入到这个文件里,然后重定向输出到embryoio_level12里(都是再那个文件里进行的)
Leve①③
把embryoio_level13重定向输出到要在tmp创建的文件里
然后cat(查看)这个文件
Level①④
Level①⑤
import subprocess;subprocess.run(["./embryoio_level15"])
直接出
Level①⑥
import subprocess;subprocess.run(["./embryoio_level16"])
然后输入密码
Level①⑦
传参密码
import subprocess;subprocess.run(["./embryoio_level17","qcfrmuvedf"])
在后面加入提示的密码
Level①⑧
考的改变环境变量
首先要导入pwn轮子
from pwn import *
file = '...'
io = process(file,env={'name':'value'})
io.interactive
python写法:
import subprocess;subprocess.run('./embryoio_level18',env={'ephirb':'szxayukjbs'})
Level①⑨
import subprocess as ass
import os
file = open("/tmp/文件名",'w')
file.write("密码")
file1 = '/challenge/embryoio_level19'
file = open("/tmp/文件名",'r')
file2 = os.open("/tmp/文件名",os.O_RDONLY)
ass.run([file1],stdin=file2)
Level②〇
import subprocess as ass
file = open("/tmp/ufrewu",'r')
file1 = '/challenge/embryoio_level20'
ass.run([file1],stdout=file);print(file.read())
Level②①
设置空环境
ass.run([file1],env={})
Level②②
。。。。都一样
Level②⑧