Czytając niedawno specyfikację HTML, natrafiłem na ciekawe działanie atrybutu marginwidth/marginheight. Przyjrzałem mu się dokładniej i – ku mojemu zdumieniu – odkryłem, że nadaje się jako mechanizm do komunikacji pomiędzy różnymi ramkami w przeglądarkach!
Czytaj dalej »
Wstęp: Jedna z najpopularniejszych platform Bug Bounty, Hackerone – w ramach promocji swojego wirtualnego eventu H12006 – uruchomiła konkurs w formule Capture The Flag. Nagrodą było zaproszenie na wspomniany ekskluzywny event oraz zaproszenia do prywatnych programów bug bounty. Co ciekawe, główną nagrodę otrzymywało się nie za najszybsze rozwiązanie zadania, a…
Czytaj dalej »
Ten artykuł jest podsumowaniem moich badań związanych z problemami bezpieczeństwa w obsłudze mechanizmu kopiuj-wklej w: przeglądarkach, popularnych edytorach WYSIWYG i aplikacjach webowych. Moim głównym celem jest pokazanie, że poniższy scenariusz ataku może sprawić, że będziemy narażeni na atak: Odwiedzamy złośliwie przygotowaną stronę. Kopiujemy coś z tej strony do schowka. Przechodzimy…
Czytaj dalej »
„Sign in with Apple” to funkcja na urządzeniach Apple, która pozwala wykorzystać konto iCloud do uwierzytelnienia w innych aplikacjach. Od strony użytkownika działa na podobnej zasadzie jak – bardziej powszechne – „Zaloguj z kontem Google” czy „Zaloguj z Facebookiem”. Od strony technicznej, rozwiązanie opiera się o wygenerowanie tokenu JWT przez…
Czytaj dalej »
Pedro Ribeiro ujawnił dzisiaj serię 0-dayów w oprogramowaniu klasy enterprise: IBM Data Risk Manager. Zgodnie z opisem na oficjalnej stronie: IBM Data Risk Manager udostępnia wyższej kadrze kierowniczej i jej współpracownikom praktycznie użyteczne centrum sterowania ryzykiem dla danych. Rozwiązanie to pomaga w wykrywaniu, analizowaniu i wizualizacji zagrożeń biznesowych związanych z…
Czytaj dalej »
Dzisiaj w serii #vulnz: bruteforce hasła to jeden z najprostszych ataków, jakie można przeprowadzać na aplikacje webowe, a zarazem nadal zadziwiająco skuteczny. Polega w największym skrócie na tym, że dla zadanej nazwy użytkownika próbujemy masowo zgadywać jego hasło. Przykładowo, jeśli strzelimy, że nazwą użytkownika jest admin, możemy następnie próbować zgadywać…
Czytaj dalej »
Kilka miesięcy temu zgłosiłem błąd bezpieczeństwa w Firefoksie związany z przetwarzaniem CSS-ów, który dostał identyfikator CVE-2019-17016. W trakcie pracy nad tym błędem, udało mi się wymyślić nową technikę eksfiltracji danych w Firefoksie przez jeden punkt wstrzyknięcia, którym podzielę się w tym poście.
Czytaj dalej »
Podstawowym mechanizmem obronnym nowoczesnych przeglądarek jest Same-Origin Policy. Z reguły jego istnienie jest dla nas bardzo ważne, gdyż eliminuje ono szereg potencjalnych problemów bezpieczeństwa. Czasem jednak chcielibyśmy delikatnie rozluźnić tą politykę. Jednym ze sposobów na to jest mechanizm Cross-Origin Resource Sharing (zwany zwyczajowo po prostu CORS) – zapewnia nam on możliwość bezpiecznej…
Czytaj dalej »
W tekście opisany jest ciekawy XSS znaleziony w lutym 2018 w aplikacji Google Colaboratory. Pokazane jest nie tylko bezpośrednio, gdzie był ten XSS, ale również jakie zostały poczynione próby, by tego XSS-a znaleźć i jakie po drodze były ślepe zaułki. Ponadto, pokazany jest przykład obejścia Content-Security-Policy z użyciem tzw. script gadgets.
Czytaj dalej »
W tekście opisany jest błąd CVE-2018-0296 – upubliczniony 6 czerwca przez Cisco; dotyczący urządzeń Cisco ASA. Oficjalnie podatność została zaklasyfikowana jako Denial Of Service, choć nasze zgłoszenie dotyczyło innego typu błędu…
Czytaj dalej »
W artykule opisane są trzy błędy typu XSS znalezione w ramach bug bounty firmy Google. Wszystkie błędy były możliwe dzięki wykorzystaniu nowych cech standardu ECMAScript.
Czytaj dalej »
W tekście pokazane są dwa sposoby na wykradanie danych za pomocą wstrzyknięć CSS-ów: jeden z nich pozwala na wydobywanie danych zaszytych w atrybutach elementów HTML, drugi zaś pozwala wyciągnąć praktycznie dowolną treść ze strony.
Czytaj dalej »
Cross-Site Scripting (XSS) to jedna z najczęściej występujących podatności w aplikacjach napisanych przy użyciu języka JavaScript i nie dotyczy to jedynie stron i aplikacji internetowych. Dotyka ona coraz częściej aplikacje desktopowe, rozszerzenia dostępne w przeglądarkach internetowych, interfejsy w urządzeniach IoT i nic nie wskazuje na to, by ten rodzaj zagrożenia…
Czytaj dalej »
Atak Path Traversal przeprowadza się w sytuacji, gdy podatna aplikacja pozwala na niekontrolowany dostęp do plików oraz katalogów, do których w normalnych warunkach użytkownik nie powinien mieć dostępu. Wektorem ataku są parametry przekazywane do aplikacji, reprezentujące ścieżki do zasobów, na których mają zostać wykonane określone operacje – odczyt, zapis, listowanie zawartości katalogu.
Czytaj dalej »
O klasie podatności Server-Side Template Injections (SSTI) zrobiło się głośno dopiero w ostatnim czasie. Bardzo niska świadomość deweloperów, połączona z popularnością różnego rodzaju silników szablonów (ang. Template Engines) – niezależnie od wybranego języka programowania – i fakt, że w większości przypadków rezultatem wykorzystania podatności jest wykonanie dowolnego kodu na maszynie ofiary (ang. RCE – Remote Code Execution), powoduje, że warto poznać zasady działania stojące za tym atakiem.
Czytaj dalej »