Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Uygulama güvenliği - USB Dongle koruma ve diğerleri
#31
(02-11-2016, Saat: 22:51)engerex Adlı Kullanıcıdan Alıntı: Merhabalar.

Büyük emekler harcadığınız uygulamadan karşılığını almak isteriz. Bunun için uygulamanın sizin izniniz olmadan kopyalanmamasını ve kullanılmamasını istersiniz. Bunun için kullanıcılardan sadakat beklemek iyi niyet hatta hayalcilik olacaktır.

 Geliştirdiğiniz uygulamanın güvenliğini sağlamak için ne tür yöntemlere başvuruyorsunuz?
 USB Dongle ile tecrübeniz oldu mu? Hangi ürünleri tercih ettiniz? Hangi ürünlerden uzak durulmalıdır?

 Uygulamanızın dosyalarında değişiklik yapılmaması çok önemli. Bu tür müdahaleler ile uygulamanızın kırılmaması için sağladığımız korumaları hiçe sayabilir. Ayrıca kodlamalarınız ortaya saçılır.
 Uygulamanızın çözülmesini engellemek için ne tür önlemler alıyorsunuz?

 Ne tür önlemleri gerekli ve gereksiz görüyorsunuz?

Yaklaşık 30 yıllık bir yazılımcıyım. Bugüne kadar bu konuda haliyle değişik teknikler kullandım. İlk yıllarda usb dongle ları bende kullandım. Sonra Windows altında çalışan uygulamalarım için değişik lisanslama algoritmaları geliştirerek bu şekilde koruma yaptım. Ama sizin de takdir edeceğiniz gibi kırılmayacak yazılım yoktur. Bizim yaptığımız hacker lara karşı bir önlem almak zaten olamaz. Önemli olan yazılımın herhangi sıradan biri tarafından en azından basitçe başka bir cihaza kopyalanıp kullanılmasını önlemekten öteye gidemiyor. Ancak son 2 yıldır farklı bir teknik kullanıyorum. Lisans kontrolünü kendi web server'im üzerinden yapıyorum. Yazılım Server'a bağlanıp kontrolü hostumdaki databasedeki tablodan bakıp kontrol ediyor. Böylece en azından bilgisayarın HDD seri nosuymuş, yok MAC Adresiymiş yok işlemcisiymiş, yok tarih kontrolüymüş falan filan gibi sistem kaynaklarını kontrol etmeye gerek kalmıyor. Bunun dışında lisanslamayla ilgili çözüm sunan daha doğrusu satan Smile) firmalar da var. Bunların hemen hepsi yurt dışı kaynaklı. Çok güzel çözümleri var ama ben güvenip de hiçbirine bulaşmadım şimdiye kadar. Bunların SDK desteği de var.

Sizinle bazılarını paylaşayım;

https://www.pelock.com/products/pelock/download
https://www.oreans.com/products.php
https://soraco.co/quick-license-manager/...rotection/
https://intelliprotector.com/Support/Help/FAQ

İyi çalışmalar dilerim...

(03-11-2016, Saat: 16:46)yhackup Adlı Kullanıcıdan Alıntı: Uygulamam internete bağımlı çalışır (Sunucum ile) her açılışında,

Haberleşemez ise uygulamam açılmaz, (kusura bakmasın internetsiz bilgisayar kalmadı bu devirde, kaldı ki yapıyorsa illaki vardır.)
Haberleşir ama lisans kodları (3213-3213-2132-1312) sattığım adamın statik ip'si ile eşleşmiyor ise çalışmaz.
Kurduğum bilgisayarın pc bilgilerini alırım (mac,hdd,işlemci kodları vs) lisans kodu ile ipsi ile eşleştirrim hepsi bir araya gelince sıkıysa kırsınlar.

