Salı, Ekim 16, 2007

Başkasının ağı / sistemi üzerinde güvenlik açıkları aramak


Bir başkasının ağı ve sistemi üzerinde güvenlik açıkları aramak için tarama ve denemeleri yapmak?
Bu süreç ne kadar yasal, ne kadar etik (ethic)?
Bu konuyu ULAK-CSIRT olarak aramızda tartıştık.
Benim fikrim, böyle bir eylem gerçekleştirilecekse öncelikle ilgili kurumdan izin alınması ve bilgilendirilmesi gerektiğidir.
ULAK-CSIRT'den Gökhan Eryol 'un bu konudaki yorumlarını iletmek istiyorum.

"Başkasının ağı/sistemi üzerinde güvenlik açıkları aramak" konusunda Turkiye'de netlik kazanmış bir durum bildiğim kadarıyla yok.
Ama, TF-CSIRT eğitimde öğrendiğim kadarıyla bu durum ülkeler arasında farklılık gösteriyor. Genel yaklaşım bu tarz hareketlerin yasadışı olması gerektiği yönünde olmakla beraber, kanunlarında net olarak bunun yasak oldugunu yazan ülke sayısı az. Ama tersini yazan ülkeler var, örneüin Ingiltere kanunlarına göre, bırakın port taramayı DOS yapmak dahi serbest, DDOS ise açıkça yasaklanmış. Tartışılan bir diğer konu ise, şifre koyulmamış sistemi kıran kişinin suçlu sayılıp sayılmaması. Hatırladığım kadarıyla Almanya'da da suçlu sayılmamakta.

Sonuç ise, böyle bir aktivite içerisine girecekseniz, karşı tarafin sistemine zarar verip vermediğinize göre durum değişiyor. Eger zarar verilmiyorsa, yasal anlamda sıkıntı olmaması ihtimali yüksek. Ama zarar veriliyorsa, verilen zararın büyüklüğüne göre zaten mevcut TCK'ya göre yargılanmanız söz konusu. Öyle bir yargı ile karşılaşıldığında, kapısı açık bırakılan eve girip bir sorun var mi diye kontrol eden güvenlik görevlisi (veya kapıcı) ile, girip de birşey çalan hırsız arasında değisen analojinizi, düzgün bir şekilde mahkemede anlatabilmeniz gerekiyor. Her durumda, yapacağınız işi tanımladıktan sonra ikinci yapacağınız iş, avukatınızla, hukuk müşavirliğinizle görüşmeniz ve onların görüşü doğrultusunda hareket etmeniz gerektiği. Zira yargılanmanız soz konusu olursa sizi savunacak kişiler onlar ve işin başında onların görüşünü olumluya çeviremiyorsanız bu işe hiç başlamamanızda fayda var.

Gökhan Eryol / ULAK-CSIRT

Cuma, Ekim 05, 2007

OWASP ilk 10 - En Kritik 10 Web Uygulaması Güvenlik Zayıflıkları – 2007

Ulak-CSIRT Web Güvenliği Çalışma Grubu olarak, OWASP’ın yaygınlaşmasında/tanınmasında anahtar rolü oynayan en önemli dokümanlardan bir tanesi olan OWASP TOP TEN - 2007 belgesini Türkçe’ye çevirdik.

“OWASP ilk 10 - En Kritik 10 Web Uygulaması Güvenlik Zayıflıkları - 2007″ adı altındaki bu dokümana direk buradan veya buradan ulaşabilirsiniz.

Salı, Ekim 02, 2007

ATLAS - ISC

