none
Online Lisans Sisteminin Kırılması RRS feed

  • Soru

  • Merhaba,

    C# ile geliştirdigim projeme biraz mantık yürüterek bir lisans sistemi yaptım lakin hemen açığı bulundu mantığı anlatayım ve nasıl açığı olduğunu size söyleyeyim bina nasıl bir çözüm üretebilirim fikrinizi söylerseniz sevinirim.
    mantığı şöyle
    Lisans giriş ekranımda kullanıcı adı şifre ve işlemci numarası var kişiden bunları isteyerek  sitede üyelik açıyorum ve kişi bu üyelikle textboxlara kullanıcı ve şifresini girerek görünürlüğü kapalı olan webbrowser aracılığı ile giriş yapıyor giriş başarılı olursa program form2 ekranına atıyor lakin webdebugger adlı program açılınca hangi kaynağa gittiği görünüyor ve o kaynaktaki bilgileri sanki kendi sitesiymis gibi değiştirebiliyor kişi orada belirtilen lisans süresi vb bilgileri program aracılığı ile baska html dosyası eklettirerek  değiştirebiliyor ve lisans süresini uzatabiliyor buna çözüm olarak ne yapılabilir veya online lisans sistemi daha farklı nasıl olabilir. teşekkürler
    22 Temmuz 2018 Pazar 17:58

Tüm Yanıtlar

  • #1

    Donanım kimlikleri lisans için kullanılmaz. Mesela üyelik sistemi dahi olmayan bir uygulama düşün ve bu uygulamada ayarları kendi sunucunda otomatik olarak saklamak istiyorsun. Eğer kullanıcı kaldırıp başka bir zaman tekrar kurarsa sunucudan donanım kimliğini belirleyici bir referans olarak kullanıp ayarları çekebilirsin.

    #2

    Kaynak kodları şifrelesende, karıştırsanda mutlaka birileri çözer. Uzmanlığına bağlı olarak dakikalar bile sürmez. Lisans isteyen kısımlar, if blokları vs bulunup temizlenebilir. Yani uygulama hiç lisans için giriş yapmaya gerek bile duymaz.

    #3

    Web API/Rest API dediğimiz bir olay var. Uygulama sadece kullanıcıadı-şifre ile giriş yapmaktan fazlasına bağımlı olmalı yani ygulama içindeki bazı önemli işlemleri sunucuda yapıp kullanmak üzere API'den isteyebilirsin. Bu durumda bir başka kimse login işlemini ve ek olarak online işlemleride kesmek zorunda kalır. Haliyle yarı işlev sahibi bir uygulama kimseyi pek hoşnut etmez.

    Sonuç olarak kullanıcı web'de bir üyelik açar. Bu üyelik için sha128-256 gibi bir şifreleme algoritması ile bir key oluşturup bunu çeşitli şekillerde lisans olarak kullanabilirsin. Regex ile parse edip lisans anahtarı olarak bir kısmını sunabilirsin. Burada lisans anahtarı kısmen fake oluyor. Kullanıcı hesabına bağımlı olacağı için esas olay webdeki sunucunun hacklenmesine bağlı olur ancak bu programın kırılmasından daha zordur ve ustalık ister. Ayrıca sunucunun uptime oranı birbaşka bir problem sayılabilir.

    Kolay gelsin.

    Ek olarak bir blog yazımda bu konuya farklı bir açıdan da değinmiştim.


    TR| Sorunuzun yanıtı bu ise "Yanıt Olarak Öner" olarak işaretleyin, eğer faydalı bir yorum ise "Oy Ver"erek forumun işleyişine katkıda bulunabilirsiniz. EN| If this is the answer to your problem, mark "Propose as Answer" and if it is helpful, you can contribute to the workig of the forum by "Voting".




    22 Temmuz 2018 Pazar 19:01