Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 30 odgovora
  • 8.215 pregleda

Najnovija ↓

EXE kompresija za zaštitu podataka u programima 27.12.2010. u 23:42 · pre 192 meseca #1
Potrebno mi je da nekako zaštitim informacije u exe datotekama, a nisam našao nikakav alat. Naime, exe je vrlo lako otvoriti i modificirati u 3rd party alatima (npr. resource hacker), a otvorite li sam exe u npr. wordpadu moguće je čak preko opcije find pronaći plain text password-a koje program koristi za pristup bazama podataka te i druge osjetljive podatke itd. Ukratko, teška katastrofa ako se radi neka aplikacija gdje je sigurnost imperativ.

Koliko sam pročitao, za zaštitu neki programi koriste exe kompresore, no google mi ne nalazi ništa pametno.. Znate za kakve exe kompresore ili druge alate kojima bi se moglo zaštiti informacije u programima?
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 04:33 · pre 192 meseca #4
Da, spakuješ sa UPX-om i onda neko iskoristi UPX Unpacker i džaba si krečio :)

Nego, nevezano za to, nije valjda da passworde i druge bitne informacije držiš u plain text formatu, bilo gde ? To je jako loša praksa. Za takve stvari treba koristiti enkripciju i onda porediti enkriptovane vrednosti.
Potpis
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 09:35 · pre 192 meseca #5
nista tu ne pomaze druze, ko hoce da se docepa DB lozinke to moze da uradi na sto nacina, cak iako interno cepkas lozinku, kriptujes, varis, lemis postoji najtezi ali onaj koji uvek pali: fake DLL injection za odbc32.dll. U principu napravis iste exporte ili cak samo listu koja matchuje import listu u exe, implementiras nekoliko metoda koje se prvi pozivaju (SQLAllocHandle, SQLSetEnvAttr, SQLSetConnectAttr) iz kojih uvek vracas SQL_SUCCESS i onda ga sacekas na SQLConnect/SQLDriverConnect da ti sam da username/pass/connection string koji se toliko mucio da sacuva ;)

Slicna prica (mada malcice komplikovanija zbog COMa) ako ides preko ADOa. Najjednostavnija prica sa .NETom (debug, breakpoint na SqlConnection.ctor(String)).

U svakom slucaju ko se nameri spasa nema. Tj spas je u propisnoj konfiguraciji domena i koriscenju integrated authentication-a.





Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 09:59 · pre 192 meseca #6
Eurora3DTeam, tj Nebojsa sa ovog foruma je napravio ovakav alat.


Inace, ja sam za takve stvari napravio alat za kriptovanje svih tekstualnih resursnih fajlova, od korenog drektorijuma pa nanize i kasnije u kodu njihovo dinamicko dekriptovanje. Takodje sam za svaki slucaj sporadicno proveravao i ocekivane checksumove, tako da program zabaguje povremeno, ne uvek, jer je to najlakse za pronaci.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 10:06 · pre 192 meseca #7
Citat:
mmix: postoji najtezi ali onaj koji uvek pali: fake DLL injection za odbc32.dll. U principu napravis iste exporte ili cak samo listu koja matchuje import listu u exe, implementiras nekoliko metoda koje se prvi pozivaju (SQLAllocHandle, SQLSetEnvAttr, SQLSetConnectAttr) iz kojih uvek vracas SQL_SUCCESS i onda ga sacekas na SQLConnect/SQLDriverConnect da ti sam da username/pass/connection string koji se toliko mucio da sacuva ;)


Ne pali ni taj način baš uvek, jer program može da proveri heš dll-ova koje učitava. Ako nađe da je dll lažnjak, neće da radi. Naravno, time program vezuješ za jednu tačno određenu verziju dll-a.

No, provaljivanje se ne može sprečiti, ali se može otežati. UPX nije nikakva zaštita.

Ja bih uradio ovo što X Files predlaže, s tim što bih obavezno proverio dll-ove koje učitavam.
Potpis
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 10:42 · pre 192 meseca #8
Da, ali debuger onda uvek radi. Sve odbc32 funkcije su javni exporti, bez obzira dal ih dinamicki ili staticki linkujes (sto je mnogo verovatnije jer ce bar neki dependency DLL verovatno vec ucitati odbc32.dll) u EXE pre ili kasnije mora da se ucita u adresni prostor i onda zakacis debugger na entry point za SQLConnect i posto znas stdcall konvenciju sve ti je tu ;)

dakle ako se ne varam nesto na fazon ovoga:

sxe ld "odbc32.dll"
...
bm odbc32!SQLConnect
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 10:53 · pre 192 meseca #9
Pa, i to se može zaobići. Misliš da ne postoje metode zezanja dibagera?
Potpis
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 11:04 · pre 192 meseca #10
Ako chekiras IsDebuggerPresent API ili PEB uradim breakpointe i bypass povratne vrednosti, ako to uspes da zaobidjes onda je tu OllyDbg, ako koristis Olly expolit onda predjem na SoftICE i blokiram ti proveru INT1. U svakom slucaju za svaku meru postoji kontramera. Ono je sto je indikativno ovde je da ces potrositi brdo vremena da od mene sakrijes ono sto ne mozes sakriti umesto da od pocetka napravis program tako da on ne nosi authentication informacije. Za windows platofrmu je to bar danas lako uraditi.

Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 11:13 · pre 192 meseca #11
Citat:
mmix: U svakom slucaju za svaku meru postoji kontramera. Ono je sto je indikativno ovde je da ces potrositi brdo vremena da od mene sakrijes ono sto ne mozes sakriti umesto da od pocetka napravis program tako da on ne nosi authentication informacije. Za windows platofrmu je to bar danas lako uraditi.


