如何使用netcat或socat执行CTF等C语言编译的elf类型文件

问题描述 投票:0回答:0

如标题所说。
我有一个 C 程序,我使用 gcc 将它编译成一个 ELF。
现在我想运行这个 ELF 并使用 netcat 来代理它。
让客户端可以 netcat 服务然后发送消息并获得响应

我运行下面的命令

nc -lp 8763 -e ./test

然后 shell 告诉我

natcat
没有 -e 选项

❯ nc -e
nc: invalid option -- 'e'
usage: nc [-46CDdFhklNnrStUuvZz] [-I length] [-i interval] [-M ttl]
          [-m minttl] [-O length] [-P proxy_username] [-p source_port]
          [-q seconds] [-s sourceaddr] [-T keyword] [-V rtable] [-W recvlimit]
          [-w timeout] [-X proxy_protocol] [-x proxy_address[:port]]
          [destination] [port]

所以我尝试

socat
.

socat tcp4-l:8763 exec:./test

服务运行,但是当我从客户端连接服务时。
服务器无法获取客户端发送的消息。

我尝试成功的唯一方法是运行下面的命令。

socat - tcp4-l:8763 | ./test

但是它只能接收来自客户端的消息,不能响应和消息给客户端。

有人知道为什么吗,或者我怎样才能制作像 CTF 这样的 netcat 服务器。
顺便说一句,我的 C 程序并不重要,它只是一个测试基本 stdio 的小程序。

linux netcat ctf
© www.soinside.com 2019 - 2024. All rights reserved.