rfc-5079

Rejecting Anonymous Requests in the Session Initiation Protocol (SIP)

J. Rosenberg
date2007-12 streamIETF arearai wgsip statusPROPOSED STANDARD pages8 canonicalhttps://www.rfc-editor.org/rfc/rfc5079 doi10.17487/RFC5079
The Session Initiation Protocol (SIP) allows for users to make anonymous calls. However, users receiving such calls have the right to reject them because they are anonymous. SIP has no way to indicate to the caller that the reason for call rejection was that the call was anonymous. Such an indication is useful to allow the call to be retried without anonymity. This specification defines a new SIP response code for this purpose. [STANDARDS-TRACK]

Extracted elements (15)

design-rationale §3

Display names make a poor mechanism for indicating anonymity because they are meant for human consumption, not automata; language variations and misspellings can cause an automaton to miss the hint. Nevertheless, RFC 3261 explicitly designated the display name as a way to declare anonymity, so a check on it is included.

sip, realtime

design-rationale §1

The closest existing response code, 403 (Forbidden), does not convey a specific reason for rejection and cannot be interpreted programmatically or by callers speaking different languages. A machine-readable indication enables programmatic handling, UI prompts, and conversion to PSTN error codes in gateways.

sip, realtime

interoperability-note §4

A UAC that does not understand or care about the specific semantics of the 433 response will treat it as a 400 (Bad Request) response, in accordance with RFC 3261's response code class rules.

sip, realtime

normative-requirement §3 SHOULD

A request SHOULD be considered anonymous when the identity of the originator has been explicitly withheld, including when the From header contains a URI in the anonymous.invalid domain, a display name of 'Anonymous' or 'anonymous', or a Privacy header with value 'id' or 'user'.

sip, realtime, privacy

normative-requirement §3 MAY

A server MAY generate a 433 (Anonymity Disallowed) response when it receives an anonymous request and refuses to fulfill it because the requestor is anonymous.

sip, realtime

normative-requirement §4 MUST NOT

A UAC receiving a 433 (Anonymity Disallowed) MUST NOT retry the request without anonymity unless it obtains confirmation from the user (via UI or user-defined policy) that retrying without anonymity is desirable.

sip, realtime, privacy

normative-requirement §3 SHOULD NOT

If a request contains a non-anonymous From header along with Identity and Identity-Info header fields but the certificate could not be obtained, it is not considered anonymous and the 433 response code SHOULD NOT be used.

sip, realtime

normative-requirement §4 MAY

If the user has confirmed it is desirable, a UAC MAY retry the request without requesting anonymity after receiving a 433 response.

sip, realtime

normative-requirement §3 SHOULD NOT

Lack of a network-asserted identity (such as the P-Asserted-Identity header field), in and of itself, SHOULD NOT be considered an indication of anonymity, because there is no way to differentiate removal of a network-asserted identity from a domain that never supported it.

sip, realtime, privacy

normative-requirement §4 SHOULD NOT

Receipt of a 433 response to a mid-dialog request SHOULD NOT cause the dialog to terminate and SHOULD NOT cause the specific usage of that dialog to terminate.

sip, realtime

normative-requirement §7 MUST NOT

When an anonymizer function acting as a B2BUA receives a 433 response, it MUST NOT retry the request without anonymization unless explicitly configured by the user to do so, applying the same rules as a UA processing a 433.

sip, security, privacy

protocol-element §5

The 433 (Anonymity Disallowed) response code indicates that the server refused to fulfill the request because the requestor was anonymous. Its default reason phrase is "Anonymity Disallowed".

sip, realtime

registry §6

IANA registered response code 433 with default reason phrase "Anonymity Disallowed" in the SIP response code registry per the procedures of RFC 3261.

sip, registry

security-consideration §7 SHOULD

Sending a 433 response reveals information about the called party — specifically that they do not accept anonymous calls. If this information is sensitive, a UAS SHOULD reject the request with a 403 (Forbidden) instead.

sip, security, privacy

security-consideration §7

The 433 response code is likely ineffective at blocking SIP-based spam because a malicious caller can include a From header that is not anonymous but is meaningless and invalid, bypassing anonymity screening without a Privacy header field.

sip, security