[CVE-2017-6196] Ghostscript 9.21 – Use-after-free

Słowo wstępu Przez prawie 1,5 miesiąca nie pojawił się na blogu żaden post dt. podatności – zdecydowanie nadszedł czas, aby to zmienić. W tym poście opiszę bardzo ciekawe use-after-free w projekcie Ghostscript – interpreterze języka PostScript oraz plików PDF. Oprogramowanie to jest często wykorzystywane jako core generatorów plików PDF lub demon zajmujący się obsługą plików […]

LLVM LibFuzzer – Fast track #2

Słowo wstępu Kolejna część szybkiego wprowadzenia do zagadnień związanych z LibFuzzerem – w tym poście skupię się na nieco “głębszym” wykorzystaniu wbudowanych funkcjonalności, tunigu wydajności fuzzera oraz pokryciu kodu za pomocą SanitizerCoverage. Bez zbędnego rozwlekania, przechodzimy do konkretów 🙂 Jak robić to lepiej? W moim rozumieniu: lepiej = większy code coverage || więcej execs/s.. Generalnie […]

LLVM LibFuzzer – Fast track #1

Słowo wstępu Dużo ostatnio było o podatnościach – straciłem rachubę ile było to postów pod rząd 😉 W tym poście chciałbym przybliżyć bardzo ciekawy projekt LLVM LibFuzzer, w którym poziom testowania przeniesiony jest na poziom funkcji a nie całych binarek. Oczywiście generuje to pewne problemy, jak i również ma wiele zalet – ale o tym […]

[CVE-2017-6181] Ruby 2.4.0 – Stack Overflow

Słowo wstępu Chwila odpoczynku od projektów wykorzystywanych w branży bezpieczeństwa – dzisiejszym targetem jest interpreter języka Ruby, podstawy popularnego frameworka webowego Ruby on Rails – obecnego w kodzie takich serwisów jak GitHub, BaseCamp, AirBnb czy Twitch. Krótki opis podatności Błąd znajdował się w wersji 2.4.0, a więc na dzień pisania posta ostatniej stabilnej (Git HEAD: fbd5cda6aad6db01bbca3d893a9970314a1bd52c). […]

[CVE-2017-5924] Yara 3.5.0 – Use after free #2

Słowo wstępu Kolejny tydzień – kolejne use-after-free w Yarze 🙂 Dla osób które nie znają backgroundu lub chciałyby dowiedzieć się więcej o “moich” błędach w tym projekcie – odsyłam tutaj i tutaj. Krótki opis podatności Błąd znajdował się w wersji 3.5.0 (Git HEAD: 890c3f850293176c0e996a602ffa88b315f4e98f) – jest to commit naprawiający poprzednie use-after-free. Biblioteka LibYara nie sprawdzała czy […]

[CVE-2016-10211] Yara 3.5.0 – Use after free #1

Słowo wstępu Kontyunuując temat niebezpiecznych narzędzi (w ostatniej odsłonie było radare2) dla osób związanych z bezpieczeństwem IT – kolejny już wpis o Yarze. Temat motywacji testów oraz funkcjonalności projektu opisałem we wcześniejszym poście, więc oszczędze przynudzania czytelnikom 🙂 Krótki opis podatności Błąd znajdował się w wersji 3.5.0 (Git HEAD: 779b9a77aa4377152a5cba031255029afb0c19a5). LibYara w poszukiwaniu identyfikatorów w regułce, […]

radare2 – Use after free

Słowo wstępu Projekt radare2, z racji moich zainteresowań oraz wykonywanej pracy jest mi dosyć bliski. Narzędzia wykorzystywane do analizy binarnej plików, są w mojej opinii fenomenalnym wektorem ataku na zaawansowanego użytkownika  – rzadko kiedy ktoś zastanawia się nad tym, czy odpalany plik jest potencjalnie niebezpieczny, nie zdając sobie sprawy co dzieje się “pod spodem”, w […]

WebKit JavaScriptCore – Out of bounds read

Szybki wstęp Projekt WebKit kusi bughunterów przede wszystkim, bardzo dużym zasięgiem występowania błędu – wykorzystywany jest jako core przeglądarki Apple Safari, silnik Apple AppStore i komponent wielu aplikacji w systemach MacOS X oraz Linux. Między innymi to błędy w WebKitcie były punktem wejścia do jailbreaku iOS i odblokowania urządzeń Apple’a. Myślę, że lepszej motywacji do […]

[CVE-2016-1000295] PCRE2 10.22 – Stack Buffer Overflow

Słowo wstępu Bardzo podoba mi się opis projektu – poza opisaniem funkcjonalności, odpowiada również na pytanie dlaczego jest to bardzo interesujący cel fuzzingu: The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. PCRE has its own native API, as well as […]

LatentBot – modularny i silnie zaciemniony bot

Zachęcam do zapoznania sie z moim wpisem na blogu CERT Polska, tym razem o ciekawym złośniku z aktywnego exploit-kita Rig – LatentBocie. Zajawka: LatentBot jest widoczny w sieci od 2013 roku, a na początku października rozpoczął swoją drugą młodość – dodany został jako payload do bardzo aktywnego exploit-kita Rig i jest serwowany zamiennie z takim […]