Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Site güvenliği


Warhero

Öne çıkan mesajlar

Istedigin sey "hadi 10 senedir biriktirdiginiz butun deneyimi, ogrendiginiz herseyi suracikta yukleyiverin bana" demek gibi bisey. Haliyle merak ettigin seyleri ufak parcalara ayirip oyle sorman ya da daha guzeli, direkt google'da araman daha faydali.

Mesela; "how to store passwords in database" diye aratarak baslayabilirsin. Hemen sonrasinda "web development security best practices" diye aratip karsina cikan listeler icin de ayni sekilde farkli aramalar yapip, sen tatmin olana kadar okuyarak amacina ulasman mumkun.
Link to comment
Sosyal ağlarda paylaş

Bildiğin her şeyi anlatmanı beklemiyorum, temelde dikkat edilmesi gereken ve geliştirmek için hangi yöne bakılması gereken konuları soruyorum. 10 senelik bilgin varsa, bunların hepsini değil ama önemli konuları söylesen yeter.
Tek tek soru istiyorsan, password hash için bcrypt'in md5'den iyi olduğunu duydum. Basit bir siteyi düşünürsen (güvenliğin üst sırada olmadığı) md5 yerine bcrypt kullanmanın büyük bir avantajı olur mu?
Link to comment
Sosyal ağlarda paylaş

how to store passwords in database den önce database i güvenliğe alman daha mantıklı tabiki :)

1. güvenlik ssl mümkün olduğunca 256bit ve üstü
2. daima yaptığın sitenin açık kodlarıyla beraber testlere tabi tutman tutturman yani ciddi bir iş ise en az 2 kişi test etmesi gerek daima uğraşacak bu adamlar çünkü exploit yaratımı en büyük önündeki güvenlik açığı.Bunları başkaları bulmadan bulup önlemen önemli.
3. standart variantlar kullanmak yerine değişik kodlamalar ve referanslarla sistemini güçlendirmek.
4. 3 ile bağlantılı sayılır aslında kendi frameworklerini kullan.
5. en büyük açıklar genelde copy/paste olan bazı ara kodlar vs hazır sistemler kullanmaktan oluşur. Özellikle açık kodlu yazılımlar.

bunun dışında diğer şifreleme işlemleri 2. adım. çünkü sen database i kaptırdıktan sonra ohoho :)

server tarafını biliyorsun sayıyorum. Başlıca bunlar ayrıntılı olarak gider.
Link to comment
Sosyal ağlarda paylaş

Warhero said:

Bildiğin her şeyi anlatmanı beklemiyorum, temelde dikkat edilmesi gereken ve geliştirmek için hangi yöne bakılması gereken konuları soruyorum. 10 senelik bilgin varsa, bunların hepsini değil ama önemli konuları söylesen yeter.
Tek tek soru istiyorsan, password hash için bcrypt'in md5'den iyi olduğunu duydum. Basit bir siteyi düşünürsen (güvenliğin üst sırada olmadığı) md5 yerine bcrypt kullanmanın büyük bir avantajı olur mu?


Ucundan kiyisindan gireyim, 100 liralik yerine 10 liralik olsun naapalim gibi bisey yok maalesef. Bir tarafindan girince herseyiyle ilgilenmen gerekiyor, o yuzden diyorum merak ettigin yerden basla, tatmin olana kadar oku diye.

Olay "kodlarini test et", "sunucunun guvenli oldugundan emin ol" gibi tick atilabilecek bir listeden ibaret olsaydi hic ugrastirmazdim seni emin ol. Ha bi de hepimiz issiz olurduk tabi o da ayri bi konu.
Link to comment
Sosyal ağlarda paylaş

di hakli, once adam akilli bir web security kitabi okuyup ondan sonra aklina takilanlari sor. security olayi deniz derya birsey, uzerinde en cok kitap basilan konulardan biridir heralde.

su forumdan edinecegin 3 kurusluk dogru/yanlis bilgilerle bu ise girisirsen 3 gunde kevgire cevirirler siteni sdfsdf
Link to comment
Sosyal ağlarda paylaş

Cevaplayayim.

Evet, bcrypt md5'dan daha iyi ama bu tek basina herhangi bir guvenlik saglamiyor cunku en zayif halka muhabbeti gecerli, sifrelemen duzgunse, baska biseyin kotuyse yine patliyosun.

Dahasi sifreyi tekrar tekrar encrypt edip saklama ve secenekler arasindan brute force ile en zor kirilanini secmek gibi ilk seferde akla gelebilecek yontemlerin gecersizligi de cesitli senaryolarla kanitlanmis durumda. O yuzden diyorum soyle bi google'da arat diye cunku bunu yaptiginda sadece sorunun cevabini almis olmayacaksin, ayni zamanda ornekleriyle birlikte best practice'lara da ulasmis olacaksin.

