为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
慕田峪4524236 2022-06-01 16:15:14
我知道可以将可执行文件嵌入到 Golang 可执行文件中并运行它们,或者使用Yaegi等项目从字符串运行 Golang 代码,但是作为一个孩子,是否可以运行存储为变量的二进制文件而不将其写入文件过程?二进制文件已经作为变量存在于内存中,所以可以以某种方式执行它吗?如果我没记错的话,可执行内存和数据内存之间是有区别的,那会阻止这样做吗?我的问题的原因是我正在编写一个 RAT/payload dropper 作为学习 Go(lang) 的项目,并希望尽可能模块化,包括无文件更新和二进制(也无文件)有效负载.编辑:欢迎任何解决方案,但首选跨平台解决方案。EDIT2:根据这个SO 答案,这在 C++ 中是不可能的/非常困难的。看起来,这样做的主要原因是动态链接库。由于 Golang 是静态链接的,这会更容易吗?
查看完整描述

2 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

不,没有便携的方法可以做到这一点。



查看完整回答
反对 回复 2022-06-01
?
慕斯王

TA贡献1864条经验 获得超2个赞

是的,尝试这种方式来做到这一点。 https://github.com/amenzhinsky/go-memexec


查看完整回答
反对 回复 2022-06-01
  • 2 回答
  • 0 关注
  • 126 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信