Jump to content

Prosta strona WWW na ruterze z Tomato - czym ryzykuje?


glorifyday

Recommended Posts

Mam taki pomysl, zeby na swoim ruterze z tomato na zwyklym porcie 80 wystawic prosta, nieszyfrowana strone WWW z jednym linkiem badz przyciskiem, ktory by uruchamial skrypt na ruterze. Skrypt nie robi rzeczy niebezpiecznych, jak jakis bot go uruchomi, to nie jest dla mnie problem.

Wiekszy bylby problem, gdyby przez te strone mozna bylo skrypt odczytac, a jeszcze wiekszy, gdyby dalo sie uruchomic jakis skrypt czy kod "podrzucony".

Lewy jestem w materii stron WWW na maksa, zatem chcialem sie wstepnie zorientowac, czym ryzykowalbym wystawiajac taka strone.

Dodatkowe uwagi.

  • Port 443 mam zajety, nie moge go niestety wystawic na zewnatrz.
  • Jesli to bedzie dzialac i jesli da mi wiecej bezpieczenstwa, moglbym wystawic strone po https na porcie 80, ale nie wiem, czy sie przegladarki nie beda gubic.
  • Moglbym dodac jakas autentykacje, ale czy autentykacja bez https ma w ogole sens, skoro wszystko pojdzie zywym tekstem?
  • Moge rozwazyc jakies captcha, ale tu tez jestem lewy, nie wiem jak sie do tego zabrac.
Link to comment
Share on other sites

  • Replies 4
  • Created
  • Last Reply
  • Administrator

chcialem sie wstepnie zorientowac, czym ryzykowalbym wystawiajac taka strone.

przede wszystkim nieautoryzowanym wykonaniem. możesz dorobić jakiś prosty ogranicznik plikiem .htaccess :
You do not have the required permissions to view links attached to this post.
a uprawnienia zmienić tak aby odczyt i wykonanie miał konkretny user.

 

Moglbym dodac jakas autentykacje, ale czy autentykacja bez https ma w ogole sens, skoro wszystko pojdzie zywym tekstem?

hasło przez powyższe rozwiązanie może być (a nawet musi) zakodowane zgodnie z algorytmem MD5

anyway, czy tomato nie ma czasem webserwera nginx ? Jeśli tak to trzeba :

You do not have the required permissions to view links attached to this post.
. Nie używam tomato więc nie wiem jak serwować coś z niego.

Link to comment
Share on other sites

W dniu 10.06.2015 o 13:51, house napisał:
zakodowane zgodnie z algorytmem MD5

Ale to nie jest jakies specjalnie pewne zabezpieczenie.

Popatrze na .htaccess i zerkne na tego nginxa.

Nieautoryzowane wykonanie nie boli mnie az tak bardzo, natomiast juz odczytanie tresci mojego skryptu albo wywolanie cudzego bolaloby.

Czy przy rozsadnie zaimplementowaym serwerze WWW nie musze sie jakos przesadnie obawiac takich rzeczy?

Link to comment
Share on other sites

  • Administrator
W dniu 10.06.2015 o 16:44, glorifyday napisał:

Nieautoryzowane wykonanie nie boli mnie az tak bardzo, natomiast juz odczytanie tresci mojego skryptu albo wywolanie cudzego bolaloby.

możesz te skrypty ukryć zmienną "location" - analogicznie jak to robi się z plikami konfiguracyjnymi softu. Klient otrzyma 444 - brak odpowiedzi i nginx rozłączy request.

W dniu 10.06.2015 o 16:44, glorifyday napisał:

Czy przy rozsadnie zaimplementowaym serwerze WWW nie musze sie jakos przesadnie obawiac takich rzeczy?

Myślę, że jeśli poświęcisz trochę czasu nad tematem to będzie działać w miarę bezpiecznie. Chociaż internet niejedno już widział i czytał.

Link to comment
Share on other sites

  • 2 years later...
Guest bischop
W dniu 10.06.2015 o 16:44, glorifyday napisał:

Nieautoryzowane wykonanie nie boli mnie az tak bardzo, natomiast juz odczytanie tresci mojego skryptu albo wywolanie cudzego bolaloby.

Czy przy rozsadnie zaimplementowaym serwerze WWW nie musze sie jakos przesadnie obawiac takich rzeczy?

nie musisz do czasu aż w sofcie który stanowi serwer www bądź w kodzie firmware'u maszyny znajdzie się dziura która umożliwi w jakiś sposób zdalne wykonanie kodu. Możesz mieć jeszcze problem z przez siebie błędnie napisanym skryptem np. PHP który to np. wywołuje zapytanie na bazie danych. Dane do zapytania pobierane są przez ten skrypt za pomocą forumlarza www. Luka polega na tym, że odpowiednio wprowadzone dane w polu formularza i zawołane na bazie danych powodują wykonanie na bazie nie tego "kodu" który ty byś chciał, ale tego co wstawi atakujący [*].

To, że wrzucisz skrypt na serwer www nie znaczy, że zdalnie będzie można odczytać kod skryptu. Skrypt będzie uruchamiany i wyświetlane będą jego rezultaty działania - chyba, że skonfigurujesz serwer tak, że nie będzie uruchamiał skryptu tylko go "wyświetlał" jako dokument tekstowy.

I dość istotne jest tak jak wspominali przedmówcy abyś zainteresował się tym .httaccess'em - bo to bardzo ułatwia życie. Np. da się tam ograniczyć listowanie folderów pod względem zawartości plików w nim się znajdujących. Bo po co ktoś ma mieć możliwość zobaczenia, że w folderze "config" masz plik "passwords.ini" - a potem będą próby pobrania zawartości takiego pliku, bądź wywołania (w jakiś sposób) skryptu zdalnie tak, aby plik odczytał i wyświetlił.

Jeżeli atakujący nie wie czego szukać, nie zna struktury, wersji oprogramowania znajdującego się na serwerze to jest mu trudniej.

 

Cytuj

zeby na swoim ruterze z tomato na zwyklym porcie 80 wystawic prosta, nieszyfrowana strone WWW z jednym linkiem badz przyciskiem, ktory by uruchamial skrypt na ruterze

Taki link zostanie wykonany w przeciągu 30 minut po wystawieniu przez ciebie skryptu "na świat" jeżeli tylko podasz gdzieś swój adres IP na publicznej istniejącej stronie www. Uruchomią go np. internetowe boty wyszukiwarek internetowych np. google.

 

 

 

[*] czytać:

You do not have the required permissions to view links attached to this post.

Command Injection on router:

You do not have the required permissions to view links attached to this post.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, please see ours Guidelines and Privacy Policy.