Automatyczne wykrywanie dowolnego ciągu znaków (klucze api, hasła, komunikaty o błędach) – RegexFinder

BurpSuite mimo bycia najlepszym narzędziem do testów penetracyjnych web aplikacji, z jakim dane mi było pracować, posiada nadal obszary, do rozwoju. Niedawno został on uzupełniony w moduł „Logger”, który de facto działa tak samo co wtyczka „Flow” z której korzystam na codzie. Mianowicie archiwizuje cały ruch przechodzący przez proxy Burpa. Jest to o tyle istotne, że standardowa historia nie pokazuje zapytań generowanych przez skaner automatyczny czy innego rodzaju dodatki działające w tle. One natomiast często wywołują nietypowe odpowiedzi serwera (np. zawierające komunikaty o błędach ujawniające informacje poufne), które bez tej archiwizacji nie byłyby zauważone podczas testów penetracyjnych. Sam proces przeglądania takowych logów też nie jest idealny i tym samym podatny na przeoczenia. Proces ten da się ułatwić i zautomatyzować — z pomocą przychodzi tutaj wtyczka stworzona przez Lukasz Wierzbicki RegexFinder.

RegexFinder to wtyczka do BurpSuite służąca do pasywnego skanowania odpowiedzi pod kątem występowania wzorców zapisanych za pomocą wyrażeń regularnych. Prościej mówiąc — wskazujemy wtyczce, jakich słów szukamy, a ona nam zakomunikuje gdy takowe znajdą się w odpowiedzi serwera.  Dzięki temu możemy w testowanej aplikacji znaleźć różnego rodzaju podatności oraz dodatkowe informacje o aplikacji. Wyrażenia regularne mogą służyć do wykrywania wzorców między innymi o:

  • komunikatach o błędach
  • wersji oprogramowania
  • funkcji JavaScript (takich jak np. postMessage lub document.write)
  • kluczach API
  • numerach kart kredytowych
  • hasłach zaszytych w bibliotekach
  • konkretnej, poszukiwanej przez nas wartości
RegexFinder error message

Użytkownik dodaje listę wzorców, z których korzysta rozszerzenie. Każdy wzorzec posiada kategorię i opis. Jeśli rozszerzenie znajdzie dany wzorzec w odpowiedzi HTTP, dodaje informacje o tym w liście „znalezisk”. Listę wzorców można załadować z pliku zewnętrznego rozdzielanego tabulatorami (.tsv, .tab). Można ja także uzupełnić ręcznie, dodając/usuwając wartości. Przykładowy plik z gotowymi wzorcami można znaleźć tutaj — klik.

RegexFinder regular expressions

Instalacja

  1. Pobierz plik RegexFinder.jar.
  2. W Burp Suite otwórz zakładkę Extender.
  3. W zakładce Burp Extensions kliknij przycisk Add.
  4. Wybierz pobrany plik jar -> Next.
  5. Sprawdź instalację pod kątem komunikatów o błędach.

Przykładowe użycie

  1. W zakładce RegexFinder wczytaj plik .tsv zawierający listę wzorców.
  2. Na przykład następujący wzór AIza[0-9A-Za-z-_]{35} pasuje do klucza Google API.
  3. Kiedy ruch przechodzi przez proxy Burpa, rozszerzenie doda problem, jeśli znajdzie dopasowanie.
  4. Następnie możesz zweryfikować poprawność znalezionego klucza Google API np. za pomocą gmapsapiscanner .

Wtyczka do pobrania z GitHuba twórcy – KLIK.

Chcesz wiedzieć więcej?

Zapisz się i bądź informowany o nowych postach.

Nigdy nie podam, nie wymienię ani nie sprzedam Twojego adresu e-mail. W każdej chwili możesz zrezygnować z subskrypcji.

Tagi , , , , , , , , , , , , .Dodaj do zakładek Link.

Podziel się swoją opinią na temat artykułu