Changelogi, diffy, podatności
i inne zaklęcia

Krzysiek Dróżdż
krzysiek@wpmagus.pl
WPmagus.pl

Kim jestem?

Krzysiek Dróżdż

Co to jest
OpenSource?

Open-source software is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Open-source software may be developed in a collaborative, public manner.

Wikipedia

A w rzeczywistości…

  1. Free Redistribution
  2. Source Code
  3. Derived Works
  4. Integrity of The Author’s Source Code
  5. No Discrimination Against Persons or Groups
  6. No Discrimination Against Fields of Endeavor
  7. Distribution of License
  8. License Must Not Be Specific to a Product
  9. License Must Not Restrict Other Software
  10. License Must Be Technology-Neutral

OpenSource.org

Co z tego
wynika?

Każdy może z łatwością

  • przejrzeć kod,
  • znaleźć błąd,
  • zgłosić poprawkę,
  • sprawdzić różnice między wersjami
    (czyli sprawdzić, na czym polegała poprawka)

Co to zmienia
(w bezpieczeństwie)?

Trochę o testach aplikacji

Czyli OpenSource
jest mniej bezpieczny?

Wręcz przeciwnie, bo…

… wyrównuje szanse między atakującym, a użytkownikiem.

W OS wszyscy mamy dostęp do:

  • changelogów,
  • kodów i diffów.

Gdzie je znaleźć?

A co nam to daje w praktyce?

Historia pewnej podatności

13 lipca 2021 we wtyczkach WooCommerce i WooCommerce Blocks wykryto krytyczne podatności.

Poprawka została wydana w ciągu jednego dnia od zgłoszenia i wydana w wersji 5.5.1.

Zespół wtyczek WP wymusił aktualizację WC do nowej wersji.

Czego Wam w tej historii brakuje?

Informacji o tym, na czym dana podatność polegała i jakie było faktyczne ryzyko.

No to sprawdźmy 😈

Changelogi bywają bardzo pomocne

O ile autorzy, są rzetelni i odpowiedzialni…

Czasem autorzy tuszują nieco rzeczywistość

Większość wie, że w przypadku wpadki, informowanie użytkowników jak najszybciej to podstawa.

Ale nie wszyscy umieją się przyznać do błędów…

Wybierzmy sobie losową wtyczkę

Sprawdźmy jej changelog

… i porównajmy z jej znanymi podatnościami.

A może być jeszcze gorzej…

All-In-One Security (AIOS)

I o wiele gorzej…

Wnioski?

OpenSource wyrównuje szanse…

… o ile się z tego korzysta

Aktulizacje robione co k-dni/tygodni są po nic…

… bo atakujący o podatnościach wie od razu po wydaniu wersji

Wie też, na czym dokładnie ta podatność polega i jak wykorzystać lukę w poprzedniej wersji.

Wie także, jak popularna jest ta poprzednia wersja i jak bardzo opłaca się atakować.

Autorom wtyczek/motywów nie zawsze można ufać

… bo nawet changelogi przechodzą przez marketing

Więc nie ma pewności, że na podstawie samego changeloga dowiemy się, że w danej wersji jest ważna podatność.

Dzięki za uwagę!

Krzysiek Dróżdż
krzysiek@wpmagus.pl
WPmagus.pl