Prihlásenie | Registrácia

MNews Jednoduchý redakčný systém bez databázy

Bezpečnosť

MNews 2 je na svete už 11 dní, dúfam, že všeobecne panuje spokojnosť s novými funkciami a novým vzhľadom. Verím, že sa nám podarilo dlhým obdobím testovania vychytať všetky výraznejšie chyby, ktoré sa mohli vyskytnúť, svedčia o tom aj vo väčšine pochvalné komentáre. Dnes nepíšem článok s konkrétnym návodom, či dokonca novou verziou, dnes by som chcel spísať len pár mojich poznámok k 2ke ohľadom bezpečnosti. Bude to veľa nudnej teórie, ale snáď to niekoho zaujme Žmurk

Bezpečnosť funkcií

Aj keď sa programovaniu venujem len na amatérskej úrovni, vo voľnom čase, už od prvej verzie sa snažím dbať na bezpečnosť v maximálnej možnej miere. Snažím sa nezabudnúť na nijakú blbosť, ktorá by mohla systému uškodiť a v súčastnosti hľadám aj niekoho skúsenejšieho, kto by systém prevetral úplne, aby som si mohol byť istý na 99% (na stovku si nemôže byť nik istý). V texte bude veľmi často spomínaný hash, či hashovacia funkcia, pokiaľ netušíte čo to je, viac sa dozviete napríklad na wikipedii.

Už od prvej verzie MNews sú napríklad heslá hashované pomocou funkcie sha1 (silnejšia obdoba md5), takže je veľmi ťažké dostať tieto heslá z hashovanej do čitateľnej podoby. S novou verziou však prišli aj nové problémy a to v nových funkciách: trvalé prihlásenie, upload a zálohovanie.

Trvalé prihlásenie

Pred tým, ako som vytvoril túto funkciu som sa rozhodoval medzi 2 možnosťami: trvalé prihlásenie možné na viacerých počítačoch naraz, alebo trvalé prihlásenie možné len z jedného počítača. Nakoniec padlo rozhodnutie na obmedzenejšie, ale z môjho pohľadu bezpečnejšie riešenie - povolenie trvalého prihlásenia len z jedného počítača.
Táto funkcia je veľmi striktná a prísna, preto niekedy človek nadobudne aj pocit, že nefunguje. Pravdou je, že funguje až príliš presne, avšak na svoju funkcionalitu je prísna. Trvalé prihlásenie je totiž obmedzené množstvom faktorov, v krátkosti:

  • do cookies sa ukladá login užívateľa a samostatne generovaný hash (do cookies sa neukladá žiadne samostatné heslo - ani v čitateľnej, ani v zahashovanej podobe)
  • vygenerovaný hash sa skladá zo 4 častí (použitý prehliadač, zahashované heslo, čas prihlásenia, IP adresa), ktoré sú následne zahashované pomocou sha1 funkcie.
  • pri prihlasovaní cez trvalé prihlásenie sú tak tieto časti porovnávané - tj musí sa zhodovať IP adresa a prehliadač, keď bol tento hash na trvalé prihlásenie vygenerovaný. Pokiaľ sa nezhoduje, systém užívateľa neprihlási a automaticky zruší možnosť ďalšieho trvalého prihlásenia s daným hashom.
  • pri každom prihlásení cez túto funkciu je vygenerovaný nový hash, takže hash v databáze ostáva uložený len na čas nevyhnutne potrebný.
  • ak sa prihlásite z iného počítača do systému, hash na trvalé prihlásenie sa zruší - tak aj keď sa vrátite späť k svojmu počítaču, trvalé prihlásenie už nebude fungovať.

Ako sami vidíte, funkcia je naozaj veľmi restriktívna užívateľovi dovolí prihlasovať sa len z jedného počítača. Myslím si však, že tieto obmedzujúce prvky prispievajú len k väčšej bezpečnosti pri použití tejto funkcie. Aj keby došlo ku krádeži cookie s hashom, tak trvalé prihlásenie nebude fungovať.
Vyskytli sa u vás nejaké problémy s touto funkciou? Ako sa vám páči? Dajte vedieť do komentárov!

Zálohovanie

