google / google/gvisor

Parsing non-sendable cmsg in SendMsg syscall should fail

Open
#7,188 2 comments 0 reactions 0 assignees View on GitHub
area: networking no-auto-close type: bug
Dominant language
Go
Stars
19.3k
Forks
2k
Avg merge
3d 5h
Merged PRs (30d)
264

Description

### Description

Some control messages can't be sent (only received). For example, `IP_RECVERR` or `IP_RECVORIGDSTADDR`.

In the syscall implementation of SendMsg in sentry, we call `control.Parse` on the raw cmsg bytes. This function should refuse non-sendable control messages.

### Steps to reproduce

_No response_

### runsc version

_No response_

### docker version (if using docker)

_No response_

### uname

_No response_

### kubectl (if using Kubernetes)

_No response_

### repo state (if built from source)

_No response_

### runsc debug logs (if available)

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.