![]() |
|
||||
|
Diyelim ki üzerinde 4 ay çalışacağım büyük bir projeye başlıycam..
Bu projeyi satışa sunup, onlarca kişiye satıcam.. Sattığım bir kişinin de başkalarına satamaması veya bedava dağıtamaması için kodlarımı DLL ye çevireceğim.. Bu şekilde kodları korumuş olacağımı düşünüyorum.. Eğer kodların tümünü dll ye çevirirsem dll yi açıp kodlarımı bulabilme ihtimalleri var mı acaba ? Yani dll tam güvenlik sağlar mı ? Örneğin dll içinde kodumda şöyle diycem en üst satırda.. Şuanda sitenin çalıştığı adres aaa.com değilse Error.html e git. Bu iyi bir güvenlik yöntemi midir ? Bu yöntem çok kolay görünüyor dll + domain bazlı.. Acaba kırılabilirler mi bu yöntemi ?
__________________
www.bursarehberi.net |
|
||||
|
Alıntı:
if adres bilmemne degil ise (gidilecek adres) else if bilmemne ise gidilecek adres.... peki ASM de buna her ikisinede gidilecek adres dersek ne olur sence ?
__________________
"Kasketli Beşler. Bizi izlemeye Devam edin" |
|
||||
|
CMYLMZ
ASM derken neyi kastettiğini bilmiyorum ? tiva peki ne tam güvenlik sağlar ? Yani bir proje yapıyorsunuz 4 ay uğramışsınız.. Birileri de almış sizin projenizi kendi projesi gibi satışa sunmuş.. Böyle birşeyin başıma gelmesini istemiyorum. Bunun için ne yapabilirim ? DÜZENLEME 1 : Başka bir forum sitesinde şöyle bir yorum geldi ; DLL lerin içi açılırken %60 ını görebilirlermiş.. %40 ı bozuk çıkar veya çıkmaz gibi birşey söylediler.. Doğru mu ? Yani dll nin içinin %100 ü görülemiyorsa o zaman sorun yok zaten.. Geri kalan kısmını bulmak için uğraşmazlar herhalde DÜZENLEME 2 : index.aspx index.aspx.vb bu iki kodu dll ye çevirdim. İki dosya tek dll de birleşti. Adı da App_Web_wokxpsqb.dll oldu. Bu dll dosyasını reflector adında bir net dll decompiler programıyla açtım. İçinde kendi yazdığım değişken adları falan görülüyor.. Ayrıca onlarca şey görünüyor.. Hepsi de karışık şeyler.. Ama anladığım kadarıyla birileri benim yaptığım dll dosyasını açıp kodlarımın %100 ünü göremiyorlar.. Hatta ben yanlış yere mi baktım bilmiyorum %90 ını bu programla göremedim.. Ama %90 ını görmüş olsam da geri kalan %10 luk kısmı için kırmaya çalışan insan oturup kod yazmaz zaten.. Yani bence projem gördüğüm kadarıyla dll ile güvenlik altına girmiş oldu. Gelelim ikinci konuya.. Kodlarımda bu site aaaa.com değil ise error.html e git diyicem. Bu yeterli bir güvenlik olur mu ? Yoksa başka ne deneyebilirim ? Cem Yılmaz asm de bu kodu değiştirebileceğine emin misin ?
__________________
www.bursarehberi.net Konu hakanizm tarafından (2008-05-14 Saat 01:03 ) değiştirilmiştir.. |
|
|||
|
Bana bir .NET DLL gönder sana bunu kaynak kodlarıyla proje olarak göndereyim. (Üstelik istediğin dilde) Projeyi aldıktan sonra da güvenli olup olmadığına sen karar ver
![]() Senin imdadına yetişecek olan ".net obfuscate". Yani kod karıştırma ve çekirdeği low levele çevirme. Bir çok 3rd party yazılım dağıtımcısı yazılımının lisans bölümünü c++'da kodlar. Ardından da kodlarını obfuscate eder.
__________________
Eğer bir yanlış yapacaksan, bari onu doğru yap... Konu DincerAydogdu tarafından (2008-05-14 Saat 10:50 ) değiştirilmiştir.. |
|
|||
|
eğer piyasada ciddi anlamda iş yapacaksan sana önerim dll dışında .net için kodları şifreleyen programlar var biraz pahalı ama kimsede yok gibi ondan dolayı guvenlik altına almış olursun hem kodları hem datayı şifrelersen rahat edersin
|
|
||||
|
Şimdi sorularıma ceviz.net sitesinde bir arkadaş cevap yazmış. Yazdığı cevabı ve benim ona cevabından sonra sorduğum soruyu buraya yazacağım.. Soracağım soruya sizler de cevap verirseniz sevinirim.. Bu arada DincerAydogdu diğer arkadaşın tavsiye ettiği program dotfuscator senin ki de obfuscate arasındaki farkı biliyor musun ?
--------------------- Diğer arkadaşın cevabı : Reflector ile kodun tamamı görünebilir. Kod karıştırma işlemi sadece elde edilen kodun değerlendirilme işlemini zorlaştırır. Eğer programın kırılmaya değer olduğuna inanıyorsan o zaman bu niyette olan kişinin işini zorlaştırman lazım. İlk adım uygulamayı dll içine paketlemektir. Böylece sunucuya erişimi olan herkesten bir ölçüde korumuş oldun. Ama reflector kullanan herhangi bir şahıs, yine kodlarını görebilecek. İkinci adım olarak dotfuscator (veya başka bir kod karıştırıcı) ile kod çözülse bile anlamsız ve karmakarışık hale gelecek şekilde düzenledin. (ByVista nın verdiği bağlantı bu kavramı çok iyi açıklamaktadır.) Şimdi sunucuya erişimi olan şahıs reflector ile kodu disassemble etse dahi, çözmesi aşırı zorlaştı. Neredeyse senin programı geliştirirken sarfettiğin eforun birkaç mislini harcaması lazım ki, senin programın içine yerleştirdiğin kontrol noktasını bulup, msil ile değiştirip atlatsın. Senin yazdığın program, dünya çapında yaygın kullanılan bir program olsa, veya eşsiz ve tekniği merak edilen bir program olursa, bu efor da sarfedilir ve program senin koyduğun kontrol noktası atlatılarak çalıştırılabilir. Kendine bir karıştırıcı araç seçersen, bulduğun her güvenlik önlemi yeterli olacaktır diye düşünüyorum. Çünkü "Control flow" tekniği senin yaptığın kontrolü gizleyecektir. --------------------- ************************** Benim ona ve sizlere sorum : --------------------------- Verdiğin bilgiler için teşekkürler. Öncelikle dotfuscator kullanım şekli tam olarak nedir ? Yani adımların sırası nasıldır ? 1- dotfuscator ile kodları karıştırmak 2- karışmış kodları dll ye çevirmek Yoksa Tam tersi mi ? 1- kodları dll ye çevirmek 2- dll yi dotfuscator ile karıştırmak Bir de şu var dll yapmak bir satırlık dos komutuyla mümkün. Peki dotfuscator kullanımı basit midir ? Yani birkaç karışık işlem mi yapmalıyım ? Yoksa Open File And Mix falan mı demeliyim ? Not: Reflector ile kodları bulmayı ben beceremedim o zaman.. Çünkü benim kendi değişkenlerimi gördüm. Onlarca farklı şey gördüm. Değişkenlerime tıkladığımda da standart 3-5 satırlık kodlar görmüştüm. O kodlar da bana ait değildi.
__________________
www.bursarehberi.net |
|
||||
|
DincerAydogdu sadece merak ettiğimden bundan bir sene önce yapmış olduğum bir dll dosyasını rapidshare e gönderdim
![]() http://rapidshare.com/files/11481232...xpsqb.zip.html Rica etsem bunun içindeki kodları bana gönderebilir misin ? (Gönderirken yine rapidshare e koyarak gönderirsen sevinirim. Rapidshare adresini buraya yazabilirsin. Kodlar önemli değil)Yanlış hatırlamıyorsam vb dosyasında 1617 satırlık kod vardı. aspx dosyasında da 2274 satır kod vardı. Kaç satır olduğu önemli değil. Senin program bu iki farklı dosyayı da ayırabiliyorsa süper verimli çalışıyor demektir. Eğer bu dll yi açabilirsen içerisinde yukarıda verdiğim rakamlar kadar kod çıkmayabilir belki.. Çünkü kodları bitirmeden de dll yapmış olabilirim.. Ama en azından en üst satırdan ortaya kadar kodlar nasıl görünüyor merak ediyorum ![]()
__________________
www.bursarehberi.net |
|
|||
|
Pek fazla uğraşamadım ama gerekli referanslarını eklersen ve üzerinde biraz uğraşırsan çalışacaktır. Kodlarını net bir şekilde görebilirsin.
http://rapidshare.com/files/11481744...ource.rar.html
__________________
Eğer bir yanlış yapacaksan, bari onu doğru yap... |
![]() |
LinkBacks (?)
LinkBack to this Thread: http://forum.iyinet.com/asp-net/93267-dll-ile-guvenlik-saglanir-mi.html
|
||||
| Konuyu Başlatan | For | Type | Tarih | |
| DLL ve Gvenlik - Webmaster Forum & Webmaster Okulu | This thread | Refback | 2008-05-16 23:38 | |
| DLL ve Gvenlik - Webmaster Forum & Webmaster Okulu | This thread | Pingback | 2008-05-14 15:17 | |
| DLL ile Güvenlik Sağlanır mı ? - Bağlantı Arar || Türk işi | This thread | Pingback | 2008-05-13 17:46 | |
| Seçenekler | |
| Stil | |
|
|
Benzer Konular
|
||||
| Konu | Konuyu Başlatan | Forum | Cevaplar | Son Mesaj |
| php'de script güvenliği nasıl sağlanır w@reze karşı | forumselcuk | PHP | 12 | 2008-05-03 16:31 |
| Windows 2003 Server Güvenliği Nasıl Sağlanır ? (saldırılar, shell, . . . ) | ahselvi | İşletim sistemi | 7 | 2007-11-28 18:29 |
| Php Güvenlik | Ntie | PHP | 10 | 2007-11-13 21:20 |
| sitelere içerik sağlanır | dombalak | İş Eleman Duyuru | 4 | 2007-08-19 12:07 |