Budovanie projektu Pri budovaní sa bežne zameriava pozornosť na: Výber vhodného hostingu (cena / možnosti) Voľba programovacieho jazyka Vytvorenie čo najväčšieho množstva funkcií Použiteľný dizajn Schopnosť priniesť niečo viac ako konkurencia Motivovať užívateľov Vytvoriť dobré meno
Najčastejšia a najväčšia chyba Dôvera a spoľah v: Dáta získane od užívateľov Dáta získané z databáz Dáta získané od tretích strán Dáta získané z dôveryhodných zdrojov Hostingovú spoločnosť Priateľov (betatesting, vývoj, správa)
Najčastejšie príčiny vzniknu bezpečnostných zraniteľností Používanie cudzích kódov bez ich bližšej znalosti Neaktulizovanie používaných open-source kódov Prílíšná dôvera v dáta získané kdekoľvek Absencia ošetrovania vstupných a výstupných dát Zlý návrh projektu (kód) Filtrovanie len na jednej strane (vstup/výstup)
Príklad fungovania bežného webu (kód) Jadro Vstupné dáta Web Dáta od užívateľa, tretia strana Vstup neodfiltrovaných dát, spracovanie, vkladanie/výber z databázi, iné úkony Výstup neodfiltrovaných dát, zobrazenie na webe/inom rozhraní
Príklad fungovania  bezpečného  webu (kód) Jadro Vstupné dáta Web Dáta od užívateľa, tretia strana Vstup  odfiltrovaných  dát, spracovanie, vkladanie/výber z databázi, iné úkony Výstup  odfiltrovaných  dát, zobrazenie na webe/inom rozhraní Filter Filter Filtrácia škodlivého kódu (SQL Injection, dlhé reťazce (buffer overflow)) Filtrácia škodlivého kódu (XSS)
Najčastejšie neošetrované vstupy Vyhľadávacie políčko Referer Cookies URL Formuláre Ankety Diskusie Flash
Prečo sa zaoberať zabezpečovaním webu Budovanie dobrého mena Možnosť prebehnúť konkurenciu Prinášať lepšie a kvalitnejšie služby Môcť viacej riskovať a hlavne ...
Pokojne spať!
 
