Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

server_frontend_cert() crashes client #3946

Closed
predictiple opened this issue Dec 6, 2024 · 1 comment
Closed

server_frontend_cert() crashes client #3946

predictiple opened this issue Dec 6, 2024 · 1 comment

Comments

@predictiple
Copy link
Contributor

version: 0.73.3
commit: 4a41ec1
build_time: "2024-12-05T19:15:42+02:00"
compiler: go1.23.2
system: linux
architecture: amd64

When given the query

SELECT server_frontend_cert() FROM scope()

the client crashes.

Backtrace:

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

goroutine 269 [running]:
www.velocidex.com/golang/velociraptor/vql/server.(*ServerFrontendCertFunction).Call(0x2371280?, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840}, 0xc001cef180)
	/home/me/projects/velociraptor/vql/server/crypto.go:36 +0x208
www.velocidex.com/golang/vfilter.(*_SymbolRef).callFunction(0xc002030e00, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840}, {0x2baa540, 0x493fac0})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1795 +0x504
www.velocidex.com/golang/vfilter.(*_SymbolRef).Reduce(0xc002030e00, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1623 +0x52e
www.velocidex.com/golang/vfilter.(*_Value).Reduce(0xc002030e80, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1503 +0x13f
www.velocidex.com/golang/vfilter.(*_MemberExpression).Reduce(0xc001cee900, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1182 +0x45
www.velocidex.com/golang/vfilter.(*_MultiplicationExpression).Reduce(0xc001cee940, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1439 +0x3d
www.velocidex.com/golang/vfilter.(*_AdditionExpression).Reduce(0xc001cee980, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1354 +0x3d
www.velocidex.com/golang/vfilter.(*_ConditionOperand).Reduce(0xc002201470, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1392 +0x5a
www.velocidex.com/golang/vfilter.(*_OrExpression).Reduce(0xc001cee9c0, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1316 +0x45
www.velocidex.com/golang/vfilter.(*_AndExpression).Reduce(0xc001ceea40, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a840})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:1276 +0x45
www.velocidex.com/golang/vfilter.(*_AliasedExpression).Reduce(0x40?, {0x2bb84d0?, 0xc00210c5a0?}, {0x2c0d3a0?, 0xc00160a840?})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:712 +0x90
www.velocidex.com/golang/vfilter.(*_SelectExpression).Transform.func2({0x2bb84d0, 0xc00210c5a0}, {0xc000c82de0?, 0x16?})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:970 +0x55
www.velocidex.com/golang/vfilter.MaterializedLazyRow({0x2bb84d0, 0xc00210c5a0}, {0x242b0c0?, 0xc000281030}, {0x2c0d3a0, 0xc00160a780})
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/lazy.go:108 +0x1c7
www.velocidex.com/golang/vfilter.(*_Select).processSingleRow(0xc0021e1b60, {0x2bb84d0, 0xc00210c5a0}, {0x2c0d3a0, 0xc00160a6c0}, {0x2719f40, 0xc00160a6c0}, 0xc000fe9c00)
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:588 +0x145
www.velocidex.com/golang/vfilter.(*_Select).Eval.func3()
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:570 +0x13b
created by www.velocidex.com/golang/vfilter.(*_Select).Eval in goroutine 267
	/home/me/go/pkg/mod/www.velocidex.com/golang/[email protected]/vfilter.go:553 +0x295

@scudette
Copy link
Contributor

scudette commented Dec 9, 2024

Fixed by #3945

@scudette scudette closed this as completed Dec 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants