
DNS MX 레코드를 스캔하여 이메일 탈취에 취약한 잘못 구성되었거나, 만료 예정이거나, 등록되지 않은 도메인을 탐지하며, Mailgun에 대한 자동 회수 지원을 제공합니다.
작동 방식 • 기능 • 설치 • 사용법 • mx-takeover 실행
mx-takeover는 DNS MX 레코드를 분석하고 잘못 구성된 MX 레코드를 탐지합니다. 현재 세 가지 기법을 지원합니다. 다음과 같습니다.
제한 사항 Mailgun은 메일 수신에 MX 레코드, 메일 발신에 TXT 레코드, 추적에 CNAME 레코드를 사용합니다. 이 중 DKIM 레코드만 고유하며 무작위로 생성됩니다.
따라서 다른 사람을 대신하여 메일을 보낼 수는 없지만, 관련 도메인으로 다른 사람이 보낸 메일을 읽을(수신할) 수 있습니다.
mx-takeover를 설치하려면 go1.17이 필요합니다. 다음 명령어를 실행하여 설치하세요.
go install -v github.com/musana/mx-takeover@latest
mx-takeover -h
도움말이 표시됩니다.
┌──(root㉿kali)-[/home/mx-takeover]
└─# mx-takeover -h
_ _
_ __ ___ __ __ | |_ __ _| | _____ _____ _____ _ __
| '_ ' _ \\ \/ /____| __/ _' | |/ / _ \/ _ \ \ / / _ \ '__|
| | | | | |> <_____| || (_| | < __/ (_) \ V / __/ |
|_| |_| |_/_/\_\ \__\__,_|_|\_\___|\___/ \_/ \___|_|
hunting misconfigured MX records
musana.net | @musana
-check-whois
Check whois for detecting unregistered mx domain or will be expire soon
-expire-day int
Estimated days for expiration (default 30)
-h help
-mailgun-api string
mailgun api for domain takeover automatically
-output string
Save output to file as json
-show-only-mx
show only that have mx records
-v Print all log
-w int
number of worker (default 32)
텍스트 파일은 한 줄에 하나씩 입력되어야 합니다. 텍스트 파일의 각 도메인은 http:// 또는 https://로 시작해야 합니다.
┌──(root㉿kali)-[/home/mx-takeover]
└─# cat sdomain.txt| mx-takeover -check-whois -w 64 -output mx.json
_ _
_ __ ___ __ __ | |_ __ _| | _____ _____ _____ _ __
| '_ ' _ \\ \/ /____| __/ _' | |/ / _ \/ _ \ \ / / _ \ '__|
| | | | | |> <_____| || (_| | < __/ (_) \ V / __/ |
|_| |_| |_/_/\_\ \__\__,_|_|\_\___|\___/ \_/ \___|_|
hunting misconfigured MX records
musana.net | @musana
[*] Scan Starting Time: 2022-05-23 15:15:22
[!] Mailgun-api was not provided. You should register domain to mailgun manually
[*] 141 domain will be scanned.
[*] Domains that expire in less than 30 days
[*] Scan results was saved to mx.json
[*] End Time: 2022-05-23 15:15:24
키는 MX 도메인입니다. 값은 해당 키에 명시된 도메인이 사용하는 도메인입니다.
┌──(root㉿kali)-[/home/mx-takeover]
└─# cat mx.json| jq .
{
"google.com": [
"_cisco-uds._tcp.wordcamp.org"
],
"maximum.nl": [
"mcdonalds.maximum.nl"
],
"naver.jp": [
"line.naver.jp"
],
"slgnt.eu": [
"leveranciersmail.bol.com"
],
"wordpress.net": [
"_cisco-uds._tcp.wordpress.net"
],
"wordpress.org": [
"92.wordpress.org",
"_cisco-uds._tcp.planet.wordpress.org",
"_cisco-uds._tcp.profiles.wordpress.org",
"_cisco-uds._tcp.wordpress.org",
"_cisco-uds.planet.wordpress.org",
"_cisco-uds.profiles.wordpress.org",
"93.wordpress.org",
"94.wordpress.org",
"95.wordpress.org"
]
}
중요 업데이트 (2022-06-15): Mailgun은 이제 메일 수신 전용인 경우에도 모든 레코드(MX, TXT, CNAME)에 대해 DNS 검증을 요구합니다. 이전 수정 전에는 메일 수신을 위해 MX 검증만으로 충분했습니다. 약 3주 전에는 이 방법이 작동했지만, 현재 Mailgun에 의해 취약점이 수정되었습니다. 이전에 보낸 메일은 성공적으로 전송되었고 Mailgun 로그에서 메일 내용에 접근할 수 있었지만, 이제는 "relaying denied" 오류가 발생합니다. 보내기를 시도하면 Remote Server returned '550 5.7.367 Remote server returned not permitted to relay -> 550 5.7.1 Relaying denied' 오류가 표시됩니다.
이 프로젝트가 유용하셨나요? 커피 한 잔 사주실 수 있습니다.
