ZAGOTAVLJANJE IN ANALIZA VARNOSTI SISTEMA ZA UPRAVLJANJE VSEBIN - WORDPRESS

Size: px
Start display at page:

Download "ZAGOTAVLJANJE IN ANALIZA VARNOSTI SISTEMA ZA UPRAVLJANJE VSEBIN - WORDPRESS"

Transcription

1 UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Aleš Casar ZAGOTAVLJANJE IN ANALIZA VARNOSTI SISTEMA ZA UPRAVLJANJE VSEBIN - WORDPRESS Diplomsko delo Maribor, september 2017

2 ZAGOTAVLJANJE IN ANALIZA VARNOSTI SISTEMA ZA UPRAVLJANJE VSEBIN - WORDPRESS Diplomsko delo Študent: Študijski program: Smer: Mentor: Aleš Casar Visokošolski študijski program Informatika in tehnologije komuniciranja Sistemska podpora ITK viš. pred. mag. Boštjan Kežmah, dipl. gos. inž. elektroteh. Maribor, september 2017

3 Potrdilo o prijavi diplomske naloge Potrdilo o prijavi

4 ZAHVALA Zahvaljujem se mentorju viš. pred. mag. Boštjanu Kežmahu, dipl. gos. inž. el. za usmerjanje in pomoč pri izdelavi diplomske naloge. Zahvaljujem se tudi moji družini, ki mi je omogočila študij in punci, ki me je podpirala in vzpodbujala v času študija. i

5 ZAGOTAVLJANJE IN ANALIZA VARNOSTI SISTEMA ZA UPRAVLJANJE VSEBIN - WORDPRESS Ključne besede: WordPress, Varnost, Zaščita, Vtičnik, CMS UDK: : (043.2) Povzetek Vse večja priljubljenost sistema za upravljanje vsebin WordPress privablja tudi vse več potencialnih napadalcev, ki lahko tako ali drugače ogrožajo naše spletne strani in uporabnike spletnih storitev. V diplomskem delu smo najprej analizirali zakaj je varnost na spletu tako zelo pomembna in kako za varnost WordPress spletnih strani skrbi sistem sam. V drugem delu smo raziskali kaj lahko sami postorimo za izboljšanje varnosti in za preprečevanje zlonamernih napadov. Tako smo šli skozi vse pomembnejše varnostne nastavitve in ukrepe, da bi našo spletno stran čim bolj optimalno zaščitili. ii

6 SECURING AND SECURITY ANALYSIS OF WORDPRESS CONTENT MANAGEMENT SYSTEM Key words: WordPress, Security, Protection, Plugin, CMS UDK: : (043.2) Abstract The ever increasing popularity of WordPress content management system increases numbers of potential attackers, who can in various ways harm our websites and users of internet services. In my diploma we've first analyzed, why the safety on the internet is so important and how the system itself can ensure the safety of the WordPress web sites. In the second part we researched, what can we do ourselves to improve security and prevent malicious attacks. So we went through all the important safety measures and precautions, to achieve optimum protection of our web site. iii

7 KAZALO VSEBINE: 1. UVOD WORDPRESS FUNKCIONALNOSTI TEME VTIČNIKI NASTAVITVE PRI NAMESTITVI SISTEMA POMEMBNOST ZAGOTAVLJANJA VARNOSTI ZAKONODAJA MOŽNE ZLORABE ANALIZA VARNOSTNIH REŠITEV WORDPRESS-A VARNOST VTIČNIKOV IN TEM WORDPRESS.ORG TEME IN VTIČNIKI SKUPINA ZA PREIZKUS IN PREVERJANJE TEM WORDPRESS JEDRO API PROTOKOL HTTPS SSL CERTIFIKAT DODAJANJE SSL CERTIFIKATA V WORDPRESS SMERNICE ZA ZAGOTAVLJANJE VARNOSTI METODOLOGIJA DELA STREŽNIŠKO GOSTOVANJE DOMOVANJE AKTIVNA ZAŠČITA NADZOR NAD DELOVANJEM STREŽNIKOV PODATKOVNI CENTER IZBIRA UPORABNIŠKEGA IMENA IN MOČNEGA GESLA PRIKRIVANJE SKRBNIŠKE PRIJAVNE STRANI OMEJITEV ŠTEVILA NAPAČNIH PRIJAV DOLOČANJE PRAVIC DATOTEKAM NA STREŽNIKU DATOTEKA HTACCESS ZAKRIVANJE DELOVNE RAZLIČICE SISTEMA PREDPONE WORDPRESS TABEL SPREMLJANJE SPREMEMB DATOTEK NA STREŽNIKU 'MALWARE' PREGLEDOVANJE NASTAVITEV POŽARNEGA ZIDU XMLRPC & PINGBACK RANLJIVOSTI ZAŠČITE iv

8 G ČRNI SEZNAM IN NASTAVITVE BLOKIRANJE LAŽNIH ROBOTKOV PREPREČEVANJE 'HOTLINK' ZAZNAVANJE NAPAKE PREPREČITEV SPAM KOMENTARJEV UPORABA ORIGINALNIH VTIČNIKOV IN TEM POMEMBNOST POSODOBITEV VARNOSTNE KOPIJE SPREMLJANJE NAPREDKA VTIČNIKI ZA ZAGOTAVLJANJE VARNOSTI WORDFENCE ITHEMES SECURITY SUCURI SECURITY BULLETPROOF SECURITY SKLEP VIRI IN LITERATURA KAZALO SLIK: Slika 2.1: WordPress logotip... 3 Slika 2.2: Sistemske datoteke na strežniku... 8 Slika 2.3: Ustvarjanje podatkovne baze... 8 Slika 2.4: Dodajanje novega uporabnika... 9 Slika 2.5: Podatkovna baza v programskem orodju phpmyadmin... 9 Slika 2.6: Dodajanje podatkovne baze v WordPress...10 Slika 2.7: Zagon namestitve...10 Slika 2.8: Podatki spletišča...11 Slika 3.1: Obvestilo o piškotkih na naši spletni strani urisk.eu...13 Slika 4.1: Sprememba URL naslova...22 Slika 4.2: HTTPS preusmerjanje v datoteki.htacces...22 Slika 4.3: HTTPS na 'Multisite'...22 Slika 4.4: Urisk.eu z varno HTTPS povezavo...22 Slika 5.1: Generator varnih gesel...28 Slika 5.2: Sprememba URL naslova za dostop do skrbniške prijavne strani...29 Slika 5.3: Omogočanje varnostnega preizkusa...29 v

9 Slika 5.4: Varnostni preizkus pri prijavi...29 Slika 5.5: Zakrivanje uporabniškega imena avtorja s preusmeritvijo na domačo stran...30 Slika 5.6: Omejitev števila napačnih prijav...31 Slika 5.7: Seznam trajanja aktivnosti prijavljenih uporabnikov...31 Slika 5.8: Podatki o pravicah datotek...32 Slika 5.9: Določanje pravic datotekam s pomočjo FTP odjemalca...32 Slika 5.10: Pravilno urejene pravice datotek...33 Slika 5.11: Datoteka.htaccess...34 Slika 5.12: Spreminjanje dostopa do skrbniške nadzorne plošče...34 Slika 5.13: Onemogočanje dostopa do datoteke 'wp-config.php'...34 Slika 5.14: Dostop do datoteke 'wp-login.php' z našega IP naslova...35 Slika 5.15: Preprečevanje eksekucij PHP datotek...35 Slika 5.16: Zaščita.htaccess datoteke...35 Slika 5.17: Spreminjanje predpon tabel podatkovni bazi...37 Slika 5.18: Omogočanje osnovne zaščite požarnega zidu...40 Slika 5.19: Vklop XMLRPC in Pingback zaščite...40 Slika 5.20: Aktiviranje 5G in 6G pravil...41 Slika 5.21: Blokiranje lažnih robotkov...41 Slika 5.22: Preprečevanje 'hotlink'...42 Slika 5.23: Zaznavanje napake Slika 5.24: Preprečevanje SPAM komentarjev...43 Slika 5.25: Ročno posodabljanje vtičnikov...44 Slika 5.26: Ročno posodabljanje tem...45 Slika 5.27: Kreiranje varnostne kopije podatkovne baze...46 Slika 5.28: Samodejno kreiranje varnostne kopije podatkovne baze...46 Slika 5.29: Samodejno kreiranje varnostne kopije podatkovne baze s pomočjo cpanel...47 Slika 6.1: Merilnik zaščite sistema na začetku...47 Slika 6.2: Razmerje zaščite na začetku...48 Slika 6.3: Končno razmerje dejavnikov zagotavljanja zaščite...52 Slika 6.4: Opozorilo pri izbiri 'brute force' zaščite...52 Slika 6.5: Seznam neuspešnih prijav v sistem...53 Slika 6.6: Trenutno prijavljeni uporabniki...53 Slika 6.7: Zadnjih 5 uspešnih prijav v sistem...54 Slika 6.8: Trajanje sej prijav...54 Slika 6.9: Spremembe datotek na strežniku...54 Slika 6.10: Obvestila o spremembah na skrbniški domači strani...55 Slika 6.11: Rezultat 'Sucuri SiteCheck' pregledovanj...56 vi

10 Slika 6.12: Rezultat 'WPMUDEV Security' pregledovanj...56 Slika 7.1: Vtičnik Wordfence Security...58 Slika 7.2: Vtičnik ithemes Security...59 Slika 7.3: Vtičnik Sucuri Security...59 Slika 7.4: Vtičnik BulletProof Security...60 KAZALO TABEL: Tabela 5.1: Čas potreben za razvozlanje 6-9 mestnih gesel...28 Tabela 6.1: Razvrstitev varnostnih ukrepov v skupine pogostih ranljivosti po OWASP...57 SEZNAM KRATIC: Apache Spletni strežnik API Application programming interface Brute force attacks napadi v zelo kratkih intervalih, po navadi iz različnih IP naslovov cpanel strežniška nadzorna plošča CMS Content mamagement system CPU Central processing unit CSRF Croos Site Request Forgery CSS Cascading style sheets DDoS Distributed Denial of Service DNS Domani name System FTP File transfer protocol GPL General public license HTML HyperText Markup Language HTTP HyperText Transfer Protocol HTTPS HyperText Transfer Protocol Secure IP Internet protocol MariaDB podatkovna zbirka MySQL kombinacija 'My' (ime razvijalčeve hčerke) in 'SQL' (Structured Query Language) Nginx Spletni strežnik OWASP Open Web Application Security Project vii

11 PB Podatkovna baza PHP Hypertext Preprocessor RFI Remote file inclusion SPAM nezaželena, vsiljena elektronska sporočila SSD Solid-state drive SSL Secure Sockets Layer SSRF Server Side Request Forgery TIER 1 internetno omrežje TLS Transport Layer Security URL Uniform Resource Locator VPS Virtal private server WP - WordPress XML-RPC remote procedure call, ki uporablja Extensible Markup Language XSS - Cross Site Scripting XXE - XML external Entity viii

12 1. UVOD WordPress je dinamični odprtokodni sistem za upravljanje vsebin, ki ga uporablja na milijone spletnih strani, aplikacij in blogov. Z drugimi besedami, dobrih 23% od 10 milijonov najbolj obiskanih spletnih strani temeljni na teh spletnih rešitvah. [5] Sistem je zelo priljubljen zaradi svoje enostavnosti in razširljivosti. Uporabniki lahko brez večjega programerskega predznanja spreminjajo teme, dodajajo vtičnike, drugo vsebino in tako kreirajo svoje spletne rešitve. Zaradi velike priljubljenosti sistema je ta tudi precej ogrožen z varnostnega vidika, saj hekerji neprestano spremljajo razvoj in iščejo ranljivosti. In ker z vdori lahko pride do nezaželenih posledic, npr. do kraje podatkov, dodajanja povezav do nelegalnih strani, brisanja vsebin ipd., je zelo pomembno, da je sistem ustrezno zavarovan. [12] Da bi razne napade in vdore čim bolj učinkovito preprečili, ne moremo računati samo na sam sistem, ampak lahko s pravilnimi pristopi največ postorimo sami. Vsak uporabnik si želi biti varen na svetovnem spletu, zato je zelo pomembno, da so naše spletne rešitve varne za uporabnike. Tako si pridobimo večje zaupanje obiskovalcev, zvišamo uvrstitve za ključne besede v spletnih iskalnikih in v primeru spletne trgovine tudi povečamo prodajo. [13] Namen diplomske naloge je, da raziščemo in analiziramo varnostne vidike, ki so potrebni pri vzpostavitvi take spletne rešitve. Tako bomo v prvem delu raziskali katere protokole in aplikacije uporablja WordPress za zagotavljanje varnosti platforme že v osnovi. V drugem delu pa se bomo osredotočili na to, kako lahko sami poskrbimo za varnost. Raziskali in pregledali bomo vse varnostne nastavitve platforme WordPress, dodatno poskrbeli za varnostne rešitve in poskušali zagotoviti optimalno varnost na naši spletni strani. Zelo pomembno je namreč, da imamo zelo dobro strežniško gostovanje, da samo platformo, vtičnike in teme redno posodabljamo, onemogočimo spreminjanje datotek na strežniku, si zagotovimo varnostne kopije, ter da pravilno nastavimo druge varnostne nastavitve. Pri tem bomo še preizkusili in analizirali nekaj najboljših vtičnikov za zagotavljanje varnosti v WordPress-u. Da se bomo dela lotili pravilno in dobro, je zelo pomembno, da bomo s pomočjo različnih postopkov skozi cel čas preverjali in spremljali napredek glede zagotavljanja varnosti naših spletnih rešitev. Tako bomo med samim delom večkrat preverili spletno stran s pomočjo sistemov za preverjanja zanesljivosti in varnosti WordPress spletnih strani, ki so dostopni na svetovnem spletu ter poskušali odpraviti ranljivosti na katere bomo opozorjeni. Z namestitvijo določenih varnostnih vtičnikov pa bomo napredek spremljali sproti po vsaki spremembi nastavitev in sicer v grafični obliki s pomočjo grafikonov in v točkovno - številčni obliki, kjer bo 1

13 napredek viden v številčnih rezultatih. Dobljene rezultate bomo lahko na koncu tudi predstavili in ugotovili kako uspešni smo bili. Na svetovnem spletu je že ogromno napisanega na temo zagotavljanja varnosti WordPress spletnih strani. Mi se bomo osredotočali na konkreten primer ter v namen raziskovanja in analize zagotavljanja varnosti vzpostavili spletno stran v orodju WordPress. Tako bomo lahko preizkusili različne varnostne vtičnike, nastavitve, spremljali dogajanje na strežniku in poskušali spletno stran čim bolj optimalno zaščititi pred raznimi možnimi vdori. Varnost končne rešitve bomo preverjali s samodejnimi varnostnimi orodji, dostopnimi na svetovnem spletu. Pisanje diplomskega dela bo temeljilo na znanju, ki smo si ga skozi študijsko obdobje pridobili na fakulteti, poznavanju sistema WordPress ter lastnem raziskovanju sistemov za zagotavljanje varnosti. Pri tem bomo uporabili že pripravljene smernice in sam namen diplomskega dela ni, da bi preverjali ali je seznam ustrezen, popoln in zadosten. Predpostavljamo pa, da bodo pridobljene informacije zelo koristile tistim, ki se bodo želeli dodatno poučiti na to temo. 2. WORDPRESS Sami začetki sistema segajo v leto 2003, v precej bolj okrnjeni obliki kot je današnja, izpod prstov glavnega razvijalca Matta Mullenwega in le s peščico uporabnikov. WordPress je nastal v želji po elegantnem, dobro načrtovanem sistemu, ki temelji na PHP programskem jeziku in MySQL podatkovni bazi in je licenciran pod GPL licenco, kar uporabnikom omogoča svobodno in prosto uporabo. WordPress je uradni naslednik programa b2/cafelog, ki ga je razvil Michael Valdrigi. Ime je predlagala razvijalčeva prijateljica Christine Selleck. Od takrat se je ta brezplačni, dinamični odprtokodni sistem za upravljanje vsebin razvil v najbolj razširjeno računalniško orodje za ustvarjanje spletišč na svetu, na katerem temelji na milijone spletnih strani in jih vsakodnevno obišče več deset milijonov ljudi. 2

14 Slika 2.1: WordPress logotip Vse kar WordPress predstavlja, od same dokumentacije, do kode sistema je bilo ustvarjeno za skupnost. Gre za odprtokodni projekt, kar pomeni, da je v ozadju na stotine ljudi po vsem svetu, ki projekt razvijajo naprej. To tudi pomeni, da je uporaba sistema brezplačna in v nobenih primerih uporabe ni treba plačevati dodatnih licenc. Sam sistem si lahko prenesemo na spletni strani wordpress.org. Za namestitev priporočajo Apache ali Nginx spletne strežnike, saj naj bi ti veljali kot najbolj robustni in preizkušeni pri gostovanju WordPress spletnih rešitev. V praksi bo pa dovolj vsak strežnik, ki podpira nekatere minimalne zahteve, kot so PHP programski jezik različice 7 ali novejši, MySql 5.6. ali MariaDB 10.0 podatkovno bazo ter HTTPS podporo. Platforma je zelo prilagodljiva, saj lahko praktično brez programerskega predznanja spreminjamo in urejamo teme, razširjamo določene funkcionalnosti z nameščanjem dodatnih vtičnikov, dodajamo vsebino in si tako kreiramo željene spletne rešitve. [5] Na voljo je tudi storitev imenovana WordPress.com, ki omogoča gostovanje in izdelavo brezplačnih blogov oziroma spletnih strani za registrirane uporabnike in je finančno podprto s plačljivimi storitvami, nadgradnjami, "VIP" storitvami in oglaševanjem. Spletna stran se je odprla leta 2005 in je bila prvotno zagnana kot storitev na povabilo. Oktobra 2012, je WordPress uporabljalo več kot 56 milijonov blogov. To število se je do 2016 zvišalo na 74,6 milijonov, polovica od tega jih gostuje na WordPress.com. V marcu 2016 so našteli več kot 22,5 milijard obiskov na objavah in straneh, istega meseca je na WordPress.com bilo objavljenih več kot 58,6 milijonov objav in več kot 7,7 milijonov strani. Registracija ni potrebna pri branju in komentiranju člankov, razen če tako zahteva lastnik. Vse osnovne funkcije in storitve so za uporabo zastonj. Vendar pa so nekatere storitve vključno s CSS urejevalnikom, registracijo domene, odstranitev oglasov, nalaganje videov in nadgrajevanja prostora na spletu plačljive. [14] Obstajajo tudi različne WordPress skupnosti, ki delujejo po vsem svetu in so tako poleg ogromnega števila spletnih virov, forumov odlična priložnost za izobraževanja in združevanja 3

15 uporabnikov. Ena izmed takih je WordCamp, ki organizira različne, povečini brezplačne dogodke namenjene druženju in izobraževanju. Spored, lokacije in termine je mogoče preveriti na njihovi spletni strani. Tudi v Sloveniji delujejo skupnosti, ki večkrat organizirajo izobraževanja za začetnike in naprednejše uporabnike, ter razna predavanja ob čajankah FUNKCIONALNOSTI WordPress je CMS sistem na katerem temelji 24% celotnega svetovnega spleta in ta številka se povečuje iz dneva v dan. Vse od preprostih spletnih strani, blogov, spletnih trgovin, zapletenih portalov, do poslovnih spletnih strani in celo aplikacij je zgrajenih s pomočjo teh spletnih rešitev. Združuje enostavnost za uporabnike, urednike in prijaznost do razvijalcev, to omogoča fleksibilnost in hkrati enostavno uporabo ter veliko funkcionalnosti. [5] - Preprostost za uporabo: Hitro in učinkovito do željenih vsebin v le nekaj korakih. - Prilagodljivost: Ustvarimo lahko različne vrste spletnih rešitev po svojem okusu. - Orodja za objavo: Enostavno ustvarjanje in hitra objava željenih vsebin. - Upravljanje medijskih vsebin: Slika pove več kot tisoč besed, zato je pomembno da lahko hitro in enostavno nalagamo medijske vsebine. - Upravljanje uporabnikov: Uporabnikom lahko določimo različne skupine, privilegije in skrbniške pravice. Od skrbnikov sistema, avtorjev, urednikov, do uporabnikov, ki lahko stran samo pregledujejo. To omogoča, da imamo različno skupino sodelavcev, ki tako ali drugače skrbijo za spletno stran. - Skladnost s standardi: WordPress je popolnoma v skladu s standardi W3C. To pomeni, da bo vaša spletna stran kompatibilna tudi z naslednjimi generacijami spletnih brskalnikov. - Teme: Na voljo je ogromno predlog in tem, ki jih lahko enostavno namestimo in urejamo. - Vtičniki: Z njihovo pomočjo lahko enostavno razširimo funkcionalnosti spletnih strani. Dodamo različne galerije, kontaktne obrazce, forume.. 4

