Yazılımda nasıl açık aranır?

Sorun çok yüzeysel. Buna doğrudan cevap vermek olmaz, verilemez.

Yazılım ama hangi yazılım? Ne türde bir yazılım? Hangi dilde yazılmış, hangi şekilde packlenmiş, hangi şekilde derlenmiş, hangi mimari kullanılmış? Kullanıcıdan veri alınmış mı yoksa alınmamış mı? Hangi fonksiyonlar ve kütüphaneler kullanılmış? Dışarıya bağlantı var mı yok mu? Varsa bağlanılan sunucu yeterince güvenli mi? Ne için yazılmış? Neden yazılmış? Algoritması nasıl? Program ne yapınca hata veriyor, ne yapınca düzgün çalışıyor? Bu ve bunun gibi soruları irdelemek gerekiyor.

Neye bakacaksan genelde inceleyip uygun şekilde bakman gerekiyor. Genellikle bu süreç manuel işler, otomatize araçlar pek işe yaramaz.

İnjector veya program vesaire ile olacak bir şey olsaydı zaten en başta programı yazan kişi kendi programında açık var mı diye bakardı.

Sen mümkün mertebe güvenli kod yazmaya çalış, gerisi için de uzman bir şirketten danışmanlık al.
 
Sorun çok yüzeysel. Buna doğrudan cevap vermek olmaz, verilemez.

Yazılım ama hangi yazılım? Ne türde bir yazılım? Hangi dilde yazılmış, hangi şekilde packlenmiş, hangi şekilde derlenmiş, hangi mimari kullanılmış? Kullanıcıdan veri alınmış mı yoksa alınmamış mı? Hangi fonksiyonlar ve kütüphaneler kullanılmış? Dışarıya bağlantı var mı yok mu? Varsa bağlanılan sunucu yeterince güvenli mi? Ne için yazılmış? Neden yazılmış? Algoritması nasıl? Program ne yapınca hata veriyor, ne yapınca düzgün çalışıyor? Bu ve bunun gibi soruları irdelemek gerekiyor.

Neye bakacaksan genelde inceleyip uygun şekilde bakman gerekiyor. Genellikle bu süreç manuel işler, otomatize araçlar pek işe yaramaz.

İnjector veya program vesaire ile olacak bir şey olsaydı zaten en başta programı yazan kişi kendi programında açık var mı diye bakardı.

Sen mümkün mertebe güvenli kod yazmaya çalış, gerisi için de uzman bir şirketten danışmanlık al.
Python ile yazılmış masaüstü yazılımı hocam. Kodlarını gizleyeceğim ama yine de açık arayacağım kodlara erişim konusunda.

Bilgim yettiği kadar açık bırakmamaya çalışıyorum. Teşekkürler.
 
Bildiğim kadarıyla Cython ya da benzeri kütüphanelerle native koda çevirmediğiniz sürece Python'da kodlar tamamen gizlenmiyor.
 
Python ile yazılmış masaüstü yazılımı hocam. Kodlarını gizleyeceğim ama yine de açık arayacağım kodlara erişim konusunda.

Bilgim yettiği kadar açık bırakmamaya çalışıyorum. Teşekkürler.
Açık derken kast ettiğin şey nedir? Programın üzerinden kod yürütülmesi gibi şeyler mi mesela? Yoksa programın kaynak kodlarının açığa çıkmasını mı engellemeye çalışıyorsun?

Eğer ilk seçenek ise mümkün mertebe eval() gibi yapıları kullanmaktan kaçınmalısın mesela en basitinden. İkinci seçenek ise zaten güvenliği ilgilendiren açıklarla alakalı bir şey değil, o farklı bir mevzu.
 
Açık derken kast ettiğin şey nedir? Programın üzerinden kod yürütülmesi gibi şeyler mi mesela? Yoksa programın kaynak kodlarının açığa çıkmasını mı engellemeye çalışıyorsun?

Eğer ilk seçenek ise mümkün mertebe eval() gibi yapıları kullanmaktan kaçınmalısın mesela en basitinden. İkinci seçenek ise zaten güvenliği ilgilendiren açıklarla alakalı bir şey değil, o farklı bir mevzu.
Programın kaynak kodlarını engellersem tüm açıkları gidermiş olurum.
 
Programın kaynak kodlarını engellersem tüm açıkları gidermiş olurum.
Hayır.

Bu oldukça yanlış bir bakış açısı. Kapalı kaynak olup da açık kaynak yazılımlara göre çok daha fazla güvenlik açığı barındıran yazılımlar var.

İş güvenlik tarafında o şekilde işlemiyor. Kaynak kodların incelenmesi açık bulma sürecini hızlandırıyor evet, fakat açıklı kodları gizlemek bu açıkların kapatılmasını sağlamıyor kesinlikle. Alakası yok hatta.
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Geri
Yukarı