akademİk bİlİŞİm 2010

Post on 10-Jan-2016

41 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

AKADEMİK BİLİŞİM 2010. Yazılım Geliştirme Süreçleri ve ISO 27001 Bilgi Güvenliği Yönetim Sistemi. Yazarlar: Sunum: Mustafa ÖZLÜ. 1. KONULAR. Giriş Yazılım Geliştirme Süreçleri Güvenli Yazılım Geliştirme ISO 27001 Bilgi Güvenliği Yönetim Sistemi YGS ve ISO 27001 Kontrolleri Sonuç. - PowerPoint PPT Presentation

TRANSCRIPT

1

AKADEMİK BİLİŞİM 2010

Yazılım Geliştirme Süreçleri ve

ISO 27001 Bilgi Güvenliği Yönetim Sistemi

1

Dr. İzzet Gökhan ÖZBİLGİN

Bilişim UzmanıSermaye Piyasası Kurulu

gokhan@spk.gov.tr

Mustafa ÖZLÜBilgisayar MühendisiTürk Patent Enstitüsü

mustafa.ozlu@tpe.gov.tr

Yazarlar:

Sunum: Mustafa ÖZLÜ

2

KONULAR

• Giriş • Yazılım Geliştirme Süreçleri• Güvenli Yazılım Geliştirme• ISO 27001 Bilgi Güvenliği Yönetim Sistemi• YGS ve ISO 27001 Kontrolleri• Sonuç

2

3

GİRİŞ

- Yazılım geliştirmeyi 5 aşamada ele almak mümkündür- Aşamalarda güvenlik konusu önemlidir- Genelde aşamalar bittikten sonra ele alınmaktadır - Bazen kısmen ya da tümüyle ihmal edilmektedir- Oysaki en baştan düşünülmüş olması ve yaşatılması gerekir- Uluslararası kabul görmüş ISO 27001 BGYS bilgi güvenliğini yönetmeyi sağlayan bir standarttır

3

4

GİRİŞ

- Standart kamu ya da özel, tüm kuruluşlar için uygun- Etkili güvenlik yönetim sisteminin gerekliklilerini ortaya koyar- Yazılımda güvenlik unsurlarının yönetilmesi için rehber olabilecek standarttır- Risklerin standartla ilişkisini inceleyeceğiz- Yazılım geliştirme sürecinde ele alınması gereken standartta yer alan kontrolleri değerlendireceğiz

4

5

GİRİŞ

- Yazılımda her gün yeni diller, modeller ve yaklaşımlar

- Planlanan zamanın gerisinde kalma- Bütçeyi aşma- Düşük kalite- Sürekliliği sağlayamama- Güvenliği ve güvenirliliği sağlayamama- Kullanıcı taleplerini karşılayamama

5

6

GİRİŞ

- Gartner araştırmasına göre bilişim güvenliği ihlallerinin yazılım güvenliği problemlerinden kaynaklananlarının oranı %80’dir

- Genel olarak problemlerin çoğu, yazılım geliştirme sürecinin en başında gereksinim ve sistem analizlerinin doğru ve yeterli yapılmamasından kaynaklanmaktadır

- Bu durum güvenlik riski oluşturmakta, bilgiye yönelik tehditlerin ortaya çıkmasına neden olmaktadır

6

7

GİRİŞ

- Bilginin gizliliğini, bütünlüğünü ve erişilebilirliğini hedefleyen tehditlere karşı yazılımlarda bilgi güvenliğinin sağlanmış olması gerekir

-Bilgi Güvenliği hedefleri

- Tehditlerin farkında olmak- İşlerin devamlılığını sağlama- Kayıpları en aza indirme- Kuruluşların varlıklarının her koşulda gizliliği, erişebilirliği ve bütünlüğü koruma

7

8

GİRİŞ

- Bilgi Güvenliği Yönetim Sistemi (BGYS) bu amaçları gerçekleştirmek için ortaya çıkan ve sürekli geliştirilen bir sistemdir