16 - Orodja za upravljanje komentarjev: Skrbi za vse kar potrebujete za učinkovito vodenje razprav in soustvarjanje vsebin. - SEO optimizacija za iskalnike: Sistem je optimiziran za iskalnike s pomočjo dodatnih SEO vtičnikov. - Upravljanje svojih podatkov: Vaši podatki so dostopni samo vam. - Večjezičnost: Podpora več kot 70 jezikom. Tudi v slovenščini. - Skupnost: Kot najbolj priljubljen odprtokodni CMS sistem na svetovnem spletu ima WordPress veliko in dinamično podporo razvijalcev, ki vsakodnevno objavljajo nove rešitve in posodobitve. - Namestitev in nadgradnje: Enostavno in hitro z uporabo FTP klientov. Ali pa namestitev z enim klikom, kar preko uporabniških nadzornih plošč, ki jih omogočajo strežniški gostitelji. - Enostaven uvoz vsebin: Omogoča enostaven uvoz vsebin iz blogger, LiveJournal, Movable Type, TypePad, Tumblr, in drugih WordPress spletnih strani. - Analiza obiskanosti: Vodenje statističnih podatkov obiskanosti. [5] 2.2. TEME Uporabniki WordPress-a lahko namestijo in preklapljajo med različnimi temami (angleško Themes). Teme omogočajo uporabnikom, da spremenijo videz in funkcionalnost svojim spletnim stranem. [1] Teme spremenijo sam videz strani in v večini primerov funkcije WordPress skripte ostanejo nespremenjene. V večini primerih pa zato, ker imajo nekatere bolj izpopolnjene teme dodane posebne funkcionalnosti, ki še dodatno popestrijo spletno stran. [16] Vsaka WordPress stran zahteva vsaj eno temo, ki jo lahko oblikujemo s pomočjo standardov PHP, HMTL in CSS ali pa si jo prilagodimo kar v administrativni nadzorni plošči, tako da bo skladna s tematiko spletišča in kot taka primerna za obiskovalce. [1] Teme so v splošnem razdeljene v dve kategoriji, prosto dostopne oz. zastonj teme in plačljive (angleško premium) teme. Vse prosto dostopne so na voljo na spletni strani WordPress.org, plačljive pa na spletnih straneh posameznih razvijalcev. V večini primerov je moč plačljive verzije tudi brezplačno preizkusiti v okrnjeni različici in jih potem dokupiti v polni različici, z vsemi funkcionalnostmi. Ob zadostnem programerskem predznanju, pa si lahko teme ustvarimo kar sami. [1] 5

17 Brezplačne Teme lahko namestimo neposredno preko administrativne nadzorne plošče. Kjer v meniju izberemo 'Videz' in nato 'Teme'. Za dodajanje nove teme zgoraj izberemo 'Dodaj novo'. Odpre se seznam vseh brezplačnih tem, ki so dostopne na WordPress.com. Teme lahko izberemo preko raznih filtrov, ali pa jih poiščemo kar v iskalniku. Ko izberemo ustrezno temo, lahko s klikom na gumb 'Predogled' preverimo, kako bi naša stran dejansko izgledala z novo nameščeno temo. Temo namestimo prek gumba 'Namesti' in ko je nameščena, jo moramo samo še aktivirati s klikom na gumb 'Aktiviraj' Obstaja še drugi način namestitve in sicer ročna namestitev preko administrativne nadzorne plošče ali pa s pomočjo FTP odjemalcev. Ti možnosti izberemo kadar želimo namestiti plačljivo temo, ali pa izbrane teme ni v direktoriju brezplačnih tem. Izbrano temo si prenesemo na računalnik in se prijavimo v administrativno nadzorno ploščo oz. v strežniško gostovanje preko FTP odjemalca. V primeru, da želimo temo namestiti preko nadzorne plošče, podobno kot v prejšnjem primeru namestitve najprej izberemo 'Videz' in nato 'Teme'. V naslednjem koraku izberemo 'Dodaj novo'. Do tu je postopek enak. Potem pa izberemo 'Naloži temo' in na svojem računalniku poiščemo direktorij izbrane teme. Sledi samo še, da temo namestimo s klikom na 'Namesti zdaj' in jo aktiviramo. V drugem primeru namestitve preko FTP odjemalcev pa je najbolj pomembno, da gremo v direktorij wp-content/themes, kjer so nameščene vse teme, ki jih imamo na naši spletni strani in tam ustvarimo novo mapo z imenom izbrane teme. V to mapo nato prenesemo vsebino direktorija teme iz računalnika. Tako je namestitev zaključena. [16] 2.3. VTIČNIKI Vtičniki ali angleško plugins so deli programske opreme, ki sistemu WordPress omogočajo hitro in enostavno razširitev funkcionalnosti ter uporabnih dodatkov. Za WordPress obstaja skoraj brezplačnih in plačljivih naprednejših vtičnikov. Med najbolj priljubljene vtičnike sodijo tisti, ki spletno stran nadgradijo s/z: - Meta oznakami, spletno optimizacijo, zemljevidi spletnega mesta - Vnosnimi polji, kontaktnimi obrazci - Blokiranjem nezaželene (ang. spam) vsebine in drugimi varnostnimi ukrepi - Sinhronizacijo s socialnimi omrežji - Možnostjo kreiranja poljubnih stolpcev in tabel na podstraneh 6

18 - Možnostjo pred pomnjenja, kar pohitri našo spletno stran - Galerijami, forumi, dinamičnimi meniji - Spletno trgovino [15] Brezplačne vtičnike lahko enostavno nameščamo in posodabljamo preko administrativne nadzorne plošče, kjer v zavihku 'Vtičniki' izberemo 'Dodaj'. Prikaže se seznam vseh vtičnikov, ki so dostopni v podatkovni bazi WordPress.org. Le te lahko razvrščamo po kategorijah, ali pa jih poiščemo v iskalniku. Če je izbran vtičnik ustrezen izberemo 'Namesti zdaj' in vtičnik se bo po nekaj sekundah namestil. Po namestitvi se prikaže gumb 'Aktiviraj', kliknemo nanj, da vtičnik aktiviramo in že ga lahko urejamo in uporabljamo na strani. [15] Drugi način je namestitev vtičnikov s pomočjo.zip datotek prav tako v administrativni nadzorni plošči. Ta način bomo največkrat uporabili kadar bomo želeli namestiti naprednejši plačljiv vtičnik. Postopek je podoben kot v prejšnjem primeru, saj najprej izberemo zavihek 'Vtičniki' in nato 'Dodaj'. Ko se odpre seznam vtičnikov, zgoraj izberemo 'Naloži vtičnik'. Prikazalo se bo polje z gumbom 'Izberite datoteko'. Kliknemo nanj in na svojem računalniku izberemo želeno.zip datoteko. Ostane samo še, da vtičnik namestimo s klikom na gumb 'Namesti zdaj' in ga isto kot v prejšnjem primeru aktiviramo. Vtičnik bo tako pripravljen za uporabo. [15] Obstaja še tretji način namestitve vtičnikov in sicer preko nadzorne plošče pri ponudniku strežniškega gostovanja oz. s pomočjo FTP odjemalcev. V obeh primerih je postopek podoben, pomembno je samo, da datoteke vtičnika namestimo v pravi direktorij. Po uspešni prijavi na strežniku poiščemo datoteko 'public_html' in domeno, na kateri se nahaja naša spletna stran. V primeru, da imamo v paketu gostovanja samo eno domeno, se že nahajamo v tem direktoriju. Izberemo mapo 'wp_content' in nato še plugins. V tej mapi se nahajajo vsi vtičniki, ki jih imamo nameščene na naši strani. Nato na našem računalniku poiščemo datoteke izbranega vtičnika in jih s klikom na gumb 'Prenesi' ali 'naloži' prenesemo na strežnik. [15] 2.4. NASTAVITVE PRI NAMESTITVI SISTEMA WordPress si lahko na strežnik namestimo preko nadzornih plošč, če jih ponudniki gostovanj podpirajo ali pa kar preko FTP odjemalcev. Na si pridobimo namestitveno datoteko in jo razpakiramo, ter preko FTP odjemalca naložimo na strežnik v mapo 'httpdocs'. 7

19 Slika 2.2: Sistemske datoteke na strežniku Pred samo namestitvijo sistema WordPress, si moramo konfigurirati podatkovno bazo. To storimo tako, da v nadzorni plošči spletnega gostovanja izberemo 'Podatkovne baze' in ustvarimo novo podatkovno bazo. Novi podatkovni bazi določimo ime in vrsto, v našem primeru je to MySQL. Slika 2.3: Ustvarjanje podatkovne baze 8

20 Podatkovni bazi moramo dodati še uporabnika in geslo. To storimo tako, da izberemo željeno podatkovno bazo in kliknemo na Dodaj novega uporabnika. Slika 2.4: Dodajanje novega uporabnika Podatkovno bazo lahko urejamo in varnostno kopiramo preko orodij za upravljanje s podatkovno bazo phpmyadmin. Slika 2.5: Podatkovna baza v programskem orodju phpmyadmin 9

21 Po uspešnem kreiranju podatkovne baze in uporabnika, sledi namestitev sistema WordPress. To zaženemo tako, da vpišemo URL naslov naše spletne strani. Odpre se začetno namestitveno okno s kratkim opisom sistema in minimalnimi zahtevami za namestitev. Tu sistem tudi opozori, da si pred namestitvijo moramo kreirati podatkovno bazo oz. pridobiti naziv, uporabniško ime in geslo obstoječe podatkovne baze. Ob nadaljevanju se odpre okno za dodajanje povezave in podrobnosti o podatkovni bazi, kamor vnesemo prej pridobljene podatke. Slika 2.6: Dodajanje podatkovne baze v WordPress Če so podatki vneseni pravilno, sistem obvesti, da je ta del namestitve uspešno opravljen. Slika 2.7: Zagon namestitve 10

22 Tako nadaljujemo 5-minutno namestitev sistema WordPress, kjer določimo naslov spletišča ter skrbniške uporabniške podatke. Spletnim iskalnikom lahko po izbiri tudi preprečimo indeksiranje našega spletišča. Slika 2.8: Podatki spletišča 3. POMEMBNOST ZAGOTAVLJANJA VARNOSTI Živimo v časih, ko večina komunikacije poteka preko svetovnega spleta, ko je internet del našega vsakdana, ko je meja med realnim in virtualnim svetom iz dneva v dan vse bolj zabrisana. Svetovna podjetja se predstavljajo na spletu, mnoga omogočajo tudi spletno nakupovanje. Različna društva splet izkoriščajo za sodelovanje s svojimi člani, kot posamezniki pa lahko svoje vtise in mnenja hitro predstavimo v svojem spletnem dnevniku, na forumih ali družbenih omrežjih. Ob vseh teh prednostih svetovnega spleta pa ne smemo pozabiti tudi na pasti in nevarnosti. [17] Ne glede na to ali spletno stran vzpostavimo mi ali pa za to poskrbijo zunanji partnerji, smo sami odgovorni za njegovo delovanje, zato moramo ohraniti nadzor in skrbeti za vzdrževanje. Izbira ponudnika strežniškega gostovanja mora biti dobro premišljena in na odločitev naj ne 11

23 vpliva zgolj cena paketa, ampak predvsem storitve, ki jih ponuja, zanesljivost in hitra odzivnost ponudnika. Pred vzpostavitvijo spletnega mesta moramo dobro razmisliti kaj sploh želimo in si razdeliti faze postavitve spletnega mesta na tri dele: Načrtovanje, postavitev in vzdrževanje. V fazi načrtovanja določimo kaj vse bo naša spletna stran zajemala. Ali bo ta zgolj v predstavitvene namene, ali bo šlo za zapleten portal, spletno trgovino ali celo za poslovno spletno stran. Od zapletenosti je odvisno kateri sistem izberemo in koliko vzdrževanja bo zahteval. S postavitvijo spletnega mesta, pri izbranem ponudniku gostovanja smo najeli poslovne prostore na internetu, za katere moramo skrbeti sami. Način poslovanja, skrb za varnost in vzdrževanje je naša naloga. Prav slabo ali neobstoječe vzdrževanje je najpogostejši vzrok za težave na spletnem mestu. Saj če zanj ne skrbimo, je le vprašanje časa kdaj bo prišlo do kakšnega zapleta. Odpravljanje posledic zlorabe spletnega mesta pa bo terjalo določen čas in denar. Nedostopnost spletne trgovine ali strani pa povzroči tudi izgubo strank, poslovno škodo in prav gotovo ne prispeva k naši dobri podobi. Med vzdrževalna dela spada redno preverjanje delovanja spletnega mesta, redne posodobitve in nadgradnje same platforme, ažuriranje kontaktnih podatkov za domeno, ter spremljanje novic o novostih platforme. Splet je dinamično okolje in njegovemu razvoju moramo slediti tudi s svojim spletnim mestom [17] 3.1. ZAKONODAJA Splet ureja tudi slovenska zakonodaja. Posamezni zakoni in členi so zapisani na zato smo jih kot lastniki spletnih strani dolžni upoštevati. Odgovornost za vsebine na našem spletnem mestu nosimo mi. Če vdiralec na naše spletno mesto naloži orodja s katerimi povzroča škodo drugim uporabnikom spleta, smo lahko soodgovorni tudi mi, če ob tem ustrezno in hitro ne ukrepamo. [17] Zakon o elektronskem poslovanju na trgu (ZEPT, 11.člen) določa, da ponudnik spletnega gostovanja ni odgovoren za podatke, ki so naloženi na strežnik, dokler se ne zaveda, da gre morebiti za protipravno dejavnost. Takoj, ko mu je ta znana pa mora odstraniti ali onemogočiti dostop do teh podatkov. Ob morebitnih pritožbah glede vsebine, na našem spletnem mestu, ima ponudnik torej jasno zakonsko dolžnost, da dostop do nje onemogoči. Poleg tega lahko določi pogoje in dodatna pravila, ki jih moramo upoštevati ob zakupu gostovanja. [17] Pošiljanje oglasov brez vnaprejšnjega soglasja naslovnika je v nasprotju s slovensko zakonodajo. Področje nezaželene elektronske pošte (spam) urejajo kar štirje zakoni in izgovor, da smo elektronske naslove dobili na javno dostopnih spletnih straneh, ni soglasje za spam. Pomembno je tudi, da upoštevamo pravila glede intelektualne lastnine. Poskrbeti moramo, da imamo vsa ustrezna dovoljenja za uporabo vsebin na našem spletnem mestu. Tako za vsebino 12

24 najdeno na spletu nikakor ne pomeni, da jo lahko tudi uporabljamo. Nekatere vsebine se lahko prosto uporabljajo, spet druge pod določenimi pogoje, sicer pa moramo dobiti dovoljenje od lastnika pravic. [17] Spletni piškotki so majhne tekstovne datoteke, ki jih spletni strežnik ob obisku ponudi brskalniku obiskovalca in se običajno shranijo na njihov računalnik ali mobilno napravo, ob ponovnem obisku pa se shranjeni podatki iz brskalnika ponovno pošljejo strežniku. Uporabljajo se za vodenje sej, za razlikovanje med uporabniki, njihovemu sledenju spletišču in za shranjevanje nastavitev. V skladu z zakonom o elektronskih komunikacijah (ZEKom-1) moramo uporabnike obvestiti o vrsti piškotkov, ki jih uporabljamo na našem spletnem mestu ter pridobiti njihovo soglasje za uporabo. Več o spletnih piškotkih je na voljo na spletni strani [17] Slika 3.1: Obvestilo o piškotkih na naši spletni strani urisk.eu Če na strežniku hranimo ali obdelujemo osebne podatke, moramo v skladu z Zakonom o varstvu osebnih podatkov zbirke osebnih podatkov prijaviti informacijskemu pooblaščencu. V primeru, da imamo strežniško gostovanje najeto v tujini, moramo preveriti ali je izvoz osebnih podatkov v tisto državo sploh dovoljen. Izvoz je dovoljen v članice evropske unije, v ZDA pa le v podjetja, ki so podpisala ustrezen sporazum. Informacije ali je potrebno s ponudnikom gostovanja pri tem podpisati pogodbo o obdelavi osebnih podatkov, pa prav tako dobimo pri informacijskem pooblaščencu. [17] 3.2. MOŽNE ZLORABE Do vdorov najpogosteje pride v ne vzdrževanem sistemu za upravljanje vsebin ali strežniku, kjer vdiralec najlažje najde varnostno luknjo. Dostop lahko pridobi tudi s krajo uporabniškega imena in gesla, ali ugibanjem, če je le to preveč enostavno. Kot posledice vdorov se največkrat omenja moteno delovanje ali izpad spletnega mesta. Možne ja izguba, sprememba ali kraja podatkov in posledično ogrožanje obiskovalcev našega spletnega mesta. Pogoste pa so tudi blokade naše elektronske pošte, ali celo blokada našega spletnega mesta na internetu. [17] 13

25 Nekaj najpogostejših vrst vdorov: - RAZOBLIČENJE oz. DEFACEMENT: Je 'grafitiranje' preko katerega želi napadalec izraziti svoje mnenje, ali pa le pustiti svoj podpis. Podoba spletnega mesta je spremenjena. [17] - PHISHING KRAJA GESEL: Napadalec izkoristi naše spletno mesto za postavitev lažne kopije. Npr. spletne strani bank in prek strežnika ukrasti gesla, ter nato tudi denar njenih komitentov. Napadalci uporabljajo phishing tehniko tudi za krajo drugih podatkov, kot so uporabniški računi, gesla za elektronsko pošto, številke kreditnih kartic itd. Žrtve napada so po navadi zvabljena na lažne phishing strani preko prirejenega elektronskega sporočila, v katerih so obveščena da morajo zaradi različnih razlogov vnesti svoje podatke. Podatki pa gredo k napadalcem. [17] - NAPAD S ŠKODLJIVO KODO: Naše spletno mesto lahko napadalci izkoristijo tudi za širjenje zlonamerne kode, virusov, trojanskih konjev in računalniških črvov. Napadalec na našo spletno stran namesti programsko kodo, ki poskuša izrabiti ranljivosti obiskovalčevega brskalnika oz. dodatkov brskalnika. V tem primeru smo soudeleženi pri okužbi računalnikov naših spletnih obiskovalcev. Okužbe lahko imajo za posledice krajo podatkov z okuženega sistema ali finančno oškodovanje, zato je potrebno takojšnje ukrepanje, ko ugotovimo, da se naše spletno mesto uporablja za širjenje škodljive kode. [17] - ONEMOGOČANJE SPLETNIH MEST: Lahko se zgodi, da pride do porazdeljenega napada (DDoS), zaradi katerega je naše spletno mesto nedosegljivo. Za napadi lahko stojijo izsiljevalci iz tujih držav, jezne stranke, bivši zaposleni ali celo konkurenca. V primeru najave napada, moramo shraniti kopijo komunikacije in podatke o prometu, ki ga je bil naš strežnik deležen. Lahko se tudi zgodi, da se znajdemo na drugi strani, ko napadalec vdre v naš strežniški sistem in ga uporablja za napade na druga spletna mesta. [17] Ob napadu ali vdoru v naše spletno mesto je pomembno, da o tem obvestimo skrbnika strežniškega gostovanja in poskrbimo za zavarovanje dokazov o vdoru (predvsem napadalčevih datotek, sprememb na sistemu in dnevniških datotek). Pri tem je pomembno, da napadenih datotek ne spreminjamo, da se ohranijo v celoti skupaj z ustreznimi časovnimi oznakami. O vdoru moramo preko elektronske pošte, na naslov cert@cert.si obvestiti tudi SI- CERT, kjer nudijo nadaljnjo pomoč pri preiskovanju vdora, dodatni zaščiti strežnika in spletne 14

26 strani ter opravijo potrebno komunikacijo s ponudniki interneta, CERT centri v tujini in po potrebi tudi z organi pregona. [17] 4. ANALIZA VARNOSTNIH REŠITEV WORDPRESS-A Za varnost pri WordPress-u skrbi ekipa sestavljena iz približno 30 strokovnjakov, ki sodeluje z raznimi znanimi in zaupanja vrednimi raziskovalci in varnostnimi družbami. Skupaj skrbijo za reševanje ranljivosti platforme in nove varnostne posodobitve. O vseh odkritih varnostnih luknjah in pomanjkljivostih, jih lahko obvestimo preko elektronske pošte in tako pripomoremo k razvoju same platforme. Varnostna ekipa bo pomanjkljivosti v čim krajšem času odpravila in izdala novo varnostno posodobitev. Ko izidejo nove nadgradnje same platforme, skrbniki WordPress spletnih straneh dobijo obvestila, da so na voljo nove različice programske opreme. V primeru ročne nadgradnje, sistem skrbnika preusmeri na zaslon s prikazanimi opisom sprememb in nadgradenj, ki jih prinaša nova različica. Skrbniki WordPress spletnih strani pa si lahko nastavimo tudi samodejne nadgradnje sistema v ozadju, v tem primeru pa smo o namestitvah obveščeni preko elektronske pošte. To možnost samodejnih nadgradenj so pri WordPressu uvedli z verzijo 3.7. in tako skrbnikom ni potrebno skrbeti za ročno nameščanje, hkrati pa je vedno nameščena najnovejša stabilna verzija platforme. [18] OWASP TOP 10 je spletna skupnost namenjena varnosti spletnih aplikacij, ki se osredotoča na ugotavljanje varnostnih ranljivosti in učinkovito reševanje le teh. Svoje ugotovitve prikazujejo v seznamu desetih najbolj kritičnih ranljivosti, ki ga sproti spreminjajo in posodabljajo, glede na statistične podatke zbrane skozi določeno obdobje. [18] Nabor funkcionalnosti, ki jih uporablja platforma WordPress za krepitev svojega jedra: - Vrivanje (ang. Injection): Obstaja nabor funkcij in API-jev, ki so na voljo razvijalcem pri onemogočanju injiciranja nepooblaščene kode. Najbolj učinkovite metode in dokumentacije uporabe teh programskih vmesnikov za zaščito, ali filtriranje vhodno izhodnih podatkov so v HTML kodi, URL-jih, HTTP glavah, pri interakciji z podatkovno bazo in datotečnim sistemom. Skrbniki lahko še dodatno omejijo vrste datotek z urejanjem raznih filtrov. [18] - Napaka pri overjanju in upravljanju sej (ang. Broken Authentication and Session Management): Jedro programske opreme WordPress upravlja uporabniške račune, 15