Bende benzer bir teknik kullanıyorum. Ama senin kadar iddialı değilim doğrusu! 
İnan ki onu da kırıyorlar Smile Bazıları için gayet basit!
Ne ekersen onu biçersin!  Idea
Cevapla
#32
2001 yılında hırs yapıp assembly öğrenmiştim.
win98 de ilk kurduğum numega firmasının Softice adlı debuggeri ile hırs yapıp, ülkemizce çok iyi bilinen bir yazılım firmasının programlarının seriallerini ram çöplüğünde bpx hmemcpy ile dondurup buluyordum, sonra Mr. Stop ve rus crackerin dersleri ile haşir neşir olmuştum o dönem (yanlış anlaşılmasın, cracking nasıl oluyor amaç öğrenmekti) sonra Miki Soft XP yi üretince
w32dasm ile tanıştım, bu crack işi inanılmaz derecede kolaylaştı, adeta 2-3 dk da bir program kırılabilir duruma geldi, o dönemde sadecee visual basic, qbasic, biraz da assembly bilgim vardı.
exe paketleyiciler yeni yeni kullanılmaya başlayınca bununda unpackerları üretilmeye, İnternet ortamında yayılmaya başlandı, astalavista. box. sk nin virüs yaydığı yıllardı.
bir yazılımı korumanın tek yolu, kendinize ait bir paketleyici yazmanız ve yazılım içerisinde ne kadar string varsa gizlemenizdir.
Dongle ler, hd seri no veya başka bir kart seri no larının CMP  işe yaramaz.
Koruma Yöntemlerden biri de, yazılım içerisinde bulunan lisans kontrollerini asla showmessage gibi windowtexta gibi apileri kullanmayın, işi gizli yapın (hani bazen yaparlar, showmessage('Lisans Başarısız') filan gibi bunu asla yapmayın, hiç uyarı mesajı verdirmeyşn, lisans doğruysa textboxlar renkli olsun, veya labeller enabled true olsun, gerçi ollydbg de step over ile trace yapılırken zavallı exenin DNA kod döngüsü alınıp ona göre de serial üretilwbiliniyor fakat, bu kısımlardaki stringlerin çok iyi şifrelenmesi gerekir, bildiğim en iyi Koruyucu Themida dır, bunla birlikte antidebugging kontrolü yapan kodlar veya servisler yazılmalıdır, crackerin başbelasıdır servis uygulaması ile ana exe birlikte çalışması ve antidebugging LIBRARY ve en önemlisi lisans kontrolünü en az 20 - 30 defa yazılım içinde farklı değişkenlerle farklı fonksiyon isimleriyle kontrol ettirmek ve bu fonksiyonlara giren çıkan değerlerden biri bile yanlış olduğu vakit = yani cracker exe içinde lisans kontrolünü yapan fonksiyonlardan birinin jump if equals conditional operandıyla oynadıysa, geriye kalan 29 fonksiyon içine giren çıkan değerler eşit olmayacağı için program mantıksal çökmeye gider, yani burada fonksiyonların 30 unun da aynı sayıyı üretmesi ve compare etmesi gerekir ki yazılım çökmesin

assembly de conditional jumperlar, resetler, comparatorlar, taşıyıcılar adreslemeler, registryler vardır, delphide
if a = 10 then begin
showmessage ('lisans ok')
end
yazılan bu kod
assembly de

MOV EAX, ESI
... 
CMP ESI, EAX
..
...
0040A40E JE 00407BB0
...
gibi eşitse 00407BB0 adrese zıpla ve işini yap manasına gelir.
yada tam tersi de olabilir.
if then bloğu => CMP ve JE 
veya if <> then => CMP  ve JNE manasına gelir
CMP = compare , je= jump if equals
nop => no operation anlamındadır değer olmadığı için düz dallanmayla yoluna devam ediyor.
genelde en çok kullanılan NOP lamadır.
ben en çok jne => je veya je=>jne
tarihsel denetimi yapan jnb, jb, jge je, jbe conditional jumperlar kullanarak exe nin Dna sını değiştiriyordum. demo oluyor sana full sürüm, title de demo yazmasına rağmen.
E tabii ki bazı firmalar bunu bilerek de stringleri gizlemeden açık bırakıyorlar ki yazılmları rahatça kırılabilsin ki bolca yayılsın.
maksat işleyişi öğrenmekti.
Cevapla
#33
(08-04-2021, Saat: 14:27)tmrksmt Adlı Kullanıcıdan Alıntı:
(02-11-2016, Saat: 22:51)engerex Adlı Kullanıcıdan Alıntı: Merhabalar.

Büyük emekler harcadığınız uygulamadan karşılığını almak isteriz. Bunun için uygulamanın sizin izniniz olmadan kopyalanmamasını ve kullanılmamasını istersiniz. Bunun için kullanıcılardan sadakat beklemek iyi niyet hatta hayalcilik olacaktır.

 Geliştirdiğiniz uygulamanın güvenliğini sağlamak için ne tür yöntemlere başvuruyorsunuz?
 USB Dongle ile tecrübeniz oldu mu? Hangi ürünleri tercih ettiniz? Hangi ürünlerden uzak durulmalıdır?

 Uygulamanızın dosyalarında değişiklik yapılmaması çok önemli. Bu tür müdahaleler ile uygulamanızın kırılmaması için sağladığımız korumaları hiçe sayabilir. Ayrıca kodlamalarınız ortaya saçılır.
 Uygulamanızın çözülmesini engellemek için ne tür önlemler alıyorsunuz?

 Ne tür önlemleri gerekli ve gereksiz görüyorsunuz?

Yaklaşık 30 yıllık bir yazılımcıyım. Bugüne kadar bu konuda haliyle değişik teknikler kullandım. İlk yıllarda usb dongle ları bende kullandım. Sonra Windows altında çalışan uygulamalarım için değişik lisanslama algoritmaları geliştirerek bu şekilde koruma yaptım. Ama sizin de takdir edeceğiniz gibi kırılmayacak yazılım yoktur. Bizim yaptığımız hacker lara karşı bir önlem almak zaten olamaz. Önemli olan yazılımın herhangi sıradan biri tarafından en azından basitçe başka bir cihaza kopyalanıp kullanılmasını önlemekten öteye gidemiyor. Ancak son 2 yıldır farklı bir teknik kullanıyorum. Lisans kontrolünü kendi web server'im üzerinden yapıyorum. Yazılım Server'a bağlanıp kontrolü hostumdaki databasedeki tablodan bakıp kontrol ediyor. Böylece en azından bilgisayarın HDD seri nosuymuş, yok MAC Adresiymiş yok işlemcisiymiş, yok tarih kontrolüymüş falan filan gibi sistem kaynaklarını kontrol etmeye gerek kalmıyor. Bunun dışında lisanslamayla ilgili çözüm sunan daha doğrusu satan Smile) firmalar da var. Bunların hemen hepsi yurt dışı kaynaklı. Çok güzel çözümleri var ama ben güvenip de hiçbirine bulaşmadım şimdiye kadar. Bunların SDK desteği de var.