- Yazılım geliştirme sürecinde BGYS sağlanmış olması;

• Yazılımdaki bilgilerin kullanıma hazır olması• Sadece yetkisi olanların erişebilmesi• Bilginin doğru ve güncel olması

8

9

KONULAR

• Giriş • Yazılım Geliştirme Süreçleri• Güvenli Yazılım Geliştirme• ISO 27001 Bilgi Güvenliği Yönetim Sistemi• YGS ve ISO 27001 Kontrolleri• Sonuç

9

10

YAZILIM GELİŞTİRME SÜREÇLERİ

YAZILIM

Bir bilgisayarda donanıma hayat veren ve bilgi işlemde kullanılan programlar, yordamlar, programlama dilleri ve belgelemelerin tümüdür.

10

11

YAZILIM GELİŞTİRME SÜREÇLERİ

YAZILIM GELİŞTİRME

Yazılım kod yazmak, tasarım yapmak değildir

Yazılımın hem üretim, hem de kullanım süreci boyunca geçirdiği tüm aşamalar olarak tanımlanabilir.

11

12

YAZILIM GELİŞTİRME SÜREÇLERİ

YAZILIM GÜVENLİĞİ

Geçmişte yazılım geliştirmede başvurulan iş akış şemaları gibi yöntemler özellikle güvenlik odaklı olmadıklarından günümüzde gereksinimleri karşılayamaz hale gelmiş ve etkinliklerini yitirmişlerdir.

12

13

YAZILIM GELİŞTİRME SÜREÇLERİ

YAZILIM GÜVENLİĞİ

Yazılımın her aşamasında güvenliğe ilişkin ortaya çıkabilecek problemleri gözeten etkin bir geliştirme süreci sonuç ürünün daha güvenilir olmasına önemli katkı sağlayacaktır.

13

14

YAZILIM GELİŞTİRME SÜREÇLERİ

YAZILIM GELİŞTİRME AŞAMALARI

Yazılım mühendisliğindeki diğer modellere temel teşkil eden “Çağlayan Modeli (Waterfall Model)” yazılım yaşam döngüsünü analiz, tasarım, kodlama, test ve bakım olmak üzere beş aşamada ele almaktadır.

14

15

YAZILIM GELİŞTİRME SÜREÇLERİ

ANALİZBir problemin çözümü olarak nitelediğimiz yazılımların ne yapacağını ve nasıl yapacağını belirlediğimiz yani problemi tanımladığımız aşamadır

TASARIMAnaliz aşaması sonucunda belirlenen gereksinimlere yanıt verecek yazılımın temel yapısının oluşturulduğu aşamadır

KODLAMAKodlama aşaması, tasarım sürecinde ortaya konan veriler doğrultusunda yazılımın gerçekleştirilmesi aşamasıdır

15

16

YAZILIM GELİŞTİRME SÜREÇLERİ

TESTTest aşaması, yazılım kodlanması sürecinin ardından gerçekleştirilen sınama ve doğrulama aşamasıdır.

BAKIMYazılımın tesliminden sonra hata giderme ve yeni eklentiler yapma aşamasıdır.

16

17

KONULAR

• Giriş • Yazılım Geliştirme Süreçleri• Güvenli Yazılım Geliştirme• ISO 27001 Bilgi Güvenliği Yönetim Sistemi• YGS ve ISO 27001 Kontrolleri• Sonuç

17

18

GÜVENLİ YAZILIM GELİŞTİRME

-Yazılımların yaygın olarak kullanılmaya başlandığı ilk yıllarda kaliteli ve olgun yazılım üretmek

- Son yıllarda ise özellikle güvenli yazılım geliştirmek için çok sayıda model ve çerçeve üzerinde çalışılmıştır

- Bu durumun en büyük tetikleyicisi son yıllarda güvenlik açıklıklarının artmasıdır

18

19

GÜVENLİ YAZILIM GELİŞTİRME

Günümüzde başlıca güvenli yazılım geliştirme modelleri ;