Zálohovanie mala byť jednoduchá funkcia, ktorá umožní vytvoriť zip súbor, ktorý sa uloží na server, a v ktorom bude zabalený obsah adresára "data", aby pri prípadnom probléme sa údaje dali obnoviť zo zálohy. Až do verzie RC2 som nevidel žiadne bezpečnostné riziká, ktoré by mohli vzniknúť pri používaní tejto funkcie.
Zmenilo sa to, keď som sa rozhodol ochrániť adresáre, ktoré sa nachádzajú v adresári "data" a to tak, že do nich vygenerujem prázdny súbor index.html, aby nebolo možné prehliadať ich obsah. Zabránil som tak síce možnosti pozrieť si aj zoznam súborov v adresári "backups", kde sa ukladajú zálohy, avšak dovtedy vygenerovaný zip mal formát backup-yyyy-mm-dd.zip (y - rok, m - mesiac, d - deň). Nedal sa síce pozrieť zoznam súborov, avšak meno súboru so zálohou sa dalo veľmi ľahko uhádnuť a tak by si ktokoľvek stiahol zálohu a dostal sa ku kompletnej databáze článkov, užívateľov, ... Riešením bolo pridanie náhodného reťazca k názvu súboru. Generovaný zip súbor ma tak podobu backup-yyy-mm-dd-rrrrrrrrr.zip, kde rrrrrrrrr je 9 miestny, náhodne generovaný reťazec. Na priamy download zálohy tak musíte vedieť dátum jej vytvorenia a hodnotu reťazca. Alebo sa jednoducho prihlásite do administrácie ako admin a stiahnete si poslednú zálohu v sekcii zálohovania Úsmev

Ostatné

Funkcia uploadu je klasickou, ničím zvláštnou funkciou, ktorá v súčastnosti len kontroluje, či zasielaný súbor je skutočne obrázkom (zisťuje na základe prípony a rozmerov obrázku). Plánuje sa ďalšie rozširovanie o ajaxový multiupload a upload média súborov (videá, flash, mp3) - až vtedy to začne byť zaujímavé.
Zvláštnou funkciou je aj zaheslovanie stránky - možnosť vstúpiť na vytvorenú stránku je buď po zadaní správneho hesla, alebo prostredníctvom pripísanie kľúča do url adresy. Kľúč je jedinečný pre každý deň, mení sa vždy o polnoci (napríklad ak niekomu chcete poskytnúť vstup na stránku bez toho, aby sa dozvedel heslo - taký blud, ktorý poteší). Viac o tejto funkcii sa dozviete pri upravovaní zaheslovanej stránky v sekcii Info.
Ak na jednej doméne máte MNews nainštalované 2 krát, len v iných adresároch, nemôžete sa pohybovať medzi týmito dvoma administráciami - MNews kontroluje, pre ktorú inštaláciu aká session platí. Dobrým príkladom je demo a administrácia na tejto stránke.

Nabudúce, ak bude mať opäť náladu sa rozpíšem o použiteľnosti, respektíve malých drobnostiach, na ktoré som sa snažil myslieť pri návrhu systému Úsmev.

mylan Čo sa inde nevošlo 26.12.2009 21:09 Zobrazené: 2679×
bezpečnosť, trvalé prihlásenie, upload, zálohovanie

Komentáre

1 · Ayrton1 Avatar Ayrton1 · 27.12.2009 10:52
Tento článek mě zaujal :-)

