Witam,
Kwestia zabezpieczeń odpalania programów w systemie SPOJ.
Nie wiem, jak to jest obecnie zrealizowane, ale aby uniknąć ataku hakerskiego, wydaje mi się,
że każdy wrzucany program powinien być uruchamiany w tzw. “maszynie wirtualnej” odciętej od czegokolwiek.
Chodzi o to, aby “uruchamiany program” nie miał dostępu do rzeczywistych zasobów serwera + sieci.
Bo gdyby “testowany program użytkownika” miał w jakikolwiek sposób dostęp do zasobów serwera + sieci, to wtedy jest możliwość zrobienia takiego programu (zauważmy, że wybór języków programowania jest bardzo szeroki), który to mógłby coś (kod sędziego, kod innych nadesłanych programów, klucz dostępu do bazy danych, itd.) wyczytać z serwera i za pomocą sieci wysłać w świat (np. do serwera hakera).
Mam wrażenie, że taki atak właśnie nastąpił, nie mówię, że tak jest na 100%, ale te zgłoszenia dziwnie wyglądają (zgłoszenia są do różnych zadań co kilka sekund):
https://pl.spoj.com/users/gilotyna/13
Może się później okazać, że nagle na spoju znajdzie się “inny” użytkownik, który w ciągu paru minut rozwiązuje kolejne zadania.
Głowię się od dłuższego czasu nad zadaniem “Trudne/5/Dachy” (https://pl.spoj.com/problems/FR_14_20/9) i tam jest własnie takie dziwne zgłoszenie, stąd zacząłem się nad tym zastanawiać.
Pzdr.
created
last reply
- 6
replies
- 535
views
- 5
users
- 6
likes
- 2
links