1. Yetenek Olgunluk Modeli (CMM - Capability Maturity Model)2. Tümleşik Yetenek Olgunluk Modeli (CMMI Capability Maturity Model Integration)3.Federal Havacılık Yönetim Tümleşik Yetenek Olgunluk Modeli (FAA-iCMM Federal Aviation integrated Maturity Model)4. Güvenli CMM/Güvenli Yazılım Metodolojisi (Trusted CMM/Trusted Software Methodology (T-CMM, TSM)) 5. Sistem Güvenlik Mühendisliği Yetenek Olgunluk Modeli (SSE-CMM - Systems Security Engineering Capability Maturity Model)6. Microsoft Security Development Lifecycle (SDL)7.OpenSAMM Modeli OWASP (Open Web Application Security Platform)

19

20

GÜVENLİ YAZILIM GELİŞTİRME

Yazılım geliştirmede erken bir süreçte farkına varılan yazılım açıklıklarının düzeltilmesinin daha ileri süreçlerde farkına varılan açıklıklara göre daha az maliyetli olacağı yazılım endüstrisince yaygın olarak kabul edilen bir ilkedir.

20

21

GÜVENLİ YAZILIM GELİŞTİRME

Güvenli yazılım geliştirme sürecinde ele alınması gereken temel olarak dokuz ana güvenlik konusu vardır;

1.Girdi Geçerleme (Input Validation)2.Kimlik Doğrulama (Authentication)3.Yetkilendirme (Authorization)4.Konfigürasyon Yönetimi (Configuration Management)5.Hassas Bilgi (Sensitive Information)6.Kriptografi (Cryptograhy) 7.Parametre Manipülasyonu (Parameter Manipulations)8.Hata Yönetimi (Exception Management) 9.Kayıt Tutma ve Denetim (Logging and Auditing)

21

22

KONULAR

• Giriş • Yazılım Geliştirme Süreçleri• Güvenli Yazılım Geliştirme• ISO 27001 Bilgi Güvenliği Yönetim Sistemi• YGS ve ISO 27001 Kontrolleri• Sonuç

22

23

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

Bilgi Güvenliği Gereksinimi

• Bilgi sistemlerinin hayata geçmesiyle ortaya çıkan depolama ve işleme imkânlarının artması, izinsiz erişimler, bilginin yetkisiz imhası, yetkisiz değiştirilmesi veya yetkisiz görülmesi ihtimallerinin artması gibi hususlar nedeniyle bilgi güvenliği kavramı gündeme gelmektedir

• Bilgi hangi biçime girerse girsin veya ne tür araçlarla paylaşılır veya depolanır olursa olsun, her zaman uygun bir şekilde korunmalıdır.

• Bilgi sistemlerinin çoğu, bilgi saklanırken, paylaşılırken, gönderilirken güvenlik kaygıları düşünülerek tasarlanmamıştır.

23

24

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

Bilgi Güvenliği Yönetim Sistemi

• Bilgi güvenliği ihlali ve buradan doğacak kayıpların riskini minimize etmek kurulan sistemlerin en başında BGYS gelmektedir.

• BGYS, bilgi güvenliğini kurmak, işletmek, izlemek ve geliştirmek için iş riski yaklaşımına dayalı, dokümante edilmiş, işlerliği ve sürekliliği garanti altına alınmış bir yönetim sistemidir.

• BGYS kurumunuzdaki tüm bilgi varlıklarının değerlendirilmesi ve bu varlıkların sahip oldukları zayıflıkları ve karşı karşıya oldukları tehditleri göz önüne alan bir risk analizi yapılmasını gerektirir.

24

25

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

ISO 27001 • BGYS, bağımsız kuruluşların ya da tarafların ihtiyaçlarına göre özelleştirilmiş güvenlik kontrollerinin gerçekleştirilmesi için gereksinimleri belirtir. BGYS’nin ihtiyaç duyduğu gereksinimlere cevap vermek için çok sayıda standart vardır. Bunların en önde geleni ISO 27001 standardıdır.

• ISO 27001 kurumların bilgi güvenliği yönetim sistemi kurmaları için gereklilikleri tanımlayan tek denetlenebilir BGYS standardıdır. ISO 27001 ülkelere göre özel tanımlar içermeyen, genel tanımların bulunduğu uluslararası standardıdır.

•ISO 27001 standardı; kuruluşların kendi bilgi güvenlik sistemlerini sağlamasını mümkün kılan teknoloji tarafsız, satıcı tarafsız yönetim sistemleri için bir çerçeve sağlar.

25

26

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

ISO 27001

• ISO 27001, kuruma uygun politikalar, prosedürler ve kılavuzlar oluşturmaya yol gösteren uluslararası kabul görmüş yapısal bir metodoloji sunar.

• ISO 27001 sertifikası, kurumların güvenlik seviyesine ve kurumun konuya ciddi yaklaşımına ilişkin bir göstergedir. (Örn: ESHS)

• Bilgi güvenliği yönetimi konusunda ilk standart British Standard Institute (BSI) tarafından geliştirilen BS 7799’dur. BS 7799 “Pratik Kurallar” ve “BGYS Gerekleri” başlıklı iki kısımdan oluşmaktaydı. BS 7799 birinci kısım daha sonra ISO tarafından 2000 yılında “ISO 17799” olarak kabul edilmiştir.

26

27

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

TS ISO 27001

• 2002’de BSI; BS 7799-2’yi çıkartmıştır. ISO, 2005 yılında ISO/IEC 1799:2005’i ve BS 7799-2’nin yeni hali olan ISO/IEC 27001:2005’i yayınlamıştır. ISO 27001, 2005 yılında yayınlanmasıyla yürürlüğe girmiş ve ISO/IEC 27000 standart serisi altında yerini almıştır.

• Söz konusu bu standart 2006 yılında Türk Standardı olarak kabul edilerek, ”TS ISO/IEC 27001 Bilgi �Teknolojisi - Güvenlik Teknikleri - Bilgi Güvenliği Yönetim Sistemleri – Gereksinimleri” adıyla yayınlanmıştır .

27

28

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

ISO 27000 AİLESİ

• Bilgi güvenliği ile ilgili olarak ISO 27000 serisi güvenlik standartları, kullanıcıların bilinçlenmesi, güvenlik risklerinin azaltılması ve de güvenlik açıklarıyla karşılaşıldığında alınacak önlemlerin belirlenmesinde temel bir başvuru kaynağıdır. Bu standartlar temel ISO’nun 9000 kalite ve 14000 çevresel yönetim standartlarıyla da ilgilidir.

• ISO 27000 standardı, ISO 27000 standartlar ailesi ile ilgili kavramların açıklanmasını sağlayan ve bilgi güvenliği yönetimine yönelik temel bilgileri içeren bir standarttır.

• ISO 27000 standartlarının büyük bir çoğunluğu bilenen, diğerleri ise basım aşamasında olan standartlar olarak verilebilir.

28

29

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

29

30

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

PUKÖ Modeli

• ISO 27001, BGYS’yi kurmak, işletmek, izlemek, gözden geçirmek, sürdürmek ve iyileştirmek için standart proses yaklaşımını benimsemiştir.

•Bu proses yaklaşımı güvenlik önlemlerinin belirlenip kurulması, uygulanması, etkinliğinin gözden geçirilmesi ve iyileştirilmesi süreçlerini ve bu süreçlerin sürekli olarak tekrarlanmasını içerir. Bu süreçler Planla, Uygula, Kontrol et, Önlem al (PUKÖ) döngüsünden oluşan bir model olarak da ortaya konmuştur.

• BGYS’de kurum kendine bir risk yönetimi metodu seçmeli ve risk işleme için bir plan hazırlamalıdır. Risk işleme için standartta öngörülen kontrol hedefleri ve kontrollerden seçimler yapılmalı ve uygulanmalıdır.

30

31

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

PUKÖ Model’inin süreçleri aşağıdaki gibidir:

Planla: BGYS’nin kurulmasıSonuçları kuruluşun genel politikaları ve amaçlarına göre dağıtmak için, risklerin yönetimi ve bilgi güvenliğinin geliştirilmesiyle ilgili BGYS politikası, amaçlar, hedefler, prosesler ve prosedürlerin kurulması.

Uygula: BGYS’nin gerçekleştirilmesi ve işletilmesiBGYS politikası, kontroller, prosesler ve prosedürlerin gerçekleştirilip işletilmesi.

31

32

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

Kontrol Et: BGYS’nin izlenmesi ve gözden geçirilmesiBGYS politikası, amaçlar ve kullanım deneyimlerine göre proses performansının değerlendirilmesi ve uygulanabilen yerlerde ölçülmesi ve sonuçların gözden geçirilmek üzere yönetime rapor edilmesi.

Önlem Al: BGYS’nin sürekliliğinin sağlanması ve iyileştirilmesiBGYS’nin sürekli iyileştirilmesini sağlamak için, yönetimin gözden geçirme sonuçlarına dayalı olarak, düzeltici ve önleyici faaliyetlerin gerçekleştirilmesi .

32

33

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

33

34

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

Güvenlik Kontrol Alanları

ISO 27001’de BGYS oluşturmada güvenlik için gereken 11 kontrol alanı, 39 kontrol hedefi ve 133 kontrolü tanımlayan bir uygulama kılavuzudur

34

35

ISO 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ

Güvenlik Kontrol Alanları

1- (A.5) Güvenlik Politikası2- (A.6) Bilgi Güvenliği Organizasyonu3- (A.7) Varlık Yönetimi4- (A.8) İnsan Kaynakları Güvenliği5- (A.9) Fiziksel ve Çevresel Güvenlik6- (A.10) Haberleşme ve İşletim Yönetimi7- (A.11) Erişim Kontrolü8- (A.12) Bilgi Sistemleri Edinim, Geliştirme ve Bakımı9- (A.13) Bilgi Güvenliği İhlal Olayı Yönetimi10- (A.14) İş Sürekliliği Yönetimi11- (A.15) Uyum

35

36

KONULAR

• Giriş • Yazılım Geliştirme Süreçleri• Güvenli Yazılım Geliştirme• ISO 27001 Bilgi Güvenliği Yönetim Sistemi• YGS ve ISO 27001 Kontrolleri• Sonuç

36

37

YGS ve ISO 27001 KONTROLLERİ

• ISO 27001, gerek yazılım geliştirme süreçleriyle doğrudan ya da dolaylı ilişki içerisinde olan birçok kontrol içermektedir.

• Bu kontroller ve kontrol kapsamında yazılım geliştirme süreci aşamalarında gerçekleştirilmesi gereken hususlar şöyledir.

37

38

YGS ve ISO 27001 KONTROLLERİ

Analiz Aşamasına İlişkin Kontroller

A.12.1.1 - Güvenlik gereksinimleri analizi ve belirtimi A.6.1.4 - Bilgi işleme tesisleri için yetki prosesiA.10.6.2 - Ağ hizmetleri güvenliğiA.10.8.1 - Bilgi değişim politikaları ve prosedürleriA.15.1.2 - Fikri mülkiyet hakları (IPR)A.10.8.2 - Değişim anlaşmaları

38

39

YGS ve ISO 27001 KONTROLLERİ

Tasarım Aşamasına İlişkin Kontroller

A.10.8.5 - İş bilgi sistemleriA.12.5.4 - Bilgi sızması A.11.5.6 - Bağlantı süresinin sınırlandırılmasıA.10.6.1 - Ağ kontrolleriA.11.6.1 - Bilgi erişim kısıtlaması

39

40

YGS ve ISO 27001 KONTROLLERİ

Kodlama Aşamasına İlişkin Kontroller

A.10.10.3 - Kayıt bilgisinin korunmasıA.12.2.1 - Giriş verisi geçerlemeA.12.2.4 - Çıkış verisi geçerlemeA.12.2.2 - İç işleme kontrolüA.12.2.3 - Mesaj bütünlüğüA.10.4.1 - Kötü niyetli koda karşı kontrollerA.10.8.4 - Elektronik mesajlaşma

