go 编译的 windows 文件报毒,是哪儿出问题了?

329 天前
 whiler

编译一个 windows 可执行文件

docker run --rm -v $(pwd):/go/src -it golang /bin/bash
go version
mkdir -p hasvir
cd hasvir
echo "package main" > main.go
echo "func main(){}" >> main.go
go mod init
GOOS=windows go build
md5sum hasvir.exe

go 的版本是 1.20.5 。
把 hasvir.exe 提交到 https://www.virustotal.com 扫描,扫描出一大堆病毒。

我看不出操作和代码有什么问题,是从什么地方感染病毒的呢?是哪儿出问题了?

5178 次点击
所在节点    Go 编程语言
55 条回复
wu67
329 天前
不一定是你代码的问题. 只是最近不少恶意程序都是 go 写的, 干脆直接把 go 写的全报毒了...
knightcatsq
329 天前
可能是系统被污染了吧……
proxytoworld
329 天前
go 本来就是容易报毒
StarUDream
329 天前
whiler
329 天前
whiler
329 天前
@knightcatsq 为了规避系统感染病毒的风险,特意在 docker 容器里编译的,编译完原地算的 md5 ,确保文件没有被外部系统篡改
whiler
329 天前
@wu67 @proxytoworld @StarUDream 误伤面太大了,用 go 编译的应用都提心吊胆的,不知道是真有病毒还是误报
fzls
329 天前
没签名的软件被误报毒很正常的-。-
xmoer
329 天前
不是楼主的问题,它就是很容易报毒的,要么添加数字签名,要么一家家提交消除误报。
whiler
329 天前
@fzls 签名仅是一个报毒豁免,没毒的软件被大规模误报有毒,这不正常
whiler
329 天前
@xmoer 看来还得为了杀毒软件学习一下数字签名
xmoer
329 天前
@whiler 这很正常,因为现在有不少病毒或者恶意程序用 go 编写的,而主流的杀毒软件厂商基本都进入了 AI 自动分析时代,学习的样本多了就广泛误报,只能人工干预。
LeegoYih
329 天前
很正常,杀毒软件对比特征库,宁可错杀一千。
比如易语言编译出来的二进制几乎会被所有杀毒软件杀。
tramm
329 天前
代码中是不是用到了加密功能啥的?
whiler
329 天前
@tramm 我怀疑你看到标题就回复了,根本没看帖子的具体内容
whiler
329 天前
@xmoer 另一方面说明现在用 go 编写的 windows 还是太少了,正向反馈太少,误报得不到修正
oldshensheep
329 天前
就是垃圾 WindwosDenfence ,我最近写 Go 程序也报毒,而且没有任何敏感操作,连读文件的操作都没有,写着写着就报毒。
whiler
329 天前
@LeegoYih 易语言的处境太难了
whiler
329 天前
@oldshensheep 自己写的,自己清楚有没有病毒;若是打包发布出去供其他人用也报毒就难办,敏感的人直接就删除了
Kinnice
329 天前
加壳,upx

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/948678

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX