Açık Kaynak Varlık Keşfi

Shodan Kullanımı

Shodan ile internete açık servisleri savunma amacıyla araştırın, kendi sistemlerinizi doğrulayın ve arama sonuçlarını güvenli şekilde yorumlayın.

17 Temmuz 202616 dk okumaBaşlangıç Seviyesi

1. Shodan Nedir?

Shodan, internete açık cihazlar, servisler ve sistem başlıkları hakkında arama yapılmasını sağlayan bir internet varlık arama motorudur.

Web sunucuları, ağ cihazları, uzak erişim servisleri ve IoT cihazları gibi farklı sistemlerden elde edilen banner bilgilerini indeksler.

Yetkili kullanım

Shodan sonuçlarını yalnızca açık kaynak istihbaratı, savunma ve size ait sistemleri doğrulama amacıyla kullanın.

2. Shodan Nasıl Çalışır?

Shodan, internete açık IP adreslerine ait servislerden banner ve temel servis bilgileri toplar.

Bir sonuçta aşağıdaki bilgiler görülebilir:

  • IP adresi
  • Port numarası
  • Servis adı
  • Banner bilgisi
  • Ülke ve şehir bilgisi
  • İnternet servis sağlayıcısı
  • Alan adı veya hostname
  • Ürün ve sürüm bilgisi

Bu bilgiler her zaman güncel veya kesin olmayabilir; sonuçlar ayrıca doğrulanmalıdır.

3. Hesap ve API Anahtarı Güvenliği

Shodan hesabı oluşturduktan sonra API anahtarı hesabınıza özel olarak verilir.

  • API anahtarını GitHub’a yüklemeyin.
  • Ekran görüntülerinde anahtarı gizleyin.
  • Ortak bilgisayarlarda oturum açık bırakmayın.
  • Anahtarı kaynak kodun içine doğrudan yazmayın.
  • Gerekirse çevresel değişken kullanın.
.gitignore
.env
shodan-config.json
*.key

4. Temel Arama Kullanımı

Shodan web arayüzünde servis veya ürün adıyla arama yapılabilir.

Genel ve savunma amaçlı örnekler:

arama örnekleri
nginx
apache
product:"OpenSSH"
port:443

Sonuçları yalnızca kendi varlıklarınızı veya genel istatistikleri anlamak için değerlendirin.

5. Temel Arama Operatörleri

OperatörAçıklamaÖrnek
port:Belirli bir portu filtreler.port:443
country:Ülke koduna göre filtreler.country:TR
city:Şehre göre filtreler.city:"Istanbul"
org:Kuruluş veya ağ sahibine göre filtreler.org:"Example ISP"
hostname:Hostname veya alan adına göre filtreler.hostname:"example.com"
product:Ürün adına göre filtreler.product:"nginx"
os:İşletim sistemi tahminine göre filtreler.os:"Linux"
net:IP bloğuna göre filtreler.net:"203.0.113.0/24"

6. Kendi Alan Adını Araştırma

Kendi alan adınızla ilişkili sonuçları görmek için hostname filtresi kullanılabilir:

arama
hostname:"alanadiniz.com"

Sonuçlarda beklemediğiniz portlar veya servisler bulunuyorsa sunucu yapılandırmanızı kontrol edin.

7. Kendi IP Adresini Kontrol Etme

Size ait genel IP adresi için doğrudan arama yapılabilir:

arama
203.0.113.10

Bu örnek IP adresi dokümantasyon amaçlıdır. Kendi sunucunuzun gerçek IP adresini kullanın.

Sonuç tarihi

Shodan verileri anlık olmayabilir. Servisin hâlâ açık olup olmadığını kendi sunucunuzda ayrıca doğrulayın.

8. Sonuç Ekranını Yorumlama

AlanAçıklama
IP Addressİnternete açık sistemin IP adresidir.
PortShodan tarafından gözlemlenen servis portudur.
TransportTCP veya UDP taşıma protokolünü gösterir.
ProductBanner üzerinden tahmin edilen ürün bilgisidir.
VersionVarsa tespit edilen sürüm bilgisidir.
Last UpdateSon gözlem zamanını gösterir.
OrganizationIP bloğının ilişkili olduğu kuruluş bilgisidir.

9. Açık Portları Savunma Açısından Değerlendirme

Shodan’da görünen her port mutlaka zafiyet anlamına gelmez. Ancak gereksiz açık servisler saldırı yüzeyini artırır.

Kontrol edilmesi gerekenler:

  • Bu port gerçekten gerekli mi?
  • Servis internete açık olmak zorunda mı?
  • Güvenlik duvarıyla IP kısıtlaması yapılabilir mi?
  • Servis güncel mi?
  • Varsayılan kimlik bilgileri değiştirilmiş mi?
  • VPN arkasına alınabilir mi?

11. Shodan CLI Kurulumu

Python paket yöneticisiyle Shodan komut satırı aracı kurulabilir:

