mondoohq / cnquery

open source, cloud-native, graph-based asset inventory

Home Page:https://cnquery.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

panic for os user resource

chris-rock opened this issue · comments

Describe the bug

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x1afece0]

goroutine 6773 [running]:
go.mondoo.com/cnquery/v10/providers/os/resources.(*mqlUser).MqlID(0x33b36f0?)
        /home/runner/_work/cnquery/cnquery/providers/os/resources/os.lr.go:7601
go.mondoo.com/cnquery/v10/llx.resource2result({0x1fa8ea0?, 0x0?}, {0xc000b984e0, 0x5})
        /home/runner/_work/cnquery/cnquery/llx/data_conversions.go:321 +0x53
go.mondoo.com/cnquery/v10/llx.raw2primitive({0x1fa8ea0, 0x0}, {0xc000b984e0, 0x5})
        /home/runner/_work/cnquery/cnquery/llx/data_conversions.go:352 +0x142
go.mondoo.com/cnquery/v10/llx.(*RawData).Result(0xc00066b628)
        /home/runner/_work/cnquery/cnquery/llx/data_conversions.go:377 +0x77
go.mondoo.com/cnquery/v10/providers-sdk/v1/plugin.(*TValue[...]).ToDataRes(0x2366768?, {0xc000b984e0?, 0x2052d04?})
        /home/runner/_work/cnquery/cnquery/providers-sdk/v1/plugin/runtime.go:214 +0x1e7
go.mondoo.com/cnquery/v10/providers/os/resources.init.func919({0x237f6e0?, 0xc000778d80?})
        /home/runner/_work/cnquery/cnquery/providers/os/resources/os.lr.go:1388 +0x6c
go.mondoo.com/cnquery/v10/providers/os/resources.GetData({0x237f6e0, 0xc000778d80}, {0xc000b984dc, 0x4}, 0xc000ffb6c0?)
        /home/runner/_work/cnquery/cnquery/providers/os/resources/os.lr.go:2073 +0x16b
go.mondoo.com/cnquery/v10/providers-sdk/v1/plugin.(*Service).GetData(0x0?, 0xc000ffb6c0)
        /home/runner/_work/cnquery/cnquery/providers-sdk/v1/plugin/service.go:139 +0x323
go.mondoo.com/cnquery/v10/providers-sdk/v1/plugin.(*GRPCServer).GetData(0x1f40520?, {0xc000ffb6c0?, 0xc000411998?}, 0x55fac5?)
        /home/runner/_work/cnquery/cnquery/providers-sdk/v1/plugin/grpc.go:129 +0x1e
go.mondoo.com/cnquery/v10/providers-sdk/v1/plugin._ProviderPlugin_GetData_Handler({0x1f1cec0, 0xc00013bb40}, {0x23969e8, 0xc0010b0990}, 0xc0010a8480, 0x0)
        /home/runner/_work/cnquery/cnquery/providers-sdk/v1/plugin/plugin_grpc.pb.go:299 +0x1a6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc000672600, {0x23969e8, 0xc0010b0900}, {0x23a0b80, 0xc000428820}, 0xc0010958c0, 0xc000596150, 0x3400830, 0x0)
        /home/runner/go/pkg/mod/google.golang.org/grpc@v1.62.0/server.go:1383 +0xdd1
google.golang.org/grpc.(*Server).handleStream(0xc000672600, {0x23a0b80, 0xc000428820}, 0xc0010958c0)
        /home/runner/go/pkg/mod/google.golang.org/grpc@v1.62.0/server.go:1794 +0xe87

To Reproduce

running cnspec scan on photon 4

Expected behavior

scan should just run through

First attempt works:

Scanned 1 asset

VMware Photon OS/Linux
    C photon-minimal

It's Photon 4 as a Vagrantbox.

I enabled both levels of the DIL policy, but still no panic.

If we get the full cnspec debug log we can see which query was being executed at the time of the crash. This may help narrow down the root cause

We close this for now. If that reoccurs, lets collect the mondoo-debug-* files with:

DEBUG=1 cnspec scan local