Deserializacja – niebezpieczna metoda (ataku hakerskiego, testu penetracyjnego, działań wywiadowczych – określenia zamienne ;))

W większości języków programowania możemy tworzyć obiekty – czyli instancje klas. Każdy z obiektów może przechowywać jakieś dane. Czasami istnieje potrzeba, aby te dane gdzieś zapisać.

Serializacja to sposób na przechowywanie obiektów lub struktur tak, aby mogły być łatwo zachowane i transmitowane.  Serializacja to generyczna nazwa i w różnych językach programowania te nazwy mogą się nieco różnić.

W Ruby, to “marshalling”, w go “gobbing” a w Python “pickling”.

Z niebezpieczną deserializacją mamy do czynienia jeżeli to użytkownik kontroluje zawartość zserializowanego obiektu. Serwer, aby przetworzyć tak zapisany obiekt, musi bowiem wykonać operację odwrotną, nazywaną deserializacją.

PHP

W PHP za deserializację odpowiedzialna jest funkcja unserialize.

Java

Java również jest podatna na ten rodzaj błędów. Powstało wiele prezentacji na ten temat:

.NET

.NET również nie ustrzegł się tej klasy podatnosci:

Inne przykłady

Ruby również nie jest bezpieczne (zobacz CVE 2020–8165).

A jeżeli używasz plików YAML w Pythonie – zobacz ten materiał.

Na Deserialization Cheat Sheet znajdziesz krótkie podsumowanie.

Sporo tego materiału :). Pora na ćwiczenia praktyczne.

Podziel się postem :)

Najnowsze:

Nauka

Google Gemini – pogromca Chat GPT-4

Google od dawna inwestuje w sztuczną inteligencję, a wraz z pojawieniem się ChatGPT-3 od OpenAI, firma postanowiła wypuścić własne narzędzie o podobnej funkcjonalności. Bard, który zadebiutował w lipcu 2023 roku, okazał się być bardzo obiecującym rozwiązaniem, ale Google nie zamierza się na tym zatrzymywać.

Oprogramowanie

Nowy Firefox 120.0.1 – rozwiązanie problemu obciążenia procesora

Firefox, popularna przeglądarka internetowa, właśnie otrzymała aktualizację do wersji 120.0.1. Ta nowa wersja powinna zainteresować wszystkich użytkowników, którzy dostrzegali problem z nienaturalnym obciążeniem procesora. W niektórych przypadkach, teoretyczne obciążenie CPU mogło sięgać nawet 100 proc.

Bezpieczeństwo

Zalecana pilna aktualizacja Google Chrome z powodu wykrytej luki 0-day

Google Chrome wymaga natychmiastowej aktualizacji w związku z odkryciem kolejnej luki 0-day. Najnowsza aktualizacja przeglądarki zawiera poprawki, w tym kluczową łatkę dla luki oznaczonej jako CVE-2023-6345, której wykorzystywanie zostało zaobserwowane w praktyce przez atakujących.

Dodaj komentarz

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