Ako zabezpečovať Vytvoriť si dobré bezpečnostné návyky Zaujímať sa o nové trendy v bezpečnosti Najať si odborníkov ako konzultantov Dať možnosť ľuďom hlásiť objavené chyby (disclosure policy - odmeňovať ich) Naučiť sa byť zdravo paranoidný
Web 2.0 Čo je to Web 2.0 Služby a API (SOAP, XML-RPC, JavaScript) Centralizovaný užívateľský obsah (wiki, blogy, sociálne siete, feedy, video/podcasty) AJAX Softvare as service (applications on demand) Data in the cloud (3rd party storage)
Web 2.0 Zraniteľné miesta Dáta získavané „na pozadí“ Využívanie dát tretích strán Využívanie technológií tretích strán Aktívnejšie zapájanie užívateľa do procesu Využívanie cudzích kódov (frameworky, widgety, pluginy, gadgety) Umožňovanie ďalším programátorom pracovať s kódom projektu (API)
Web 2.0 Spôsoby ochrany Zavedenie jasných a striktných bezpečnostných pravidiel Používanie whitelistov miesto blacklistov Filtrovanie všetkých vstupných a výstupných bodov v aplikácií Obmedzovať prácu priamo s kódom, využívať API Obmedzovať využívanie open-source kódov, tvoriť vlastný
Príklady z praxe Eshopy – uvádzanie cien do skrytého poľa XSS v diskusiách, vyhľadávaní, administrácii SQL Injection v anketách, v kontaktných formulároch Absencia ochrany pred CSRF (Cross-site Request Forgery) Nefiltrované strojové spracovávanie nahratých súborov Zapnutý debbug na ostrej prevádzke
Najlepšie spôsoby ochrany Vyberať vhodné spôsoby zabezpečenia, snažiť sa nie na úkor pohodlia užívateľov Postupné vzdelávanie užívateľov a pracovníkov projektu Voliť bezpečnostné prvky na strane serveru, nie užívateľa Dodržiavať všeobecne zaužívané bezpečnostné zásady pri tvorení kódu a samozrejme ...
Nikdy nikomu neveriť!
Ďakujem za pozornosť Za grafické spracovanie prezentácie  ďakujem mushovi ( http ://musho.sk ) Rastislav Turek | Synopsi.com [email_address]

Synopsi Barcamp

  • 1.
  • 2.
  • 3.
    Budovanie projektu Pribudovaní sa bežne zameriava pozornosť na: Výber vhodného hostingu (cena / možnosti) Voľba programovacieho jazyka Vytvorenie čo najväčšieho množstva funkcií Použiteľný dizajn Schopnosť priniesť niečo viac ako konkurencia Motivovať užívateľov Vytvoriť dobré meno
  • 4.
    Najčastejšia a najväčšiachyba Dôvera a spoľah v: Dáta získane od užívateľov Dáta získané z databáz Dáta získané od tretích strán Dáta získané z dôveryhodných zdrojov Hostingovú spoločnosť Priateľov (betatesting, vývoj, správa)
  • 5.
    Najčastejšie príčiny vzniknubezpečnostných zraniteľností Používanie cudzích kódov bez ich bližšej znalosti Neaktulizovanie používaných open-source kódov Prílíšná dôvera v dáta získané kdekoľvek Absencia ošetrovania vstupných a výstupných dát Zlý návrh projektu (kód) Filtrovanie len na jednej strane (vstup/výstup)
  • 6.
    Príklad fungovania bežnéhowebu (kód) Jadro Vstupné dáta Web Dáta od užívateľa, tretia strana Vstup neodfiltrovaných dát, spracovanie, vkladanie/výber z databázi, iné úkony Výstup neodfiltrovaných dát, zobrazenie na webe/inom rozhraní
  • 7.
    Príklad fungovania bezpečného webu (kód) Jadro Vstupné dáta Web Dáta od užívateľa, tretia strana Vstup odfiltrovaných dát, spracovanie, vkladanie/výber z databázi, iné úkony Výstup odfiltrovaných dát, zobrazenie na webe/inom rozhraní Filter Filter Filtrácia škodlivého kódu (SQL Injection, dlhé reťazce (buffer overflow)) Filtrácia škodlivého kódu (XSS)
  • 8.
    Najčastejšie neošetrované vstupyVyhľadávacie políčko Referer Cookies URL Formuláre Ankety Diskusie Flash
  • 9.
    Prečo sa zaoberaťzabezpečovaním webu Budovanie dobrého mena Možnosť prebehnúť konkurenciu Prinášať lepšie a kvalitnejšie služby Môcť viacej riskovať a hlavne ...
  • 10.
  • 11.
  • 12.
    Ako zabezpečovať Vytvoriťsi dobré bezpečnostné návyky Zaujímať sa o nové trendy v bezpečnosti Najať si odborníkov ako konzultantov Dať možnosť ľuďom hlásiť objavené chyby (disclosure policy - odmeňovať ich) Naučiť sa byť zdravo paranoidný
  • 13.
    Web 2.0 Čoje to Web 2.0 Služby a API (SOAP, XML-RPC, JavaScript) Centralizovaný užívateľský obsah (wiki, blogy, sociálne siete, feedy, video/podcasty) AJAX Softvare as service (applications on demand) Data in the cloud (3rd party storage)
  • 14.
    Web 2.0 Zraniteľnémiesta Dáta získavané „na pozadí“ Využívanie dát tretích strán Využívanie technológií tretích strán Aktívnejšie zapájanie užívateľa do procesu Využívanie cudzích kódov (frameworky, widgety, pluginy, gadgety) Umožňovanie ďalším programátorom pracovať s kódom projektu (API)
  • 15.
    Web 2.0 Spôsobyochrany Zavedenie jasných a striktných bezpečnostných pravidiel Používanie whitelistov miesto blacklistov Filtrovanie všetkých vstupných a výstupných bodov v aplikácií Obmedzovať prácu priamo s kódom, využívať API Obmedzovať využívanie open-source kódov, tvoriť vlastný
  • 16.
    Príklady z praxeEshopy – uvádzanie cien do skrytého poľa XSS v diskusiách, vyhľadávaní, administrácii SQL Injection v anketách, v kontaktných formulároch Absencia ochrany pred CSRF (Cross-site Request Forgery) Nefiltrované strojové spracovávanie nahratých súborov Zapnutý debbug na ostrej prevádzke
  • 17.
    Najlepšie spôsoby ochranyVyberať vhodné spôsoby zabezpečenia, snažiť sa nie na úkor pohodlia užívateľov Postupné vzdelávanie užívateľov a pracovníkov projektu Voliť bezpečnostné prvky na strane serveru, nie užívateľa Dodržiavať všeobecne zaužívané bezpečnostné zásady pri tvorení kódu a samozrejme ...
  • 18.
  • 19.
    Ďakujem za pozornosťZa grafické spracovanie prezentácie ďakujem mushovi ( http ://musho.sk ) Rastislav Turek | Synopsi.com [email_address]