Skocz do zawartości

Sudo Vs Su


rmr

Rekomendowane odpowiedzi

heh ten pam-usb ma smiesznie zrobiona randomizacje. jako podstawe wyliczenia uzywa pidu i godziny logowania. malo profesjonalne. kiedys goscie od debiana usuneli jeden "niepotrzebny" pusty bufor z openSSL i uzaleznili haslo wprost od pidu procesu ;d cos mi sie wydaje ze lepiej trzymac sie z daleka od tego. ew miec czytnik linii papilarnych ^^

Odnośnik do komentarza
Udostępnij na innych stronach

@thof

admin-button to nazwa mechanizmu uwierzytelnienia, którą wymyśliłem na potrzeby tego postu, żeby za każdym razem nie pisać "przycisk na klawiaturze autoryzujący roota"

 

@fafig

Chodzi Ci o ten fragment kodu?

srand(getpid() * time(NULL));

Nie bardzo rozumiem dlaczego uważasz to za mało profesjonalne, i co mają z tym wspólnego deweloperzy debiana. Bo chyba nie chodzi Tobie o tego buga w openssl, o którym było dość głośno swojego czasu, on występował tylko w debianowskich paczkach, a poza tym to było ponad rok temu, już dawno go załatali.

Odnośnik do komentarza
Udostępnij na innych stronach

wiem ze go zalatali ;] deweloperzy nie maja nic wspolnego - chodzi mi o ten identyfikator procesu, ot co...

 

nie lepiej wygenerowac srand w taki sposob?

 

int unixrand()
{
   int x;
   int f = open("/dev/random", O_RDONLY);
   if (f < 0) return -1; /* Error */
   if (sizeof(x) != read(f, &x, sizeof(x))) {
       close(f);
       return -1;
   }
   close(f);       
   if (x < 0) x = -x;
   return x;
}

 

jakos mam wieksze zaufanie do funkcji kernela niz napisanych wlasnorecznie. przeciez wystarczy znac numer procesu i czas uruchomienia - zalogowania. jest ograniczona liczba mozliwosci jesli znamy czas uruchomienia...przeciez pidy numeruje sie do jakiejs z gory okreslonej liczby (25k czy cos...). to jest chyba wystarczajacy powod zeby uzywac tego co jest a nie wynajdywac kola od nowa...poza tym random generuje entropie na podstawie wielu czynnikow m.in ruchow myszki i kodow klawiatury (no i ofc seed jest przechowywany miedzy kolejnymi uruchomieniami systemu - generator jest inicjalizowany poprzednia wersja seeda). to tylko przyklad, mozna zalezc lepszy. tak czy owak znalazlem troche wpisow na forach odradzajacych uzywanie tego modulu...

 

 

jakby co to dodatkowe informacje na temat generatora seed'ow mozna znalezc tu i tu

Odnośnik do komentarza
Udostępnij na innych stronach

heh :) wiem, że random w C/C++ nie jest idealny, ale dotychczas myślałem, że ma to znaczenie tylko w symulacjach statystyki (gdzie zwyczajnie generują się bzdury). Chcesz powiedzieć, taki random jest niebezpieczny i da się rozszyfrować kod o niego oparty? To, że znamy algorytm i wynik, nie znaczy jeszcze, że znalezienie początku jest wykonalne :)

Przykłady proszę <tuptup>, chętnie podumam.

 

[EDIT]

siet, wygląda na to że tak :/ przykładowo to cacko http://pl.wikipedia.org/wiki/Mersenne_Twister ma

w przybliżeniu 4 × 10^6000 unikalnych kombinacji , ale jak się ma trochę ponad 600 kolejnych losowań to reszta jest przewidywalna. Nie cierpię matematyków, wszystko potrafią sprowadzić do kilku fikuśnych znaczków w określonej kolejności :P

Odnośnik do komentarza
Udostępnij na innych stronach

W kodzie modułu, każdy bajt jest poddany oddzielnej randomizacji, co jeszcze bardziej zwiększa ilość kombinacji. Obawiam się że producent mojej płyty gł. nie przewidział tak wzmożonej eksploatacji gniazd USB, które rozleciały by się przy pierwszym tysiącu unikalnych kombinacji :)

Już nie wspominając o tym że pam_usb sprawdza też vendor i serial pamięci.

Wczoraj skompilowałem ten moduł, prezentuje się dobrze, można przyczepić się do pewnych rzeczy ale ogólnie jest ok.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...