Bilgi Güvenliği Bakış Açısıyla Tehdit Modelleme

0
808
views

 

Günümüzde siber saldırılar olabildiğince karmaşık bir hal almıştır. Tasarlanan bir yazılımı veya sistemi anlamak ve karşılaşabileceği tehditleri ortaya çıkarabilmek için Tehdit Modelleme süreci işletilir. Bu yazıda Tehdit Modelleme (Threat Modeling) konusu incelenecektir.

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

 

 

A) Kullanım Amacı

Tehdit modellemesi, tasarlanan bir sistem ve uygulamadaki güvenlik riski hakkında bilinçli karar vermeyi sağlar. Bir model üretmeye ek olarak, tipik tehdit modelleme çabaları ayrıca kavram, gereksinimler, tasarım veya uygulamada öncelikli bir güvenlik iyileştirmeleri listesi oluşturur.

Yazılım Geliştirme Yaşam Döngüsü’nün (SDLC) tasarım aşamasının bir parçası olarak tehdit modellemesi, yazılım mimarlarının potansiyel güvenlik sorunlarını erken, nispeten kolay ve uygun maliyetli olduğunda tespit etmelerine ve azaltmalarına olanak tanır. Böylece, toplam geliştirme maliyetini düşürmeye yardımcı olur.

 

Tehdit modelleme, hedefleri ve güvenlik açıklarını belirleyerek ve ardından sisteme yönelik tehditleri önlemek veya etkilerini azaltmak için karşı tedbirler tanımlayarak Ağ / Uygulama / İnternet Güvenliği’ni optimize etmeye yönelik bir prosedürdür. Tehdit, kötü amaçlı (DoS saldırısı gibi) veya tesadüfi (Depolama Cihazının arızalanması) olabilen potansiyel veya fiili istenmeyen olaydır. Tehdit modelleme, uygulama tehditlerini ve güvenlik açıklarını belirlemek ve değerlendirmek için planlanmış bir faaliyettir.

 

B) Tehdit Modelleme Süreci

Temel bir tehdit modelleme süreci aşağıdaki adımlardan oluşur. Arama alanını keşfetme süreci yinelemelidir ve şimdiye kadar yaptıklarınıza göre sürekli olarak iyileştirilir. Bu nedenle, örneğin, tüm olası güvenlik açıklarından başlamak genellikle anlamsızdır, çünkü bunların çoğu tehdit ajanları tarafından saldırıya açık değildir, bir güvenlik önlemi ile korunur veya bir sonuca yol açmaz.

  • Değerlendirme Kapsamı Oluşturun: Bilgi veritabanları veya hassas dosyalar gibi somut varlıkları belirlemek genellikle kolaydır. Uygulama tarafından sağlanan kabiliyet/kapasiteyi anlamak ve bunlara değer biçmek daha zordur. İtibar (reputation) ve iyi niyet (googwill) gibi daha az somut şeyler ölçülmesi en zor olanlardır, ancak çoğu zaman en kritik olanlardır.
  • Tehdit Ajanlarını ve Olası Saldırıları Tanımlayın: Tehdit modelinin önemli bir parçası, bir uygulamaya saldırabilecek farklı insan gruplarının nitelendirilmesidir. Bu gruplar, hem kasıtsız hatalar hem de kötü niyetli saldırılar gerçekleştiren içeriden ve dışarıdan kişileri içermelidir.
  • Mevcut Karşı Önlemleri Anlayın: Model, kuruluş içinde halihazırda konuşlandırılmış olan mevcut tüm karşı önlemleri içermelidir.
  • Yararlanılabilir Güvenlik Açıklarını Tanımlayın: Uygulamadaki güvenliği anladıktan sonra, yeni güvenlik açıklarını analiz edebilirsiniz. Odaklanılacak nokta, tanımladığınız olası saldırıları belirlediğiniz olumsuz sonuçlarla ilişkilendiren güvenlik açıkları olmalıdır.
  • Öncelikli Tanımlanmış Riskler: Önceliklendirme, tehdit modellemede her şeydir çünkü her zaman dikkati çekmeyen çok sayıda risk vardır. Her tehdit için, genel bir risk veya önem düzeyi belirlemek için bir dizi olasılık ve etki faktörünü tahmin edersiniz.
  • Tehditleri Azaltmak için Alınacak Önlemleri Belirleyin: Son adım, işletmenin risk iştahına dayalı olarak riski kabul edilebilir düzeylere düşürmek için karşı önlemleri belirlemektir.
  • Yöntemi/Süreci Anlamak: Güvenlik mimarı/uzmanı, risk ve güvenlik açığı faaliyetlerini belirlerken, bu adımları uyguladıklarından emin olmak için tehdit modellemeyle ilgili temel kavramları anladıklarından emin olmak isteyeceklerdir.

 

