Merhaba arkadaşlar,
Bu yazımda sizlere bir havayolu firmasında bizleri sıkıntıya sokabilecek bazı güvenlik izlenimlerimi paylaşacağım. Biliyorsunuz Ocak ayında uçak rezervasyon sisteminde bir güvenlik açığı tespit edilmişti. Saldırganlar PNR kodu ile müşterilerin bilgilerine erişebiliyor ve değişiklikler yapabiliyorlardı. (Yazmış olduğum yazıyı okumak için tıklayınız.) Ankara’ya gitmek için havayolu firmasının web sitesinden uçak bileti bakıyordum ve bir anda bu haber aklıma geldi. Uygun olan bileti seçtim ve satın alma işlemini gerçekleştirdim. 2 gün sonra biletimin iptal işlemlerini gerçekleştirmek istedim. İptal etme işlemi yaparken benden “Yolcunun Soyadı” ve “Rezervasyon Kodu” yani firma tarafından özel oluşturulmuş olan PNR kodunu istedi.
Tamam buraya kadar sorun yok. PNR ve soyad bilgilerimi girdikten sonra karşıma aşağıdaki ekran görüntüsü geldi. Burda da problem yok.
Sayfayı aşağıya doğru kaydırdığımızda “Değiştir”, “Açığa Al” ve “İptal Et” seçenekleri ile karşılaşıyoruz. İşte bütün her şey burada başlıyor.
Biletimi iptal etmek istediğim için “İptal Et” butonuna tıkladım. “Devam” butonu ile devam ettim ve “İptal Özeti” ekranı geldikten sonra “İşlemi Onayla” dedim.
Ve bana herhangi bir doğrulama vb. bir şey sormadan otomatik olarak biletimi iptal etmiş oldu. Fakat bu işlemi ben gerçekleştirmemiş olabilirdim. Ee yani diyenler olacak. Konuyu daha da derinleştirelim.
Biliyoruz ki bazı arkadaşlarımız sosyal medyalar üzerinden PNR kodları açık bir şekilde ekran görüntüleri paylaşıyorlar. Saldırganlar sosyal medyada aramalar yaptıklarında PNR kodu açık şekilde bir çok ekran görüntüsü ile karşılaşabilir. Ben bu araştırmayı yaparken şans eseri havayolu firması 50.000 kişiye 1 euro’dan yurtdışına uçak bileti kampanyası düzenlemişti. Tabi bilet alan herkes dikkatsizce bilet bilgilerini Twitter üzerinden yayınladı. Ama çoğu kişi tehlikenin farkında değildi.
Düşünün havalimanına gidiyorsunuz, yoldasınız bir bakıyorsunuz biletinizin iptal edildiği haberi geliyor. Kredi kartının ilk 6 hanesi ve son 4 hanesi gibi kritik verilere erişmekte söz konusu olabiliyor.
Biliyorsunuz ki bilet satın alma işlemi yapıldıktan sonra e-posta adresine PNR kodu gönderiliyor. Peki gönderilen e-posta şifreli mi gönderiliyor? Tabiki de ne yazık ki şifrelenmeden gönderiliyor. Saldırganlar gönderilen e-postanın içeriğini okuyup PNR koduna ulaşabilir.Bunu nasıl anlarız derseniz “Gmail” üzerinden devam ederek aşağıdaki ekran görüntüsünü inceleyebilirsiniz.
Gördüğünüz gibi Google abimiz bizi uyarıyor ve firmanın iletiyi şifrelemeden gönderdiğini belirtiyor.
Toparlayacak olursak buradaki en büyük problem her şeyden habersiz bir şekilde insanlarımızın PNR kodları açık bir şekilde bilet bilgilerini sosyal medyalarda paylaşıyor olmasıdır. Lütfen biletlerinizi sosyal medyalarda paylaşmayınız veya paylaşacaksanız da PNR kodunu göstermeyecek şekilde paylaşınız. Peki konuyu daha da derinleştirelim.
Tekrardan web site üzerinden “Uçuşunu Yönet” tıklayalım ve soyad bilgimizi ve PNR kodumuzu gönderelim. Gönderdikten sonra URL kısmımızı kontrol ettiğimizde bilgilerin GET methodu kullanılarak gönderildiği anlaşılıyor.
- Saldırgan Türkiye’de kullanılan soyad bilgilerini elde edebilir
- Crunch tarzı araçlar kullanılarak 6 haneli ve içerisinde rakamların, harflerin bulunacağı bir kombinasyon listesi hazırlanabilir. (PNR yapısı gereği)
- GET methodu ile gönderilen parametrelere (pnrNo ve surname) yukarıda bahsetmiş olduğum listeler ile Brute Force (Kaba Kuvvet) saldırısı uygulanabilir.
Peki tamam ama ya sistem pnrNo ve surname parametrelerine gönderilen verilere bir kısıtlama koyduysa? Yani bir iki üç denendi sistem “Bu bir saldırı” diyerek bizi banlayabilir. Evet bunuda denedim (100 kere denedim. Üstü için bir şey diyemiyorum) ve ne yazık ki parametrelere yapılan isteklere bir kısıtlama konulmamış.
Yukarıda anlattığım senaryo ile saldırganlar sistem üzerinde PNR kodlarını tespit edebilirler. Bu süreç belki uzun sürebilir veya sistemi takip eden arkadaşlar bu iki parametreye yapılan sürekli istekleri görebilir. Fakat bu da Brute Force saldırısına zamanlama koyularak bir şekilde gözden kaçırtılabilir.
Firmaya Twitter üzerinden ulaşarak yazıda bahsetmiş olduğum izlenimlerimi sundum. Sanıyorsam teknik bilgisi çok iyi olmayan bir müşteri temsilcisi ile aşağıda görmüş olduğunuz yazışma gerçekleşti.
Evet güzel çağrı merkezindeki arkadaşlar doğrulama kontrollerini sağlıyor olabilirler fakat iş tekniğe gelince doğrulama kontrolü ne yazık ki çağrı merkezindeki gibi yapılmıyor.
Sormak istediğiniz bir şey olursa Twitter hesabımdan veya yorum kısmından bana ulaşabilirsiniz.
Okuduğunuz için teşekkür ederim, güvenli günler dilerim.
Bilgilendirdiğin için teşekkür ederim.