Golang从内存中的二进制数据执行子进程

问题描述 投票:-1回答:1

我知道可以运行embed executables in Golang executables并运行它们,或使用Yaegi之类的项目从字符串运行Golang代码,但是可以运行存储为变量的二进制文件无需将其写入文件中,作为子进程?二进制文件已作为变量存储在内存中,因此可以以某种方式执行它吗?

如果我没记错的话,可执行文件存储器和数据存储器之间会有区别,那么这会阻止这样做吗?

我提出这个问题的原因是,我正在编写一个open-source RAT/payload dropper作为学习Golang的项目,并且希望使其尽可能模块化,包括无文件更新和二进制(也有无文件)有效载荷。] >

编辑:欢迎使用任何解决方案,但首选跨平台解决方案。

EDIT2:根据this SO的答案,这在C ++中是不可能的/非常困难。看来,这样做的主要原因是动态链接库。由于Golang是静态链接的,这会更容易吗?

我知道可以将可执行文件嵌入Golang可执行文件中并运行它们,或者使用Yaegi之类的项目从字符串中运行Golang代码,但是可以运行作为变量存储的二进制文件...

go memory exec executable
1个回答
0
投票
不,没有可移植的方法。
© www.soinside.com 2019 - 2024. All rights reserved.