메일 헤더의 꺾쇠괄호 식별자 안에서 openvpn 을(를) 보면 메시지가 VPN 세션과 관련 있다는 결론으로 이끌리기 쉽습니다. 그 판단을 굳히기 전에 줄 전체를 읽으세요. 그 문자열은 Content-ID 안에 있고, Content-ID는 한 메시지 안의 한 본문 파트에 붙는 이름입니다. HTML 안의 cid: 참조가 그 이름을 가리키며, 이 짝이 존재하는 이유는 메일이 이미지를 두 번 보내지 않고도 실어 나르기 위해서입니다. 이 구조에서 VPN 서버에 닿는 것은 없고, 접미사 어디에도 식별자를 누가 만들었는지 적혀 있지 않습니다.

식별자가 실제로 가리키는 것

HTML 메일이 하나의 덩어리로 오는 일은 드뭅니다. 본문과 각 인라인 이미지는 보통 별도의 MIME 파트로 이동하고, 클라이언트가 표시를 위해 다시 조립합니다. 그러려면 이미지 파트의 이름과 그 이름으로 해석되는 참조가 필요합니다.

아래 짝은 설명을 위해 지어낸 것입니다.

Content-ID: <[email protected]>

<img src="cid:[email protected]" alt="Company mark">

헤더 줄은 이미지 파트에 있고 img 요소는 HTML 파트에 있습니다. 꺾쇠괄호는 헤더 문법에 속하므로 cid: 참조는 보통 그것 없이 식별자를 씁니다. 이스케이프가 필요한 문자를 담은 값은 인코딩해야 하며, 그래서 이 짝은 변환 규칙이 아니라 예시입니다. 의미를 나르는 것은 두 문자열의 일치이며, 어느 한쪽만이 아닙니다.

@openvpn 접미사는 구성상의 세부 사항

Content-ID는 한 메시지 안에서 고유하도록 만들어지고, 메일 소프트웨어는 흔히 @와 도메인을 붙여 주소처럼 보이게 합니다. 그 모양은 생성기의 관습이지 경로가 아닙니다. 헤더 어디에도 클라이언트에게 mailer.example에 접속하라고 하지 않으며, 메시지를 표시할 때 어떤 조회도 일어나지 않습니다. 이 필드는 계정 이름도, VPN 사용자도, VPN 클라이언트가 남긴 표시도 아닙니다. 메시지를 조립한 사람이 파트에 이름을 붙이면서 그 문자열을 고른 것입니다.

RFC 2392은 cid 스킴을 정의하고 메시지와 그 파트를 참조하는 것으로 한정합니다. 그 범위를 문자 그대로 읽으면 접미사는 이름 붙이기 이상의 무엇을 증명하지 못합니다. 이는 접미사로 제작자를 식별할 수 없다는 뜻이기도 하며, 헤더에 낯익은 단어가 나올 때 사람들이 하는 도약이 바로 그것입니다.

원본 소스를 살펴본 다음 프라이버시 문제를 판단하세요

원본 소스를 열어 Content-ID 값 전체를 읽으세요. RFC 2392는 값이 발신자의 호스트 이름이나 계정 같은 문자열을 담는 것을 허용합니다. 그다음 같은 이름이 나타나는 모든 곳을 찾으세요. HTML 안의 cid: 참조, 다른 헤더, 이전 답변에서 인용된 블록입니다. 그 출현들 사이의 일치가 파트의 목적을 알려 줍니다.

바로 이 속성 때문에 식별자가 프라이버시에 중요할 수 있습니다. 호스트 이름이나 계정 이름에서 파생된 값은 메시지와 함께 이동하며 그것을 보낸 기계나 사람에 대해 무언가를 드러낼 수 있습니다. 그래도 VPN 세션은 아니며, 그렇게 취급하면 발견을 낭비합니다.

원격 이미지인가 내장 파트인가: 다른 트래픽

소스가 https 인 img 요소와 소스가 cid 인 img 요소는 HTML에서는 비슷해 보이지만 네트워크에서는 다르게 동작합니다. 전자는 메시지를 연 뒤 클라이언트가 가져올 수 있는 자원을 가리키고, 그 가져오기는 발신자에게 메시지가 읽혔다는 것과 어느 주소에서였는지를 알려 줍니다. 후자는 메시지 안에 이미 있는 파트로 해석되므로 표시해도 누구와도 통신하지 않습니다.

한 메시지가 둘을 섞을 수 있고, 하나를 확인해도 다른 하나가 깨끗해지지 않습니다. 원격 참조는 내장된 것과 따로 세고, 클라이언트 설정이 무엇을 허용하는지 적어 두세요. 프라이버시에 중요한 결정은 그 구분이지 식별자 안의 단어가 아닙니다.

메시지를 보내지 않고 증거를 공유하세요

다른 사람이 이것을 봐야 할 때는 먼저 가리고 일관되게 가리세요. 주소와 무관한 헤더를 바꾸고, 그다음 Content-ID와 그 cid: 참조를 사본에서 똑같이 적힌 상태로 유지하세요. 불일치는 중요한 유일한 증거를 파괴합니다. 헤더가 어느 파트에 속했는지, 어느 줄이 그것을 참조했는지 말하세요. 검토자에게 필요한 것은 관계이지 메시지가 아닙니다.

그다음 두 결론을 글로 나누세요. 메시지가 무엇을 담고 있는지, 무엇을 증명하지 않는지입니다. 그렇게 틀 지어진 주장은 검증과 반론이 가능하며, 유용한 보고서가 바로 그것을 가능하게 합니다.

관련 글