go-strip 更新了。
什么是go-strip
Go编译会自带一堆信息,通过这些信息基本可以还原Go的源码架构,甚至可以用作溯源。本工具可以直接从go编译好的二进制中还原代码结构或者消除这些信息。
-
支持Go编译的 Windows、Mac、Linux程序
-
支持AMD64,386架构
-
支持go全版本 1.13~1.18
使用场景
go编译时会打包很多runtime的信息到编译后的程序中,这些信息包括
-
Function
-
Filename
-
Go Struct
-
Type
-
Go Compiler Version
-
Go BuildID
-
Go Root Path
-
Go ModInfo
-
Go Complie Paramter (go 1.18新加)
这些信息的暴露会很容易还原go源码结构,如果在本地编译还会暴露路径。
go-strip可以一键还原go源码的结构,能展示go编译器,go root,go mod依赖信息,go编译参数,go源码结构(每个package下的文件名,函数,函数行号和函数行总量)
当然也能一键混淆,在go编译完的二进制中使用go-strip再次进行处理,可以有效混淆这些信息。
在IDA7.6下查看混淆后的二进制
更新内容
-
一键混淆支持到 go1.18,工具支持go全版本
-
一键解析go编译后程序的源码结构,包括go build、go mod等信息
下载
公众号回复 go-strip 即可获得下载地址。
安全从业人员可能不会信任任何程序,唯一能让人稍微信任的就是开源代码。
go-strip v3的源码公开在知识星球 https://t.zsxq.com/04YVzFaiq 可以让人帮忙下载。
原文始发于微信公众号(Hacking就是好玩):go-strip 更新了 v3.0
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论