Benign go Download

github.com/grpc-ecosystem/grpc-health-probe v0.4.54-0.20260710060617-fe9a569ed325

Go outbound socket connectionGitHub Actions workflow definition path
SHA-2566b45bcf4a7e36fac6445846511ec8aa6b8ce8b47b27be5dfd6408cc68d48a484

Evidence

imports crypto/tls lines 11–48
11:48… , either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14package main
15
16import (
17 "context"
18 "crypto/tls"
19 "crypto/x509"
20 "flag"
21 "fmt"
22 "log"
23 "os"
24 "os/signal"
25 "runtime/debug"
26 "strings"
27 "syscall"
28 "time"
29 "unicode"
30
31 "github.com/spiffe/go-spiffe/v2/spiffetls/tlsconfig"
32 "github.com/spiffe/go-spiffe/v2/workloadapi"
33 "google.golang.org/grpc"
34 "google.golang.org/grpc/codes"
35 "google.golang.org/grpc/credentials"
36 "google.golang.org/grpc/credentials/alts"
37 "google.golang.org/grpc/credentials/insecure"
38 healthpb "google.golang.org/grpc/health/grpc_health_v1"
39 "google.golang.org/grpc/metadata"
40 "google.golang.org/grpc/status"
41)
42
⋯6 lines
Go loads X509 keypair lines 188–194
188:18… ig
189
190 if clientCert != "" && clientKey != "" {
191 keyPair, err := tls.LoadX509KeyPair(clientCert, clientKey)
192 if err != nil {
193 return nil, fmt.Errorf("failed to load tls client cert/key pair. error=%v", err)
194 …
Go goroutine launch call lines 251–260
251:17… os.Signal, 1)
252 signal.Notify(c, os.Interrupt, syscall.SIGTERM)
253 go func() {
254 sig := <-c
255 log.Printf("cancellation received (signal: %v)", sig)
⋯5 lines
Go constructs a context with a timeout lines 278–283
278:37… portCredentials(creds))
279 } else if flSPIFFE {
280 spiffeCtx, _ := context.WithTimeout(ctx, flRPCTimeout)
281 source, err := workloadapi.NewX509Source(spiffeCtx)
282 if err != nil {
283 log.Printf("failed to initialize …
Go gRPC insecure transport credentials lines 295–303
295:59… )
296 } else {
297 opts = append(opts, grpc.WithTransportCredentials(insecure.NewCredentials()))
298 }
299
⋯4 lines

No evidence locations were recorded for this file. Raw result

Keyboard shortcuts on this page: j for the next sample, k for the previous one, x to go back to the feed, d to download the original bytes, r to re-queue the sample for analysis.