Sice nejsem ten expert, kterého hledáš (také jsem amatér), ale myslím si, že MNEWS je velmi dobře postavený a zabezpečený systém.
2 · MirrorOV Avatar MirrorOV · 28.12.2009 17:52
Taky si myslim ze MNews je dobre zabezpecen a nemam co bych mu vytknul, a u toho uploadovani by mozna stacilo dat prazdne index.php soubory at k tomu lidi nemaji pristup ;-) ...tak to mozna budu resit i ja.
3 · mylan Avatar mylan · 28.12.2009 20:57
Prázdny súbor index.html sa vytvára v každej zložke data už pri inštalácii. Písal som o tom v tomto článku pri popise zálohovania
4 · MirrorOV Avatar MirrorOV · 28.12.2009 21:16
mylan: Tak pak to mam asi blbe nainstalovane :-( protoze mi se zadny soubor index.html nevytvoril a to pouzivam MNews uz od Alfa verze ...webhosting mam od banan.cz
5 · mylan Avatar mylan · 28.12.2009 21:37
No to bude to... Vytvorenie súborov je až od ostrej verzie MNews, takže ak si nainštaloval systém v alpha verzii a odvtedy si len prepisoval súbory a nič neinštaloval, tak sa súbory nevytvorili. Skopíruj si index.html napríklad z tunajšej administrácie.
6 · MirrorOV Avatar MirrorOV · 28.12.2009 23:13
mylan: Aha ok. Dekuju. Hned to udelam ;-)
7 · MirrorOV Avatar MirrorOV · 29.12.2009 20:58
Zdravim
potrebuju poradit co se tyce editoru...na strankach pouzivam na pozadi cernou barvu a v editoru je jako pozadi bila barva :-( da se to nejak zmenit ze bych nekde neco zmenil v nejakem souboru a bylo by cerne? Takhle nevidim svetle barvy pri editovani at uz clanku nebo stranek. Diky moc vsem za jakoukoliv pomoc
8 · mylan Avatar mylan · 29.12.2009 21:45
Podobné dotazy smeruj prosím do fóra, diskusia pod článkom je na iné veci (tu sa napríklad rozoberá bezpečnosť a tvoj príspevok je veľmi mimo).
Stránku rieš pomocou CSS, tak nemusíš vždy upravovať farbu textu. Pozadie vo WYSIWYG editore sa nedá meniť
9 · noe Avatar noe · 03.01.2010 20:22
Dobrý den prosím k čemu jsou dobré a jak použít kategorie template ? děkuji
10 · mylan Avatar mylan · 03.01.2010 21:16
Tvoja otázka nemá vôbec súvis s týmto článkom. Ak chceš riešiť technické, či iné veci s MNews, založ si prosím tému vo fóre!
11 · MirrorOV Avatar MirrorOV · 04.01.2010 20:42
Zdravim. Nechci nijak strasit,ale ted sem udelal cistou instalaci MNews 2 na webhostingu php5.cz a ve slozce data se mi prazdne index soubory nevytvorily, zustaly porad prazdne slozky bez nejakych souboru
12 · mylan Avatar mylan · 04.01.2010 20:54
Čerstvá inštalácia na php5.sk a súbory sa mi vytvorili (vytvárajú sa len v zložkách, ktoré sú v zložke /data/files/)
13 · MirrorOV Avatar MirrorOV · 04.01.2010 21:09
mylan: Jo tak...ja myslel ze to ve vsech podslozkach vytvori ty soubory a ne jen ve slozce /data/files. Tak zas jsem o neco chytrejsi ;-)
14 · mylan Avatar mylan · 04.01.2010 21:12
V ostatných zložkách je to zbytočné, ich štruktúru pozná každý, kto si systém preštuduje...
15 · Svetltuf Avatar Svetltuf · 08.11.2024 22:58
Большинство из нас перестали смотреть TV, так как интернет источники дают намного больше честной информации и можно выбирать кого читать, а кого нет.
Но в последнее время большая часть СМИ подает искаженную информацию, поэтому приходится перебирать очень аккуратно . В поисках хороших СМИ я наткнулся на 2 хороших источника: ukr-life.com.ua и sylnaukraina.com.ua.
Рекомендую и Вам выбирать только проверенные новостные источники чтоб не остаться обманутым.

Кстати, совсем недавно прочитал Важные новости, которые относится к каждому из нас:


http://adtgamer.com.br/showthread.php?p=480644#post480644
http://www.forumdipace.org/profile.php?mode=viewprofile&u=153687
http://gear-monkey.com/forum/member.php?u=8538
http://phpbb2.00web.net/viewtopic.php?p=217965#217965
http://adtgamer.com.br/showthread.php?p=480675#post480675
16 · Svetlmai Avatar Svetlmai · 12.11.2024 10:42
Большинство из нас перестали смотреть телевизор , так как интернет источники дают больше честной информации и можно выбирать кого читать, а кого нет.
Но в последнее время большая часть СМИ подает искаженную информацию, поэтому приходится перебирать очень тщательно. В поисках хороших СМИ я наткнулся на 2 качественных источника: ukr-life.com.ua и sylnaukraina.com.ua.
Рекомендую и Вам отбирать только проверенные новостные источники чтоб не остаться обманутым.

Кстати, совсем недавно прочитал полезную новости, которые относится к каждому из нас:


