netcat 用于执行像 CTF 一样的远程 ELF 文件
netcat for execute remote ELF file like CTFs
我正在尝试做一个 pwn 挑战,你用 nc 连接到远程服务器,这会执行一个易受攻击的 ELF 文件(缓冲区溢出)。我遇到的问题是我只接收来自服务器端的输出和来自客户端的输入,代码如下:
数控-l | ./脚本
我也试过:
ncat -l --exec "./script"
在最后一种情况下,当我执行缓冲区溢出时,它没有给我任何响应。
而且,这两个代码的另一个问题是,例如当我的脚本打印 "Give me a word" 时,此打印在脚本执行完成时显示。我输入单词然后脚本显示程序的所有打印件。
此致。
PD:我正在尝试做的一个例子 - hxxps://github.com/ctfs/write-ups-2015/tree/master/csaw-ctf-2015/pwn/precision-100
|
和丢失的端口很可能是问题所在。在 ncat -l --exec "./script"
中,您再次缺少侦听端口。
这是一个完整的有效示例:
脚本:
#!/bin/bash
echo "Give me a line..."
while read ln; do
echo "I got '$ln'"
echo "Give me a line..."
done
启动侦听器
nc -l 9999 --exec ./zzz.sh
连接到脚本:
nc 127.0.0.1 9999
你会看到
Give me a line...
类型
Hello script...
你会看到另外两行
I got 'Hello script...'
Give me a line...
检查您是否没有忘记 chmod a+x script.sh
。如果 nc
无法执行脚本,您将得到如下内容:
$ nc -l 9999 --exec ./zzz.shs
exec: No such file or directory
此外,选择 [1025 .. 65535] 范围内的端口,[1 .. 1024] 仅供 root 用户使用。
我正在尝试做一个 pwn 挑战,你用 nc 连接到远程服务器,这会执行一个易受攻击的 ELF 文件(缓冲区溢出)。我遇到的问题是我只接收来自服务器端的输出和来自客户端的输入,代码如下: 数控-l | ./脚本
我也试过: ncat -l --exec "./script" 在最后一种情况下,当我执行缓冲区溢出时,它没有给我任何响应。
而且,这两个代码的另一个问题是,例如当我的脚本打印 "Give me a word" 时,此打印在脚本执行完成时显示。我输入单词然后脚本显示程序的所有打印件。
此致。
PD:我正在尝试做的一个例子 - hxxps://github.com/ctfs/write-ups-2015/tree/master/csaw-ctf-2015/pwn/precision-100
|
和丢失的端口很可能是问题所在。在 ncat -l --exec "./script"
中,您再次缺少侦听端口。
这是一个完整的有效示例:
脚本:
#!/bin/bash
echo "Give me a line..."
while read ln; do
echo "I got '$ln'"
echo "Give me a line..."
done
启动侦听器
nc -l 9999 --exec ./zzz.sh
连接到脚本:
nc 127.0.0.1 9999
你会看到
Give me a line...
类型
Hello script...
你会看到另外两行
I got 'Hello script...'
Give me a line...
检查您是否没有忘记 chmod a+x script.sh
。如果 nc
无法执行脚本,您将得到如下内容:
$ nc -l 9999 --exec ./zzz.shs
exec: No such file or directory
此外,选择 [1025 .. 65535] 范围内的端口,[1 .. 1024] 仅供 root 用户使用。