Skip to content

Latest commit

 

History

History

编译选项

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

禁止使用低版本go sdk

  1. Go SDK在1.6版本才支持地址随机化(pie)
  2. Go SDK1.12.8以前(不含)和1.11.13以前(不含)的版本存在http2 dos漏洞(CVE-2019-9512,CVE-2019-9514)

检测

  • 使用gdb打开二进制文件,执行p 'runtime.buildVersion'查看go SDK版本
  • 执行strings [binary] |grep 'go1\.', 查看go SDK版本

使用PIE编译

go从1.6起支持pie,但不是默认开启的。原因可能是:

  1. 该选项不支持所有平台,所以不能默认开启
  2. 纯go语言不存在溢出问题,大部分情况无需默认开启

未来有可能作为默认开启的选项。

go build -buildmode='pie' main.go