접미사에서 표시 이름 스푸핑을 방지하는 첫 번째 단계

접미사에서 표시 이름 스푸핑을 방지하는 첫 번째 단계

최근 우리 회사에서는 고객과 공급업체를 사칭하는 표시 이름 스푸핑 이메일을 많이 받습니다. 불행히도 내 동료들은 보안 경고 등에 너무 많은 주의를 기울이지 않기 때문에 나는 그들이 위협을 인지하고 있다고 믿을 수 없었습니다. Google에서 몇 시간 동안 검색했지만 이에 대한 만족스러운 해결책을 찾지 못했습니다. 적어도 유료 타사 도구 등을 포함하지 않는 간단한 것은 아닙니다.

그래서 나는 header_checks 파일의 행에 다음을 추가하는 우아하고 간단한 솔루션을 우연히 발견했습니다.

/^From: (.*@.*) (.*@.*)$/ REPLACE From: "PHISHING!!!" $2
/^Reply-To: (.*@.*) (.*@.*)$/ REPLACE Reply-To: "PHISHING!!!" $2

이 두 줄이 하는 일은 기본적으로 From 헤더에 2개의 이메일 주소가 있는지 확인하는 것입니다. 그렇다면 우리는 첫 번째가 스푸핑된 것이라고 가정합니다. 그런 다음 단순히 from 헤더를 다시 작성하여 스푸핑된 보낸 사람을 PHISHING으로 대체하고 실제 보낸 사람 주소를 유지합니다.

그 후에는 수정된 header_checks 파일을 Postfix에 매핑하면 됩니다:

postmap -r header_checks

구성을 다시 로드합니다.

postfix reload

header_check가 올바르게 적용되었는지 테스트를 실행합니다.

postmap -q "From: Fake Sender <[email protected]> <[email protected]>" regexp:/etc/postfix/header_checks

이 명령은 다음과 같은 결과를 반환해야 합니다.

REPLACE From: "PHISHING!!!" <[email protected]>

긍정적인 히트가 있는 경우. 음수이면 출력이 없습니다.

이것이 같은 문제를 겪고 있는 누군가에게 도움이 되기를 바랍니다.

문안 인사

답변1

회사 메일 서버에서 이 문제가 발생했습니다. 자체 이메일 도메인을 검증했기 때문에 로그인 사용자만 보낸 사람으로 보낼 수 있으므로 구문을 약간 수정했습니다.

/^From: (.*@.*) <(.*@.*)>$/ REPLACE From: "[POSSIBLE PHISHING] $2" <$2>
/^Reply-To: (.*@.*) <(.*@.*)>$/ REPLACE Reply-To: "[POSSIBLE PHISHING] $2" <$2>

이렇게 하면 이메일 수신자는 보낸 사람이 누구인지 알 수 있습니다. 일부 게으른 회사 사용자가 보낸 사람 이름을 이메일 이름으로 설정하면 코드에서 오탐지가 발생할 수 있습니다. 이 도움을 바랍니다

*또 다른 하나는 도메인 이름을 표시 이름으로 스푸핑하고 있습니다. 다음 코드를 사용하여 수정할 수 있습니다.

/^From: (.*)\.(.*) <(.*@.*)>$/ REPLACE From: $3 <$3>
/^Reply-To: (.*)\.(.*) <(.*@.*)>$/ REPLACE Reply-To: $3 <$3>

관련 정보