Sizinle bazılarını paylaşayım;

https://www.pelock.com/products/pelock/download
https://www.oreans.com/products.php
https://soraco.co/quick-license-manager/...rotection/
https://intelliprotector.com/Support/Help/FAQ

İyi çalışmalar dilerim...

(03-11-2016, Saat: 16:46)yhackup Adlı Kullanıcıdan Alıntı: Uygulamam internete bağımlı çalışır (Sunucum ile) her açılışında,

Haberleşemez ise uygulamam açılmaz, (kusura bakmasın internetsiz bilgisayar kalmadı bu devirde, kaldı ki yapıyorsa illaki vardır.)
Haberleşir ama lisans kodları (3213-3213-2132-1312) sattığım adamın statik ip'si ile eşleşmiyor ise çalışmaz.
Kurduğum bilgisayarın pc bilgilerini alırım (mac,hdd,işlemci kodları vs) lisans kodu ile ipsi ile eşleştirrim hepsi bir araya gelince sıkıysa kırsınlar.

Bende benzer bir teknik kullanıyorum. Ama senin kadar iddialı değilim doğrusu! 
İnan ki onu da kırıyorlar Smile Bazıları için gayet basit!

@tmrksmt ve @yhackup
Yaptığınız yöntemde sunucuya sorgu yazılım lisanslı mı diye soruyorsunuz? Eğer öyle ise kırmak isteyen kişi "eğer lisans yanlışsa dur veya doğruysa devam et" yerine "eğer lisans yanlışsa devam et veya doğruysa davam et" şeklinde değiştiremez mi? Bunun önlemi nasıl?
Ağlarsa kablosuz ağlar, gerisi yerel ağlar...
Cevapla
#34
(08-04-2021, Saat: 17:51)engerex Adlı Kullanıcıdan Alıntı:
(08-04-2021, Saat: 14:27)tmrksmt Adlı Kullanıcıdan Alıntı: Yaklaşık 30 yıllık bir yazılımcıyım. Bugüne kadar bu konuda haliyle değişik teknikler kullandım. İlk yıllarda usb dongle ları bende kullandım. Sonra Windows altında çalışan uygulamalarım için değişik lisanslama algoritmaları geliştirerek bu şekilde koruma yaptım. Ama sizin de takdir edeceğiniz gibi kırılmayacak yazılım yoktur. Bizim yaptığımız hacker lara karşı bir önlem almak zaten olamaz. Önemli olan yazılımın herhangi sıradan biri tarafından en azından basitçe başka bir cihaza kopyalanıp kullanılmasını önlemekten öteye gidemiyor. Ancak son 2 yıldır farklı bir teknik kullanıyorum. Lisans kontrolünü kendi web server'im üzerinden yapıyorum. Yazılım Server'a bağlanıp kontrolü hostumdaki databasedeki tablodan bakıp kontrol ediyor. Böylece en azından bilgisayarın HDD seri nosuymuş, yok MAC Adresiymiş yok işlemcisiymiş, yok tarih kontrolüymüş falan filan gibi sistem kaynaklarını kontrol etmeye gerek kalmıyor. Bunun dışında lisanslamayla ilgili çözüm sunan daha doğrusu satan Smile) firmalar da var. Bunların hemen hepsi yurt dışı kaynaklı. Çok güzel çözümleri var ama ben güvenip de hiçbirine bulaşmadım şimdiye kadar. Bunların SDK desteği de var.

