Synopsi Barcamp

599 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
599
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Synopsi Barcamp

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

×