Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi 'de exe içinde ki database ip tespit etme
#1
Merhaba arkadaşlar;
Delphi ile geliştirdiğimi bir windows  exe  oracle database kullanarak veri işliyorum. ekleme çıkarma vs.
Bağlandığım database bilgisi connection string tespit edilebilir mi ? ,sql monitor vs aracılığı ile 
Çünkü kullanıcıya dabatase ip kullanıcı adı vermiyorum.kendim login olduktan sonra oluşturduğum bir tablodaki kullanıcı verileri ile erişim izni veriyorum
Kısaca database bilgisi ip ve kullanıcı adı hacklene bilir mi ?
Bilgi verirseniz çok teşekkür ederim
Cevapla
#2
(22-08-2022, Saat: 15:20)delphiX14 Adlı Kullanıcıdan Alıntı: Merhaba arkadaşlar;
Delphi ile geliştirdiğimi bir windows  exe  oracle database kullanarak veri işliyorum. ekleme çıkarma vs.
Bağlandığım database bilgisi connection string tespit edilebilir mi ? ,sql monitor vs aracılığı ile 
Çünkü kullanıcıya dabatase ip kullanıcı adı vermiyorum.kendim login olduktan sonra oluşturduğum bir tablodaki kullanıcı verileri ile erişim izni veriyorum
Kısaca database bilgisi ip ve kullanıcı adı hacklene bilir mi ?
Bilgi verirseniz çok teşekkür ederim

Merhabalar,

Nasıl bağlandığınızı belirtmemişsiniz.  ADO / Firedac / Unidac vb.

Önerim, şifreleme yöntemi kullarak bağlantınızı çağırma esnasında şifreyi çözüp işlemlerinizi yapmanız.

Bunu INI içinde bağlantı şifreleme ile tutup çağırabilir veya direkt proje içinden de yapabilirsiniz.


AES256 vb. 

function SifreCoz(const metin : String) : String;
begin
 // şifre çözme fonksiyonunuz...
end;

Baglan.ConnectionString := 'Provider=SQLOLEDB.1'+';Password='+SifreCoz('BLABLABLA')+';
Persist Security Info=True'+';User ID ='+SıfreCoz('BLABLABLA')+';Initial Catalog='+SifreCoz('BLABLABLABLABLABLA')+';
DataSource='+SifreCoz('BLABLABLA')+'\'+SifreCoz('BLABLABLA')+';';

Şifreleme Örneği :
https://www.delphican.com/showthread.php?tid=1987

Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#3
(22-08-2022, Saat: 16:56)hi_selamlar Adlı Kullanıcıdan Alıntı:
(22-08-2022, Saat: 15:20)delphiX14 Adlı Kullanıcıdan Alıntı: Merhaba arkadaşlar;
Delphi ile geliştirdiğimi bir windows  exe  oracle database kullanarak veri işliyorum. ekleme çıkarma vs.
Bağlandığım database bilgisi connection string tespit edilebilir mi ? ,sql monitor vs aracılığı ile 
Çünkü kullanıcıya dabatase ip kullanıcı adı vermiyorum.kendim login olduktan sonra oluşturduğum bir tablodaki kullanıcı verileri ile erişim izni veriyorum
Kısaca database bilgisi ip ve kullanıcı adı hacklene bilir mi ?
Bilgi verirseniz çok teşekkür ederim

Merhabalar,

Nasıl bağlandığınızı belirtmemişsiniz.  ADO / Firedac / Unidac vb.

Önerim, şifreleme yöntemi kullarak bağlantınızı çağırma esnasında şifreyi çözüp işlemlerinizi yapmanız.

Bunu INI içinde bağlantı şifreleme ile tutup çağırabilir veya direkt proje içinden de yapabilirsiniz.


AES256 vb. 

function SifreCoz(const metin : String) : String;
begin
 // şifre çözme fonksiyonunuz...
end;

Baglan.ConnectionString := 'Provider=SQLOLEDB.1'+';Password='+SifreCoz('BLABLABLA')+';
Persist Security Info=True'+';User ID ='+SıfreCoz('BLABLABLA')+';Initial Catalog='+SifreCoz('BLABLABLABLABLABLA')+';
DataSource='+SifreCoz('BLABLABLA')+'\'+SifreCoz('BLABLABLA')+';';

Şifreleme Örneği :
https://www.delphican.com/showthread.php?tid=1987

Kolay gelsin.

Merhaba,

mesajınızı okuduğumda aklıma ilk gelen şey; Cheat Engine gibi bir program ile hafıza üzerinden Baglan.ConnectionString 'in SifreCoz'lü açık hali okunabilir.

Bu konuda herhangi bir çözüme sahip değilim, sanırım en iyisi veritabanını şifrelemek.
Cevapla
#4
(24-08-2022, Saat: 14:17)berk06 Adlı Kullanıcıdan Alıntı:
(22-08-2022, Saat: 16:56)hi_selamlar Adlı Kullanıcıdan Alıntı: Merhabalar,

Nasıl bağlandığınızı belirtmemişsiniz.  ADO / Firedac / Unidac vb.

Önerim, şifreleme yöntemi kullarak bağlantınızı çağırma esnasında şifreyi çözüp işlemlerinizi yapmanız.

Bunu INI içinde bağlantı şifreleme ile tutup çağırabilir veya direkt proje içinden de yapabilirsiniz.


AES256 vb. 

function SifreCoz(const metin : String) : String;
begin
 // şifre çözme fonksiyonunuz...
end;