Sizinle bazılarını paylaşayım;

https://www.pelock.com/products/pelock/download
https://www.oreans.com/products.php
https://soraco.co/quick-license-manager/...rotection/
https://intelliprotector.com/Support/Help/FAQ

İyi çalışmalar dilerim...


Bende benzer bir teknik kullanıyorum. Ama senin kadar iddialı değilim doğrusu! 
İnan ki onu da kırıyorlar Smile Bazıları için gayet basit!

@tmrksmt  ve @yhackup
Yaptığınız yöntemde sunucuya sorgu yazılım lisanslı mı diye soruyorsunuz? Eğer öyle ise kırmak isteyen kişi "eğer lisans yanlışsa dur veya doğruysa devam et" yerine "eğer lisans yanlışsa devam et veya doğruysa davam et" şeklinde değiştiremez mi? Bunun önlemi nasıl?

Soru şeklinize göre size ancak örnek kodlarla açıklama yapmam gerekir ama maalesef kendi yazılımlarıma ait özel bir sistem olduğu için bu kodları paylaşamam...Üzgünüm ve anlayışla karşılayacağınızı umarım... Sadece şunu belirtmek isterim ki kullanıcının zaten bahsettiğiniz şekilde bir değişiklik yapması kesinlikle mümkün değil! Bu kontroller zaten yazılım içinden yapılmaktadır.
Ne ekersen onu biçersin!  Idea
Cevapla
#35
Benzer konu donem donem tekrar konusuluyor ve bir yere vardigini gormedim acikcasi.
Birkac duzeltme ile baslamak isterim:
* Mr. Stop Rus degil Turk'dur.
* Kendi paketlemenizi yazmaniz ise yaramaz, zaten mevcut paketlemelerin nasil kirildigi belli, sizinki de kirilir.
* Ayni ortamda debugger ya da x uygulama acik mi kontrolu ise yaramaz, uygulamanizi sanal makina icinde calistirip isletim sistemi seviyesinde debug edebiliyorlar

Bu kadar ugrasin hic bir onemi yok, hic bir firma programi kirildigi icin batmadi ya da zarar etmedi. Etseydi Microsoft ederdi. Eger programiniz bir oyun degilse basit bir koruma koyup gecin. Insanlar uygulamanizi isleri icin kullaniyorsa zaten bir destek ihtiyaci er ya da gec duyarlar, size ulasacaklardir.
Cevapla
#36
Merhaba,
Şahsi düşüncem uygulamanın kırılmasını önlemeye çalışmayın. Serbest bırakın kullansınlar.fakat siz arka planda veri madenciliği yapın.
* Kurulum bilgilerini toplayın.
* Makine bilgilerini toplayın. (domain altında çalılıyormu bakın.)
* sistemde kayıtlı mail adreslerine ulaşmaya çalışın.
* Uygulamanızın db sine firma bilgileri var ise zaten kimliği tespit ettiniz demektir.

