Ukrycie parametrów połączenia z bazą MySQL

0

witam,

proszę o praktyczną poradę w jaki sposób ukryć parametry połączenia z bazą MySQL (DBExpress) tak aby użytkownicy nie mogli ich podejrzeć w edytorze tekstu lub w Hex-edytorze?

W przypadku wpisania parametrów połączenia do komponentu SQLConnection są one widoczne w zwykłym edytorze tekstu, wystarczy otworzyć plik exe w notatniku i wszystko widać.
W przypadku wpisywania ich w locie w samej aplikacji można je łatwo podejrzeć w HEX edytorze.

Jak to rozwiązujecie w swoich aplikacjach?

0

Jeżeli chodzi tylko o hexedytor czy notatnik to nie ma problemu aby parametry zaszyfrować dowolnym algorytmem i jako takie przechowywać w programie i przed połączeniem deszyfrować tyle że musisz pamiętać że są jeszcze debuggery i wtedy tak czy tak jak ktoś będzie chciał to odczyta te dane tyle że to już wymaga pewnej wiedzy.

0

Jakiej wiedzy, zwykły Cheat Engine do przeglądania pamięci i szukajka wyrażeńa pasująca do modelu connectstring.
Nie da się tego tak zabezpieczyć żeby nikt nie miał tam wglądu, zawsze znajdzie się jakiś sposób.

0

Tak naprawdę to najlepiej skorzystać z dobrego exe protectora powinien mieć min. anti-debugger i anti-memory dump ale to też nie daje pewności że nikt tego nie obejdzie.

0

polecam vmprotect, oczywiscie najnowsza licencjonowana wersje.

1

Taa, szyfrujcie sobie exe, kiedy baza danych jest zdalna i bez problemu można prześledzić wychodzące dane. Można nawet obejść ssl, wystarczy wystawić sobie certyfikat, zaufać mu lokalnie i wpiąć się np. Fiddlerem.

0

No też można czyli wychodzi na to że tak naprawdę nie ma w miarę skutecznej metody zawsze znajdzie się jakaś dziura i jak ktoś będzie bardzo chciał to wyciągnie te dane. Oczywiście można i przed tym się zabezpieczyć wykrywać czy karta sieciowa nie jest w promiscuous mode ale kto chce i tak znajdzie sposób (np. choćby głupi hosts trzeba by i go kontrolować).

0

Bo takich rzeczy nie robi się w ten sposób. Pisze się webserwisy udostępniające konkretne funkcjonalności i za ich pośrednictwem korzysta z bazy. Wtedy masz stuprocentową kontrolę nad tym kto do czego ma uprawnienia i żadne strategiczne hasło nie wycieknie.

0

Jest pewnie tysiące sposobów na to, bo to temat stary jak świat.

Można użyć LDAP:
http://infoscope.gr/mysqlauthldap

Można użyć rozwiązania od MySQL:
http://www.mysql.com/products/enterprise/security.html

1 użytkowników online, w tym zalogowanych: 0, gości: 1