O tome i pričam. Jedino mi nije jasno kakve to ima veze sa Windows-om. Metode su opšte.

Citat:
Nedeljko: provaljivanje se ne može sprečiti, ali se može otežati.


Mogu na primer prilikom instalacije da izmerim brzinu računara, pa posle da merim vreme potrebno da se nešto obavi, pa ako kilavi ko u dibageru, onda da zezam, ali se i tome može doakati. Najbolje je da korisnik unosi lozinke, koje su njemu dodeljene.
Potpis
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 11:22 · pre 192 meseca #12
Pa pominjem windows zbog NTLM/Kerberosa i opciono ADa i koriscenja windows user konteksta za authentikaciju. Za desktop aplikacije to znaci da ne mora uopste ni da se unosi lozinka plus omogucava unattended aplikacije (servise) bez cuvanja lozinki u aplikaciji. Iskreno ne znam dal postoji slican mehanizam za linux?
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 11:33 · pre 192 meseca #13
Ako se lozinka ne unosi, to znači da se ključ izračunava na osnovu parametara sistema koji se mogu očitati (što bi ti reko "konteksta korisnika"). To je sigurno u tri lepe. Nema ništa bez jake lozinke.

Kad bi to tako moglo i drugi bi implementirali iste metode. Ne postoji nijedan algoritam koji se može isprogramirati na jednom OS-u, a ne može na drugom.
Potpis
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 11:42 · pre 192 meseca #14
Ako je kontekst korisnika vezan za lozinku korisnika, onda je to druga priča, ali to se onda može implementirati bilo gde.
Potpis
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 11:48 · pre 192 meseca #15
A sta je nesigurno tu?

Kroz aplikaciju ti nemas pristup lozinci i ne mozes da dupliras kontekst (majvise sto mozes je da impersonias kontekst sto je ovde bespredmetno posto si vec u njemu), authentikacija na domenske servise (ukljucujuci SQL) se ne obavlja plaintekst lozinkom vec hashed challenge/response ili jacim mehanizmom. Kad se pronadje rupa u SSP ceo svet zna za to i krpi se momentalno i jedini bagoviti deo tog sistema (LM hash) koji po dizajnu nije mogao da se popravi nije u opticaju vec 14 godina.

Radi to lepo, nista ne brini. NIsam ja ni rekao da ne moze da se implementira vec da nije implementirano (koliko ja znam). Neke binary protokole su implemntirali (samba i slicno) ali ja koliko znam ti ne mozes na linux da se ulogujes kao nedeljko i da se onda konektujes na udaljeni reimo MySQL kao nedeljko bez da prosledis authentication info? Ispravite me ako gresim.
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 11:59 · pre 192 meseca #17
Citat:
mmix: A sta je nesigurno tu?


Poenta je da da bi sistem bio siguran, u jednom trenutku moraš da uneseš nekakvu lozinku. Možeš ti da unosiš lozinku jednom prilikom logovanja na operativni sistem i da to bude dovoljno, ali ne može bez ikakve lozinke.
Potpis
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 12:03 · pre 192 meseca #18
Kako bi to izgledalo. Ok, mozes namestiti linux da authentikuje iz neke LDAP biblioteke, koliko vidim i MySQL moze da kreira usere kao mysql usere mapirane na linux usere kroz LDAP plugin (mada je to i dalje veoma daleko od group based security-a iz AD). Ali kako sad to funkcionise na nivou protokola? Kod windowsa time sto si mu naveo "Integrated Security=true" ukljucio si da konekcija pocinje sa SSPI challenge/response nakon kojeg server ima lokalno instanciran domenski security token korisnika. Kako to radi za mySQL recimo? Kako podesiti aplikaciju/server/konekciju tako da te server vidi kao vec ulogovanog korisnika bez dodatnih ukucavanja/prosledjivanja plaintext security informacija?

@Nedeljko, naravno da moras, ali je poenta da to uradis samo jednom. Ne samo to nego ne moras ni jednom (npr smartcard+pin) ali to se u osnovi svodi na isto. Glupo je da moras ponovo da ubacujes password u aplikaciji kad si se vec predstavio sistemu.
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 12:08 · pre 192 meseca #19
EDIT: Ja ne držim passworde u vanjskim datotekama u plain text formatu, već u samom programu (exe):

Meni je najveći problem ako parametre konekcije (bazu, password..) definiram statički (u design time-u). Onda se odmah mogu pročitati kao resurs. Sličan je problem ako parametre konekcije (konstantne stringove) predajem funkciji prilikom njenog poziva. Onda to mogu pronaći u wordpad-u.
Re: EXE kompresija za zaštitu podataka u programima 28.12.2010. u 12:12 · pre 192 meseca #20
Ma taj problem je stvarno marginalan, ako se samo stitis od "wordpad hakera" XORuj svaki karakter lozinke sa FF :) To je dovoljna zabuna za te haxore.


Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme