https://github.com/spaze/webtop100
Dokumenty k hodnocení soutěže WebTop100
https://github.com/spaze/webtop100
Last synced: 4 months ago
JSON representation
Dokumenty k hodnocení soutěže WebTop100
- Host: GitHub
- URL: https://github.com/spaze/webtop100
- Owner: spaze
- Created: 2015-07-01T02:33:35.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2018-07-17T12:24:36.000Z (almost 7 years ago)
- Last Synced: 2024-12-25T13:41:35.361Z (6 months ago)
- Homepage:
- Size: 13.7 KB
- Stars: 15
- Watchers: 5
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Hodnocení technického řešení
============================Hodnocené weby se posuzují individuálně. Tento seznam je pouze základ a je tedy možné do hodnocení konkrétních webů přidat některá další kritéria a je potom na garantovi, aby s porotcem probral jejich váhu. Příkladem může být mobilní verze webu, na kterém se ihned po načtení začne načítat 20 MB video. Takové pravidlo v tomto seznamu není, ale dává smysl jej v hodnocení zohlednit.
Kritické problémy
-----------------
***0 bodů***Web dostává 0 bodů, pokud obsahuje alespoň jeden z uvedených problémů. Při nalezení je potřeba zvážit jejich závažnost. Pokud bude na dvou stránkách ze sta stejný titulek, tak není důvod o webu tvrdit, že má kritické problémy. To samé se týká tabulkového layoutu a značek `FONT` v kódu.
Pokud web obsahuje uvedenou technickou chybu, která by mohla vést k nějakému bezpečnostnímu problému, tak nezáleží na kolika místech a kde se vyskytuje. Neprovádíme bezpečnostní test, nehledáme bezpečnostní chyby, nebereme v potaz dopad těchto chyb, neurčujeme jejich závažnost. Weby *nehackujeme*, ani nezkoušíme, jakou zátěž servery vydrží. Hledáme *pouze* technické chyby, tedy například místa, kde vývojáři zapomněli při výpisu nahradit `<` za `<` nebo kde zobrazují neošetřené chybové hlášky programovacího jazyka. Pro hledání takových chyb nepoužíváme žádné automatizované skenovací nástroje. Použití jednoúčelových nástrojů pro zrychlení práce není vyloučeno.
- zobrazení neošetřené chybové hlášky obsahující důležité systémové informace (*Full Path Disclosure*)
- neošetřené uživatelem zadané znaky `<`, `>`, `"`, `'` při výpisu (může vést k útoku *Cross-Site Scripting*)
- špatně ošetřený uživatelský vstup při odesílání dotazů do databáze (riziko útoku *SQL Injection*)
- Vložení místního nebo vzdáleného souboru (*Local File Inclusion*, *Remote File Inclusion*)
- výstup z funkce `phpinfo()` (`/info.php`, `/phpinfo.php`, apod.)
- *Black hat* SEO
- *Not Found* stránka přesměrována na titulní stránku
- všechny stránky mají stejný `TITLE`
- tabulkový layout
- tagy `FONT` v kódu
- web přesměrovává na HTTPS, ale má certifikáty podepsané nedůvěryhodnou CA nebo neposílá *intermediate* certifikáty
- přítomnost skriptu, přes který se dá posílat spam
- heslo zaslané e-mailem, při registraci nebo zapomenutí
- přihlašování přes HTTP (týká se uživatelů i příp. administračních rozhraní na "předvídatelných" adresách `/admin` a dalších)
- možnost ze serveru získat zdrojové kódy nebo informace o nich (např. ze souboru `/.git/HEAD`, z výpisu adresářů apod.)
- použití JavaScriptových knihoven [se známými zranitelnostmi](https://developers.google.com/web/tools/lighthouse/audits/vulnerabilities)
- web běží na volně dostupném redakčním systému (Wordpress aj. včetně doplňků) se známými zranitelnostmiProstor pro zlepšení
--------------------
***1 bod***Web dostává 1 bod, pokud neobsahuje nic z předchozího, ale obsahuje alespoň jeden z následujících problémů:
- *Not Found* stránka neposílá HTTP stavový kód 404
- všechny *Not Found* stránky jsou nepoužitelné (standardní stránky poskytované serverem)
- nehezké URL
- lze odeslat nevyplněné formuláře s vypnutým JS
- WebPagetest Speed Index 9000 a více (pro první i další načtení)
- chybějící, nenačtené obrázky na stránceBez velkých chyb a nedostatků
-----------------------------
***2 body***Web dostává 2 body, pokud neobsahuje nic z předchozího, ale obsahuje alespoň jeden z následujících problémů:
- chybějící soubor `robots.txt`
- nefunkční web bez `www` prefixu
- session cookie bez příznaku HttpOnly (jiné cookie mohou být bez tohoto příznaku)
- 2 nebo méně bezpečnostních hlaviček¹
- WebPagetest Speed Index 6000-8999 (pro první i další načtení)
- stránky jsou dostupné pomocí HTTP, prohlížeč není přesměrován na HTTPS
- některé *Not Found* nebo *Forbidden* (HTTP kódy 4xx) jsou standardní stránky poskytované serveremVýborné řešení
--------------
***3 body***Web dostává 3 body, pokud neobsahuje nic z předchozího, ale chybí mu něco z kategorie [Skvěle a inspirativně řešeno](#skvěle-a-inspirativně-řešeno).
Skvěle a inspirativně řešeno
----------------------------
***4 body***Web dostává 4 body, pokud neobsahuje nic z předchozího a má navíc všechna následující vylepšení:
- responzivní design (ne speciální mobilní verze)
- 4 nebo více bezpečnostních hlaviček¹
- WebPagetest Speed Index 0-2999 (pro první i další načtení)
- *Potential Compressed Weight* z [Website Speed Testu](https://webspeedtest.cloudinary.com/) nad 50 %-----
¹Bezpečnostními hlavičkami jsou myšleny následující HTTP hlavičky, testují se pomocí [securityheaders.com](https://securityheaders.com):
- `X-Frame-Options`
- `X-Content-Type-Options`
- `Content-Security-Policy`
- `Strict-Transport-Security`
- `X-XSS-Protection`
- `Referrer-Policy`