Tehdit modelleme ile ilgili genel terimler ile ilgili detaylı bilgi için kaynaklardaki Synopsys bağlantısı incelenebilir.

 

 

C) Kişisel Tedbirler

Kişisel olarak mağdur olmaktan kaçınmak ve güvenlik riskini düşürmek için gerçekleştirilebilecek bazı adımlar aşağıdaki gibi sıralanabilir.

  • Çalışanlar veya diğer şirket içi bilgiler hakkında soru soran kişilerden istenmeyen telefon görüşmeleri, ziyaretler veya e-posta mesajlarına şüpheyle yaklaşın. Bilinmeyen bir kişi meşru bir kuruluştan olduğunu iddia ederse, kimliğini doğrudan şirketle doğrulamaya çalışın.
  • Bir kişinin bu bilgilere sahip olma yetkisinden emin olmadığınız sürece, yapısı veya ağları da dahil olmak üzere kuruluşunuz hakkında kişisel bilgi veya başka bir bilgi vermeyin.
  • Kişisel veya finansal bilgileri e-postayla ifşa etmeyin ve bu bilgiler için e-posta taleplerine yanıt vermeyin. Buna ek olarak, e-postayla gönderilen içerisindeki bağlantılara güvenlik kontrolü sağlamadan tıklamayın.
  • Bir web sitesinin güvenliğini kontrol etmeden önce İnternet üzerinden hassas bilgiler göndermeyin.
  • Bir web sitesinin URL’sine dikkat edin. Kötü amaçlı web siteleri meşru bir siteyle aynı görünebilir, ancak URL yazımın bir varyasyonunu veya farklı bir alan adını kullanabilir (ör. .com ve .net).
  • Bir e-posta talebinin yasal olup olmadığından emin değilseniz, doğrudan şirketle iletişime geçerek bunu doğrulamaya çalışın. Maildeki talebe bağlı bir web sitesinde verilen iletişim bilgilerini kullanmayın; bunun yerine, iletişim bilgileri için önceki ifadeleri kontrol edin. Kimlik avı saldırıları hakkındaki bilgiler, bazı gruplardan çevrimiçi olarak da edinilebilir.
  • İstenmeyen trafiğin bir kısmını azaltmak için anti-virüs yazılımı, güvenlik duvarları ve e-posta filtreleri kurun ve bakımını yapın.
  • E-posta istemciniz ve Web tarayıcınız tarafından sunulan kimlik avı önleme özelliklerinden yararlanın.

 

D) Kurumsal Tedbirler

Kurumlar olarak mağdur olmaktan kaçınmak ve güvenlik riskini düşürmek için gerçekleştirilebilecek bazı adımlar aşağıdaki gibi sıralanabilir.

  • Bir çalışan / personel düzeyinde güven çerçeveleri oluşturmak (yani, hassas bilgilerin ne zaman / nerede / neden / nasıl ele alınması gerektiğini belirtilmesi ve personelin eğitilmesi).
  • Hangi bilgilerin hassas olduğunu belirlemek ve sosyal mühendislik ve güvenlik sistemlerindeki (bina, bilgisayar sistemi vb.) arızalara maruz kalma durumunu değerlendirmek.
  • Hassas bilgilerin işlenmesi için güvenlik protokolleri, politikaları ve prosedürleri oluşturmak.
  • Çalışanlara pozisyonları ile ilgili güvenlik protokolleri konusunda eğitim vermek.
  • Güvenlik çerçevesi için habersiz, periyodik testler yapmak.
  • Yukarıdaki adımları düzenli olarak gözden geçirmek; bilgi bütünlüğüne yönelik hiçbir çözüm mükemmel değildir.
  • Kilitli çöp kutuları olan, anahtarları sadece atık yönetim şirketi ve temizlik personeli ile sınırlı bir atık yönetimi hizmeti kullanmak.

 

