A compilação de um pacote malicioso usando cgo pode causar a execução de código arbitrário no momento da vinculação. Isso ocorre ao passar arquivos de script do vinculador para o vinculador do host via `#cgo LDFLAGS`. Especificamente, certas flags `-Wl,` divididas que consomem um argumento seguinte, como `-Wl,-rpath`, `-Wl,--just-symbols` e `-Wl,-undefined`, aceitavam anteriormente um segundo argumento sem o prefixo `-Wl,`, o qual o driver do compilador passava diretamente ao vinculador como um arquivo de entrada posicional. Além disso, ao usar GNU ld.bfd, flags como `-framework`, `-Wl,-framework`, `-Wl,-undefined`, `-Wl,--just-symbols`, `-Wl,-R`, `-Wl,-subsystem` e `-Wl,-sectcreate` (em plataformas não-Darwin) poderiam fazer com que o ld.bfd interpretasse seus argumentos como scripts de vinculador se eles nomeassem um arquivo regular no disco.