środa, 14 września 2011

Zabezpieczenie najwyższych lotów

Kolega z roku udostępnił dziś pięknego linka do forum iiuj (instytut informatyki Uniwersytetu Jagielońskiego). Nic by w tym nie było ciekawego gdyby nie iście mistrzowski sposób kontroli dostępu.

http://www.ii.uj.edu.pl/dokumenty/weryfikacja.php

Pomijam tu już "skarby" zgromadzone na owym forum.. jednak sam fakt stosowania takich zabezpieczeń przez instytut informatyki uczelni wyższej nie świadczy raczej dobrze o jej administratorze...

function pass()
{var x; x = document.form.password.value.toLowerCase(); 
if(x == String.fromCharCode(105,105,117,106)) {document.form.submit();}
else  {alert("UWAGA.\nTo FORUM jest chronione hasłem!!!\nJeżeli chcesz zapoznać się z treściami tu prezentowanymi,\n"+
  " uzyskaj powyższe hasło od Administratora Systemu,\n przesyłając swoją prośbę na adres: iiuj@ii.uj.edu.pl");
  history.go(-1);}}
Tak... taki oto kod w javie script odpowiada za sprawdzenie poprawności hasła. Co najbardziej razi to fakt, że hasło de facto jest podane wprost -> 105, 105, 117, 106 to kody ASCII literek i, i, u, j (Można je szybko uzyskać trzymając ALT i wpisując kolejne cyfry na klawiaturze numerycznej).

Tak więc skoro już wiadomo jakie jest hasło to zastanówmy się czy w ogóle jest jakaś konieczność jego "odszyfrowywania"? Ano w tym przypadku nie ma, gdyż hasło nie jest w żaden sposób sprawdzane na serwerze.
<form name="form" action='http://www.ii.uj.edu.pl/dokumenty/dokumenty.php' method="POST">

Wystarczy odczytać atrybut "action" z elementy "form" i już można cieszyć się pełnym dostępem do "forum" -> http://www.ii.uj.edu.pl/dokumenty/dokumenty.php

Co by tu jeszcze można było wytknąć? W sumie to już niewiele... może jedną rzecz - tak naprawdę wcale nie trzeba patrzeć w kod strony, gdyż samo zaznaczenie inputa i wciśnięcie "ENTER" sprawia, że dostajemy się do docelowej strony. Zachowanie to wynika z działania przeglądarek, które automatycznie wywołują form.submit(); Oczywiście da się temu zapobiec choćby poprzez usunięcie atrybutu "action" :)

Brak komentarzy:

Prześlij komentarz