Düşen bir e-ticaret domaini, dolandırıcılar için hazır bir tuzaktır: tüketici ETBİS'te adı geçen markaya güvenir, ama alan adı artık başkasının elinde olabilir. Bu araç, ETBİS'e kayıtlı sitelerin alan adlarını toplu tarayarak bu riski işletme ve tüketici zarar görmeden önce tespit eder.
ETBİS'e ("etbis.ticaret.gov.tr") kayıtlı e-ticaret sitelerini tarayıp; düşmüş (kayıtlı olmaktan çıkmış) ve el değiştirmiş olma şüphesi taşıyan domainleri tespit etmek için yazılmış bir araçtır. Amaç: dolandırıcıların, bir işletmenin eskiden kullandığı ama düşürdüğü domaini alıp, ETBİS kaydına/sorgulamasına güvenen tüketicileri kandırmasını önceden tespit edip Ticaret Bakanlığı'na bildirmek.
- crawl — ETBİS'in
SiteSorgulamalistesini sayfa sayfa gezer, her site için işletme adı, site URL'si ve ETBİSsiteId'sini SQLite veritabanına kaydeder. - details — Her site için
SiteSorgulamaSonucdetay sayfasını çekip "ETBİS'e Kayıt Tarihi" bilgisini alır. Bu tarih, domain'in ne zaman kayıtlı hâle geldiğini karşılaştıracağımız referans noktasıdır. - check — Her domain için:
- DNS çözümlenip çözümlenmediğine bakar,
.truzantılı domainlerde doğrudanwhois.trabis.gov.trWHOIS sunucusunu sorgular (oluşturulma tarihi ve çoğu zaman şirket adını verir),- Diğer uzantılarda IANA RDAP bootstrap listesi üzerinden ilgili RDAP sunucusunu, o da yoksa genel WHOIS (referral takibiyle) sorgular.
- analyze — Toplanan verilere göre her siteye bir bayrak atar:
- 🔴 KIRMIZI — domain şu anda kayıtlı değil (düşmüş / boşa düşmüş), herhangi biri (bir dolandırıcı dâhil) hemen alabilir.
- 🔵 MAVİ — domain kayıtlı ama el değiştirmiş şüphesi var: WHOIS'teki oluşturulma tarihi ETBİS kayıt tarihinden sonra ya da WHOIS'teki alan adı sahibi ETBİS'teki işletme adıyla örtüşmüyor.
- 🟢 YEŞİL — otomatik olarak sonuç alınamadı (zaman aşımı, desteklenmeyen uzantı, URL yok vb.), manuel kontrol gerekiyor.
- (Bayraksız satırlar) — belirgin bir sorun bulunamadı.
- report — Renk kodlu
.xlsxraporu üretir (Bakanlığa gönderilecek liste).
Her adım SQLite veritabanında ilerlemeyi kaydeder, yani işlem yarıda kesilse (Ctrl+C, internet kopması vb.) bile kaldığı yerden devam eder.
Not: Bu araç şüpheli adayları listeler; sonuçlar %100 kesin değildir (ör. işletme bilerek yeni bir domaine geçmiş olabilir). Bakanlığa göndermeden önce özellikle MAVİ ve YEŞİL satırları gözden geçirmeniz önerilir.
git clone https://github.com/MiracHamurcu/etbis-domain-scanner.git
cd etbis-domain-scanner
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtHepsini sırayla çalıştırmak için (ilk hedef: 10.000 site):
python -m scanner run --target 10000Bu komut kesilirse, tekrar çalıştırıldığında crawl/details/check adımları kaldığı yerden devam eder (analyze ve report her seferinde yeniden üretilir, bu ucuz bir işlemdir).
Adım adım çalıştırmak isterseniz:
python -m scanner crawl --target 10000 # ETBİS listesini tara
python -m scanner details # ETBİS kayıt tarihlerini çek
python -m scanner check --workers 4 # DNS + WHOIS/RDAP kontrolü
python -m scanner analyze # bayrakları hesapla
python -m scanner report # reports/ altına .xlsx üret
python -m scanner status # ilerlemeyi özetlerRapor varsayılan olarak reports/etbis_tarama_<tarih>.xlsx içine yazılır,
--out dosya_adi.xlsx ile değiştirebilirsiniz.
Aşağıdaki ortam değişkenleriyle davranışı ayarlayabilirsiniz (hepsi opsiyonel):
| Değişken | Varsayılan | Açıklama |
|---|---|---|
ETBIS_SCANNER_TARGET |
10000 |
crawl için varsayılan hedef site sayısı |
ETBIS_SCANNER_ETBIS_DELAY |
0.8 |
ETBİS istekleri arası min. bekleme (sn) |
ETBIS_SCANNER_WHOIS_DELAY |
1.5 |
.tr WHOIS istekleri arası min. bekleme (sn) |
ETBIS_SCANNER_CHECK_WORKERS |
4 |
check adımında paralel iş parçacığı sayısı |
ETBIS_SCANNER_REREG_BUFFER_DAYS |
30 |
MAVİ bayrağı için tarih tolerans payı (gün) |
ETBIS_SCANNER_DB_PATH |
data/etbis_scan.sqlite3 |
Veritabanı yolu |
ETBIS_SCANNER_REPORTS_DIR |
reports |
Rapor çıktı klasörü |
ETBİS ve WHOIS sunucularına karşı kibar davranmak için istekler hız
sınırlamalıdır; 10.000 site için check adımı (özellikle çoğu .tr domain
ise, çünkü bunlar tek bir WHOIS sunucusuna seri şekilde gider) uzun sürebilir.
İşlemi arka planda / bir sunucuda bırakıp status komutuyla ilerlemeyi takip
edebilirsiniz.
- Genel WHOIS (RDAP'ı olmayan az kullanılan uzantılar) yanıtları serbest metin olduğundan tarih ayrıştırma her zaman %100 başarılı olmayabilir; bu durumlarda site YEŞİL (manuel kontrol) olarak işaretlenir.
.trWHOIS yanıtında çok satıra yayılan kurum adları (Registrar) küçük ölçüde kırpılabilir; bu sadece bilgi amaçlı alanı etkiler, bayrak mantığını etkilemez.- WHOIS gizlilik korumalı (privacy/proxy) domainlerde alan adı sahibi bilgisi görünmeyebilir; bu durumda sadece tarih karşılaştırması kullanılır.
Bu araç yalnızca savunma ve farkındalık amaçlıdır: risk altındaki domainleri
tespit edip yetkili mercilere (Ticaret Bakanlığı) bildirmek için yazılmıştır.
ETBİS ve WHOIS/RDAP sunucularına hız sınırlamalı, kibar isteklerle erişir.
Taranan verilerdeki işletme/domain bilgileri hassas olabileceğinden, üretilen
veritabanı ve raporlar sürüm kontrolüne dâhil edilmez (bkz. .gitignore).
Tespit edilen domainlerin ele geçirilmesi veya kötüye kullanılması amaçlanmamıştır
ve önerilmez.