http://users.atw.hu/nlw/viewtopic.php?p=45774#45774
http://forum.ll2.ru/member.php?691207-Svetldck
http://www.ts-gaminggroup.com/showthread.php?179356-%D0%A0%E2%80%99%D0%A0%D1%91%D0%A1%D0%82%D0%A0%D1%95%D0%A0%C2%B1%D0%A0%D0%85%D0%A0%D1%91%D0%A1%E2%80%A1%D0%A0%D1%91%D0%A0%E2%84%96-%D0%A0%D1%99%D0%A0%C2%B0%D0%A0%C2%BB%D0%A0%C2%B5%D0%A0%D0%85%D0%A0%D2%91%D0%A0%C2%B0%D0%A1%D0%82-2024&p=1077943#post1077943
http://www.ts-gaminggroup.com/showthread.php?179556-%D0%A0%E2%80%94%D0%A0%C2%B0%D0%A1%D0%82%D0%A0%D1%95%D0%A0%C2%B1%D0%A1%E2%80%93%D0%A1%E2%80%9A%D0%A0%D0%85%D0%A0%C2%B0-%D0%A0%D1%9F%D0%A0%C2%BB%D0%A0%C2%B0%D0%A1%E2%80%9A%D0%A0%C2%B0-%D0%A0%D0%8E%D0%A1%D1%93%D0%A0%D2%91%D0%A0%D2%91%D0%A1%E2%80%93-2024&p=1078865#post1078865
http://www.glaschat.ru/glas-f/member.php?318126-Svetltbq
17 · Sergmjf Avatar Sergmjf · 12.11.2024 18:49
Do you know what holiday it is today?
We are used to the fact that we know only religious and public holidays and celebrate only them.
I found out about this only yesterday after visiting the our site.
It turns out that every day there are from 2 to 10 different holidays that surround us and make our lives happier.
Here is one of the holidays that will be today:


http://xn--80aphfq.xn--p1ai/user/Sergyyl/
http://rasstrel.ru/forum/member.php?u=263571
http://bbs.cheaa.com/home.php?mod=space&uid=3097317
http://forum.d-dub.com/member.php?839219-Sergrum
http://www.ts-gaminggroup.com/member.php?92472-Sergizj
18 · Sergsjc Avatar Sergsjc · 14.11.2024 20:13
Do you know what holiday it is today?
We are used to the fact that we know only religious and public holidays and celebrate only them.
I found out about this only yesterday after visiting the our site.
It turns out that every day there are from 2 to 10 different holidays that surround us and make our lives happier.
Here is one of the holidays that will be today:


http://www.c-strike.fakaheda.eu/forum/viewthread.php?thread_id=59889
http://www.adtgamer.com.br/showthread.php?p=484364#post484364
http://rasstrel.ru/forum/member.php?u=271430
http://www.adtgamer.com.br/showthread.php?p=483705#post483705
http://www.spearboard.com/member.php?u=805517
19 · Veronadvo Avatar Veronadvo · 18.11.2024 11:41
Советую Вам хорошую пасеку, на которой покупаю большой ассортимент продуктов пчеловодства как для себя таки для своих родных.
Пчеловоды оформляют всю продукцию пчеловодства на отменно, советы как принимать по важным вопросам дают. Очень много нужных статей на портале, Вот несколько из них:
http://www.adtgamer.com.br/showthread.php?p=485821#post485821
http://spearboard.com/member.php?u=429137
http://forum.ll2.ru/member.php?694855-Svetlanagkx
http://www.oople.com/forums/member.php?u=237020
http://forum.americandream.de/memberlist.php?mode=viewprofile&u=6441

Одним словом они молодцы и я их рекомендую.
Вот их сайт где я заказывал иммуностимулирующие продукты.
20 · Igorjlj Avatar Igorjlj · 18.11.2024 12:25
Каждый из нас любит почитать новости или посмотреть Youtube, что узнать что творится в мире и Украине.
Но очень важно чтоб источник новостей был честный и Вы не получали лживую информацию.
Я нашел очень хороший сайт и рекомендую его Вам - ukr-life.com.ua
Последнее время изучаю новости только здесь.
Так же вот несколько из актуальных статей, которые просто сбивает с ног:
http://www.softlab-nsk.com/forum/viewtopic.php?t=7046
http://www.oople.com/forums/member.php?u=234282
http://mail.spearboard.com/member.php?u=802672
http://forum.ll2.ru/member.php?740687-Igorrbc
http://www.atego-club.ru/forum/member.php/71787-Igorbmy
21 · Veronamvj Avatar Veronamvj · 18.11.2024 20:24
Рекомендую Вам качественную пасеку, на которой заказываю большой ассортимент пчелопродукции как для себя таки для своих родственников.
Пчеловоды оформляют всю пчелопродукцию на проффесионально, советы как употреблять по важным вопросам дают. Очень много качественных статей на сайте, Вот несколько из них:
http://www.adtgamer.com.br/showthread.php?p=485730#post485730
http://himeuta.org/member.php?1530587-Svetlanacaz
http://www.china-acg.com/discuz/space-uid-153487.html
http://forum.ll2.ru/member.php?695085-Svetlanazik
http://www.adtgamer.com.br/showthread.php?p=488573#post488573

