IIS - Internet Information Services
WhiteIntel to wyszukiwarka zasilana przez dark web, która oferuje darmowe funkcje do sprawdzania, czy firma lub jej klienci zostali skompromitowani przez złośliwe oprogramowanie kradnące informacje.
Ich głównym celem WhiteIntel jest zwalczanie przejęć kont i ataków ransomware wynikających z złośliwego oprogramowania kradnącego informacje.
Możesz sprawdzić ich stronę internetową i wypróbować ich silnik za darmo pod adresem:
Testowane rozszerzenia plików wykonywalnych:
asp
aspx
config
php
Ujawnienie adresu IP wewnętrznego
Na dowolnym serwerze IIS, gdzie otrzymujesz 302, możesz spróbować usunąć nagłówek Host i użyć HTTP/1.0, a w odpowiedzi nagłówek Lokalizacja może wskazywać na adres IP wewnętrzny:
Odpowiedź ujawniająca wewnętrzne IP:
Wykonaj pliki .config
Możesz przesłać pliki .config i użyć ich do wykonania kodu. Jednym ze sposobów jest dołączenie kodu na końcu pliku wewnątrz komentarza HTML: Pobierz przykład tutaj
Więcej informacji i technik wykorzystania tej podatności znajdziesz tutaj
Bruteforce Odkrywania IIS
Pobierz listę, którą stworzyłem:
Została utworzona poprzez połączenie zawartości następujących list:
https://raw.githubusercontent.com/danielmiessler/SecLists/master/Discovery/Web-Content/IIS.fuzz.txt http://itdrafts.blogspot.com/2013/02/aspnetclient-folder-enumeration-and.html https://github.com/digination/dirbuster-ng/blob/master/wordlists/vulns/iis.txt https://raw.githubusercontent.com/danielmiessler/SecLists/master/Discovery/Web-Content/SVNDigger/cat/Language/aspx.txt https://raw.githubusercontent.com/danielmiessler/SecLists/master/Discovery/Web-Content/SVNDigger/cat/Language/asp.txt https://raw.githubusercontent.com/xmendez/wfuzz/master/wordlist/vulns/iis.txt
Użyj go bez dodawania żadnego rozszerzenia, pliki, które go potrzebują, mają je już.
Przechodzenie ścieżek
Ujawnianie kodu źródłowego
Sprawdź pełne opracowanie: https://blog.mindedsecurity.com/2018/10/from-path-traversal-to-source-code-in.html
Podsumowując, w folderach aplikacji znajdują się różne pliki web.config z odwołaniami do plików "assemblyIdentity" i "namespaces". Dzięki tym informacjom możliwe jest ustalenie gdzie znajdują się pliki wykonywalne i pobranie ich. Z pobranych plików Dll można również znaleźć nowe przestrzenie nazw, do których należy spróbować uzyskać dostęp i uzyskać plik web.config, aby znaleźć nowe przestrzenie nazw i assemblyIdentity. Ponadto pliki connectionstrings.config i global.asax mogą zawierać interesujące informacje.\
W aplikacjach .Net MVC, plik web.config odgrywa kluczową rolę, określając każdy plik binarny, od którego aplikacja zależy za pomocą tagów XML "assemblyIdentity".
Eksploracja plików binarnych
Poniżej przedstawiono przykład dostępu do pliku web.config:
To żądanie ujawnia różne ustawienia i zależności, takie jak:
Wersja EntityFramework
AppSettings dla stron internetowych, walidacji klienta i JavaScript
Konfiguracje System.web dotyczące uwierzytelniania i czasu wykonania
Ustawienia modułów System.webServer
Wiązania zestawów Runtime dla licznych bibliotek takich jak Microsoft.Owin, Newtonsoft.Json i System.Web.Mvc
Te ustawienia wskazują, że pewne pliki, takie jak /bin/WebGrease.dll, znajdują się w folderze /bin aplikacji.
Pliki Katalogu Głównego
Pliki znalezione w katalogu głównym, takie jak /global.asax i /connectionstrings.config (który zawiera poufne hasła), są niezbędne do konfiguracji i działania aplikacji.
Przestrzenie nazw i Web.Config
Aplikacje MVC definiują również dodatkowe pliki web.config dla określonych przestrzeni nazw, aby uniknąć powtarzających się deklaracji w każdym pliku, jak pokazano w żądaniu pobrania innego web.config:
Pobieranie plików DLL
Wzmianka o niestandardowej przestrzeni nazw wskazuje na plik DLL o nazwie "WebApplication1" obecny w katalogu /bin. Następnie pokazane jest żądanie pobrania pliku WebApplication1.dll:
To sugeruje obecność innych istotnych plików DLL, takich jak System.Web.Mvc.dll i System.Web.Optimization.dll, w katalogu /bin.
W scenariuszu, w którym DLL importuje przestrzeń nazw o nazwie WebApplication1.Areas.Minded, atakujący może wywnioskować istnienie innych plików web.config w przewidywalnych ścieżkach, takich jak /nazwa-strefy/Views/, zawierających konkretne konfiguracje i odwołania do innych plików DLL w folderze /bin. Na przykład żądanie do /Minded/Views/web.config może ujawnić konfiguracje i przestrzenie nazw wskazujące na obecność innego pliku DLL, WebApplication1.AdditionalFeatures.dll.
Wspólne pliki
Z tutaj
Błąd 404 HTTPAPI 2.0
Jeśli zobaczysz błąd jak poniżej:
Oznacza to, że serwer nie otrzymał poprawnej nazwy domeny w nagłówku Host. Aby uzyskać dostęp do strony internetowej, możesz sprawdzić certyfikat SSL i być może znajdziesz w nim nazwę domeny/poddomeny. Jeśli jej tam nie ma, możesz potrzebować przemocy VHosts aż znajdziesz poprawną.
Stare podatności IIS, które warto sprawdzić
Podatność/Funkcja znaku tyldy “~” w Microsoft IIS – Ujawnienie Krótkiej Nazwy Pliku/Katalogu
Możesz spróbować wyliczyć foldery i pliki w każdym odkrytym folderze (nawet jeśli wymaga uwierzytelniania podstawowego) używając tej techniki. Głównym ograniczeniem tej techniki, jeśli serwer jest podatny, jest to, że może znaleźć tylko do pierwszych 6 liter nazwy każdego pliku/folderu oraz pierwsze 3 litery rozszerzenia plików.
Możesz użyć https://github.com/irsdl/IIS-ShortName-Scanner aby przetestować tę podatność:java -jar iis_shortname_scanner.jar 2 20 http://10.13.38.11/dev/dca66d38fd916317687e1390a420c3fc/db/
Oryginalne badania: https://soroush.secproject.com/downloadable/microsoft_iis_tilde_character_vulnerability_feature.pdf
Możesz także użyć metasploita: use scanner/http/iis_shortname_scanner
Ominięcie Uwierzytelniania Podstawowego
Ominięcie uwierzytelniania podstawowego (IIS 7.5) próbując uzyskać dostęp do: /admin:$i30:$INDEX_ALLOCATION/admin.php
lub /admin::$INDEX_ALLOCATION/admin.php
Możesz spróbować połączyć tę podatność z poprzednią, aby znaleźć nowe foldery i ominąć uwierzytelnianie.
Debugowanie włączone w ASP.NET Trace.AXD
ASP.NET zawiera tryb debugowania, a jego plik nazywa się trace.axd
.
Zapisuje bardzo szczegółowy dziennik wszystkich żądań wykonanych do aplikacji w określonym czasie.
Informacje te obejmują zdalne adresy IP klientów, identyfikatory sesji, wszystkie ciasteczka żądania i odpowiedzi, ścieżki fizyczne, informacje o kodzie źródłowym, a nawet nazwy użytkowników i hasła.
https://www.rapid7.com/db/vulnerabilities/spider-asp-dot-net-trace-axd/
Ciasteczko ASPXAUTH
ASPXAUTH używa następujących informacji:
validationKey
(string): klucz w postaci szesnastkowej do użycia do walidacji podpisu.decryptionMethod
(string): (domyślnie “AES”).decryptionIV
(string): wektor inicjalizacji w postaci szesnastkowej (domyślnie wektor zerowy).decryptionKey
(string): klucz w postaci szesnastkowej do użycia do deszyfrowania.
Jednak niektórzy ludzie używają domyślnych wartości tych parametrów i jako ciasteczka używają adresu e-mail użytkownika. Dlatego jeśli znajdziesz stronę internetową używającą tą samą platformę, która używa ciasteczka ASPXAUTH i utworzysz użytkownika z adresem e-mail użytkownika, którego chcesz podrobić na atakowanym serwerze, możesz użyć ciasteczka z drugiego serwera na pierwszym i podrobić użytkownika. Ten atak zadziałał w tym opisie.
Ominięcie Uwierzytelniania IIS z zapisanymi hasłami (CVE-2022-30209)
Pełny raport tutaj: Błąd w kodzie nie sprawdzał poprawnie hasła podanego przez użytkownika, więc atakujący, którego skrót hasła trafia na klucz, który jest już w pamięci podręcznej, będzie mógł zalogować się jako ten użytkownik.
WhiteIntel to wyszukiwarka zasilana przez dark web, która oferuje darmowe funkcje do sprawdzenia, czy firma lub jej klienci zostali skompromitowani przez złośliwe oprogramowanie kradnące informacje.
Ich głównym celem WhiteIntel jest zwalczanie przejęć kont i ataków ransomware wynikających z złośliwego oprogramowania kradnącego informacje.
Możesz sprawdzić ich stronę internetową i wypróbować ich silnik za darmo pod adresem:
Last updated