Baglan.ConnectionString := 'Provider=SQLOLEDB.1'+';Password='+SifreCoz('BLABLABLA')+';
Persist Security Info=True'+';User ID ='+SıfreCoz('BLABLABLA')+';Initial Catalog='+SifreCoz('BLABLABLABLABLABLA')+';
DataSource='+SifreCoz('BLABLABLA')+'\'+SifreCoz('BLABLABLA')+';';

Şifreleme Örneği :
https://www.delphican.com/showthread.php?tid=1987

Kolay gelsin.

Merhaba,

mesajınızı okuduğumda aklıma ilk gelen şey; Cheat Engine gibi bir program ile hafıza üzerinden Baglan.ConnectionString 'in SifreCoz'lü açık hali okunabilir.

Bu konuda herhangi bir çözüme sahip değilim, sanırım en iyisi veritabanını şifrelemek.

Merhabalar,

SifreCoz fonksiyonunu içersinde ki test değer zaten şifreli. Şifreli metni gönderip çözdürüp kullanıyorsunuz.
SifreCoz('AEKLJASLDU1HASHDAH212312H3KJHAKFJHASKDJ');
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#5
(24-08-2022, Saat: 15:19)hi_selamlar Adlı Kullanıcıdan Alıntı:
(24-08-2022, Saat: 14:17)berk06 Adlı Kullanıcıdan Alıntı: Merhaba,

mesajınızı okuduğumda aklıma ilk gelen şey; Cheat Engine gibi bir program ile hafıza üzerinden Baglan.ConnectionString 'in SifreCoz'lü açık hali okunabilir.

Bu konuda herhangi bir çözüme sahip değilim, sanırım en iyisi veritabanını şifrelemek.

Merhabalar,

SifreCoz fonksiyonunu içersinde ki test değer zaten şifreli. Şifreli metni gönderip çözdürüp kullanıyorsunuz.
SifreCoz('AEKLJASLDU1HASHDAH212312H3KJHAKFJHASKDJ');

SifreCoz fonksiyonu çağırıldıktan sonra Baglan.ConnectionString içerisinde şifreli değil açık bir şekilde depolanmış olmayacak mı? Yoksa bağlantı eklentileri bunun için özel bir yapıya sahip ve bu verileri hafızada şifreli bir şekilde mi saklıyorlar? Eğer hafızada korumalı bir şekilde saklıyorsa evet "SifreCoz" güvenli.

Daha iyi anlaşılması açısından iki görsel ekliyorum. 56=A9:42?]4@> değerinin karşılığı delphican.com'a eşit.

dc1.png

Burada butona basılmış hali. Yani şifrenin çözülüp bir değişkende saklandığı hali;

dc2.png
Cevapla
#6
(24-08-2022, Saat: 16:43)Bberk06 Adlı Kullanıcıdan Alıntı:
(24-08-2022, Saat: 15:19)hi_selamlar Adlı Kullanıcıdan Alıntı: Merhabalar,

SifreCoz fonksiyonunu içersinde ki test değer zaten şifreli. Şifreli metni gönderip çözdürüp kullanıyorsunuz.
SifreCoz('AEKLJASLDU1HASHDAH212312H3KJHAKFJHASKDJ');

SifreCoz fonksiyonu çağırıldıktan sonra Baglan.ConnectionString içerisinde şifreli değil açık bir şekilde depolanmış olmayacak mı? Yoksa bağlantı eklentileri bunun için özel bir yapıya sahip ve bu verileri hafızada şifreli bir şekilde mi saklıyorlar? Eğer hafızada korumalı bir şekilde saklıyorsa evet "SifreCoz" güvenli.

Daha iyi anlaşılması açısından iki görsel ekliyorum. 56=A9:42?]4@> değerinin karşılığı delphican.com'a eşit.

dc1.png

Burada butona basılmış hali. Yani şifrenin çözülüp bir değişkende saklandığı hali;

dc2.png

Paylaşımınız için teşekkürler.

Akşam küçük bir uygulama (exe) paylaşımı yapıp kontrol etmenizi rica edeceğim.
Geri bildiriminiz le beraber bir kontrol sağlayalım bizlerde :Smile alınabilecek önlemler ile ilgili.

Teşekkürler.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#7
Ne yaparsanız yapın, Exe'nin içinde connection nesnesi olduktan sonra her türlü bunun bağlantı bilgileri okunup alınır.
Bunun en güvenli yöntemi server tarafında servis yazıp kullanıcıdaki exenin bu servis üzerinden haberleşmesi gerekmektedir.
Servis sql connection'a oturum açtığı için hiç kimse connection bilgilerinizi göremez.
Diğer türlü alacağınız önlemler hiç biri işe yaramayacaktır.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  delphi 10.4 deutsch1988 0 70 Dün, Saat: 11:46
Son Yorum: deutsch1988
  Delphi virus gibi deutsch1988 11 487 12-04-2024, Saat: 17:36
Son Yorum: deutsch1988
  Delphi 7 Unrar mcuyan 12 670 19-03-2024, Saat: 10:30
Son Yorum: frmman
Lightbulb Delphi 7zip Password lü Dosya Sıkıştırma ve Açma + Bonus RAR5 Desteği frmman 6 321 16-03-2024, Saat: 17:55
Son Yorum: delphi.developer
  delphi 12 ile TFileStream çalışmıyor aegean 5 527 05-03-2024, Saat: 22:23
Son Yorum: aegean



Konuyu Okuyanlar: 1 Ziyaretçi