27 avtentikacijo in podrobnosti kot so ID uporabnika, uporabniško ime in gesla, kot tudi piškotke za preverjanje pristnosti, ki se izvajajo na strani strežnika. Gesla so zaščitena v podatkovni bazi z uporabo že uveljavljenih standardnih tehnik za zaščito. Od verzije 4.0 dalje se obstoječe seje ob odjavi iz sistema uničijo. [18] - Podtikanje skript (ang. Cross Site Scripting (XSS): Nabor funkcij, ki omogoča, da so uporabniški podatki na varnem. Prispevki ali posegi v kodo zaupanja vrednih uporabnikov (skrbniki in uredniki spletnih strani) so nefiltrirani, če tako želimo. Medtem, ko je vsa vsebina nezaupanja vrednih uporabnikov, kot je na primer zlonamerna koda z kombinacijo HTML in javascript, privzeto filtrirana z odstranjevanjem nevarnih subjektov s pomočjo KSES knjižnice in wp_kses funkcije. [18] - Nezavarovan neposreden dostop do objektov (ang. Insecure Direct Object Reference): Bogat sistem za nadzor dovoljenj in nadzor dostopa onemogoča nepooblaščene zahteve spreminjanja vrednosti parametrov in dostop do tujih podatkov. [18] - Napačne varnostne nastavitve (ang. Security Misconfiguration): Večina varnostnih konfiguracij je omejena samo na enega avtoriziranega skrbnika. Privzete nastavitve za WordPress se kontinuirano preverjajo s strani jedra ekipe, ki prav tako zagotavlja dokumentacijo in najboljše prakse za konfiguracijo varnosti strežnika. [18] - Izpostavljenost občutljivih podatkov (ang. Sensitive Data Exposure): Sistem za upravljanje dovoljenj se uporablja za nadzor dostopa do zasebnih podatkov registriranih uporabnikov, elektronskih naslovov, itd. Od verzije 3.7. dalje je v platformi vključen sistem za preverjanje ti. močnih gesel, ki zagotavlja dodatne informacije uporabnikom, ko si določajo geslo in jim svetuje kako jih izboljšati. WordPress nudi tudi dodatno konfiguracijo nastavitev za HTTPS protokol. [18] - Manjkajoč funkcijski nivo za dostopnost (ang. Missing Function Level Access Control): WordPress preverja ustreznost zahtev za dostop do funkcionalnosti nepooblaščenih uporabnikov. Dostop ali vizualizacija skrbniških URL-jev, menijev in strani je tesno povezana s sistemom za preverjanje pristnosti in preprečevanja dostopa nepooblaščenim uporabnikom. [18] - Podtikanje zahtevkov (ang. Cross Site Request Forgery): Za zaščito pred morebitnimi grožnjami CSRF, sistem uporablja kriptografske žetone za preverjanje zahtev, ki bi 16

28 lahko sprožile nezaželene ukaze. WordPress ponuja API za pridobivanje teh edinstvenih in začasnih žetonov, ki so omejeni na določenega uporabnika, določen ukrep, v določenem časovnem obdobju. [18] - Uporaba komponent z znanimi ranljivostmi (Using Components with Known Vulnerabilities): Ekipa za preverjanje varnosti pozorno spremlja vključene knjižnice in razvojna ogrodja, ki so integrirana v osnovne funkcionalnosti sistema. V preteklosti so večkrat sodelovali z zunanjimi sodelavci, tako so v različici vključili posodobitev za podtikanje skript v TinyMCE. Če je potrebno lahko jedro ekipe določi zamenjavo kritičnih zunanjih komponent, kot je bila knjižnica SWFUpload, ki so jo uradno nadomestili z Plupload, prav tako z nadgradnjo platforme na različico [18] - Nepreverjene preusmeritve in posredovanja (ang. Unvalidated Redirects and Forwards): Notranji nadzor dostopa in sistem za preverjanje pristnosti ščitita pred poskusi preusmerjanja uporabnikov na druge neželene povezave in spletne aplikacije. Ta funkcija je na voljo tudi razvijalcem vtičnikov preko API, wp_safe_redirect(). [18] - XXE obdelani napadi (ang. XML external Entity): Pri obdelavi XML sistem onemogoča nalaganje predelanih XML subjektov po meri, zaradi preprečitve napadov s pomočjo zunanjih subjektov (ang. external Entity) in razširitev (Entity Expansion). Razen jedru PHP funkcionalnosti sistem ne zagotavlja API za dodatno varno obdelavo XML za razvijalce vtičnikov. [18] - SSRF napadi (ang. Server Side Request Forgery): Sistemske HTTP zahteve so filtrirane, da se prepreči dostop do povratnih zank in privatnih IP naslovov. Poleg samega filtriranja je dostop dovoljen samo v nekaterih standardnih HTTP portih. [18] 4.1. VARNOST VTIČNIKOV IN TEM WordPress zahteva omogočeno vsaj eno temo za prikaz in predstavitev vsebine na zaslonu. Privzeta tema v trenutni različici platforme je 'Twenty Fifteen', ki je bila močno varnostno pregledana in preizkušena tako s strani ekipe razvijalcev teme, kot tudi s strani jedra razvojne ekipe sistema. Privzeta tema služi kot izhodišče za razvoj po meri in razvijalci spletnih strani lahko ustvarjamo popolnoma svoje teme, ali pa obstoječe prilagodimo z vsemi funkcionalnostmi in varnostnimi rešitvami. Privzeto temo je mogoče popolnoma odstraniti iz sistema, če jo ne potrebujemo. [18] 17

29 WORDPRESS.ORG TEME IN VTIČNIKI Tako kot privzeta tema, je tudi vseh ostalih 2000 tem in več kot vtičnikov, ki so na voljo na spletni strani WordPress.org preizkušenih in varnostno pregledanih s strani varnostne ekipe in ekipe prostovoljcev, preden so na voljo za namestitev in uporabo. Vendar še to ni zagotovilo, da so brez varnostnih lukenj in ranljivosti. V pomoč razvijalcem so na spletni strani objavljene tudi smernice in obsežna navodila za izdelavo vtičnikov in tem. Vsak vtičnik in tema imata možnost sprotnega razvoja in dodelave. Vse naknadne popravke in razvojne funkcije se lahko z opisom sprememb dodatno naloži v obliki posodobitev in uporabniki so o tem obveščeni preko administrativne nadzorne plošče. Ko je ranljivost odkrita s strani varnostne ekipe WordPress, se le ta obrne na razvijalca in skupaj poskrbijo za rešitev problema ter izdajo varnostne posodobitve. V primeru, da se avtor na opozorila ne odzove oz. gre za hudo ranljivost, se vtičnik ali tema začasno odstrani iz javnega direktorija, dokler ga varnostna ekipa ne izpopolni. [18] SKUPINA ZA PREIZKUS IN PREVERJANJE TEM Gre za skupino prostovoljcev, vodenih s strani uveljavljenih članov WordPress skupnosti, ki pregleda in odobri teme, ki so predložene za vključitev v uraden WordPress imenik tem. Skupina skrbi tudi za smernice pri pregledovanju tem, testiranje podatkov in preverjanje vtičnikov. Razvijalce angažirajo, da se vključujejo v njihova izobraževanja in jih tako podučijo najboljših praks glede razvoja samih spletnih rešitev. [18] 4.2. WORDPRESS JEDRO API WordPress-ov aplikacijski programski vmesnik API (ang. Application Programming Interface), je sestavljen iz več posameznih API-jev, ki zajemajo vsak svoj določen nabor predvidenih funkcionalnosti. Skupaj tvorijo vmesnik, ki omogoča vtičnikom in temam zanesljivo in varno razširitev jedra funkcionalnosti. [18] Medtem, ko vsak aplikacijski programski vmesnik v sistemu zagotavlja najboljše prakse in standardizirane načine za interakcijo in razširitev jedra programske opreme, so naslednji API najbolj primerni za uveljavljanje in utrjevanje varnosti sistema: 18

30 - API podatkovne baze (ang. Database API): Ta aplikacijski programski vmesnik je bil dodan v različici sistema 0.71 in zagotavlja pravilen način za dostop do podatkov, poimenovanih vrednosti, ki so shranjene v slojih podatkovne baze. [18] - API datotečnega sistema (ang. Filesystem API): API dodan v različici je bil prvotno ustvarjen za WordPress funkcijo samodejnih posodobitev. Ta aplikacijski programski vmesnik skrbi za varno pisanje in branje lokalnih datotek, v datotečnem sistemu na različnih vrstah strežniških gostiteljev. To počne s pomočjo wp_filesystem_base razreda in raznih podrazredov, ki izvajajo različne načine povezovanja na lokalni datotečni sistem, odvisno od podpore posameznega gostitelja. Vsak vtičnik ali tema, ki spreminja lokalne datoteke na strežniku to počne s pomočjo wp_filesystem razredov. [18] - HTTP API: Prvič v različici in njegova razširitev v različici 2.8 standardizira HTTP zahteve za WordPress. Obravnava piškotke, GZIP kodiranje in dekodiranje ter razne druge HTTP protokole. API standardizira zahtevke, testiranje načinov metod pred pošiljanjem in glede na konfiguracijo strežnika uporablja ustrezen način za pošiljanje zahtevkov. [18] - API dovoljenja uporabnikov: je nabor funkcij, ki pomaga preveriti dovoljenja trenutnega uporabnika in pooblastila za opravljanje nalog in operacij, ki so zahtevana. Prav tako lahko še dodatno ščiti pred nepooblaščenim dostopom uporabnikov oz. jim preprečuje izvajanje nalog, ki presegajo njihova dovoljenja. [18] 4.3. PROTOKOL HTTPS HyperText Transfer Protocol Secure, imenovan tudi HTTP preko TLS oz. SSL, je protokol za varno komunikacijo preko računalniškega omrežja, ki se uporablja na internetu. HTTPS sestavljajo protokol HTTP v povezavi s kriptografskim protokolom TLS oz. SSL. Glavne naloge HTTPS so preverjanje pristnosti spletnih strani ter varovanje zasebnosti in integritete izmenjanih podatkov. Omogoča dvosmerno šifriranje komunikacij med strežnikom in odjemalcem, ki ščiti pred prisluškovanjem in nedovoljenim spreminjanjem vsebin sporočil. Kar v praksi pomeni zagotovilo, da komuniciramo neposredno s strežnikom in da vsebine komunikacije med uporabnikom in spletno stranjo ni mogoče prebrati ali spreminjati s strani tretje osebe. [19] 19

31 V začetkih so ta varnostni protokol uporabljali predvsem za plačilne transakcije preko svetovnega spleta, elektronsko pošto in občutljive transakcije znotraj informacijskih sistemov podjetij. V začetkih tega desetletja se je uporaba protokola začela razširjati za zaščito pristnosti vseh spletnih strani, zaščito uporabniških računov, vodenju zasebnih uporabniških komunikacij ter za varno in zasebno brskanje po svetovnem spletu. V primerjavi s protokolom HTTP se HTTPS URL naslovi začnejo s ' in uporabljajo port 443, medtem ko HTTP protokol uporablja privzeti port 80. HTTP protokol ni šifriran in je občutljiv na prisluškovanja, ki lahko napadalcem pridobijo dostop do spletnih računov, občutljivih informacij in omogočijo spreminjanje spletnih strani ter injiciranje zlonamerne kode. HTTPS je zasnovan tako, da je pred takimi napadi in prisluškovanji varen. [19] Ob obisku spletne strani je promet izmenjan med strežnikom in brskalnikom poslan kot golo besedilo. Torej, če zlonamerna tretja oseba prestreže to komunikacijo, lahko prebere in ukrade zaupne podatke. Kot primer pri prijavi v skrbniško nadzorno ploščo, brez uporabe HTTPS varnostnega protokola, lahko napadalec enostavno ukrade uporabniško ime in geslo za prijavo. Enako velja tudi za vse vrste podatkov, poslane na spletno stran, ki se izvaja na HTTP protokolu, kot so npr. podatki o kreditni kartici itd. Zato mora biti HTTP promet šifriran s SSL, kadar se občutljive informacije pošiljajo preko svetovnega spleta. [8] SSL CERTIFIKAT Za prehod na varni protokol HTTPS si moramo zagotoviti in na spletni strežnik namestiti SSL digitalno potrdilo. To storimo tako, da pri ustreznem zaupanja vrednem overitelju naročimo ustrezen certifikat ter ga namestimo na spletni strežnik. Nato v datoteki.httpacces uredimo preusmeritev iz HTTP na HTTPS. SSL certifikat vključuje informacije o spletni strani, spletni brskalnik ga pa uporablja za preverjanje: - ULR naslova spletne strani na kateri se izvaja SSL - Imena družbe, lastnika spletne strani - Informacij o izdajatelju potrdila - Datumov veljavnosti [8] Komunikacija med uporabnikom in strežnikom deluje tako, da se strežnik predstavi z javnim ključem. To imenujemo enkripcija z javnim ključem (Public - Key Encryption) in digitalnim potrdilom. Tako strežnik potrdi svojo identiteto, pri tem pa brskalnik ustvari ključ za enkripcijo s simetričnim ključem, ga zakodira s strežniškim javnim ključem (public key) in mu ga pošlje. Ko strežnik sprejme ključ, ga dekodira s privatnim ključem (private key). Od tu naprej poteka komunikacija preko enkripcije s simetričnim ključem (Symmetric Key Encryption), ki je 20

32 bistveno hitrejša za kodiranje in dekodiranje podatkov ter omogoča hitro odkrivanje, če so bili podatki med prenosom spremenjeni. V primeru, da strežnik zahteva uporabnikovo predstavitev, se ta podobno kot strežnik predstavi z digitalnim potrdilom. [20] Kako delujeta SSL potrdilo in protokol HTTPS : - Ko poskušamo dostopati do spletnih strani, ki se izvajajo na HTTPS protokolu (z uporabo SSL), brskalnik zahteva od spletnega strežnika, kjer spletna stran gostuje, da se identificira. [8] - Spletni strežnik pošlje brskalniku kopijo svojega SSL potrdila. [8] - Brskalnik preveri zaupnost SSL potrdila. Če je potrdilo zaupno, pošlje sporočilo spletnemu strežniku, da nadaljuje s šifriranjem. V primeru nezaupnosti potrdilu, opozori uporabnika, da je nekaj narobe s potrdilom in uporabnik sam izbere, ali bo nadaljeval z brskanjem, ali ne. [8] - Ko je potrdilo zaupanja vredno, spletni strežnik pošlje nazaj digitalno podpisano potrdilo z začetkom SSL šifrirane seje, tako da promet med brskalnikom in spletnim strežnikom ni mogoče prestreči s strani napadalcev. [8] DODAJANJE SSL CERTIFIKATA V WORDPRESS Če imamo spletno stran namenjeno elektronskemu poslovanju, potem moramo obvezno namestiti SSL certifikat, saj bomo zbirali podatke o plačilih. Prav tako uporaba raznih plačilnih ponudnikov kot so PayPal itd, zahteva varno povezavo prek SSL. Z namestitvijo SSL certifikata bomo poleg varne povezave pridobili boljše uvrstitve v iskalnikih Google, večje zaupanje obiskovalcev spletne strani in povečanje prodaje v primerih spletnih trgovin. [7] SSL certifikat lahko dodamo kadarkoli in sicer tako, da najprej posodobimo svoj URL naslov spletnega mesta. To storimo tako, da v skrbniški nadzorni plošči pod 'Nastavitve', izberemo 'Splošne nastavitve' in v polju 'Naslov za WordPress (URL)', ter 'Naslov spletišča (URL)' spremenimo povezavo. [7] 21

33 Slika 4.1: Sprememba URL naslova Naslednji korak, če želimo dodati SSL v svojo obstoječo stran je, da v.htaccess datoteki dodamo naslednjo kodo, ki bo preusmerila HTTP povezavo na HTTPS. Slika 4.2: HTTPS preusmerjanje v datoteki.htacces S pomočjo teh korakov bo naša spletna vsebina delovala na varni povezavi HTTPS. Če želimo dodati SSL na 'multi-site' skrbniško območje ali prijavno stran, potem moramo nastaviti SSL še v 'wp-config.php' datoteki. To storimo tako, da v datoteko vstavimo naslednjo nad vrstico 'That s all, stop editing!' [7] Slika 4.3: HTTPS na 'Multisite' Tako zdaj naša spletna stran teče na varni povezavi HTTPS. Slika 4.4: Urisk.eu z varno HTTPS povezavo 5. SMERNICE ZA ZAGOTAVLJANJE VARNOSTI 22

34 5.1. METODOLOGIJA DELA Namen diplomskega dela je poskrbeti za varnost sistema WordPress, na konkretnem primeru, na naši spletni strani Urisk.eu. To bomo poskušali storiti s posegom v kodo programske opreme in s pomočjo varnostnih vtičnikov, s katerimi bomo spremljali tudi napredek pri zagotovitvi varnosti. Naša spletna stran je namenjena predstavitvi vinotoča Urisk, ki se nahaja v Prekmurju, v Strehovskih goricah. Na podlagi želj naročnika smo za predstavitev vinotoča uporabili številne vtičnike in gradnike za prikaz ponudbe in aktivnosti, ki se dogajajo v okviru vinotoča in tamkajšnjega vinogradniškega društva. Pri sami zagotovitvi varnosti bomo iskali smernice, upoštevali pravila in nasvete, ki so dostopni na svetovnem spletu in poskušali doseči optimalno zaščito našega spletnega mesta. Pri tem sam namen diplomskega dela ni, da bi preverjali ali je ta seznam popoln, ustrezen in zadosten. Ko gre za zagotavljanje varnosti pri WordPress spletnih straneh so varnostni vtičniki eni najpomembnejših dejavnikov pri tem. Zato je pravilna in dobra izbira le tega zelo pomembna in ji moramo posvetiti dovolj časa, da se pravilno odločimo. Pri tem moramo upoštevati številne dejavnike in funkcionalnosti, ki jih za varno delovanje spletne strani potrebujemo ter varnostne vtičnike pred samo uporabo tudi preizkusiti. Za začetek smo pregledali seznam vtičnikov, ki so na voljo v spletnem imeniku WordPress.org. Na podlagi mnenj in ocen uporabnikov, števila prenosov, ažurnosti za posodobitve ter združljivostjo z zadnjimi različicami sistema smo najprej izbrali pet najpopularnejših vtičnikov, med katerimi smo se pozneje odločili za najustreznejšega. To smo storili na podlagi preizkusa vseh petih vtičnikov, ob upoštevanju funkcionalnosti, ki jih ponujajo in ob izpolnjevanju zahtev, ki smo jih pred tem določili. Odločili smo se za vtičnik 'All In One WP Security & Firewall' ali krajše 'WP Security', ki prihaja izpod prstov avtorja Tips in Tricks HQ. Slika 5.1: Vtičnik All in One WP Security & Firewall 23

35 Gre za enega najpopularnejših WordPress varnostnih vtičnikov z več kot pol milijona aktivnih uporabnikov. Vtičnik je na voljo v brezplačni različici, ki ponuja številne funkcionalnosti in smernice za zagotavljanje varnosti. Prijazen uporabniški vmesnik skrbi za enostavno upravljanje z vtičnikom tudi manj veščim uporabnikom. Vtičnik ščiti naše spletne strani s preverjanjem ranljivosti, izvajanjem najnovejših tehnologij in varnostnih ukrepov. Ena najbolj uporabnih funkcij je spremljanje napredka pri zagotavljanju varnosti s pomočjo merilnika varnosti in grafikonov. Tako lahko z dodajanjem varnostnih ukrepov neprestano spremljamo in izboljšujemo naše rezultate. Vtičnik s pomočjo varnostnega pregledovalnika, ki hrani podatke o datotekah opozarja o vsakih spremembah v sistemu in zaznavanju zlonamerne programske opreme. Vtičnih skrbi za zagotavljanje varnosti uporabniškim računom, za varno registracijo in varno prijavo, ter pri tem onemogoča dostop do podatkov potencialnim napadalcem. Le te s pomočjo črnih list blokira in jim onemogoča dostop. Požarni zid preprečuje zlonamernim skriptam dostop do jedra sistema in do ostalih pomembnih datotek, kot sta npr. 'htaccess' in 'wp-config.php'. Poskrbljeno je tudi za varnost podatkovne baze in preprečevanje 'brute force' napadov. Vtičnik skrbi za preprečevanje SPAM-a, za izdelovanje varnostnih kopij, za spremljanje prometa na strežniku ter za številne druge varnostne nastavitve in funkcionalnosti. Vtičnik je preveden v 11 jezikov, avtorji pa vsakodnevno skrbijo za številne izboljšave in posodobitve. [11] Namestitev vtičnika sama po sebi še ne zagotavlja varnosti, dokler le tega pravilno ne nastavimo oz. konfiguriramo. Tako bomo sistem pripravili za namestitev vtičnika in šli skozi vse varnostne nastavitve, ki jih ponuja. Ker za dobro varnost sistema ne gre računati samo na varnostni vtičnik bomo določene ukaze in nastavitve dodatno prožili s pomočjo programske kode preko FTP odjemalcev in cpanel nadzorne plošče. Poleg sistema za spremljanje varnostnega napredka, ki ga ponuja vtičnik, si bomo za preverjanje ranljivosti spletne strani pomagali z orodji dostopnimi na svetovnem spletu, ki opozarjajo na šibka gesla, ranljivost vtičnikov in tem, preverjajo zanesljivost strežnika in ustrezno zaščito pomembnih sistemskih datotek ter na koncu podajo poročilo o mogočih ranljivostih našega spletnega mesta, ki jih bomo sproti odpravljali. Tako bomo s pomočjo pridobljenega znanja v času študija, lastnih izkušenj, nasvetov in vodičev dostopnih na svetovnem spletu, poskušali naše spletno stran narediti čim bolj varno za obiskovalce in jo ustrezno zaščititi pred potencialnimi napadalci. 24

36 5.2. STREŽNIŠKO GOSTOVANJE Izjemno pomembno vlogo pri zagotavljanju varnosti sistema imajo tudi ponudniki gostovanja. WordPress se lahko namesti na številnih platformah in čeprav jedro programske opreme omogoča številne funkcionalnosti, ki skrbijo za varno delovanje spletnih aplikacij, je za samo varnost izrednega pomena konfiguracija operacijskega sistema ter spletnega strežnika, ki gosti programsko opremo. Ponudniki gostovanja so lahko precej pasivni, saj nekateri le spremljajo aktivnosti na strežnikih, spet drugi svoje stranke samo obvesčajo o zlorabah, le redki pa ob tem tudi ukrepajo. Pri izbiri ponudnika gostovanja smo upoštevali naslednje zahteve: - Brezplačna, strokovna pomoč - Varni, hitri in zanesljivi strežniki s SSD diski - Nadzor nad delovanjem strežnikov - Dnevno izdelovanje varnostnih kopij - Popolna samostojnost z Nadzorno ploščo Na podlagi teh kriterijev, zanesljivosti in ažurnosti ekipe smo se odločili, da bomo našo spletno stran gostovali pri ponudniku domovanje.com, ki vse to in še več ponuja po najbolj ugodni ceni DOMOVANJE AKTIVNA ZAŠČITA Brezplačna Domovanje aktivna zaščita skrbi za varnost naših spletnih aplikacij tako da: - Samodejno odpravlja ranljivosti v nekaterih aplikacijah. Za to skrbi sistem Patchman, ki odkriva in odpravlja znane ranljivosti v CMS sistemih. Sistem Patchman deluje tako, da vsakodnevno samodejno pregleda nameščene aplikacije na strežniku in v kolikor za določene aplikacije odkrije znane ranljivosti, naročnika o tem obvesti po elektronski pošti. Naročnik ima 7 dni časa, da ranljivosti odpravi sam. V primeru, da tega ne stori, sistem samodejno namesti popravke, ki so na voljo. Po izvedbi posodobitev dobi naročnik obvestilo o spremembah, ki so bile izvedene. [21] - Preprečevanje vdorov in napadov. S pomočjo naprednega požarnega zidu, ki omogoča preprečitev ugibanja gesel. Sistem zna v realnem času ločiti med različnimi oblikami prometa in nudi zaščito pred veliko oblikami Dos in DDos napadov. Na podlagi novih 25

37 vzorcev napadov na CMS sisteme, se požarni zid nekajkrat dnevno redno posodablja. Tako samo na njihovih strežnikih preprečijo tudi do 3 milijone ugibanj gesel mesečno. [21] - Opozarjanje naročnikov v primeru najdbe sumljivih datotek. Sistem redno pregleduje datoteke na strežniku i išče zlonamerno kodo. V primeru najdbe sumljivih datotek, se naročnika o tem obvesti s posebnim poročilom, ki vsebuje seznam potencialno nevarnih datotek. [21] - Opozarjanje naročnikov v primeru sumljivih aktivnosti. V primeru odkritja sumljivih aktivnosti sistem poskuša preprečiti nadaljnje zlorabe in škodo, ki bi jo lahko napadalec povzročil. Nadzorni sistem onemogoči dostop do spletne strani in poštnega predala, hkrati pa naročniku pošlje obvestilo s smernicami, kako težave odpraviti. [21] NADZOR NAD DELOVANJEM STREŽNIKOV Tako imenovani nadzor nad delovanjem strežnikov oz. monitoring poteka vse dni v letu in vključuje naslednje storitve: - Obveščanje dežurnega tehnika. V primeru težav na strežniku nadzorni sistem prikaže zapis o napakah in jih v določenih primerih poskuša sam odpraviti. Če mu le teh ne uspe odpraviti, obvesti o tem dežurnega tehnika preko e-sporočila. V primeru, da tehnik v roku petih minut ne začne s preverjanjem in odpravljanjem težav, ga sistem obvesti še preko SMS sporočila. [22] - Zaradi infrastrukture omrežja se Monitoring izvaja na več lokacijah. Dodatno se preverja tudi mrežno opremo, kjer se povezljivost preverja izven lokalnega omrežja. Na mrežni opremi se preverja predvsem pot prometa, stopnjo rasti prometa, spremembe mrežnih priključkov, CPU obremenitve in temperature naprav. [22] - Preverjanje delovanja strojne opreme. Tu spremljajo predvsem zasedenost prostora, obremenitve in temperature strežnikov, napetost na napajalnikih, pomanjkanje spomina, delovanje hlajenja ter število procesov, ki se izvajajo. [22] - Posebna pozornost je namenjena strežnikom deljenega gostovanja in vzdrževanim VPS-om. Pri teh strežnikih se spremljajo predvsem poskusi vdorov, odzivnost 26

38 strežnikov, odzivnost strežnikov podatkovnih baz, delovanje PHP-ja, obremenjenosti, število sporočil v čakalni vrsti, spremembe nastavitvenih datotek. Ob večjih odstopanjih sistem obvesti dežurnega tehnika. [22] PODATKOVNI CENTER Strežniki ponudnika Domovanje.com se nahajajo v verjetno najboljšem podatkovnem centru v Sloveniji, v prostorih Telekoma Slovenije. Prostor nudi najvišjo stopnjo varnosti in zanesljivosti delovanja opreme s pomočjo protipožarne in protipotresne zaščite, neprekinjenim varovanjem objekta, s stalnim električnim napajanjem in klimatiziranimi prostori. Dodatno je vzpostavljena tudi sekundarna lokacija strežnikov, s sekundarnimi DNS, varnostnimi kopijami podatkov in monitoringom. Povezava z internetom poteka preko TIER 1 ponudnikov z več 10G povezav do treh glavnih vozlišč Frankfurt, Budimpešta, Sofija. Povezani so tudi na peerig vozlišča in sicer v Frakfurtu, Sofii in v Sloveniji. [23] 5.3. IZBIRA UPORABNIŠKEGA IMENA IN MOČNEGA GESLA S pomočjo uporabniškega imena in gesla, se kot skrbniki prijavimo v nadzorno ploščo sistema WordPress in dostopamo do celotne vsebine, ki jo imamo na naši spletni strani. Zato je zelo pomembno, da si ustvarimo unikatno uporabniško ime in močno geslo, ter se tako zaščitimo pred napadalci, ki bi poskušali uganiti naše prijavne podatke. [4] Uporabniško ime naj ne bo nastavljeno na 'admin' ali 'administrator', ker se napadalci tega dobro zavedajo in prav na ta način poskušajo najpogosteje vdreti v sistem. Uporabniško ime določimo med samo namestitvijo sistema WordPress, v primeru, da ga že imamo določenega in ga želimo spremeniti, lahko to storimo v skrbniški nadzorni plošči. To storimo tako, da v glavnem meniju izberemo zavihek 'Uporabniki' in dodamo novega uporabnika, ki mu določimo vlogo skrbnika, prejšnje uporabniško ime pa preprosto izbrišemo. [4] Izbrati moramo močno geslo, ki naj vsebuje male in velike črke, številke ter posebne znake. Priporočljivo je, da gesla vsebujejo vsaj 10 znakov, saj jih je tako težje razbiti. Za gesla nikoli ne smemo uporabljati rojstnih datumov, svojih ali imen najdražjih. Tudi kombinacije zaporedij številk niso ustrezne. Velja pravilo, čim bolj nesmiselna so gesla, tem težje jih je ugotoviti in bolj varna so. [26] 27

39 Tabela 5.1: Čas potreben za razvozlanje 6-9 mestnih gesel Dolžina gesla Male črke + Velike črke + Posebni znaki 6 znakov 10 minut 10 ur 18 dni 7 znakov 4 ure 23 dni 4 leta 8 znakov 4 dni 3 leta 463 let 9 znakov 4 mesece 178 let let [26] Pri izbiri gesel si lahko pomagamo z raznimi generatorji močnih gesel, dostopnimi na spletu, ki kreirajo zapletena gesla. Sistem WordPress od različice 4.3. naprej že privzeto vsebuje generator varnih gesel, tako da si lahko to kadarkoli zamenjamo v skrbniški nadzorni plošči. Slika 5.1: Generator varnih gesel 5.4. PRIKRIVANJE SKRBNIŠKE PRIJAVNE STRANI Čeprav varnost, ki se osredotoča na prikrivanje ni popolna, je še vedno pomemben del splošne strategije. Konec koncev skrivanje določenih elementov naše spletne strani napadalcem ne bo preprečilo dostop do njih, vendar jim bo pa otežilo dostop do njih. Premeščanje ali preimenovanje skrbniške prijavne strani je hiter in enostaven način kako napadalcem otežimo delo. 'Brute force' napadi so običajno samodejni napadi na skrbniške prijavne strani, ki imajo privzete url naslove za prijavo kot so ali zato le te spremenimo in napadalcem preprečimo enostaven dostop do prijavnih strani. Na voljo je veliko številko vtičnikov s pomočjo katerih lahko spreminjamo url prijavne strani, eden izmed takih je Lockdown WP Admin, mi bomo to storili s pomočjo našega vtičnika WP Security. 28

40 Slika 5.2: Sprememba URL naslova za dostop do skrbniške prijavne strani Poleg tega vtičnik preprečujejo nepooblaščene dostope, saj napadalcem, ki želijo neposredno dostopati do skrbniške prijavne strani, ko skrbnik ni prijavljen skrivajo le to in jih preusmerijo na drugo stran. Na prijavni strani dodamo še varnostni preizkus Captcha, ki ugotavlja ali je določen uporabnik človek ali program. Slika 5.3: Omogočanje varnostnega preizkusa Slika 5.4: Varnostni preizkus pri prijavi V privzetih nastavitvah sistema je napadalcem dokaj enostavno ugotoviti uporabniško ime avtorja prispevkov na strani, in ker je ta uporabnik pogosto tudi skrbnik sistema dobijo napadalci informacije tudi o tem. To ni dobro, saj z vsakršnimi informacijami napadalcem 29

41 tvegamo ogroženost naše spletne strani. Zato je pomembno, da zakrijemo uporabniška imena avtorjev prispevkov in vse kar moramo storiti je to, da dodamo nekaj kode v functions.php datoteko: Slika 5.5: Zakrivanje uporabniškega imena avtorja s preusmeritvijo na domačo stran Ko vstavimo kodo ta deluje tako, da napadalcu ob poizvedovanju podatkov o avtorju z ukazom '?author=1' poleg glavnega URL naslova, ne bo predstavilo avtorjevih podatkov, ampak ga bo preusmerilo nazaj na domačo stran. [3] 5.5. OMEJITEV ŠTEVILA NAPAČNIH PRIJAV Napadalci se pogosto poskušajo prijaviti s ponavljanjem poskusov prijave, dokler ne uganejo uporabniškega imena in gesla. Glede na to, da bi lahko prišlo sočasno do velikega števila ponavljanj s strani zlonamernih robotov in s tem do obremenitve strežnika, je omejitev števila napačnih prijav v kombinaciji z močnim geslom, spremljanjem in blokiranjem IP naslovov, ki so vključeni v ponavljajoče se napačne prijave v kratkem času, zelo učinkovit način zaustavitve tovrstnih napadov. [9] Ko vključimo to funkcijo ji določimo zgornjo mejo števila napačnih prijav v določenem času, preden bo IP naslov blokiran in koliko časa bo ponovna prijava nedostopna. Uporabnike o tem obvestimo s pomočjo generiranega sporočila, ali pa jim opcijsko omogočimo zahtevo za sprostitev blokiranih IP-jev. Vtičnik omogoča takojšnjo blokiranje poskusov prijav uporabniškim imenom, ki niso v našem sistemu. Lahko pa na seznam dodamo uporabniška imena, ki ne bodo blokirana, kljub napačni prijavi. Sistem o vseh večkratnih poskusih napačnih prijav in blokiranju IP-jev obvešča preko elektronske pošte. 30

42 Slika 5.6: Omejitev števila napačnih prijav Vtičnik prav tako spremlja seznam aktivnosti uporabnikov v določenem času, trajanje njihovih sej, čas odjave in njihove IP naslove. Beleži tudi podatke o poskusih napačnih prijav, blokirane uporabnike ter omogoča določitev časovnega obdobja trajanje sej po katerem se bo uporabnik moral ponovno prijaviti. Slika 5.7: Seznam trajanja aktivnosti prijavljenih uporabnikov 31

43 5.6. DOLOČANJE PRAVIC DATOTEKAM NA STREŽNIKU Privzete nastavitve dovoljenj WordPress datotek in map urejajo dostopnost do branja in pisanja. Pri sami namestitvi so le ta dovoljenja razumno in varno določena. Vendar včasih uporabniki in nekateri vtičniki spremenijo različne nastavitve privilegijev za nekatera jedra map in datotek. Tako je lahko zaradi napačnih vrednosti dovoljenj naša spletna stran na koncu manj varna. Vtičnik WP Security omogoča pregled nastavitev pomembnih datotek ali map in na negotove vrednosti opozori ter priporoči optimalne vrednosti. Slika 5.8: Podatki o pravicah datotek Obstaja več načinov, kako spremeniti pravice datotekam, obstajajo tudi številne različice, ki vključujejo spremembe dovoljenj, da bi bile le te bolj restriktivne. Pravice datotekam lahko spremenimo prek FTP odjemalcev, tako da gremo do določenih datotek ali map, na katere sistem opozori in jih izberemo z desnim klikom. V stolpčnem meniju damo 'Določi dovoljenja' ter jih spremenimo na željeno vrednost. Slika 5.9: Določanje pravic datotekam s pomočjo FTP odjemalca 32

44 Dovoljenja lahko določimo tudi preko ukazne vrstice s pomočjo ukazov: - Za direktorije: find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \; - Za datoteke: find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \; Po izvedenih spremembah s pomočjo vtičnika preverimo spremembe, če sistem ne opozori na nobeno nepravilnost, so nastavitve pravilno nastavljene. [2] Slika 5.10: Pravilno urejene pravice datotek 5.7. DATOTEKA HTACCESS Pri zagotavljanju varnosti WordPress spletnim stranem ne moremo mimo datoteke 'Hypertext access' ali krajše htaccess. To je konfiguracijska datoteka, ki strežniku pove kako obdelovati določene stvari na naši spletni strani. Uporablja se za avtorizacijo, nadzor predpomnilnika, varnostne nastavitve, optimizacijo spletne strani in najpogosteje za preoblikovanje URL-jev, ki so tako enostavnejši in bolj berljivi za uporabnika in iskalnike. To datoteko po navadi najdemo v korenskem imeniku naše spletne strani, vendar je FTP odjemalci včasih ne prikažejo zaradi skrivanja le te, tako da je potrebno najprej označiti možnost 'prikaži skrite datoteke', da jo lahko najdemo. Spreminjanje datoteke.htaccess lahko ogrozi delovanje naše spletne strani, zato je potrebno pred vsakim posegom v kodo narediti varnostno kopijo le te, da jo kasneje v primeru izpada obnovimo. Morda pa ob sami namestitvi sistema na strežniku ni.htaccess datoteke, tako da jo je pred samim urejanjem potrebno ustvariti s pomočjo urejevalnikov besedil ali pa 33

45 neposredno v cpanel ustvarimo novo datoteko in jo poimenujemo.htaccess, v katero prilepimo sledečo kodo, ki je privzeta za WordPress od 4.2. različice dalje: Slika 5.11: Datoteka.htaccess Ne glede na izbran način dela, je pomembno, da spletno stran po spremembah osvežujemo in tako preverjamo ali spremembe povzročajo izpade. V teh primerih datoteko obnovimo s prejšnjo delujočo verzijo. Pomembno pa je, da ne spreminjamo ničesar med vrsticami # BEGIN WordPress in # END Wordpress. [3] V primeru, da imamo statični IP zaklenemo dostop do skrbniške nadzorne plošče samo na naš IP, tako da vstavimo sledečo kodo, datoteko pa prilepimo v direktorij 'wp-admin': Slika 5.12: Spreminjanje dostopa do skrbniške nadzorne plošče Zdaj do skrbniške nadzorne plošče dostopamo samo iz enega IP naslova. IP naslove lahko omejimo tudi samo na tiste, ki prihajajo iz Slovenije, ali pa dodamo več IP naslovov s katerih želimo dostopati. Pomembno je, da onemogočimo dostop tudi datoteki 'wp-config.php', kjer je centralno vozlišče za našo spletno stran in vsebuje pomembne podatke ter številne druge podrobnosti glede varnosti. Skrijemo jo tako, da dodamo ta del kode v datoteko: Slika 5.13: Onemogočanje dostopa do datoteke 'wp-config.php' 34

46 Dostop do 'wp-login.php' si zagotovimo podobno kot dostop do skrbniške nadzorne plošče s sledečo kodo: Slika 5.14: Dostop do datoteke 'wp-login.php' z našega IP naslova Onemogočiti moramo tudi listanje direktorijev, kar napadalcem omogoča enostaven pregled strani in iskanje šibkih točk za napad. To storimo z enostavnim trikom, tako da direktorije naredimo ne berljive. Vstavimo kodo: Options ALL Indexes S pomočjo.htaccess datoteke, ki jo prilepimo v direktorij /wp-content/uploads in /wp-includes/, preprečujemo tudi eksekucijo PHP datotek, preko katerih se zgodi dosti napadov, ko jih napadalci shranijo na strežniku za kasnejše dostope. [3] Slika 5.15: Preprečevanje eksekucij PHP datotek Zaradi pomembnosti.htaccess datoteke, je še bolj pomembno, da jo ustrezno zaščitimo pred napadalci. To storimo tako, da prilepimo naslednjo kodo: [3] Slika 5.16: Zaščita.htaccess datoteke 35

47 5.8. ZAKRIVANJE DELOVNE RAZLIČICE SISTEMA WordPress nadzorna plošča privzeto uporabnikom omogoča urejanje PHP datotek, kot so datoteke vtičnikov in tem. To je pogosto prvo orodje, ki ga napadalci uporabijo, saj omogoča izvajanje zlonamerne kode. WP Security preprečuje urejanje datotek preko nadzorne plošče, zato je zelo pomembno, da to funkcijo omogočimo. WordPress privzeto pušča sledi na spletnih straneh zaradi sledenja. Vendar to v nekaterih primerih ni najboljša rešitev, predvsem kadar nimamo posodobljene delovne različice sistema. Zato je zelo pomembno, da se prepreči dostop do datotek, kot so readme.html, license.txt in wp-config-sample.php. Te datoteke vsebujejo namreč nekaj ključnih informacij, kot je npr. trenutna različica nameščenega sistema, ki bi še kako zanimala potencialne napadalce. Obstaja veliko načinov kako to storimo in najlažji je prav gotovo preko našega vtičnika WP Security, kjer v razdelku Filesystem Security / Wp File Access preprečimo dostop do teh datotek. Slika 5.11: Zakrivanje delovne različice sistema Lahko pa zakrivanje delovne različice določimo ročno v datoteki functions.php, kjer dodamo naslednji izsek kode: remove_action('wp_head', 'wp_generator'); [24] Ta rešitev deluje in odstrani podatke iz glave naše spletne strani. Vendar pa to ni popolna rešitev, saj so informacije o različici vključene tudi v RSS, tako da moramo dodati še: function my_remove_version_info() { return ''; } add_filter('the_generator', 'my_remove_version_info'); 36

48 Tako bomo uspešno odstranili informacije o delovni različici iz vseh različnih področij na naši strani. Vseeno je pa najbolj priporočeno redno posodabljanje, saj je to edina garancija, da bo naša stran ostala najbolje zaščitena. [24] 5.9. PREDPONE WORDPRESS TABEL Podatkovne baze so kot možgani za celotne spletne strani, saj se vsi podatki shranijo v njih in zaradi tega so tudi zelo priljubljena tarča pri napadalcih. Pošiljatelji nezaželene elektronske pošte in hekerji samodejno prilagajo zlonamerno kodo v obliki SQL injekcij. Veliko uporabnikov sistema pri namestitvi pozablja spremeniti predpono baze podatkov, kar napadalcem omogoča lažje načrtovanje napadov z usmerjanjem na privzeto predpono 'wp_'. Najboljši način za zaščito podatkovne baze je torej sprememba predpone. Pred samimi spremembami si moramo narediti varnostno kopijo podatkovne baze, saj v primeru, če bi šlo kaj narobe ne ostanemo brez baze podatkov. Ko uspešno naredimo varnostno kopijo, gremo v nastavitvah vtičnika WP Security pod Database Security in tam spremenimo predpone. Sistem izpiše trenutno ime predpon, lahko določi novo naključno 6 mestno predpono, ali pa si le to določimo sami. Slika 5.17: Spreminjanje predpon tabel podatkovni bazi Lahko pa to storimo ročno in sicer tako, da v datoteki wp-config.php spremenimo predpono iz wp_ v nekaj drugega, npr. test_: [25] 37

49 $table_prefix = 'wp_test_' Za dokončanje sprememb potrebujemo dostop do urejanja podatkovne baze. Če uporabljamo cpanel gostovanje je to phpmyadmin. Sistem uporablja 11 privzetih tabel, ki jih preimenujemo s sledečimi SQL ukazi: RENAME table `wp_commentmeta` TO `wp_test_commentmeta`; RENAME table `wp_comments` TO `wp_test _comments`; RENAME table `wp_links` TO `wp_test _links`; RENAME table `wp_options` TO `wp_test _options`; RENAME table `wp_postmeta` TO `wp_test_postmeta`; RENAME table `wp_posts` TO `wp_test_posts`; RENAME table `wp_terms` TO `wp_test_terms`; RENAME table `wp_termmeta` TO `wp_test_termmeta`; RENAME table `wp_term_relationships` TO `wp_test_term_relationships`; RENAME table `wp_term_taxonomy` TO `wp_test_term_taxonomy`; RENAME table `wp_usermeta` TO `wp_test_usermeta`; RENAME table `wp_users` TO `wp_test_users`; [25] V primeru, da imamo še kakšne dodatne tabele, preimenujemo tudi njih. Poiskati moramo še 'option_name' polja, ki uporabljajo staro 'wp_' predpono in jo zamenjati z 'wp_test_'. Pri iskanju si pomagamo s sledečim ukazom: SELECT * FROM `wp_test_options` WHERE `option_name` LIKE '%wp_%' Ko to uredimo, ostanejo še stare predpone 'UserMeta' tabel, ki jih podobno kot prej poiščemo s pomočjo spodnjega ukaza in jih zamenjamo z novo predpono. [25] SELECT * FROM `wp_test_usermeta` WHERE `meta_key` LIKE '%wp_%' S pomočjo tega postopka spremenimo predpone tabel in spletno stran lahko preizkusimo. [25] SPREMLJANJE SPREMEMB DATOTEK NA STREŽNIKU Če je možnost napadalci vstavijo škodljivo kodo ali datoteko v naš sistem, ki jo nato uporabljajo za izvajanje zlonamernih dejanj na naši stani. Zato je pomembno biti obveščen o kakršnih koli spremembah na našem strežniku, da bi hitro in učinkovito preprečili nastalo škodo. Na splošno 38

50 sam sistem in vtičniki zelo redko spreminjajo datoteke kot so.php ali.js in ko se to zgodi je pomembno, da smo seznanjeni o spremembah, katere datoteke so bile poškodovane. Funkcija 'File Change Detection Feature' obvešča o teh spremembah, na našem strežniku, vključno z dodatkom za brisanje teh datotek. Funkcija omogoča tudi samodejni ali ročni pregled strežnika in izključitev pogosto se spreminjajočih določenih datotek ali map iz pregleda, katerim je to del normalnega delovanja (npr. log datoteke in pred pomnjene datoteke vtičnikov). Slika 5.13: Omogočanje spremljanja sprememb datotek na strežniku 'MALWARE' PREGLEDOVANJE Beseda Malware predstavlja zlonamerno programsko opremo. To so lahko trojanski konji, oglaševalci, črvi, vohunski programi in katera koli druga nezaželena koda, ki jo napadalec želi injicirati v našo spletno stran. Pogosto, ko je zlonamerna programska koda vstavljena v spletno stran sploh ne opazimo nobenih vizualnih sprememb, lahko pa ima velik vpliv na uvrstitve v spletnih iskalnikih. To pa zato, ker imajo roboti in pajki iskalnikov, kot je Google sposobnost za odkrivanje škodljive programske opreme, ko se indeksirajo na spletni strani in stran dajo na črno listo, kar posledično vpliva na uvrstitve v iskalniku. Zaradi nenehnih sprememb in kompleksne narave zlonamerne programske opreme je pregledovanje najbolje izvajati izven lastnega strežnika. To zunanje pregledovanje izvajajo pri WP Security, če se nanj naročimo. O vseh nevarnostih opozarjajo preko elektronske pošte ter nudijo nasvete za odpravljanje le teh. 39

51 5.12. NASTAVITEV POŽARNEGA ZIDU Funkcionalnosti za zaščito spletne strani požarni zid doseže z vstavitvijo posebne kode v.htaccess datoteko. To nima nobenega vpliva na splošno funkcionalnost spletne strani, vendar je priporočljivo prej narediti varnostno kopijo datoteke. Z vključitvijo 'Basic Firewall settings' oz. tako imenovane osnovne zaščite, zaščitimo nepooblaščen dostop do.htaccess datoteke, onemogočimo podpis strežnika, določimo zgornjo mejo pri nalaganju datotek na 10MB, zaščitimo dostop do wp-config.php. Priporočljivo je vključiti še dodatno požarno zaščito 'Additional Firewall rules', po potrebi pa v 'Custom rules' tudi sami dodajamo pravila in direktive, vendar samo v primeru, da vemo kaj delamo. Slika 5.18: Omogočanje osnovne zaščite požarnega zidu XMLRPC & PINGBACK RANLJIVOSTI ZAŠČITE Ta nastavitev onemogoči dostop do xmlrpc.php datoteke, ki je odgovorna za funkcionalnosti XML-RPC v WordPress-u. Napadalci ranljivosti teh datotek izkoriščajo za DoS napade, pregledovanje portov v notranjih omrežjih, da bi dobili informacije o gostitelju in za vdiranje v usmerjevalnike. Poleg varnostne koristi ta funkcija zmanjšuje obremenitve na strežniku, še posebej tam kjer je veliko nezaželenega prometa. Blokiramo tudi zunanji dostop do debug.log datoteke, do katere pa lahko dostopamo prek FTP odjemalcev. Slika 5.19: Vklop XMLRPC in Pingback zaščite 40

52 G ČRNI SEZNAM IN NASTAVITVE Funkcija omogoča, da aktiviramo pravila 6G zaščite požarnega zidu, ki jih oblikujejo pri Perishable Press. To je preprost in prilagodljiv črni seznam, ki pomaga zmanjšati število zahtev zlonamernih URL-jev, ki prizadenejo spletne strani in blokira prepovedane znake, ki se običajno izkoriščajo pri napadih. Slika 5.20: Aktiviranje 5G in 6G pravil BLOKIRANJE LAŽNIH ROBOTKOV Robotki so del programske opreme, ki teče na internetu in opravlja samodejne naloge, kot je indeksiranje spletnih strani itd. Vendar vsi robotki niso dobri, saj jih je veliko lažnih, ki oponašajo legitimne, kot so Google robotki, v resnici pa nimajo nobenih opravkov z njimi. Funkcija lastnikom omogoča, da imajo večji nadzor nad tem, kateri robotki dostopajo do njihovih spletnih strani. Slika 5.21: Blokiranje lažnih robotkov PREPREČEVANJE 'HOTLINK' Hotlink povezava je, ko nekdo prikaže vsebino, ki se nahaja na našem strežniku, na svoji spletni strani. Glede na to, da je vsebina prikazana na strani druge osebe, lahko to povzroči uhajanje pasovne širine in virov na našem strežniku. Funkcija 'Prevent Hotlinks' preprečuje neposreden 'hotlinking' iz naše spletne strani s pomočjo nekaterih direktiv v.htaccess datoteki. 41

53 Slika 5.22: Preprečevanje 'hotlink' ZAZNAVANJE NAPAKE 404 Napaka 404 ali 'strani ni bilo mogoče' se pojavi, ko nekdo poskuša dostopati do neobstoječe strani na spletni strani. V večini primerov je to zaradi napačno vnesenega URL naslova, ali uporabe stare povezave, ki več ne obstaja. Dogaja se pa, da pride do teh ponavljajočih se napak zelo pogosto iz istega IP naslova, kadar napadalci poskušajo odkriti in dostopati do določenih strani iz zloveščih razlogov. Ta funkcija omogoča spremljanje vseh '404' dogodkov, ki se zgodijo na spletni strani, poleg tega pa daje možnost blokiranja IP naslovov potencialnih napadalcev. Slika 5.23: Zaznavanje napake PREPREČITEV SPAM KOMENTARJEV Funkcija omogoča samodejno in trajno blokiranje IP naslovov, ki so presegle določeno število komentarjev, ki so označeni kot SPAM. Komentarje se običajno kot SPAM določa z Akismet vtičnikom ali pa so ročno določeni s strani skrbnika sistema. Sistem prikazuje seznam IP naslovov uporabnikov ali robotov, ki so pustili SPAM komentarje, katere blokiramo tako, da jih dodamo na črno listo. Velik del komentarjev v blogih je posledica samodejnih mehanizmov in ne nujno ljudi, zato lahko število SPAM komentarjev občutno zmanjšamo s pomočjo Captcha polja, ki pred oddajo komentarja preveri identiteto avtorja. 42

54 Slika 5.24: Preprečevanje SPAM komentarjev UPORABA ORIGINALNIH VTIČNIKOV IN TEM Iz varnostnih razlogov je pomembno, da uporabljamo samo preizkušene originalne vtičnike in teme od uradnih ponudnikov. Čeprav lahko nekaj, za kar je avtor zahteval plačilo, dobimo popolnoma zastonj, je to slaba ideja, ker po navadi ti plačljivi vtičniki in teme, ki si jih zastonj prenašamo iz nezakonitih spletnih strani vsebujejo zlonamerno kodo. In ne samo, da je to ustavno nezakonito, napadalce lahko z vstavljeno kodo neposredno pripeljemo v ozadje naše spletne strani in si povzročimo številne preglavice ali izpad spletne strani, samo za to, da smo prihranili nekaj denarja. [3] Uporaba originalnih vtičnikov sicer sama po sebi ne garantira, da je naša stran varna, je pa odziv, če se ugotovi morebitne varnostne luknje vsekakor hitrejši, saj bodo razvijalci hitro odreagirali in poskušali zadevo odpraviti. Pred prenosom vtičnika ali teme je pomembno preveriti splošno oceno zadovoljstva ostalih uporabnikov, število prenosov, zgodovino izdelkov avtorja, posodobitve in združljivost z najnovejšo različico sistema, saj le tako lahko naredimo najboljšo izbiro. [6] POMEMBNOST POSODOBITEV O pomembnosti posodobitev je v diplomski nalogi že veliko napisanega. Vedno, ko izide nova različica programske opreme je potrebno sistem, vtičnike ali temo takoj posodobiti, saj bomo le tako zagotovili optimalno delovanje in odpravili varnostne ranljivosti. Če uporabljamo starejšo različico programske opreme, so vse varnostne pomanjkljivosti v različici, ki jo uporabljamo znane javnosti. Te informacije imajo tudi potencialni napadalci in jih lahko uporabijo za napad na našo spletno stran. Tudi same posodobitve naše spletne strani morda ne bodo dovolj, če tega ne bomo izvajali redno. Zato je v teh primerih za tiste, ki temu ne 43

55 posvečajo dovolj časa in želijo stran upravljati po liniji najmanjšega odpora, vendar želijo imeti varno spletno mesto, najboljša izbira - samodejno izvajanje posodobitev. WordPress od različice 3.7. dalje opravlja manjše posodobitve samodejno, vendar je tiste večje vseeno potrebno prej odobriti. Z vstavljanjem nekaj kode v wp-config.php datoteko, pa lahko tudi te večje posodobitve sistem namesti samodejno, brez potrebe po naši odobritvi. [3] Omogočanje vseh samodejnih posodobitev sistema: define( 'WP_AUTO_UPDATE_CORE', true ); Pri tem velja opozorilo, da bi samodejne posodobitve lahko povzročile nevšečnosti ali celo izpad naše spletne strani, še posebej, če uporabljamo vtičnike ali teme, ki niso združljive z najnovejšo različico sistema. Značilno je, da vtičnike in teme posodabljamo ročno, saj le te prihajajo različno za vsakega posebej ob različnem času. Slika 5.25: Ročno posodabljanje vtičnikov 44

56 Slika 5.26: Ročno posodabljanje tem Vendar lahko tudi tu podobno kot pri samodejnem posodabljanju sistema vključimo samodejne posodobitve le teh, brez naših odobritev. To storimo tako da v datoteko wp-config.php vstavimo kodo: Omogočanje samodejnih posodobitev vtičnikov: add_filter( 'auto_update_plugin', ' return_true' ); Omogočanje samodejnih posodobitev tem: add_filter( 'auto_update_theme', ' return_true' ); [3] Tako smo nastavili samodejne posodobitve sistema, vtičnikov in tem, brez da bi pred samo namestitvijo morali le te odobriti VARNOSTNE KOPIJE Ko gre za spletno stran ali blog lahko pride do številnih zapletov, zato je poleg varnostnih nastavitev pomembno izdelovati varnostne kopije. Nobena spletna stran ni varna pred napadalci, saj če je nekdo zelo motiviran, da vdre v našo spletno stran, bo vztrajal pri tem dokler ne bo uspešen. Varnostne kopije lahko izdelujemo ročno ali samodejno s pomočjo vtičnikov ali cpanel nadzorne plošče. 45

57 Tudi naš vtičnik WP Security omogoča izdelovanje varnostnih kopij podatkovnih baz v zavihku 'Database Security'. Za ročno izdelavo varnostne kopije podatkovne baze izberemo 'Create DB backup now', sistem ustvari varnostno kopijo, ki jo najdemo na strežniku v mapi 'public_html'. Slika 5.27: Kreiranje varnostne kopije podatkovne baze Pomembno je, da si nastavimo tudi samodejno izdelovanje varnostnih kopij v določenem časovnem intervalu in koliko zadnjih različic le teh bomo obdržali, saj bomo le tako vedno imeli na voljo shranjeno varno kopijo, ki jo po potrebi lahko kadarkoli obnovimo. Slika 5.28: Samodejno kreiranje varnostne kopije podatkovne baze Obstaja še veliko številko različnih vtičnikov, ki omogočajo izdelovanje podatkovnih baz z različnimi opcijami shranjevanja kopij v oblak itd.. Tudi v cpanel nadzorni plošči strežnika imamo različne aplikacije za izdelovanje varnostnih kopij podatkovnih baz, ena takih je 'R1Soft Restore Backups', ki vsakodnevno samodejno 46

58 shranjuje varnostne kopije. Nastavili smo tudi, da ob tem hrani zadnjih 5 shranjenih varnostnih kopij v primeru, da bomo morali sistem obnoviti na starejšo varno različico. Slika 5.29: Samodejno kreiranje varnostne kopije podatkovne baze s pomočjo cpanel 6. SPREMLJANJE NAPREDKA Da bi spremljali napredek pri zagotavljanju varnosti naše spletne strani urisk.eu smo jo na začetku pregledali z našim vtičnikom WP Security in dobili 15 od možnih 470 točk. Slika 6.1: Merilnik zaščite sistema na začetku 47

59 Teh začetnih 15 točk smo dobili, ker smo ob namestitvi sistema WordPress spremenili uporabniško ime iz privzete predloge 'admin' oz. 'administrator', ki je potencialnim napadalcev še tako znana in za skrbnike spletnih strani še tako nevarna. Slika 6.2: Razmerje zaščite na začetku Po navadi se šele ob tako skrb vzbujajočih podatkih lastniki spletnih strani zavemo, kako zelo je ogrožena naša spletna stran in koliko lahko tudi sami skrbniki naredimo pri izboljšanju varnosti ter preprečitvi nepooblaščenih dostopov napadalcem. Zato smo skozi celotno raziskavo pri pisanju diplomske naloge opisovali prav to, postopek kako lahko sami izboljšamo varnost naših WordPress spletnih strani in sproti preverjali ali naše trditve držijo. Tako smo v drugem koraku spremenili url naslov prijavne strani v skrbniško nadzorno ploščo iz standardne urisk.eu/wp-admin oz urisk.eu/wp-login.php na drugi, samo nam skrbnikom znan url naslov. Po tem postopku spremembe smo z vtičnikom WP Security ponovno preverili spletno stran in že dobili boljši rezultat za 10 točk. 48

60 Slika 6.3: Merilni zaščite sistema po prvem koraku Pri tem sistem vedno prikaže tudi v kolikšni meri je kateri dejavnik pripomogel k izboljšanju rezultatov. Slika 6.4: Razmerje zaščite po prvem koraku Da je naš pristop pravi in deluje tudi v praksi, smo se še dodatno prepričali tako, da smo se po spremenjenem URL naslovu za prijavo v skrbniško nadzorno ploščo poskušali prijaviti tudi s privzetima sistemskima URL naslovoma za prijavo. 49

61 Slika 6.5: Nepravilen URL naslov za prijavo v sistem Pri tem poskusu sistem takoj izpiše, da skrbniška prijavna stran ni na voljo in potencialni napadalci tako nimajo dostopa do nje, kjer bi lahko poskušali z 'brute force' napadi in kombinacijami uporabniških imen in gesel za prijavo v skrbniško nadzorno ploščo. V drugem poskusu smo želeli dostopati do skrbniške prijavne strani preko drugega sistemskega privzetega URL naslova za prijavo: urisk.eu/wp-login.php Slika 6.6: Drugi nepravilen URL za prijavo v sistem Tudi v tem primeru do skrbniške prijavne strani nismo mogli dostopati. Za dokončno potrditev, da je bil naš postopek pravilen in delujoč, smo se še poskušali prijaviti preko novega spremenjenega URL naslova. 50

62 Slika 6.7: Sistemsko prijavno okno Tokrat je sistem dovolil dostopati do skrbniške prijavne strani, kar je hkrati potrdilo, da je naš postopek pravilen in delujoč tudi v praksi. Tako smo po seznamu dela, ki ga opisujemo skozi celotno raziskavo sproti dodajali ukaze in spreminjali nastavitve v varnostnem vtičniku ter samem WordPress sistemu. Ker ima lahko samo spreminjanje sistemskih datotek negativen vpliv na spletno stran oz. lahko povzroči celo izpad le te, smo sproti preverjali delovanje naše spletne strani in z vtičnikom preverjali ali pri zagotavljanju varnosti res napredujemo. Pri tem velja še enkrat dodati, da moramo pred vsakim spreminjanjem nastavitev oz. sistemskih datotek narediti varnostno kopijo datotek, da jih v primeru napak ali določenih zapletov lahko obnovimo in si preprečimo dodatne nevšečnosti. Po opravljenem postopku skoraj štiridesetih ukrepov, ki so pomagali pri zagotavljanju varnosti za našo spletno stran smo na dokončnem preverjanju dosegli 455 od možnih 470 točk. 51

63 Slika 6.8: Končna meritev zaščite sistema Slika 6.3: Končno razmerje dejavnikov zagotavljanja zaščite Kot je že takoj razvidno iz podatkov, je za popoln rezultat zmanjkalo 15 točk, ampak v tem primeru to ni zaradi nepopolnih nastavitev, ampak ima vtičnik pri možnostih preprečevanja 'brute force' napadov na voljo dve funkciji in sicer 'Rename login page' ali 'Cookie Based Brute Force Prevention' pri kateri lahko izberemo le eno in tako izgubimo točke drugega, na kar sam vtičnik tudi vnaprej opozori. Slika 6.4: Opozorilo pri izbiri 'brute force' zaščite 52

64 Po vseh opravljenih smernicah in posegih, ki smo si jih začrtali pri načrtovanju rešitev za zagotavljanje varnosti naše spletne strani, so rezultati izjemni. Spremljamo lahko neuspešne poskuse prijave v skrbniško nadzorno ploščo. Slika 6.5: Seznam neuspešnih prijav v sistem V primeru, da opazimo, da kateri izmed neuspešno prijavljenih uporabnikov nismo bili mi, ga lahko takoj blokiramo, če ga sistem že samodejno ne doda na črno listo. Spremljamo lahko tudi trenutno prijavljene uporabnike v skrbniško nadzorno ploščo. Slika 6.6: Trenutno prijavljeni uporabniki V primeru naše odsotnosti sistem obvešča o zadnjih uspešnih prijavah v sistem. Tako lahko spremljamo, kateri uporabniki so se nazadnje uspešno prijavili v skrbniško nadzorno ploščo. 53

65 Slika 6.7: Zadnjih 5 uspešnih prijav v sistem Prav tako pa tudi trajanje sej njihovih prijav. Slika 6.8: Trajanje sej prijav Opozorjeni smo tudi na vsako spremembo datotek, ki so se zgodile v zadnjem času. Slika 6.9: Spremembe datotek na strežniku 54

66 O vseh spremembah smo obveščeni tudi preko hitrega okenca na domači strani skrbniške nadzorne plošče, tako da nobeno obvestilo o spremembi ne more ostati neopaženo. Slika 6.10: Obvestila o spremembah na skrbniški domači strani Tako imamo popoln nadzor nad spremembami v datotekah in nad uporabniki, ki so bili prijavljeni v sam sistem. Kot je razvidno iz podatkov o neuspešnih prijavah, le ti povedo, da potencialni napadalci niso uspeli priti niti do prijavne strani, saj so vse neuspešne prijave iz naših IP naslovov v namene testiranja. Tudi do sprememb v datotekah ne prihaja, razen v tistih, ki so kot posledica delovanja vtičnikov. Našo spletno stran smo pregledali tudi s pomočjo zunanjih sistemov za preverjanje ranljivosti spletnih strani. Eden izmed takih je 'Sucuri Website Malware and Security Scanner' dostopen na: ki ni odkril nobenih potencialnih nevarnosti na naši spletni strani. 55

67 Slika 6.11: Rezultat 'Sucuri SiteCheck' pregledovanj Stran smo še pregledali z 'WPMUDEV Security Scan', dostopnim na in tudi tu dobili odlične rezultate, saj sistem ni opozoril na nobene resne varnostne nepravilnosti oz. pomanjkljivosti, prav tako tudi ne na tiste, ki bi predstavljale manj resne varnostne grožnje. Slika 6.12: Rezultat 'WPMUDEV Security' pregledovanj 56

68 Tabela 6.1: Razvrstitev varnostnih ukrepov v skupine pogostih ranljivosti po OWASP Vrivanje Napaka pri overjanju in upravljanju sej Podtikanje skript Nezavarovan neposreden dostop do objektov Napačne varnostne nastavitve Izpostavljenost občutljivih podatkov Manjkajoč funkcijski nivo za dostopnost Podtikanje zahtevkov Uporaba komponent z znanimi ranljivostmi Nepreverjene preusmeritve in posredovanja Dobro strežniško gostovanje Omejitev števila napačnih prijav Prikrivanje skrbniške prijavne strani Predpone WP tabel Varnostno kopiranje podatkovne baze HTTPS protokol Uničenje sej po odjavi Uporaba piškotkov Določanje pravic datotekam na strežniku Spremljanje sprememb datotek na strežniku KSES knjižnica Malware pregledovanje Nastavitve prikrojenih povezav Določanje pravic datotekam na strežniku XMLRPC in PINGBACK zaščita Blokiranje lažnih robotkov Nastavitev požarnega zidu Določanje pravic datotekam na strežniku 6G črni seznam Sistem za preverjanje močnih gesel HTTPS protokol Zakrivanje delovne različice sistema Datoteka HTACCESS Zaznavanje napake 404 Dodeljevanje vlog uporabnikom HTTPS protokol WordPress API jedro 6G črni seznam Plupload knjižnica Uporaba originalnih vtičnikov in tem Pomembnost posodobitev Preprečevanje Hotlink Wordpress API jedro Preprečitev SPAM 57

69 7. VTIČNIKI ZA ZAGOTAVLJANJE VARNOSTI Kot smo že predstavili v diplomskem delu, si pri zagotavljanju varnosti WordPress sistemov poleg lastnih posegov v kodo, hitro, enostavno in učinkovito pomagamo z varnostnimi vtičniki, saj so njihovi avtorji vključili večino ukrepov za izboljšanje varnosti. Obstaja veliko število različnih vtičnikov za zagotavljanje varnosti, zato se je zelo težko odločiti kateri je najboljši za naše potrebe. Mi smo se glede na tip naše spletne strani in njene funkcionalnosti odločili za 'All in one WordPress security', predstavili bomo pa še nekaj ostalih najpopularnejših in najboljših vtičnikov za zagotavljanje varnosti WORDFENCE Prenos: Slika 7.1: Vtičnik Wordfence Security Eden najbolj priljubljenih WordPress varnostnih vtičnikov z več kot 22. milijoni prenosov. Vtičnik preverja okužbe spletnih strani z zlonamerno programsko opremo, tako da pregleda celotno jedro sistema ter vse vtičnike in teme. Ob kakršnikoli okužbi sistem o tem obvesti na različne načine. S pomočjo Falcom sistema za pred pomnjenje podatkov zelo pohitri našo spletno stran. Vtičnik je v osnovi brezplačen, za dodatne napredne funkcije pa je potrebno plačilo. Poleg preverjanja zlonamerne programske opreme ta vtičnik ponuja zaščito s požarnim zidom, blokiranje 'brute force' napadov, zagotavlja varnost pri prijavi v sistem, monitoring spremljanje prometa, podpira 'multi-site' spletne strani in številne druge varnostne nastavitve. [10] 58

70 7.2. ITHEMES SECURITY Prenos: Slika 7.2: Vtičnik ithemes Security Še en priljubljen varnostni vtičnik, ki ponuja več kot 30 načinov za zagotavljanje varnosti in zaščite spletne strani. Z enim samim klikom lahko ustavimo avtomatizirane napade, prav tako pa odpravlja različne varnostne luknje v naših spletnih straneh. Vtičnik sledi dejavnostim registriranih uporabnikov in dodaja dva faktorja avtorizacije, ureja nastavitve uvoza in izvoza, skrbi za skeniranje zlonamerne programske opreme, uporabnika sili v uporabo varnih gesel, uporabo SSL certifikata in določanje dovoljenj datotekam. Vtičnik vključuje tudi Google recaptcha za preprečevanje nezaželenih komentarjev na naši spletni strani. Na voljo je v brezplačni izdaji ali v dodatni plačljivi premijski različici, ki doda številne različne varnostne funkcionalnosti in podporo avtorjev. [10] 7.3. SUCURI SECURITY Prenos: Slika 7.3: Vtičnik Sucuri Security 59

71 Je varnostni vtičnik priljubljene družbe za zagotavljanje varnosti spletnim stranem Sucuri. Ponuja različne varnostne funkcije kot so revidiranje varnostne dejavnosti, spremljanje integritete datotek, 'malware' pregledovanje, črne liste in zagotavlja požarni zid spletnim stranem. Vključuje različne sisteme, kot so Google Safe Browsing, Sucuri Labs, Norton, McAfee Site Advisor za preverjanje spletnih strani. Vtičnik ščiti pred DoS in 'brute force' napadi, vodi dnevnik o vseh dejavnostih na strežniku, ki ga hrani v Sucuri oblaku. To pomeni, da v primeru da napadalec obide varnostne ukrepe in napade spletno stran bodo varnostni dnevniki varno shranjeni za kasnejše izvajanje ukrepov. Ob doplačilu dobimo premijske storitve in svetovanje Sucuri, ki jih vodi ekipa strokovnjakov na področju spletne varnosti. [10] 7.4. BULLETPROOF SECURITY Prenos: Slika 7.4: Vtičnik BulletProof Security Vtičnik ponuja hitro in enostavno nastavitev vmesnika v le štirih korakih. Vtičnik praktično samo aktiviramo, ta pa bo poskrbel za varnost spletne strani. Vtičnik dodaja požarni zid, skrbi za varnost podatkovne baze, varnost pri prijavi z omejevanjem števila neuspešnih poskusov prijave, blokiranjem lažnega prometa in blokiranjem zlonamernih uporabnikov. Prav tako pregleduje jedro sistema, vtičnike in teme ter optimizira delovanje naše spletne strani z dodajanjem pred pomnjenja. Spletno stran ščiti pred raznimi ranljivostmi vključno z XSS, RFI, CRLF, CSRF, Base64, Sql injekcijami in mnogimi drugimi. Avtorji skrbijo za redno posodabljanje, tako da bo naša spletna vedno zaščitena. [10] 60

Izdelava spletne strani z uporabo programske opreme kot storitve

Izdelava spletne strani z uporabo programske opreme kot storitve Univerza v Ljubljani Fakulteta za elektrotehniko Luka Šimšić Izdelava spletne strani z uporabo programske opreme kot storitve Diplomsko delo visokošolskega strokovnega študija prve stopnje Mentor: doc.

More information

Sistem za sledenje in analizo uporabe računalniških aplikacij

Sistem za sledenje in analizo uporabe računalniških aplikacij Univerza v Ljubljani Fakulteta za računalništvo in informatiko Dejan Mesar Sistem za sledenje in analizo uporabe računalniških aplikacij DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Mentor: izr. prof. dr.

More information

R V P 2 Predavanje 05

R V P 2 Predavanje 05 R V P 2 Predavanje 05 Kreiranje programskih modulov - Scripts RVP2 Kreiranje programskih modulov 1/44 Programski moduli -Scripts Možnosti: Omogočajo: Izvajanje ukazov Izvajanje logičnih operacij Ob določenih

More information

Reševanje problemov in algoritmi

Reševanje problemov in algoritmi Reševanje problemov in algoritmi Vhod Algoritem Izhod Kaj bomo spoznali Zgodovina algoritmov. Primeri algoritmov. Algoritmi in programi. Kaj je algoritem? Algoritem je postopek, kako korak za korakom rešimo

More information

1. Odgovorni za podatke. 2. Nadzornik za varstvo podatkov. 3. Obdelava podatkov

1. Odgovorni za podatke. 2. Nadzornik za varstvo podatkov. 3. Obdelava podatkov Varstvo vaših osebnih podatkov nam je posebno pomembno. Vaše podatke obdelujemo izključno na osnovi zakonskih predpisov in ob upoštevanju ustreznih predpisov o varstvu podatkov. V tej izjavi o varstvu

More information

Preverjanje optimiziranosti spletnih strani

Preverjanje optimiziranosti spletnih strani UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Boštjan Hozjan Preverjanje optimiziranosti spletnih strani DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Ljubljana, 2016 UNIVERZA V LJUBLJANI

More information

Verodostojnost in kvaliteta spletno dostopnih informacij

Verodostojnost in kvaliteta spletno dostopnih informacij Univerza v Ljubljani Filozofska fakulteta Oddelek za bibliotekarstvo, informacijsko znanost in knjigarstvo Verodostojnost in kvaliteta spletno dostopnih informacij Mentor: dr. Jure Dimec Lea Očko Katja

More information

Uporabniški portal za upravljanje virov v oblaku

Uporabniški portal za upravljanje virov v oblaku Univerza v Ljubljani Fakulteta za računalništvo in informatiko Matic Lesjak Uporabniški portal za upravljanje virov v oblaku DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

Metode rangiranja spletnih strani

Metode rangiranja spletnih strani UNIVERZA V LJUBLJANI FAKULTETA ZA DRUŽBENE VEDE David Primc Metode rangiranja spletnih strani Diplomsko delo Ljubljana, 2015 UNIVERZA V LJUBLJANI FAKULTETA ZA DRUŽBENE VEDE David Primc Mentor: doc. dr.

More information

PRIMERJALNA ANALIZA E TRGOVIN

PRIMERJALNA ANALIZA E TRGOVIN UNIVERZA V MARIBORU EKONOMSKO-POSLOVNA FAKULTETA, MARIBOR DELO DIPLOMSKEGA SEMINARJA PRIMERJALNA ANALIZA E TRGOVIN COMPARATIVE ANALYSIS OF THE ONLINE SHOPS Kandidatka: Monika Mravljak Študentka rednega

More information

Miha Strel. Integracija ogrodja Medius Vaadin Common na poslovnih portalih

Miha Strel. Integracija ogrodja Medius Vaadin Common na poslovnih portalih UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Miha Strel Integracija ogrodja Medius Vaadin Common na poslovnih portalih DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Mentor: prof. dr. Marjan

More information

Obisk iz rezultatov iskanj na iskalniku Google

Obisk iz rezultatov iskanj na iskalniku Google Univerza v Ljubljani Fakulteta za računalništvo in informatiko Uroš Okorn Obisk iz rezultatov iskanj na iskalniku Google DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

Povezljivost sistema ERP SAP z mobilnimi napravami

Povezljivost sistema ERP SAP z mobilnimi napravami Univerza v Ljubljani Fakulteta za računalništvo in informatiko Leon Oven Povezljivost sistema ERP SAP z mobilnimi napravami DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO IN

More information

OPTIMIZACIJA SPLETNEGA MESTA

OPTIMIZACIJA SPLETNEGA MESTA UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO OPTIMIZACIJA SPLETNEGA MESTA Ljubljana, maj 2016 ROK BRITOVŠEK IZJAVA O AVTORSTVU Podpisani Rok Britovšek, študent Ekonomske fakultete Univerze v

More information

Razvoj spletnega slovarja slovenskega znakovnega jezika

Razvoj spletnega slovarja slovenskega znakovnega jezika Univerza v Ljubljani Fakulteta za računalništvo in informatiko Luka Cempre Razvoj spletnega slovarja slovenskega znakovnega jezika DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJ RAČUNALNIŠTVA IN INFORMATIKE Mentor:

More information

ANALIZA OBISKA V SPLETNI TRGOVINI S POMOČJO PODATKOVNEGA SKLADIŠČA

ANALIZA OBISKA V SPLETNI TRGOVINI S POMOČJO PODATKOVNEGA SKLADIŠČA Univerza v Ljubljani Fakulteta za računalništvo in informatiko Andrej Remškar ANALIZA OBISKA V SPLETNI TRGOVINI S POMOČJO PODATKOVNEGA SKLADIŠČA Diplomsko delo Mentor: prof. dr. Viljan Mahnič Ljubljana,

More information

ANALIZA SPLETNIH STRANI IN NJIHOVA UPORABNOST

ANALIZA SPLETNIH STRANI IN NJIHOVA UPORABNOST UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO ANALIZA SPLETNIH STRANI IN NJIHOVA UPORABNOST Ljubljana, september 2004 DARJA PLEVNIK IZJAVA Študentka Darja Plevnik izjavljam, da sem avtorica tega

More information

UNIVERZA V MARIBORU EKONOMSKO-POSLOVNA FAKULTETA, MARIBOR

UNIVERZA V MARIBORU EKONOMSKO-POSLOVNA FAKULTETA, MARIBOR UNIVERZA V MARIBORU EKONOMSKO-POSLOVNA FAKULTETA, MARIBOR MAGISTRSKO DELO POSLOVNI POTENCIALI SPLETNIH ISKALNIKOV NA PODROČJU MARKETINGA BUSINESS POTENTIAL OF INTERNET SEARCH ENGINES IN MARKETING Študent:

More information

Platforma Trafika v HTML5

Platforma Trafika v HTML5 Univerza v Ljubljani Fakulteta za računalništvo in informatiko Aleksander Gregorka Platforma Trafika v HTML5 DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO IN INFORMATIKA

More information

RIS2000 merjenje spletne obiskanosti

RIS2000 merjenje spletne obiskanosti CMI Center za metodologijo in informatiko FDV Fakulteta za družbene vede, Univerza v Ljubljani http:// www.ris.org email: info@ris.org RIS2000 merjenje spletne obiskanosti Ljubljana, 2001 1 POVZETEK V

More information

SEO kot model integriranega digitalnega trženja z uporabo sodobnih spletnih tehnologij

SEO kot model integriranega digitalnega trženja z uporabo sodobnih spletnih tehnologij UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Danijela Erenda SEO kot model integriranega digitalnega trženja z uporabo sodobnih spletnih tehnologij DIPLOMSKO DELO NA VISOKOŠOLSKEM STROKOVNEM

More information

DOSTOPNOST IN UPORABNOST SPLETNIH STRANI

DOSTOPNOST IN UPORABNOST SPLETNIH STRANI UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO JADRANKA SMILJIĆ DOSTOPNOST IN UPORABNOST SPLETNIH STRANI DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJ Mentor: DR. JANEZ DEMŠAR Ljubljana,

More information

Odzivno spletno oblikovanje

Odzivno spletno oblikovanje Univerza v Ljubljani Fakulteta za računalništvo in informatiko Matjaž Lovše Odzivno spletno oblikovanje DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO IN INFORMATIKA

More information

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO. Gorazd Kovačič. Avtomatsko vizualno testiranje spletnih strani

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO. Gorazd Kovačič. Avtomatsko vizualno testiranje spletnih strani UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Gorazd Kovačič Avtomatsko vizualno testiranje spletnih strani DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Mentor: izr. prof. dr. Viljan Mahnič

More information

Optimizacija delovanja in povečanje obiska na spletni strani

Optimizacija delovanja in povečanje obiska na spletni strani UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Jure Adlešič Optimizacija delovanja in povečanje obiska na spletni strani DIPLOMSKO DELO NA VISOKOŠOLSKEM STROKOVNEM ŠTUDIJU Mentor: doc.

More information

Projekt RIS Analiza obiskanosti in profil uporabnikov

Projekt RIS Analiza obiskanosti in profil uporabnikov UNIVERZA V LJUBLJANI FAKULTETA ZA DRUŽBENE VEDE Matic Urbanc Projekt RIS Analiza obiskanosti in profil uporabnikov Diplomsko delo Ljubljana, 2013 UNIVERZA V LJUBLJANI FAKULTETA ZA DRUŽBENE VEDE Matic Urbanc

More information

Analogna elektronska vezja. Uvodna vaja

Analogna elektronska vezja. Uvodna vaja Analogna elektronska vezja Uvodna vaja Povzetek Namen uvodne vaje je, da študenti spoznajo orodja, ki jih bojo uporabljali pri laboratorijskih vajah predmeta Analogna elektronska vezja in sicer: podatkovne

More information

Srđan Mahmutović s.p., Osenjakova 14, 1000 Ljubljana Davčna št: SI TRR: w w w. s p l e t n i k.

Srđan Mahmutović s.p., Osenjakova 14, 1000 Ljubljana Davčna št: SI TRR: w w w. s p l e t n i k. w w w. s p l e t n i k. s i S t r a n 1 w w w. s p l e t n i k. s i S t r a n 2 UVOD Pozdravljeni, Prišel je čas, ko vas lahko spet razveselimo z novim e-priročnikom, ki je dejansko skupek člankov in nasvetov

More information

PRIMERJALNA ANALIZA SPLETNIH STRANI BANK NA PODROČJU POSLOVANJA S PREBIVALSTVOM COMPARATIVE ANALYSIS OF WEB PAGES ON FIELD OF BUSINESS WITH POPULATION

PRIMERJALNA ANALIZA SPLETNIH STRANI BANK NA PODROČJU POSLOVANJA S PREBIVALSTVOM COMPARATIVE ANALYSIS OF WEB PAGES ON FIELD OF BUSINESS WITH POPULATION UNIVERZA V MARIBORU EKONOMSKO - POSLOVNA FAKULTETA MARIBOR DIPLOMSKO DELO PRIMERJALNA ANALIZA SPLETNIH STRANI BANK NA PODROČJU POSLOVANJA S PREBIVALSTVOM COMPARATIVE ANALYSIS OF WEB PAGES ON FIELD OF BUSINESS

More information

Priloga: koledar tečajev in CPLS tečajev. SharePoint 2007 Bootcamp Delavnica za»urednike«delavnica za razvijalce

Priloga: koledar tečajev in CPLS tečajev. SharePoint 2007 Bootcamp Delavnica za»urednike«delavnica za razvijalce K O M P A S X n e t - Z N A N J E Z A J U T R I Ž E D A N E S Številka 3, september 2008 Letnik XI ISSN: 1408-7863 SharePoint-nameščanje novih rešitev SharePoint konferenca v Sloveniji Strežnik za manjša

More information

Ministrstvo za infrastrukturo in prostor Geodetska uprava Republike Slovenije TOPO & INSPIRE WORKSHOP

Ministrstvo za infrastrukturo in prostor Geodetska uprava Republike Slovenije TOPO & INSPIRE WORKSHOP Ministrstvo za infrastrukturo in prostor Geodetska uprava Republike Slovenije TOPO & INSPIRE WORKSHOP Ljubljana, 5. februar 2014 VSEBINA DELAVNICE DAY 1 Wednesday FEBRUARY 5 th 2014 9.00 10.30 PLENARY

More information

Jamova cesta Ljubljana, Slovenija Jamova cesta 2 SI 1000 Ljubljana, Slovenia

Jamova cesta Ljubljana, Slovenija   Jamova cesta 2 SI 1000 Ljubljana, Slovenia Univerza v Ljubljani Fakulteta za gradbeništvo in geodezijo University of Ljubljana Faculty of Civil and Geodetic Engineering Jamova cesta 2 1000 Ljubljana, Slovenija http://www3.fgg.uni-lj.si/ Jamova

More information

UNIVERZA V LJUBLJANI

UNIVERZA V LJUBLJANI UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO VREDNOTENJE KAKOVOSTI SPLETNIH PREDSTAVITEV IZBRANIH SLOVENSKIH FAKULTET Ljubljana, september 2003 MATEJA DOLNIČAR IZJAVA Študentka Mateja Dolničar

More information

OPTIMIRANJE IZDELOVALNIH PROCESOV

OPTIMIRANJE IZDELOVALNIH PROCESOV OPTIMIRANJE IZDELOVALNIH PROCESOV asist. Damir GRGURAŠ, mag. inž. str izr. prof. dr. Davorin KRAMAR damir.grguras@fs.uni-lj.si Namen vaje: Ugotoviti/določiti optimalne parametre pri struženju za dosego

More information

OPP Programska oprema

OPP Programska oprema OPP Programska oprema doc.dr.eva Jereb Fakulteta za organizacijske vede Univerza v Mariboru e mail: : eva.jereb@fov.uni mb.si PROGRAMSKA OPREMA SISTEMSKA : (operacijski sistem) vsebuje programe za kontrolo,

More information

Analiza in primerjava javanskih tehnologij za spletni sloj

Analiza in primerjava javanskih tehnologij za spletni sloj Univerza v Ljubljani Fakulteta za računalništvo in informatiko Tomaž Borštnik Analiza in primerjava javanskih tehnologij za spletni sloj DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

TOPLJENEC ASOCIIRA LE V VODNI FAZI

TOPLJENEC ASOCIIRA LE V VODNI FAZI TOPLJENEC ASOCIIRA LE V VODNI FAZI V primeru asociacij molekul topljenca v vodni ali organski fazi eksperimentalno določeni navidezni porazdelitveni koeficient (P n ) v odvisnosti od koncentracije ni konstanten.

More information

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. O neeksaknotsti eksaktnega binomskega intervala zaupanja

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE. O neeksaknotsti eksaktnega binomskega intervala zaupanja UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE Zaključna naloga (Final project paper) O neeksaknotsti eksaktnega binomskega intervala zaupanja (On the inexactness

More information

SPLETNA STRAN PROJEKTA - KLJUČNI ELEMENT ALI NUJNO ZLO?

SPLETNA STRAN PROJEKTA - KLJUČNI ELEMENT ALI NUJNO ZLO? SPLETNA STRAN PROJEKTA - KLJUČNI ELEMENT ALI NUJNO ZLO? VALORIZACIJSKA KONFERENCA 2014»RAZŠIRJANJE, UPORABA IN TRAJNOST REZULTATOV«DOC. DR. TANJA ARH & MAG. MATIC PIPAN INSTITUT JOŽEF STEFAN ZAKAJ SPLETNA

More information

MODEL ZA OCENJEVANJE KAKOVOSTI SPLETNIH STRANI

MODEL ZA OCENJEVANJE KAKOVOSTI SPLETNIH STRANI UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA MAGISTRSKO DELO MODEL ZA OCENJEVANJE KAKOVOSTI SPLETNIH STRANI Ljubljana, avgust 2003 JAKA LINDIČ IZJAVA Študent Jaka Lindič izjavljam, da sem avtor tega magistrskega

More information

S p letn o u čen je. Navodila za uporabo e-izo b raževaln eg a p o rtala.

S p letn o u čen je. Navodila za uporabo e-izo b raževaln eg a p o rtala. S p letn o u čen je Navodila za uporabo e-izo b raževaln eg a p o rtala www.spletno-ucenje.com Datum zadnjih sprememb: 14.09.2006 2 KAZALO KAZALO... 2 E-IZ O B R A Ţ E V A N JE... 3 ZAKAJ E-IZ O B R A

More information

UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA. Rok Bojanc MODELI ZAGOTAVLJANJA VARNOSTI V POSLOVNIH INFORMACIJSKIH SISTEMIH. Doktorska disertacija

UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA. Rok Bojanc MODELI ZAGOTAVLJANJA VARNOSTI V POSLOVNIH INFORMACIJSKIH SISTEMIH. Doktorska disertacija UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA Rok Bojanc MODELI ZAGOTAVLJANJA VARNOSTI V POSLOVNIH INFORMACIJSKIH SISTEMIH Doktorska disertacija Ljubljana, 2010 Izjava o avtorstvu in objavi elektronske verzije

More information

UČNI NAČRT PREDMETA / COURSE SYLLABUS. Študijska smer Study field. Samost. delo Individ. work Klinične vaje work

UČNI NAČRT PREDMETA / COURSE SYLLABUS. Študijska smer Study field. Samost. delo Individ. work Klinične vaje work Predmet: Course title: UČNI NAČRT PREDMETA / COURSE SYLLABUS Statistika Statistics Študijski program in stopnja Study programme and level Univerzitetni študijski program Matematika First cycle academic

More information

ANALIZA SPLETNIH STRANI SREDNJIH ŠOL PO SLOVENIJI

ANALIZA SPLETNIH STRANI SREDNJIH ŠOL PO SLOVENIJI ŠOLSKI CENTER VELENJE ELEKTRO IN RAČUNALNIŠKA ŠOLA Trg mladosti 3, 3320 Velenje MLADI RAZISKOVALCI ZA RAZVOJ ŠALEŠKE DOLINE RAZISKOVALNA NALOGA ANALIZA SPLETNIH STRANI SREDNJIH ŠOL PO SLOVENIJI Tematsko

More information

Aleš Fleischmann Gradniki vmesniškega podsklopa sistema za procesno dokumentacijo

Aleš Fleischmann Gradniki vmesniškega podsklopa sistema za procesno dokumentacijo UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Aleš Fleischmann Gradniki vmesniškega podsklopa sistema za procesno dokumentacijo Visokošolski strokovni študij Diplomsko delo Mentor: doc.

More information

ENERGY AND MASS SPECTROSCOPY OF IONS AND NEUTRALS IN COLD PLASMA

ENERGY AND MASS SPECTROSCOPY OF IONS AND NEUTRALS IN COLD PLASMA UDK621.3:(53+54+621 +66), ISSN0352-9045 Informaclje MIDEM 3~(~UU8)4, Ljubljana ENERGY AND MASS SPECTROSCOPY OF IONS AND NEUTRALS IN COLD PLASMA Marijan Macek 1,2* Miha Cekada 2 1 University of Ljubljana,

More information

Attempt to prepare seasonal weather outlook for Slovenia

Attempt to prepare seasonal weather outlook for Slovenia Attempt to prepare seasonal weather outlook for Slovenia Main available sources (ECMWF, EUROSIP, IRI, CPC.NCEP.NOAA,..) Two parameters (T and RR anomally) Textual information ( Met Office like ) Issued

More information

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO. Martin Podboj. Spletna GIS aplikacija Nahajališča mineralnih surovin v Sloveniji

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO. Martin Podboj. Spletna GIS aplikacija Nahajališča mineralnih surovin v Sloveniji UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Martin Podboj Spletna GIS aplikacija Nahajališča mineralnih surovin v Sloveniji DIPLOMSKO DELO NA UNIVERZITETNEM ŠTUDIJU Mentor: prof. dr.

More information

Jamova cesta Ljubljana, Slovenija Jamova cesta 2 SI 1000 Ljubljana, Slovenia

Jamova cesta Ljubljana, Slovenija   Jamova cesta 2 SI 1000 Ljubljana, Slovenia Univerza v Ljubljani Fakulteta za gradbeništvo in geodezijo University of Ljubljana Faculty of Civil and Geodetic Engineering Jamova cesta 2 1000 Ljubljana, Slovenija http://www3.fgg.uni-lj.si/ Jamova

More information

ARHIVIRANJE SPLETNIH STRANI V NARODNI IN UNIVERZITETNI KNJIŽNICI

ARHIVIRANJE SPLETNIH STRANI V NARODNI IN UNIVERZITETNI KNJIŽNICI ARHIVIRANJE SPLETNIH STRANI V NARODNI IN UNIVERZITETNI KNJIŽNICI Alenka Kavčič - Čolić Janko Klasinc Oddano: 7. 9. 2010 Sprejeto: 3. 1. 2011 Izvleček Izvirni znanstveni članek UDK 02:004:005.921.1"746"(497.4)

More information

OA07 ANNEX 4: SCOPE OF ACCREDITATION IN CALIBRATION

OA07 ANNEX 4: SCOPE OF ACCREDITATION IN CALIBRATION OA07 ANNEX 4: SCOPE OF ACCREDITATION IN CALIBRATION Table of contents 1 TECHNICAL FIELDS... 2 2 PRESENTING THE SCOPE OF A CALIBRATION LABOORATORY... 2 3 CONSIDERING CHANGES TO SCOPES... 6 4 CHANGES WITH

More information

ENAČBA STANJA VODE IN VODNE PARE

ENAČBA STANJA VODE IN VODNE PARE ENAČBA STANJA VODE IN VODNE PARE SEMINARSKA NALOGA PRI PREDMETU JEDRSKA TEHNIKA IN ENERGETIKA TAMARA STOJANOV MENTOR: IZRED. PROF. DR. IZTOK TISELJ NOVEMBER 2011 Enačba stanja idealni plin: pv = RT p tlak,

More information

USING SIMULATED SPECTRA TO TEST THE EFFICIENCY OF SPECTRAL PROCESSING SOFTWARE IN REDUCING THE NOISE IN AUGER ELECTRON SPECTRA

USING SIMULATED SPECTRA TO TEST THE EFFICIENCY OF SPECTRAL PROCESSING SOFTWARE IN REDUCING THE NOISE IN AUGER ELECTRON SPECTRA UDK 543.428.2:544.171.7 ISSN 1580-2949 Original scientific article/izvirni znanstveni ~lanek MTAEC9, 49(3)435(2015) B. PONIKU et al.: USING SIMULATED SPECTRA TO TEST THE EFFICIENCY... USING SIMULATED SPECTRA

More information

MICROWAVE PLASMAS AT ATMOSPHERIC PRESSURE: NEW THEORETICAL DEVELOPMENTS AND APPLICATIONS IN SURFACE SCIENCE

MICROWAVE PLASMAS AT ATMOSPHERIC PRESSURE: NEW THEORETICAL DEVELOPMENTS AND APPLICATIONS IN SURFACE SCIENCE UDK621.3:(53+54+621 +66), ISSN0352-9045 Informacije MIDEM 38(2008)4, Ljubljana MICROWAVE PLASMAS AT ATMOSPHERIC PRESSURE: NEW THEORETICAL DEVELOPMENTS AND APPLICATIONS IN SURFACE SCIENCE T. 8elmonte*,

More information

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE

UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE UNIVERZA NA PRIMORSKEM FAKULTETA ZA MATEMATIKO, NARAVOSLOVJE IN INFORMACIJSKE TEHNOLOGIJE Zaključna naloga Prototip mobilnega čitalca registrskih tablic za preverjanje parkirnin (Prototype of mobile license

More information

Adaptivni sistem za učenje jezika SQL

Adaptivni sistem za učenje jezika SQL Univerza v Ljubljani Fakulteta za računalništvo in informatiko Tadej Matek Adaptivni sistem za učenje jezika SQL DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO IN INFORMATIKA

More information

KRIPTOGRAFIJA in VARNOST SLOVENSKIH E-TRGOVIN

KRIPTOGRAFIJA in VARNOST SLOVENSKIH E-TRGOVIN UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA MAGISTRSKO DELO KRIPTOGRAFIJA in VARNOST SLOVENSKIH E-TRGOVIN Ljubljana, april 2006 ROK SABADIN IZJAVA Študent Rok Sabadin izjavljam, da sem avtor tega magistrskega

More information

PRIMERJAVA ANALITIČNIH PROGRAMSKIH ORODIJ PRI REŠEVANJU PROBLEMOV ODLOČANJA V POSLOVNIH PROCESIH

PRIMERJAVA ANALITIČNIH PROGRAMSKIH ORODIJ PRI REŠEVANJU PROBLEMOV ODLOČANJA V POSLOVNIH PROCESIH UNIVERZA V MARIBORU FAKULTETA ZA ORGANIZACIJSKE VEDE Smer: Organizacija in management informacijskih sistemov PRIMERJAVA ANALITIČNIH PROGRAMSKIH ORODIJ PRI REŠEVANJU PROBLEMOV ODLOČANJA V POSLOVNIH PROCESIH

More information

matematika + biologija = sistemska biologija? Prof. Dr. Kristina Gruden Prof. Dr. Aleš Belič Doc. DDr. Jure Ačimovič

matematika + biologija = sistemska biologija? Prof. Dr. Kristina Gruden Prof. Dr. Aleš Belič Doc. DDr. Jure Ačimovič matematika + biologija = sistemska biologija? Prof. Dr. Kristina Gruden Prof. Dr. Aleš Belič Doc. DDr. Jure Ačimovič Kaj je sistemska biologija? > Razumevanje delovanja organizmov sistemska biologija =

More information

Klemen Konič, 4. GB Tehniška gimnazija Tehniški Šolski Center Nova Gorica

Klemen Konič, 4. GB Tehniška gimnazija Tehniški Šolski Center Nova Gorica o Zaključna naloga»računalništvo«------------------------------------------ Oblikovanje in izdelava spletne strani Skripta za novice CMS sistemi ------------------------------------------ Klemen Konič,

More information

Vsebina Od problema do načrta programa 1. del

Vsebina Od problema do načrta programa 1. del Vsebina Od problema do načrta programa 1. del Osnovne strategije iskanja rešitev problema Načini opisovanja rešitev problema Osnovni gradniki rešitve problema Primeri Napišite postopek za kuhanje kave

More information

DELOVNA SKUPINA ZA VARSTVO PODATKOV IZ ČLENA 29

DELOVNA SKUPINA ZA VARSTVO PODATKOV IZ ČLENA 29 DELOVNA SKUPINA ZA VARSTVO PODATKOV IZ ČLENA 29 17/SL DS 248 rev.01 Smernice glede ocene učinka v zvezi z varstvom podatkov in opredelitve, ali je verjetno, da bi [obdelava] povzročila veliko tveganje,

More information

Iskanje najcenejše poti v grafih preko polkolobarjev

Iskanje najcenejše poti v grafih preko polkolobarjev Univerza v Ljubljani Fakulteta za računalništvo in informatiko Veronika Horvat Iskanje najcenejše poti v grafih preko polkolobarjev DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE

More information

Kako vzpostaviti sistem upravljanja in vrednotenja intelektualne lastnine v podjetjih?

Kako vzpostaviti sistem upravljanja in vrednotenja intelektualne lastnine v podjetjih? Kako vzpostaviti sistem upravljanja in vrednotenja intelektualne lastnine v podjetjih? Dan inovativnosti, Brdo pri Kranju dr. Marko Uplaznik 17. 9. 2013 B O S C H A N D S I E M E N S H O M E A P P L I

More information

APLIKACIJA ZA DELO Z GRAFI

APLIKACIJA ZA DELO Z GRAFI UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA Študijski program: MATEMATIKA IN RAČUNALNIŠTVO APLIKACIJA ZA DELO Z GRAFI DIPLOMSKO DELO Mentor: doc. dr. Primož Šparl Kandidat: Luka Jurković Somentor: asist.

More information

Distance reduction with the use of UDF and Mathematica. Redukcija dolžin z uporabo MS Excel ovih lastnih funkcij in programa Mathematica

Distance reduction with the use of UDF and Mathematica. Redukcija dolžin z uporabo MS Excel ovih lastnih funkcij in programa Mathematica RMZ Materials and Geoenvironment, Vol. 54, No. 2, pp. 265-286, 2007 265 Distance reduction with the use of UDF and Mathematica Redukcija dolžin z uporabo MS Excel ovih lastnih funkcij in programa Mathematica

More information

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO. Gregor Slokan AVTOMATIZACIJO REZERVACIJE VIROV V TELEKOMUNIKACIJSKEM OMREŽJU

UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO. Gregor Slokan AVTOMATIZACIJO REZERVACIJE VIROV V TELEKOMUNIKACIJSKEM OMREŽJU UNIVERZA V LJUBLJANI FAKULTETA ZA RAČUNALNIŠTVO IN INFORMATIKO Gregor Slokan RAZVOJ SISTEMA AUTOMATOR ZA AVTOMATIZACIJO REZERVACIJE VIROV V TELEKOMUNIKACIJSKEM OMREŽJU DIPLOMSKO DELO NA VISOKOŠOLSKEM STROKOVNEM

More information

Univerza v Ljubljani Fakulteta za matematiko in fiziko. Oddelek za fiziko. Seminar - 3. letnik, I. stopnja. Kvantni računalniki. Avtor: Tomaž Čegovnik

Univerza v Ljubljani Fakulteta za matematiko in fiziko. Oddelek za fiziko. Seminar - 3. letnik, I. stopnja. Kvantni računalniki. Avtor: Tomaž Čegovnik Univerza v Ljubljani Fakulteta za matematiko in fiziko Oddelek za fiziko Seminar - 3. letnik, I. stopnja Kvantni računalniki Avtor: Tomaž Čegovnik Mentor: prof. dr. Anton Ramšak Ljubljana, marec 01 Povzetek

More information

Drevesno preiskovanje Monte Carlo v porazdeljenem okolju

Drevesno preiskovanje Monte Carlo v porazdeljenem okolju Univerza v Ljubljani Fakulteta za računalništvo in informatiko Jure Grabnar Drevesno preiskovanje Monte Carlo v porazdeljenem okolju DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

Paralelni in distribuirani algoritmi v numerični analizi

Paralelni in distribuirani algoritmi v numerični analizi Univerza v Ljubljani Fakulteta za računalništvo in informatiko Rok Kralj Paralelni in distribuirani algoritmi v numerični analizi DIPLOMSKO DELO UNIVERZITETNI INTERDISCIPLINARNI ŠTUDIJSKI PROGRAM PRVE

More information

SISTEM ZA SPROTNI NADZOR STANJA INDUSTRIJSKIH POGONOV

SISTEM ZA SPROTNI NADZOR STANJA INDUSTRIJSKIH POGONOV Vir znanja in izkušenj za stroko Portorož,. in. junij 0 SISTEM ZA SPROTNI NADZOR STANJA INDUSTRIJSKIH POGONOV Matic IVANOVIČ, Pavle BOŠKOSKI, Đani JURIČIĆ, Jožef VIŽINTIN Odsek za sisteme in vodenje, Inštitut

More information

Optimizacija razporeditve preizkušanja in vzdrževanja varnostne opreme na podlagi najmanjšega tveganja

Optimizacija razporeditve preizkušanja in vzdrževanja varnostne opreme na podlagi najmanjšega tveganja Elektrotehniški vestnik 70(1-2): 22 26, 2003 Electrotechnical Review, Ljubljana, Slovenija Optimizacija razporeditve preizkušanja in vzdrževanja varnostne opreme na podlagi najmanjšega tveganja Marko Čepin

More information

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA POLONA ŠENKINC REŠEVANJE LINEARNIH DIFERENCIALNIH ENAČB DRUGEGA REDA S POMOČJO POTENČNIH VRST DIPLOMSKO DELO

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA POLONA ŠENKINC REŠEVANJE LINEARNIH DIFERENCIALNIH ENAČB DRUGEGA REDA S POMOČJO POTENČNIH VRST DIPLOMSKO DELO UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA POLONA ŠENKINC REŠEVANJE LINEARNIH DIFERENCIALNIH ENAČB DRUGEGA REDA S POMOČJO POTENČNIH VRST DIPLOMSKO DELO LJUBLJANA, 2016 UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA

More information

Sodobna orodja in postopki za načrtovanje algortimov vodenja servopogonov

Sodobna orodja in postopki za načrtovanje algortimov vodenja servopogonov AIG 03, MARIBOR Sodobna orodja in postopki za načrtovanje algortimov vodenja servopogonov Miran Rodič, Karel Jezernik Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko Smetanova

More information

THE TOWNS AND THE TRAFFIC OF THEIR OUTSKIRTS IN SLOVENIA

THE TOWNS AND THE TRAFFIC OF THEIR OUTSKIRTS IN SLOVENIA UDC 911. 37:38(497. 12-201)=20 Marjan Zagar * THE TOWNS AND THE TRAFFIC OF THEIR OUTSKIRTS IN SLOVENIA In the urban policy of the long-term development of SR Slovenia the decision has been made that in

More information

Uporaba preglednic za obdelavo podatkov

Uporaba preglednic za obdelavo podatkov Uporaba preglednic za obdelavo podatkov B. Golli, PeF Pedagoška fakulteta UL Ljubljana 2012 Kazalo 1 Uvod 1 2 Zgled iz kinematike 2 2.1 Izračun hitrosti................................... 2 2.2 Izračun

More information

Spletni sistem za vaje iz jezika SQL

Spletni sistem za vaje iz jezika SQL UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO Matematika praktična matematika (VSŠ) Ines Frelih Spletni sistem za vaje iz jezika SQL Diplomska naloga Ljubljana, 2011 Zahvala Zahvalila bi se rada

More information

Implementacija in uporaba pametnega asistenta v izobraževanju

Implementacija in uporaba pametnega asistenta v izobraževanju Univerza v Ljubljani Fakulteta za računalništvo in informatiko Tomi Šebjanič Implementacija in uporaba pametnega asistenta v izobraževanju DIPLOMSKO DELO UNIVERZITETNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

IMPACT OF THE NEW ROAD TRAFFIC SAFETY LAW ON THE NUMBER OF ROAD ACCIDENTS IN SLOVENIA

IMPACT OF THE NEW ROAD TRAFFIC SAFETY LAW ON THE NUMBER OF ROAD ACCIDENTS IN SLOVENIA P. To mine: Impact of the New Road Traffic Safety Law on the Number of Road Accidents in Slovenia POLONA TOMINC, D. Sc. Ekonomsko-poslovna fakulteta Razlagova 14, 2000 Maribor, Republika Slovenija e-mail:

More information

UMESTITEV EKOLOŠKIH RAZISKAV MED OSTALE VRSTE RAZISKAV

UMESTITEV EKOLOŠKIH RAZISKAV MED OSTALE VRSTE RAZISKAV EKOLOŠKE RAZISKAVE UMESTITEV EKOLOŠKIH RAZISKAV MED OSTALE VRSTE RAZISKAV EPIDEMIOLOŠKE OPAZOVALNE RAZISKAVE NA AGREGIRANIH PODATKIH EKOLOŠKE RAZISKAVE populacija POPULACIJSKE EKSPERIMENTALNE RAZISKAVE

More information

Statistika 2 z računalniško analizo podatkov. Neizpolnjevanje predpostavk regresijskega modela

Statistika 2 z računalniško analizo podatkov. Neizpolnjevanje predpostavk regresijskega modela Statistika 2 z računalniško analizo podatkov Neizpolnjevanje predpostavk regresijskega modela 1 Predpostavke regresijskega modela (ponovitev) V regresijskem modelu navadno privzamemo naslednje pogoje:

More information

Zaznavanje človeških funkcij z uporabo senzorjev in mobilnih naprav

Zaznavanje človeških funkcij z uporabo senzorjev in mobilnih naprav Univerza v Ljubljani Fakulteta za računalništvo in informatiko Klemen Susič Zaznavanje človeških funkcij z uporabo senzorjev in mobilnih naprav DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE

More information

DIPLOMSKO DELO LASTNOSTI, SPOSOBNOSTI IN ZNANJA, KI JIH POTREBUJE VODJA, DA BI USPEŠNO VODIL TIM

DIPLOMSKO DELO LASTNOSTI, SPOSOBNOSTI IN ZNANJA, KI JIH POTREBUJE VODJA, DA BI USPEŠNO VODIL TIM UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO LASTNOSTI, SPOSOBNOSTI IN ZNANJA, KI JIH POTREBUJE VODJA, DA BI USPEŠNO VODIL TIM Ljubljana, september 2002 MOJCA ČUK KAZALO UVOD... 1 I. DEL: TIM...

More information

Odgovornost za razvoj kariere na primeru podjetja Renault Nissan Slovenija, d.o.o.

Odgovornost za razvoj kariere na primeru podjetja Renault Nissan Slovenija, d.o.o. UNIVERZA V LJUBLJANI FAKULTETA ZA DRUŽBENE VEDE Nina Golob Odgovornost za razvoj kariere na primeru podjetja Renault Nissan Slovenija, d.o.o. Diplomsko delo Ljubljana, 2010 UNIVERZA V LJUBLJANI FAKULTETA

More information

Hipohamiltonovi grafi

Hipohamiltonovi grafi Hipohamiltonovi grafi Marko Čmrlec, Bor Grošelj Simić Mentor(ica): Vesna Iršič Matematično raziskovalno srečanje 1. avgust 016 1 Uvod V marsovskem klubu je želel predsednik prirediti večerjo za svoje člane.

More information

FREEWAT prosto dostopno programsko orodje za upravljanje z vodami

FREEWAT prosto dostopno programsko orodje za upravljanje z vodami 6. delavnica raziskovalcev IEI FREEWAT prosto dostopno programsko orodje za upravljanje z vodami mag. Irena Kopač, univ.dipl.inž.grad. FREEWAT je projekt OBZORJA 2020 (HORIZON 2020), financiran s strani

More information

Naloge iz LA T EXa : 3. del

Naloge iz LA T EXa : 3. del Naloge iz LA T EXa : 3. del 1. V besedilo vklju ite naslednjo tabelo skupaj z napisom Kontrolna naloga Dijak 1 2 Povpre je Janko 67 72 70.5 Metka 72 67 70.5 Povpre je 70.5 70.5 Tabela 1: Rezultati kontrolnih

More information

Multipla korelacija in regresija. Multipla regresija, multipla korelacija, statistično zaključevanje o multiplem R

Multipla korelacija in regresija. Multipla regresija, multipla korelacija, statistično zaključevanje o multiplem R Multipla koelacia in egesia Multipla egesia, multipla koelacia, statistično zaklučevane o multiplem Multipla egesia osnovni model in ačunane paametov Z multiplo egesio napoveduemo vednost kiteia (odvisne

More information

ACTA BIOLOGICA SLOVENICA LJUBLJANA 2012 Vol. 55, [t. 1: 29 34

ACTA BIOLOGICA SLOVENICA LJUBLJANA 2012 Vol. 55, [t. 1: 29 34 ACTA BIOLOGICA SLOVENICA LJUBLJANA 2012 Vol. 55, [t. 1: 29 34 Survey of the Lynx lynx distribution in the French Alps: 2005 2009 update Spremljanje razširjenosti risa v francoskih Alpah: 2005 2009 Eric

More information

UČNI NAČRT PREDMETA / COURSE SYLLABUS Numerical linear algebra. Študijska smer Study field. Samost. delo Individ. work Klinične vaje work

UČNI NAČRT PREDMETA / COURSE SYLLABUS Numerical linear algebra. Študijska smer Study field. Samost. delo Individ. work Klinične vaje work Predmet: Course title: UČNI NAČRT PREDMETA / COURSE SYLLABUS Numerična linearna algebra Numerical linear algebra Študijski program in stopnja Study programme and level Univerzitetni študijski program Matematika

More information

UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO RAVNANJE ODNOSOV S PORABNIKI NA INTERNETU

UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO RAVNANJE ODNOSOV S PORABNIKI NA INTERNETU UNIVERZA V LJUBLJANI EKONOMSKA FAKULTETA DIPLOMSKO DELO RAVNANJE ODNOSOV S PORABNIKI NA INTERNETU Ljubljana, julij 2007 MATEJA GROBELNIK IZJAVA Študent/ka Mateja Grobelnik izjavljam, da sem avtor/-ica

More information

Usmerjenost v samopreseganje in dosežke vodenje samega sebe

Usmerjenost v samopreseganje in dosežke vodenje samega sebe Usmerjenost v samopreseganje in dosežke vodenje samega sebe Petra Povše* Fakulteta za organizacijske študije v Novem mestu, Novi trg 5, 8000 Novo mesto, Slovenija petra.koprivec@gmail.com Povzetek: Raziskovalno

More information

ELEKTRONSKI UČBENIK ZA POUČEVANJE PITAGOROVEGA IZREKA PRI POUKU MATEMATIKE V OSNOVNI ŠOLI

ELEKTRONSKI UČBENIK ZA POUČEVANJE PITAGOROVEGA IZREKA PRI POUKU MATEMATIKE V OSNOVNI ŠOLI UNIVERZA V MARIBORU FAKULTETA ZA ORGANIZACIJSKE VEDE Smer organizacijska informatika ELEKTRONSKI UČBENIK ZA POUČEVANJE PITAGOROVEGA IZREKA PRI POUKU MATEMATIKE V OSNOVNI ŠOLI Mentor: izr. prof. dr. Eva

More information

D I P L O M S K A N A L O G A

D I P L O M S K A N A L O G A FAKULTETA ZA INFORMACIJSKE ŠTUDIJE V NOVEM MESTU D I P L O M S K A N A L O G A UNIVERZITETNEGA ŠTUDIJSKEGA PROGRAMA PRVE STOPNJE ALEŠ HOČEVAR FAKULTETA ZA INFORMACIJSKE ŠTUDIJE V NOVEM MESTU DIPLOMSKA

More information

Zgoščevanje podatkov

Zgoščevanje podatkov Zgoščevanje podatkov Pojem zgoščevanje podatkov vključuje tehnike kodiranja, ki omogočajo skrajšan zapis neke datoteke. Poznan program za zgoščevanje datotek je WinZip. Podatke je smiselno zgostiti v primeru

More information

VODENJE IN PROBLEMATIKA

VODENJE IN PROBLEMATIKA UNIVERZA V MARIBORU FAKULTETA ZA ORGANIZACIJSKE VEDE Smer: Organizacija in management kadrovskih in izobraževalnih procesov VODENJE IN PROBLEMATIKA Mentor: red. prof. dr. Jože Florjančič Kandidat: Martina

More information

Odročno nalaganje razredov za knjižnico Akka

Odročno nalaganje razredov za knjižnico Akka Univerza v Ljubljani Fakulteta za računalništvo in informatiko Alen Vrečko Odročno nalaganje razredov za knjižnico Akka DIPLOMSKO DELO VISOKOŠOLSKI STROKOVNI ŠTUDIJSKI PROGRAM PRVE STOPNJE RAČUNALNIŠTVO

More information

Excel. Matjaž Željko

Excel. Matjaž Željko Excel Matjaž Željko Elektronska preglednica Excel Excel je zmogljiv kalkulator. Omogoča izdelavo grafikonov statistično analizo podatkov lepo oblikovanje poročila za natis Podatke predstavljamo tabelarično,

More information

OFF-LINE NALOGA NAJKRAJŠI SKUPNI NADNIZ

OFF-LINE NALOGA NAJKRAJŠI SKUPNI NADNIZ 1 OFF-LINE NALOGA NAJKRAJŠI SKUPNI NADNIZ Opis problema. Danih je k vhodnih nizov, ki jih označimo s t 1,..., t k. Množico vseh znakov, ki se pojavijo v vsaj enem vhodnem nizu, imenujmo abeceda in jo označimo

More information

Zanesljivostna analiza ARM9 razvojnega sistema FRI SMS

Zanesljivostna analiza ARM9 razvojnega sistema FRI SMS Zanesljivostna analiza ARM9 razvojnega sistema FRI SMS Seminar pri predmetu RZD Jure Balabanič, Mitja Cerkvenik, Jani Černe, Vlado Dimitrieski, Jernej Gorički, Jure Janša, Gregor Jeraj, Tine Kavčič, Urša

More information