bash
python3 -m pip install --user shodan

Kurulumu kontrol edin:

bash
shodan --help

12. CLI API Anahtarı Tanımlama

API anahtarını CLI aracına tanımlamak için:

bash
shodan init API_ANAHTARINIZ
API anahtarını paylaşmayın

Komut geçmişi, ekran görüntüsü ve dokümanlarda gerçek API anahtarını gizleyin.

13. CLI ile Hesap Bilgisi Kontrolü

Hesap ve kullanım bilgilerini görmek için:

bash
shodan info

Bu komut hesabın plan bilgisi ve kullanılabilir sorgu kredileri gibi ayrıntıları gösterebilir.

14. Kendi Sunucun İçin Host Sorgusu

Size ait bir IP adresinin Shodan kaydını görüntülemek için:

bash
shodan host 203.0.113.10

Yalnızca size ait veya yönetim izniniz bulunan IP adreslerini ayrıntılı şekilde inceleyin.

16. Sonuçları Güvenli Şekilde Kaydetme

Sorgu çıktısında hassas altyapı bilgileri bulunabilir. Bu nedenle dosyaları herkese açık depolara yüklemeyin.

Terminal çıktısını metin dosyasına yönlendirme örneği:

bash
shodan host 203.0.113.10 > shodan-kendi-sunucum.txt

Dosya izinlerini sınırlandırın:

bash
chmod 600 shodan-kendi-sunucum.txt

17. Shodan Sonuçlarını Kendi Sunucunda Doğrulama

Shodan’da görünen servisleri kendi sunucunuz üzerinde kontrol edin:

bash
sudo ss -lntup

UFW durumunu görüntüleyin:

bash
sudo ufw status numbered

Çalışan servisleri kontrol edin:

bash
systemctl --type=service --state=running

18. Savunma Kontrol Listesi

  • Gereksiz portları kapatın.
  • Yönetim panellerini internete açık bırakmayın.
  • SSH erişimini IP veya VPN ile sınırlandırın.
  • Servisleri düzenli güncelleyin.
  • Varsayılan kullanıcı adı ve parolaları değiştirin.
  • MFA kullanın.
  • UFW veya başka bir güvenlik duvarı uygulayın.
  • Logları ve başarısız girişleri takip edin.
  • Shodan üzerinde kendi varlıklarınızı düzenli kontrol edin.

19. Yanlış veya Eski Sonuçlar

Shodan sonuçları geçmiş bir taramaya ait olabilir. Servis kapatılmış olsa bile kayıt bir süre görünmeye devam edebilir.

Bu nedenle:

  • Last Update tarihini kontrol edin.
  • Kendi sunucunuzdaki dinleyen portları doğrulayın.
  • DNS ve IP değişikliklerini dikkate alın.
  • Sonucu tek başına zafiyet kanıtı olarak değerlendirmeyin.

20. Etik Kullanım İlkeleri

  • Sonuçlarda görünen sistemlere izinsiz bağlanmayın.
  • Parola denemesi yapmayın.
  • Zafiyet doğrulaması için aktif saldırı gerçekleştirmeyin.
  • Hassas bulguları herkese açık paylaşmayın.
  • Size ait olmayan sistemlerde yalnızca pasif açık kaynak analizinde kalın.
  • Bir risk fark ederseniz sorumlu bildirim süreçlerini kullanın.

21. Sık Karşılaşılan Hatalar

shodan komutu bulunamadı

bash
python3 -m pip install --user shodan

Invalid API key hatası

API anahtarını hesabınızdan yeniden kontrol edin ve CLI yapılandırmasını yenileyin:

bash
shodan init YENI_API_ANAHTARI

No information available hatası

IP adresi henüz indekslenmemiş, yakın zamanda değişmiş veya sonuç hesabınızın erişim düzeyinde bulunmuyor olabilir.

Search credits exhausted hatası

Hesabın sorgu limitini kontrol edin ve gereksiz geniş aramalardan kaçının.

22. Komut ve Arama Özeti

İşlemKomut / Arama
Port filtresiport:443
Ülke filtresicountry:TR
Kendi alan adınhostname:"alanadiniz.com"
CLI başlatmashodan init API_ANAHTARI
Hesap bilgisishodan info
Kendi IP sorgunshodan host IP_ADRESI
Sonuç sayısıshodan count 'product:"nginx" country:TR'

23. Sonuç

Bu dokümanda Shodan’ın çalışma mantığı, temel filtreler, kendi alan adı ve IP adresini kontrol etme, CLI kurulumu, sonuç doğrulama ve savunma önlemleri ele alındı.

Shodan en doğru şekilde, internete açık kendi varlıklarınızı görmek ve gereksiz saldırı yüzeyini azaltmak amacıyla kullanılmalıdır.

© 2026 Kemal Tokmak — Gerçek Deneyimler, Gerçek Dokümantasyon