40

41

YGS ve ISO 27001 KONTROLLERİ

Kodlama Aşamasına İlişkin Kontroller (2)

A.10.4.2 - Mobil koda karşı kontrollerA.12.3.1 - Kriptografik kontrollerin kullanımına ilişkin politikaA.12.3.2 - Anahtar yönetimiA.12.5.5 - Dışarıdan sağlanan yazılım geliştirmeA.12.5.1 - Değişim kontrol prosedürleri

41

42

YGS ve ISO 27001 KONTROLLERİ

Test Aşamasına İlişkin Kontroller

A.10.1.4 - Geliştirme, test ve işletim olanaklarının ayrımıA.12.2.1 - Giriş verisi geçerlemeA.12.2.4 - Çıkış verisi geçerlemeA.12.2.2 - İç işleme kontrolüA.12.4.2 - Sistem test verisinin korunmasıA.8.3.3 - Erişim haklarının kaldırılması

42

43

YGS ve ISO 27001 KONTROLLERİ

Bakım Aşamasına İlişkin Kontroller

A.12.5.3 - Yazılım paketlerindeki değişikliklerdeki kısıtlamalarA.11.2.4 - Kullanıcı erişim haklarının gözden geçirilmesiA.12.4.3 - Program kaynak koduna erişim kontrolüA.10.5.1 - Bilgi yedekleme

43

44

YGS ve ISO 27001 KONTROLLERİ

Bakım Aşamasına İlişkin Kontroller (2)

A.9.2.7 - Mülkiyet çıkarımıA.10.8.3 - Aktarılan fiziksel ortamA.9.2.6 - Teçhizatın güvenli olarak elden çıkarılması ya da tekrar kullanımı A.12.4.1 - Operasyonel yazılımın kontrolüA.12.5.2 - İşletim sistemindeki değişikliklerden sonra teknik gözden geçirme

44

45

KONULAR

• Giriş • Yazılım Geliştirme Süreçleri• Güvenli Yazılım Geliştirme• ISO 27001 Bilgi Güvenliği Yönetim Sistemi• YGS ve ISO 27001 Kontrolleri• Sonuç

45

46

SONUÇLAR

• Kurumların güvenli bir ortamda faaliyet gösterebilmeleri için dokümante edilmiş bir BGYS’yi hayata geçirmeleri gerekmektedir.

• Bu kapsamda ISO 27001 standardı tüm dünyada kabul görmüş ve en iyi uygulamaları bir araya getiren bir modeldir.

• Standart bu yönetim sistemini oluştururken ele aldığı önemli alanlardan biri de yazılım geliştirme süreçlerinde güvenliğinin sağlanması ve buna ilişkin olarak yazılım geliştirme politikasının oluşturulmasıdır.

46

47

SONUÇLAR

• Yazılım geliştirme süreçlerinde standardın belirttiği gizlilik, bütünlük ve erişebilirlik kavramları mutlaka dikkate alınmalıdır.

• Yazılım geliştirmenin her aşamasında belirli bir güvenlik politikasının uygulanması kritik önem taşımaktadır.

• Kurumsal güvenlik için öncelikle yazılı olarak kurallar belirlenmelidir.

47

48

SONUÇLAR

Etkin bir BGYS kurmaya çalışan ve bunu ISO 27001 standardına uyumlu yapmak isteyen tüm kurumların oluşturacağı bu politikada belli kontrol maddeleri asgari olarak yer almalıdır.

48

49

AKADEMİK BİLİŞİM 2010

Teşekküler…

49

Dr. İzzet Gökhan ÖZBİLGİN

Bilişim UzmanıSermaye Piyasası Kurulu

gokhan@spk.gov.tr

Mustafa ÖZLÜBilgisayar MühendisiTürk Patent Enstitüsü

mustafa.ozlu@tpe.gov.tr

top related