ATLAS (http://atlas.arbor.net/), izlediği ağ üzerinden çeşitli istatistikleri veren bir site.
Özellikle anormal trafikler hakkında bilgi edinmek için kullanılabilir.
Summary - Botnet ve DOS Attacks kısmında güzel bilgiler bulunmakta.

Bilmeyenler için ISC 'yi de hatırlatalım
http://isc.sans.org/index.html

Kod Tarayıcıları (Code Scanners)

Uygulamalardaki, özellikle web uygulamalarındaki açıklar sistemlerimiz için en büyük açıkları oluşturuyorlar. Peki bunların saptanması o kadar kolay mı? Bu saptama süreci için hazırlanan programlar ne kadar başarılı?

Justin Schuh tarafından hazırlanan "Code Scanners False Sense Of Security?" belgesi incelemeye değer.
http://www.networkcomputing.com/showArticle.jhtml?articleID=199000936&pgno=5

Pazartesi, Ekim 01, 2007

Apache Güvenliği

Apache web sunucularının güvenliğini sağlamak için yapılabilecekleri yazan bir sürü döküman bulmak mümkün. Bir yerlerden başlamalı diyenlerdenseniz
http://articles.techrepublic.com.com/2415-7343_11-159903.html
ile başlayabilirsiniz. Yapılacakları özetlersek:
  • İşletim sistemi güçlendirmesi ve güncellemeleri
  • Sadece ihtiyaç duyulan servislerin kurulması
  • Sunucu hakkında bilgi toplama girişimlerinin zorlaştırılması
  • Web güvenlik duvarı (mod security) kurulması
  • apache'yi root yetkisinde olmayan bir kullanıcı hakkı ile çalıştırmak
  • Varsayılan ayarları apache.conf da değiştirmek

Salı, Eylül 25, 2007

Web uygulamalarda neden girdi kontrolü yeterli değil?

Özellikle XSS saldırılarını engellemek için, web uygulamalarında girdi denetimi yapılması gerekmektedir ama ne yazık ki bu tek başına yeterli değildir. Bu denetimin yetersiz kaldığı durumlar söz konusudur. Asıl önemli olan çıktının kodlanmasıdır (output encoding).

Bu konuda aşağıdaki linklerden daha ayrıntılı bilgi edinebilirsiniz:
http://www.oreillynet.com/onlamp/blog/2005/10/repeat_after_me_lack_of__outpu.html

http://www.cigital.com/justiceleague/2007/08/10/mitigating-xss-why-input-validation-is-bogus/

http://www.cigital.com/justiceleague/2007/08/03/stop-saying-input-validation/

Cuma, Eylül 21, 2007

Php güvenlik durumu - phpsecinfo

php ortamı sunucuda düzgün ayarlanmadığında ciddi güvenlik açıklarına yol açıyor.
bu konuda birçok şey söylemek mümkün. ama bugün, sunucuda kurulabilecek phpsecinfo dan söz etmek istiyorum.

Phpsecinfo, phpinfo gibi bir fonksiyon aslında. php ortamının güvenlik durumunu gösteriyor ve yapılabilecek düzeltmeleri de belirtiyor. İnclemeye değer.
http://phpsec.org/projects/phpsecinfo/

Bu proje Purdue Cerias tarafından destekleniyor.

Php Güvenlik Rehberi projesi ise php kodlarken güvenlik konusunda yapılabilecekler hakkında bazı ipuçları vermekte:
http://phpsec.org/projects/guide/

Perşembe, Eylül 20, 2007

Tor ağları ve kendini saklama

Tor Ağı, http://en.wikipedia.org/wiki/Tor_network adresinde ayrıntılı anlatılmakta.

Ücretsiz olan Tor yazılımını kullanarak Internet'te kimliğinizi saklamanız mümkün.
(tabii ki kurum ağlarında bu tür kullanımı engellemek veya kısıtlamak mümkün)

Ama kimlik sağlamak(anonymity) ile mahremiyet(privacy) aynı şeyler değil.
Tor ağı içerisinde verilerinizin dinlenmediğini veya incelenmediğini nasıl bilebilirsiniz?

Herhangi bir nedenle kimliğinizi saklamak istemeniz, bu durumu ilginç bulan ve sizin verilerinizi dinlemenin değerli olabileceğini düşünen kişilerin ilgisini çekebilecektir.

Schneier'in bu konudaki yazısı gerçekten ilgi çekici:http://www.schneier.com/blog/archives/2007/09/anonymity_and_t_1.html

Çarşamba, Eylül 19, 2007

güvenlik süreçleri için "hacker" işe almak?

(magazinsel terim olarak "hacker" - burada sistemlere saldıran, yasa dışı hareketler yapmış kişiler olarak alınmıştır)

Bazı firmalar, daha önceleri sistemlere saldırılar yapmış kişileri güvenlikçi olarak işe alabiliyorlar.
Peki bu kişilere ne kadar güvenebilirsiniz?
Güvenlik süreçlerinde çalışacak kişilerin güvenilir kişiler olması gerekmez mi?
Saldırganlık bir alışkanlık veya hayat biçimi ise, bırakılabilir mi?

Şu yazıyı okuyun ve bir daha düşünün ....
http://www.secureworks.com/research/blog/index.php/2007/09/13/thinking-about-hiring-a-former-hacker/

Salı, Eylül 18, 2007

Güvenli kodlama

Eğer kullandığımız sistemler güvenlik düşünülerek kodlanmış olsaydı, şu an daha etkinleştirmeye çalıştığımız "ağ tabanlı güvenlik sistemlerine" bu kadar ihtiyacımız olmayacaktı. Tabii ki ideal bir dünya da yok, yazılımlarda her zaman güvenlik sorunu olacak ama bir yerden de düzeltmeye başlamak gerekiyor. Özellikle kurumunuzda yazılım geliştiren kişilerle iletişime geçip onları bu konularda bilgilendirmek ve bazı iyileştirmelerin başlaması gerekiyor.

Gunnar Peterson'un yazısı bu konuda güzel bir noktaya değinmiş.
http://1raindrop.typepad.com/1_raindrop/2007/09/secure-coding--.html

Yazılım geliştirme yaşam döngüsüne(SDLC) güvenlik ekleme ile ilgili
http://1raindrop.typepad.com/1_raindrop/2007/06/cost_effective_.html

Bütün yazılımcıları kısa sürede değiştirmenin mümkün olmadığını biliyoruz. Ama o yazılım ekiplerinde kilit rol oynayan kişilerle daha iyi iletişim kurup bir fark yaratabiliriz. Gerçi yazıda denildiği şekilde bir bütçemiz olmayabilir ama her zaman da iletişim için bütçeye de gerek olmayabilir ...

Pazar, Eylül 16, 2007

Güvenlikte gözde canlandırmak (visualize)

Log'lar içerisinde gömülüyoruz ve bazen saldırı girişimlerini kaçırdığımız da oluyor.
Oysa bir grafik veya görsel bir ortam olsa, herhangi bir farklılığı bize gösterecek bir ortam olsa ...
Var bazı ortamlar ama gerçekten de yeterli mi?
Ya da saldırgan bu ortamlardan yararlanmamızı engellemek için DOS saldırısı yaparsa?
Aslında bu konuda üzerinde çalışılması gereken birçok nokta var.

Bu konuda Dancho Danchev'in blog'undaki bir yazıyı paylaşmak istiyorum sizinle
http://ddanchev.blogspot.com/2006/03/visualization-in-security-and-new.html

Bu konuda Conti'nin Blackhat 2006'daki sunumu:
http://www.blackhat.com/presentations/bh-europe-06/bh-eu-06-Conti/bh-eu-06-conti.pdf

Yararlı adresler:
Security visualization - http://secviz.org/

İncelenecek yazılımlar:
Rumint - http://www.rumint.org/

Cuma, Eylül 14, 2007

Mahremiyet Hakkı - Privacy Rights

Her geçen gün yeni teknolojilerle tanışıyoruz ve muhtemelen sorgulamadan da kullanıyoruz.
Iphone, Blackberry gibi cihazlar gerçekten de teknolojik olarak birçok kolaylıklar getiriyor. Aynı zamanda kişisel bilgilerimizin, çok ciddi denetimler yapmadığımız sürece, kolaylıkla başkalarının eline geçmesi söz konusu.

Bu olay facebook ve bunun gibi üye olduğumuz sistemler için de geçerli. (Privacy menülerini iyice incelemek ve gerekli önlemleri almak şart.)

"Gizleyecek bir şeyim yok zaten." diyebilirsiniz, ama hepimizin de bilinmesini istemediğimiz sırlarımız veya herkese duyurmak istemediğimiz bilgilerimiz vardır muhtemelen.

Kişisel bilgilerimiz firmaların ve gizli servislerin eline geçtikçe, 1984 kitabına ve Büyük Birader kavramına daha da yaklaşıyoruz.

Privacy Rights organizasyonu, bu konuda bir inceleme için bir başlangıç:
http://www.privacyrights.org/

Konu çok ayrıntılı ve sonraki yazılarımda da değinmeye devam edeceğim.

Perşembe, Eylül 13, 2007

Recaptcha

Captcha, özellikle web form'larını spammer'lara karşı korumak için geliştirilmiş bir teknik
Aslında amaç bilgisayar(otomize bir sistem) ile insanı ayırt etmek.

completely
automated
public
Turing test to tell
computers and
humans
apart.



Captcha öldü, yaşasın Recaptcha
http://recaptcha.net/

Captcha'nın kırılabileceği birçok güvenlik blog'unda tartışılıyor.
Gerçi hazır bir kod yok ama OCR tabanlı yazılımların geliştirilebileceği söyleniyor.

Bu durumda çıkan Recaptcha, sunucuda değil, istemcide çalışan yeni bir yaklaşım.
İncelemeye değer. Hatta ücretsiz bir uygulamayı http://recaptcha.net/ dan alabiliyorsunuz.

Perşembe, Ağustos 30, 2007

sanal makine denemeleri - ubuntu üzerinde "vmware server"

Sanal makineye ne zaman ihtiyacınız olur? Birkaç örnek:

- Kullandığınızdan farklı işletim sistemlerine ihtiyaç duyan programları denemeniz gerektiğinde

- Kişisel makinenizde güvenlik sorunlarına yol açmamasını istediğiniz bir programı denemek istediğinizde

- Geliştirdiğiniz sistemi farklı işletim sistemlerinde denemek istediğinizde

- Makinenizde gereksiz kirliliğe yol açmamasını istediğiniz programları denemek istediğinizde


En güzel tarafı da, kurduğunuz sistemleri dvd veya taşınabilir disk ile taşıyabilmeniz ve başka makinelerde devam edebilmeniz.


Sanal makine yazılımı olarak tercihim "vmware server". Sitesinden ücretsiz olarak kayıtlanıp lisans numaraları alabiliyorsunuz. Bunun yanı sıra, "virtual box" kullanan ve memnun olan arkadaşlar da var, ticari bir ürün olmadığı için tercih ettiklerini söylüyorlar. Henüz denemediğim için yorum yapamayacağım. Farklarını söylemek isteyenler sayfaya yorum bırakabilirler.

Farklı linux versiyonlarına kurmak için http://www.vmware.com adresinden binary'sini alıp kurmayı deneyebilirler. Son versiyonu (1.0.3), yeni kernel'larda sorun çıkartıyor ve çeşitli ayarlar yapmanız gerkecektir. şimdiden kolay gelsin

Ubuntu Feisty üzerinde bu programı kurmak çocuk oyuncağı.

1. Sources.list'e ticari "commercial" öğeleri eklemeyi unutmayalım

sudo vi /etc/apt/sources.list

deb http://archive.canonical.com/ubuntu feisty-commercial main

2. Güncellemeleri gerçekleştirelim

sudo apt-get update

3. vmware- server kurmak aşağıdaki komutu yazmak kadar kolay

sudo apt-get install vmware-server vmware-tools-kernel-modules

Kurulum detayları için:
http://www.ubuntugeek.com/how-to-install-vmware-server-from-canonical-commercial-repository-in-ubuntu-feisty.html

Örneğin Linux üzerinde "Microsoft Windows 2003 Server" kurup denemelerinizi yapabilirsiniz.


Bir de üzerinde "vmware tools" paketini kurarak, kurduğunuz windows işletim sistemindeki mouse, ekran ayarı gibi özelliklerin daha etkin olmasını sağlayabilirsiniz.

Bir de şu komutları (vmware command line tools) incelemekte yarar var:
http://chitchat.at.infoseek.co.jp/vmware/vmtools.html

Cumartesi, Ağustos 25, 2007

Social Engineering - Sosyal Mühendislik ile Bilgi Toplama

Bildiğiniz üzere, bilgisayar dışında yöntemleri kullanarak bir kurum veya bir kişi hakkında bilgi toplamaya sosyal mühendislik yöntemleri denmekte. İnternet üzerinde, bunun nasıl yapılabileceği hakkında çok ilginç ve ayrıntılı belgeler bulmak mümkün. En son incelediğim belgede, nasıl yapılabildiği fotoğraflarla ayrıntılı olarak anlatılmaktaydı. Ortada "hacker" geçinen ve bu tür yöntemleri denemeye hevesli çok kişi olduğundan, bu belgelerin adreslerini vermeyi düşünmüyorum. Aramaya inanırsanız, zaten kendiniz de bulabilirsiniz :)

Bu teknik ile toplanabilecek bilgiler gerçekten de ilginç olduğu kadar biraz da ürkütücü.
Aslında bu örnekler, güvenliğin bir ürün değil, bir süreç olduğunun kanıtı.
Kurumlar, bu konuda kullanıcılarını bilgilendirmeli ve mümkün olduğunca çok önlem almalılar.

Pazar, Ağustos 12, 2007

Black Hat 2007

Black Hat 2007 konuşmacıları ve konularina aşağıdaki adresten ulaşabilirsiniz
http://www.blackhat.com/html/bh-usa-07/bh-usa-07-speakers.html

Sunumları aşağıdaki adresten edinebilirsiniz.
http://164.106.251.250/docs/netsec/bh2007/
(Sunum adresi için Hüzeyfe'ye teşekkürler)