Bezpieczny SVG

W jednej aplikacji nad którą pracuje odkryliśmy podatność dotyczącą plików SVG dostarczanych przez użytkowników. Szczegółowe wyjaśnienie jak można wykorzystać Scalable Vector Graphics do zrobienia Stored XSS dobrze opisał Sekurak. Vizzdoom (autor posta na Sekuraku) sugeruje zwracanie odpowiednich nagłówków (Content-Type, X-Content-Type-Options i Content-Security-Policy) – co zawsze jest dobrym pomysłem! a także zachęca do użycia narzędzia SVGPurifier. […]

Meetup idealny

Od czasu do czasu chodzę na meet-upy i konferencje, trochę rzadziej na nich występuję. Praktycznie ich nie organizuje, ale jak trzeba, to pomagam. Niestety na wielu takich spotkaniach zdarzają podobne problemy i w tym wpisie chciałbym podzielić się, jak ich uniknąć.

FOSDEM 2019

Fosdem Logo

⅔ detektywów odwiedziło (już po raz trzeci) – FOSDEM, jedną z największych konferencji FOSS na świecie. Co to FOSDEM? FOSDEM jest konferencją wyjątkową pod każdym względem. Jeśli jesteś przyzwyczajony do Devoxxa czy Geecona, który skupia się na świecie JVM, to mocno się zdziwisz – Free Java to tylko jedna ze ścieżek. Nie ma tu też […]

Po co Googlowi Kubernetes?

Znasz Kubernetesa? Nie? Wracaj do jaskini! Teraz wszyscy mają “kubki”. Takie i podobne zdania można usłyszeć na wielu konferencjach i meetupach branżowych oraz przeczytać na blogach, w sieciach społecznościowych i forach. Jednym zdaniem – nie mając Kubernetesa (K8s) nie zrobisz dobrego softu. Ale czy ktoś zastanowił się, po co właściwie Google zainwestował tyle pieniędzy w […]

A TY, gdzie trzymasz swoje klucze?

Na tak postawione pytanie pewnie większość odpowie: w kieszeni, torebce lub plecaku. Jednak oczywiście nie chodzi o klucze do mieszkania, a o klucz prywatny. Dostęp bezhasłowy do serwerów ssh wymaga (oczywiście można pozwolić na prawdziwie bez hasłowy dostęp, jednak wtedy powstaje pytanie, czy brak hasła nie jest hasłem) posiadania pary kluczy: prywatnego, którego nie udostępniamy […]

Rzecz o mokrym kodzie

Jakiś czas temu w Polskiej programistycznej blogosferze pojawił się artykuł o jakości kodu. Autor zaczyna od przypomnienia reguły DRY (do not repeat yourself). W wielkim skrócie chodzi o to aby nie powtarzać kodu tylko wspólne części wynosić do współdzielonych modułów/bibliotek/funkcji. Niestety artykuł nie wspomina skrajnie odmiennego paradygmatu – WET (write everything twice). Twierdzenie (Copiego-Pasta): Metoda […]

Dlaczego scrum jest passé?

Od dłuższego czasu obserwuję, że scrum jest w odwrocie. Nie chodzi o to, że jest coraz mniej popularny. Wręcz przeciwnie, stał się buzzwordem. Pojawia się w prawie każdym ogłoszeniu o pracę (tuż obok młodego zespołu) tracąc swoje pierwotne znaczenie. W moim otoczeniu ludzie wykazują mniej entuzjazmu, aby go wdrażać – częściej chcą go modyfikować i […]

Optional jako pole i co mi zrobisz?

Od wprowadzenia klasy Optional w JDK 8 minęło już sporo czasu. Sporo też napisano o tym jaki i gdzie jej używać, co jest dobrą praktyką a co złą. Przykład tego można znaleźć w artykule Optional Anti-Patterns. Ale czy to wszystko ma sens? Zgadzam się z wieloma postawionymi tam tezami. Chciałem jednak wejść w polemikę z […]

Co znajduje się w kodzie karty pokładowej

Ostatnio często zdarza mi się latać po Polsce (linie krajowe). Czasem jednak kolejki na lotnisku są naprawdę duże – nie należę do osób które pojawią się na lotnisku półtorej godziny przed odlotem lub drukują sobie bilet – wolę to zrobić skanując kod z telefonu. No właśnie. Kod. Na biletach linii lotniczych nie spotkamy dobrze znanego […]

Salam!

Pod ostatnim wpisem pojawił się komentarz! Na razie tylko jeden ale zawsze ktoś musi być pierwszy. Bardzo zaciekawiły mnie podane na końcu statystyki z Google Analytics, czy analizowałeś je pod kątem geograficznym? Szczególnie ciekawi mnie w jakich regionach Polski C przeważa nad językiem polskim. Bardzo dziękuję Kubie za to pytanie. Rzeczywiście nie sprawdziłem tego kto […]