Su ilk mesajimda bahsettigim ornekle, "how to store passwords in database" diye aratarak basla istersen. Salt nedir, ne icin gereklidir, nerde nasil saklanir" derken 2-3 saatte kalkarsin altindan.

Warhero said:

Bildiğin her şeyi anlatmanı beklemiyorum, temelde dikkat edilmesi gereken ve geliştirmek için hangi yöne bakılması gereken konuları soruyorum. 10 senelik bilgin varsa, bunların hepsini değil ama önemli konuları söylesen yeter.
Tek tek soru istiyorsan, password hash için bcrypt'in md5'den iyi olduğunu duydum. Basit bir siteyi düşünürsen (güvenliğin üst sırada olmadığı) md5 yerine bcrypt kullanmanın büyük bir avantajı olur mu?
Link to comment
Sosyal ağlarda paylaş

yani anlamadıgım şey sen istedigin kadar md5 sha1 salt hash uğraş adam sunucuya girdikten sonra ne olacak site güvenliği bir yere kadar genelde günümüzdeki büyük çaplı sistemler kodlamadan degil sunucu zafiyetinden gidiyor bir kere public hostta barındırmamalısın
Link to comment
Sosyal ağlarda paylaş

O yuzden mumkun oldugunca ayiriyoruz iste layer'lari.

Ornek verecek olursam; benim icinde bulundugum projelerin hemen hic birinde kod icinde SQL query yok mesela, onun yerine izinleri adam akilli ayarlanmis stored procedure'lar var. Gidip "SELECT 1" dicek olsak bile SP ustunden yapiyoruz ki hem kafamiz rahat olsun hem de DBA bisey degistirecegi zaman anlamadigi kodlarla ya da milyon tane dosyayla muhatap olmasin, alakasiz oldugu yere erisimi olmasin, ne yapmak istiyosa kendi yetkisi altinda istedigini yapabilsin.

Ayni sekilde app, site vesaire gelistirirken DB'ye degil de baska sistemlere baglanan her sistem RESTful API kullaniyor. Hem takibi hem yonetimi hem de yeni ozellik eklemesi falan kolay. Bi nevi encapsulation at its best olayi.

Su noktada yine basa donuyoruz iste. Tek tek alinan onlemler onemli degil, gerekli tum onlemleri alip bunlari best practice'i neyse o sekilde uygulamak onemli.
Link to comment
Sosyal ağlarda paylaş

  • 3 hafta sonra ...
Somon said:

yani anlamadıgım şey sen istedigin kadar md5 sha1 salt hash uğraş adam sunucuya girdikten sonra ne olacak site güvenliği bir yere kadar genelde günümüzdeki büyük çaplı sistemler kodlamadan degil sunucu zafiyetinden gidiyor bir kere public hostta barındırmamalısın


Zaten adam sunucuya girerse diye yapiliyo o. O hash sayesinde senin sistemine girebilir ama sen plain tutarsan adamin 100 tane farkli sitedeki hesabini ve kisisel bir bilgisini tehlikeye atmis oluyorsun. Bir nevi etik kurali olarak goruyorum ben bunu.
Link to comment
Sosyal ağlarda paylaş

Somon said:

yani anlamadıgım şey sen istedigin kadar md5 sha1 salt hash uğraş adam sunucuya girdikten sonra ne olacak site güvenliği bir yere kadar genelde günümüzdeki büyük çaplı sistemler kodlamadan degil sunucu zafiyetinden gidiyor bir kere public hostta barındırmamalısın


Ben bu mesajin sonunu okumamisim.

Public host'dan kastin nedir ? Shared host mu demek istedin ? Oyleyse buyuk capli sistemlerin shared host ile isi yok. Yok degilse public olmayan biseye nasil erisecek insanlar ? =)
Link to comment
Sosyal ağlarda paylaş

di said:

Somon said:

yani anlamadıgım şey sen istedigin kadar md5 sha1 salt hash uğraş adam sunucuya girdikten sonra ne olacak site güvenliği bir yere kadar genelde günümüzdeki büyük çaplı sistemler kodlamadan degil sunucu zafiyetinden gidiyor bir kere public hostta barındırmamalısın


Ben bu mesajin sonunu okumamisim.

Public host'dan kastin nedir ? Shared host mu demek istedin ? Oyleyse buyuk capli sistemlerin shared host ile isi yok. Yok degilse public olmayan biseye nasil erisecek insanlar ? =)


shared demek istemiş o
Link to comment
Sosyal ağlarda paylaş

DoruK said:

farketmez, adamin private bilgisi, yasal olarak guvenligini saglaman lazim.


internette paylaştıgın hiç bi bilgi %100 korunamaz, şifre de private bi bilgi değil senin kastettiğin anlamda, paticikte şifreni çaldırıp bunu bankada da kullanıyorsan (sms guvenligi vs var olmadıgını varsayıyorum bi şekilde int. şubene girerse) paticiği sorumlu tutamazsın
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...