E) Tehdit Modelleme Yöntemleri

Pek çok tehdit modelleme yöntemi geliştirilmiş olup, odaklandığı merkeze göre farklılık gösterebilmektedir. Bazıları soyut ve diğerleri insan merkezlidir, bazı yöntemler özellikle risk veya gizlilik endişelerine odaklanır. Potansiyel tehditlere ilişkin daha sağlam ve çok yönlü bir görünüm oluşturmak için birleştirilebilirler.

Tehdit modellemesi, potansiyel sorunların erken tespit edilebildiği ve düzeltilebildiği geliştirme döngüsünün başlarında gerçekleştirilmeli ve böylece daha maliyetli bir düzeltmenin önüne geçilmelidir. Güvenlik gereksinimleri hakkında düşünmek için tehdit modellemesini kullanmak, tehditleri baştan azaltmaya yardımcı olan proaktif mimari kararlara yol açabilir.

Bir tehdit modelleme metodolojisi benimsenirken, yaklaşım, süreç ve hedeflerdeki farklılığı anlamak da aynı derecede önemlidir. Siber güvenliği ve tehdit istihbaratı uygulamalarını iyileştirmek için kullanılan birkaç siber tehdit modelleme yöntemi vardır. Tehdit istihbaratının eyleme geçirilebilir olmasını sağlamak için, bilgi güvenliği uzmanları hangi yöntemin belirli iş hedefleri ve hedefleriyle uyumlu olduğunu tespit etmelidir.

En önemli tehdit modelleme metodolojileri aşağıdaki gibi sıralanabilir.

 

E.1) STRIDE

1999’da icat edilen ve 2002’de Microsoft tarafından benimsenen STRIDE, şu anda en olgun tehdit modelleme yöntemidir. STRIDE, aşağıdaki tabloda gösterildiği gibi bir anımsatıcı olan adına dayalı olarak bilinen genel bir tehdit kümesi uygular:

 

STRIDE, sistem detay tasarımını değerlendirerek, yerinde (in-place) sistemi modeller. Veri akış diyagramları (Data Flow Diagram – DFD) oluşturarak, sistem varlıklarını, olayları ve sistemin sınırlarını tanımlamak için kullanılır.

 

E.2) PASTA

The Process for Attack Simulation and Threat Analysis (PASTA), 2012’de geliştirilen risk merkezli bir tehdit modelleme çerçevesidir. Yedi adımdan oluşan bu yöntem, iş hedeflerini ve teknik gereksinimleri bir araya getirmeyi amaçlamaktadır.

 

Farklı aşamalarda çeşitli tasarım ve çözümleme araçları kullanır. Bu yöntem, önemli karar vericileri dahil ederek ve işlemlerden, yönetişimden, mimariden ve geliştirmeden güvenlik girdisi gerektirerek tehdit modelleme sürecini stratejik bir düzeye yükseltir. Yaygın bir şekilde risk merkezli bir çerçeve olarak kabul edilen PASTA, tehdit sayımı ve puanlama şeklinde varlık merkezli bir çıktı üretmek için saldırgan merkezli bir bakış açısı kullanır.

 

E.3) TRIKE

Risk yönetimi açısından güvenlik denetimi yaparken kullanılan açık kaynaklı bir tehdit modelleme metodolojisidir.

 

TRIKE tehdit modellemesi, Gereksinim Modeli ve Uygulama Modeli olmak üzere iki modelin birleşimidir. Gereksinim modeli, bir BT sisteminin güvenlik özelliklerini açıklayan ve her bir varlığa kabul edilebilir risk seviyeleri atayan TRIKE modellemesinin temelidir. Bu model aynı zamanda kavramsal bir çerçeve sağlayarak farklı güvenlik ekipleri ve paydaşlar arasında koordinasyonu sağlar. Bundan sonra uygulama modeli gelir. Bu modelde, veri akışını ve kullanıcının bir sistem içinde gerçekleştirdiği eylemleri göstermek için bir Veri Akış Şeması (DFD- Data Flow Diagram) oluşturulur. Bu modelde, tehditler numaralandırmak ve bir risk değeri atamak için analiz edilir. Buna dayanarak, öncelik ve atanan risklere göre tehditleri ele almak için güvenlik kontrolleri veya önleyici tedbirler tanımlanır.

 

