
IDN 호모그래프 공격 및 탐지를 위한 도구.
Ditto는 도메인 이름을 입력으로 받아 호모그래프 공격에 사용할 수 있는 모든 변형을 생성하고, 그 중 사용 가능한 것과 이미 등록된 것을 확인하는 작은 도구입니다.
PoC 도메인
docker hub의 이미지는 푸시할 때마다 업데이트됩니다. 다음 명령어를 실행하면 됩니다:
docker run evilsocket/ditto -h
소스에서 컴파일하려면 Go 컴파일러가 필요합니다. 다음 명령어로 $GOPATH/bin에 바이너리가 설치됩니다:
# make sure go modules are used
GO111MODULE=on go get github.com/evilsocket/ditto/cmd/ditto
문자열만 변환하려면:
ditto -string google
도메인의 경우:
ditto -domain facebook.com
더 많은 동시 작업자(workers)를 사용하여 속도를 높입니다 (경고: WHOIS 서버에서 일시적인 IP 차단이 발생할 수 있습니다):
ditto -workers 4 -domain facebook.com
도메인 이름을 변형하는 대신 다른 TLD를 확인하려는 경우 (짧은 시간 내에 많은 요청으로 인해 WHOIS 서버에 차단되지 않도록 스로틀이 1초로 설정됩니다):
ditto -domain facebook.com -tld -throttle 1000 -limit 100
사용 가능한 도메인만 표시:
ditto -domain facebook.com -available
등록된 도메인만 표시:
ditto -domain facebook.com -registered
IP로 확인되는 등록된 도메인만 표시:
ditto -domain facebook.com -live
WHOIS 정보 표시:
ditto -domain facebook.com -live -whois
확장된 WHOIS 정보를 CSV 파일로 저장:
ditto -domain facebook.com -whois -csv output.csv
1시간마다 변경 사항을 계속 실행 및 모니터링:
ditto -domain facebook.com -monitor 1h
동일하지만 변경 사항을 JSON 파일로 저장 및 보관:
ditto -domain facebook.com -monitor 1h -changes /some/path -keep-changes
변경 사항이 감지되면 명령어를 실행합니다 (이 저장소의 예제 send-email-report.sh 참조, Docker 이미지에 자동 추가됨):
ditto -domain facebook.com \
-monitor 1h \
-trigger "/usr/bin/send-email-report.sh {{.Domain}} {{.ChangesFile}} [email protected]"
더 많은 옵션:
ditto -help
GPL3 라이선스로 배포됩니다.