Přejít k navigační liště

Zdroják » Autoři » Archivy pro Michal Špaček

Archiv autora: Michal Špaček

Michal je webový vývojář a bezpečnostní p̶r̶ů̶výzkumník. První webové stránky vytvořil když ještě zuřila První válka prohlížečů, ve které to Netscape Navigator prohrál proti Internet Exploreru. Pořádá školení, zajímá ho bezpečnost a výkon, staví, boří a testuje webové aplikace. Přednášel na více než 70 konferencích a akcích, včetně konference WebExpo v Praze a konference Passwords v Las Vegas, na obou opakovaně.
Před deseti lety nastoupil jako jeden z prvních vývojářů do pražské pobočky Skype, kde pracoval mj. na platebních systémech. Později zlepšoval zabezpečení Slevomatu, pracoval také pro Apiary. Michal o bezpečnosti rád mluví veřejně, hledá hranice tak, že je posouvá. Chce naučit webové vývojáře stavět bezpečnější a výkonnější weby a aplikace.

PHP
Články PHP

Při útoku XML External Entity Injection (XXE) může útočník na místo jím vytvořené entity v XML souboru vložit obsah nějakého jiného souboru, třeba takového, ke kterému nemá jinak přístup. Co se stane pak záleží především na vás a vaší aplikaci. O XXE ale píšu hlavně proto, abych na konkrétním příkladu ukázal proč aktualizovat na novější PHP verze spíš rychleji, než pomaleji, protože tenhle problém se už v roce 2020 defaultně vyřešil tak nějak sám vydáním PHP 8.0.

PHP
Články PHP

Krádež session id z výpisu phpinfo() je již nějakou dobu známá technika, která se používá k obcházení atributu HttpOnly, který JavaScriptu zakazuje přístup k takto označené cookie (např. PHPSESSID). Mě akorát až teď napadlo řešení, které dovolí phpinfo() zachovat: ty citlivé údaje prostě zcenzurujeme, čímž phpinfo() pro útočníka ztratí část své hodnoty.

Různé
Články Různé

Říkáme tomu různě: weby, stránky, domény, servery, sajty, internety a spoléháme se na to, že tomu ten druhej bude rozumnět. Možná a možná ne, ale to se dá vždy doladit doplňujícím „počkej, jak jako server, nemyslíš spíš web?“ Jenže různé specifikace a technické dokumenty tuto vymoženost nemohou využít a tak se snaží věci nazývat správnými jmény a jednotně. A to navíc tak skvěle, že pojmy jako origin, site, same origin, same site, eTLD a public suffix se normálně ani nepřekládají, protože pak by tomu zas nikdo nerozuměl. A jak s tím souvisí atraktivita subdomén?

Různé
Články Různé

V prohlížeči Chrome je od verze 113 možné přepisovat HTTP hlavičky v odpovědích ze serveru a lze také nějakou novou přidat. To se může hodit pokud potřebujete upravit třeba nějakou bezpečnostní hlavičku pro testování, protože k přepisu dojde ještě před zpracováním věcí jako např. CSP, takže pro konkrétní stránku můžete upravit Content Security politiku přímo v prohlížeči.

PHP
Články PHP

Když se v nějaké vámi používané PHP knihovně objeví bezpečnostní chyba, tak máte několik možností jak se o ní dozvědět dříve, než bude pozdě. V jednom z předchozích článků jsem popisoval PHP Security Advisories Database a její použití pomocí Roave Security Advisories i několik dalších způsobů. Všechny zmíněné ale vyžadují mít nebo používat nějaký extra balíček nebo nástroj.

PHP
Články PHP

Na konci srpna byla v oblíbeném PHP frameworku Nette objevena a obratem opravena zákeřná chyba. Přestože autor frameworku, David Grudl, udělal snad všechno možné i nemožné, někteří se o ní nedozvěděli včas a nestihli tak aktualizovat své weby a webové aplikace. Prozradím vám pár tipů nejen pro PHP, díky kterým dostanete echo o podobných problémech mezi prvními.

GPUI Component: moderní Rust GUI komponenty pro cross-platform desktop aplikace

Různé
Komentáře: 0
GPUI Component je open-source Rust knihovna rozšiřující framework GPUI o více než 60 moderních, nativních a multiplatformních UI komponent. Staví na deklarativním přístupu, stateless renderování a jednoduchém API inspirovaném Reactem či Yew. Díky optimalizovanému výkonu, podpoře témat a flexibilním layoutům umožňuje rychlý vývoj desktopových aplikací, jako je například trading nástroj Longbridge Pro. Knihovna je licencována pod Apache 2.0 a dostupná na GitHubu.

Vitest 4.0 – nové vizuální testování, lepší debugging a stabilní Browser Mode

Nová verze Vitest 4.0 posouvá hranice testování webových aplikací. Přináší stabilní běh testů přímo v prohlížeči, podporu vizuálního regresního testování i chytřejší práci s lokátory a typováním. Vývojáři tak získávají robustnější, rychlejší a přehlednější nástroje pro zajištění kvality UI i logiky aplikací.