E.4) VAST

Görsel, Çevik ve Basit Tehdit (VAST- The Visual, Agile, and Simple Threat) Modelleme yöntemi, otomatik bir tehdit modelleme platformu olan ThreatModeler’e dayanır.

 

Ölçeklenebilirliği ve kullanılabilirliği, farklı paydaşlar için uygulanabilir ve güvenilir sonuçlar üretmek için tüm altyapı boyunca büyük kuruluşlarda benimsenmesine imkan verir. Operasyonlardaki farklılıkları ve geliştirme ve altyapı ekipleri arasındaki endişeleri kabul eden VAST, iki tür model oluşturmayı gerektirir: uygulama tehdit modelleri ve operasyonel tehdit modelleri. Uygulama tehdit modelleri, mimari bakış açısını temsil eden süreç akış diyagramlarını kullanır. Operasyonel tehdit modelleri, DFD’lere dayalı bir saldırgan bakış açısından oluşturulur. Bu yaklaşım, VAST’ın kuruluşun geliştirme ve DevOps yaşam döngülerine entegrasyonuna olanak tanır.

 

E.5) DREAD

DREAD metodolojisi, tehditleri derecelendirerek risk olasılığını değerlendirmek, analiz etmek ve bulmak için kullanılır.

 

E.6) Diğerleri

Tehdit modellemesi, sistemlerin daha güvenli ve güvenilir hale getirmeye yardımcı olabilir. Modellerden bazıları tipik olarak tek başına kullanılır, bazıları genellikle diğerleriyle birlikte kullanılır ve bazıları farklı yöntemlerin nasıl birleştirilebileceğinin örnekleridir. Bir projede en iyi yöntemin hangisi olduğunu seçmek için, hedeflemek istenilen belirli alanları (risk, güvenlik, gizlilik), tehdit modellemenin ne kadar süre yapılması gerektiğini, tehdit modelleme konusunda ne kadar deneyim olduğunu, ne kadar dahil olduğunun düşünülmesi gerekir. Bu yöntemlerin tümü, zamanın aciliyet dilimine ve modellemenin ne sıklıkla tekrarlandığına bağlı olarak Çevik (Agile) bir ortamda kullanılabilir.

En önemli tehdit modelleri ve detayları ile ilgili aşağıdaki özet tablo kullanılabilir.

 

F) Tehdit Modelleme Araçları

Tehdit modelleme için bir çok araç bulunmaktadır. Bu araçlar aşağıdaki gibi sıralanabilir.

  • Microsoft Threat Modelling Tool [https://docs.microsoft.com/en-us/azure/security/develop/threat-modeling-tool]
  • ThreatModeler [https://threatmodeler.com/]
  • securiCAD Professional [https://iriusrisk.com/threat-modeling-tool/]
  • IriusRisk [https://iriusrisk.com/threat-modeling-tool/]
  • SD Elements [https://www.securitycompass.com/sdelements/]
  • Tutamen [https://www.tutamantic.com/]
  • OWASP Threat Dragon [https://owasp.org/www-project-threat-dragon/]

 

Kaynaklar

https://www.amazon.com/CISSP-Study-Guide-Eric-Conrad/dp/0128024372

CISSP Study Notes


https://gist.github.com/penafieljlm/abf5b549f23eca2a8a4aab353bf3c44b#threat-modeling
https://thorteaches.com/wp-content/uploads/2018/11/The-memory-palace-Prashant-Mohan.pdf
https://insights.sei.cmu.edu/sei_blog/2018/12/threat-modeling-12-available-methods.html
https://www.eccouncil.org/threat-modeling/
https://www.cisco.com/c/en/us/products/security/what-is-threat-modeling.html
https://www.simplilearn.com/what-is-threat-modeling-article

Microsoft Tehdit Modelleme Aracı ile Güvenli Yazılım Geliştirme


https://www.synopsys.com/blogs/software-security/threat-modeling-vocabulary/

 

 

 

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz

This site uses Akismet to reduce spam. Learn how your comment data is processed.