Bu bilgiler toplandıysa ve kurulumdan belirli bir süre geçtiyse bilgileri kendinize mail atın yada sunucunuza post edin.

Şimdi bu bilgileri toplamak suç değilmi diyeceksiniz. Hiç okunmayan Lisans sözleşmesine yazın. Toplanma amacını ve niçin kullanıldığını.
Direkt elinizdeki veriler ile satış baskısını yapabilirsiniz. Yada ihtar çekebilirsiniz.

Asla kırılmaz demeyin derim. Asla dediklerimiz hep karşımıza çıkıyor.

İyi Çalışmalar.
Cevapla
#37
Bu kopya koruma yöntemlerini okuyunca eski hatıralarım canlandı. 90'lı yıllarda laser hole 'lü disketler vardı. Laser gibi bir ısı kaynağı ile disketin bir noktası deforme edilirdi. Bu hangi track yada sectore denk geldiyse orası bad-sector oluyordu. EXE yada COM ana programıa da bir kod eklenerek ilk çalıştığında bu diskette belirlenmiş olan bad-sector kontrol ediliyordu. Ben de o yıllarda bir yazılım firmasına kendim geliştirdiğim bir tür kopyalanmayan disket yaparak yüzlerce satmıştım. O zamanlar popüler olan CopyWrite disk kopyalama programı bile kopyalayamıyordu. Çalışma mantığı ise son trak kaç ise (3.5 inc'lerde 0-79 arası kullanılırdı) ben 82.ci track'ı farklı formatlar ve veri yazardım. Bunu da Ms-DOS interruptlarını kullanarak yapardım. Tabii yine Pascal ile..
Cevapla
#38
@enigma sen de eskilerdenmişsin. Anılar canlandı, 82.trackı da kopyalayan programlar (DiskClone) çıkınca bundan vazgeçip klasik bir maket bıçağı ile fiziki minik bir çizik atardım. Bu çizik olan yer format sonrasında FAT altında bir bad sectör tablosu oluştururdu. Proje her çalışmada diskin FAT tablosunu proje içinden yeniden okuyup, okunan bad sectör içeriğinden rastgele bir tanesini direkt okumaya çalışıp, hata dönerse anahtar disk takılı varsayıp devam ederdim.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#39
(09-04-2021, Saat: 08:27)mrmarman Adlı Kullanıcıdan Alıntı: @enigma sen de eskilerdenmişsin. Anılar canlandı, 82.trackı da kopyalayan programlar (DiskClone) çıkınca bundan vazgeçip klasik bir maket bıçağı ile fiziki minik bir çizik atardım. Bu çizik olan yer format sonrasında FAT altında bir bad sectör tablosu oluştururdu. Proje her çalışmada diskin FAT tablosunu proje içinden yeniden okuyup, okunan bad sectör içeriğinden rastgele bir tanesini direkt okumaya çalışıp, hata dönerse anahtar disk takılı varsayıp devam ederdim.

Benim zamanımda en popüler olarak hatırladığım disk kopyalama programı CopyWrite vardı. o bile benim disketimi tam olarak kopyalayamıyordu. Çünkü 82. track'ı DOS formatında formatlamıyordum. Farklı sayıda sector oluşturuyordum. Buraya yazdığım kodu kopyalayamıyordu. Bu kodu benim programım okuyabiliyordu. Bu yüzden herhangi bir anahtar disket başka bir disketle aynı olmuyordu. Çalışmıyordu. Güzel günlerdi Smile Öğrenciydim o zamanlar. Bu işten güzel para kazanmıştım...
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Modern Servis Uygulama İskeleti Tuğrul HELVACI 21 12.210 03-05-2021, Saat: 19:34
Son Yorum: aegean
  Tarım Bakanlığı Bitki Koruma Ürünleri Bildirimi Hakkında bünyamin68 7 1.006 28-12-2020, Saat: 23:46
Son Yorum: hi_selamlar
  Uygulama içinde FB DB bakımı mcuyan 3 1.020 14-08-2020, Saat: 20:11
Son Yorum: mcuyan
  Uygulama içi ses mcuyan 8 2.703 09-06-2020, Saat: 12:14
Son Yorum: emozgun
  kısayol mu? uygulama mı? info@guzelceker.com 4 1.408 02-06-2020, Saat: 20:37
Son Yorum: mrmarman



Konuyu Okuyanlar: 1 Ziyaretçi