Одним словом они молодцы и я их рекомендую.
Вот их интернет ресурс где я оформлял иммуностимулирующие продукты.
22 · Davidnba Avatar Davidnba · 25.11.2024 00:00
Вы видели что творится с Битком? Я был в ужасе как он возрос за последнее время.
И даже если будет падение я все равно буду вкладываться в его и инвестировать.
Но чтоб повысить свой уровень финансовой грамотности, решил подобрать портал, на котором смогу изучить информацию про все криптовалюты.
Мне понравился сайт. На данном сайте я смог найти статьи про каждую криптовалюту из ТОП 200. Получил полезную информацию как майнить крипту.
Вот одной из свежих новостей хотел бы поделиться с Вами:
Также нашел советы инвесторов как инвестировать на падающем рынке и как пережидать спад рынка.
Читайте и становитесь богаче и умней!!!
http://www.adtgamer.com.br/showthread.php?p=490253#post490253
http://adtgamer.com.br/showthread.php?p=487278#post487278
http://forum.d-dub.com/member.php?847587-Davidxhh
http://himeuta.org/member.php?1536449-Davidlkr
http://www.adtgamer.com.br/showthread.php?p=488679#post488679
23 · Vikitdz Avatar Vikitdz · 27.11.2024 15:39
Бажаєте перебувати в курсі всіх яскравих новин континентів? Хочете знати важливі статті з перших першоджерела?
Тоді рекомендуємо підписатися на газету Rusjizn. У нас ви можете знайти свіжі теми економіки та політики держав, дізнаєтеся про гарячі військові конфлікти на земній кулі, поринете в Світ дикої природи.
І це все на одному веб-сайті.
Також ми надаємо щотижневі підбірки найбільш топових публікацій і Вам не доведеться вивчати кожну публікацію щоб не пропустити найпотрібне.
Дані публікації можна отримувати на "ящик" та не витрачати час на читання всіх публікацій .
https://similarpng.com/profile/levkhe/upload-png/
http://vnsharing.site/forum/member.php?u=2624695
https://secondtry.at/forum/memberlist.php?mode=viewprofile&u=13248
https://thailand-forex.com/members/84918-Vikijzw
http://u69.2lazy2boot.net/usercomments.html
24 · Alexpus Avatar Alexpus · 27.11.2024 19:49
Последнее время не могу найти нормальную информацию чтоб получить независимое мнение по той или иной новости, в основном большая часть контролируема государством.
Вижу что сейчас на небольших СМИ информация более достоверная.
Нашел и хочу поделиться: http://www.adtgamer.com.br/showthread.php?p=497198#post497198
http://www.smokinstangs.com/member.php/353333-Eldarpiv
http://gamecenter.idknet.com/forum/member.php?u=253835
http://forums.panzergrenadiers.com/member.php?41300-Eldarhul
http://himeuta.org/member.php?1538585-Eldarcxn

А где ищите ВЫ?
25 · Vikiqyt Avatar Vikiqyt · 02.12.2024 17:57
Бажаєте бути в курсі всіх яскравих новин держави? Хочете дізнатися важливі новини з перших уст?
Тоді пропонуємо підписатися на газету Rusjizn. У нас ви можете знайти топові теми економіки та політики країн, отримайте інформацію про поточні військові конфлікти на земній кулі, поринете в Світ дикої природи.
І це все на одному веб-сайті.
Також ми пропонуємо щотижневі підбірки найбільш гарячих статей і Вам не доведеться дивитися кожну статтю щоб не пропустити найпотрібне.
Дані новини можна отримувати на "ящик" та не витрачати час на прочитання всіх статей .
https://forum.multi-classic.top/index.php?/topic/7951-%D0%B4%D0%B5%D0%BD%D1%8C-%D0%BF%D1%80%D0%B0%D1%86%D1%96%D0%B2%D0%BD%D0%B8%D0%BA%D0%B0-%D1%82%D0%B5%D1%85%D0%BD%D1%96%D1%87%D0%BD%D0%BE%D1%97-%D0%BF%D1%96%D0%B4%D1%82%D1%80%D0%B8%D0%BC%D0%BA%D0%B8/
http://www.spearboard.com/member.php?u=815034
http://adtgamer.com.br/showthread.php?p=503975#post503975
http://himeuta.org/member.php?1537401-Vikirfy
https://floobits.com/Vikiagm
Pridanie komentára



Bold text Italics Link Code    :-) ;-) 8-) :-D :-P :-O :-( :-/ ;,( ]:-D :-[

Ochrana proti spamu. Napíšte prosím číslicu jedenásť: