Diskuze: Po přihlášení přesměrovat na požadovanou stránku
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 6 zpráv z 6.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.


Ahoj,
můžeš to zkusit provést například přes url parametr.
přesměrování ze stránky, kde je nutné přihlášení provedeš například:
header('Location: login.php?return=prispevky');
a po přihlášení:
isset($_GET['return']){
header('Location: ' . $_GET['return'] . '.php');
}
Pochopitelně se jedná o hrubý nástřel, je nutné
provést kontrolu existence stránky, ochrany vstupních parametrů od
uživatele, apod.. 
Díky moc, takhle mě to nenapadlo, ikdyž je to docela jednoduchý systém.
Měl bych ještě dodatečnou otázku k té ochraně. Jak mám tohle chápat, popřípadě jak to ošetřit..?
Tak za všech okolností je vždy nutné ošetřovat vstupy od uživatele,
například převedením entit na jejich bezpečné verze apod..
http://php.net/…ialchars.php#…
Zde je určitě hlavní i kontrolovat, zda návratová stránka skutečně existuje například funkcí file_exists, apod..
Pokud uzivatel muze do programu posilat text, je nutne zabranit aby text narusoval chod programu nebo html stranku. Pr. Uzivatel zada v prohlizeci adresu:
https://server.cz/?a=NECO</div>
<?php
$a = isset($_GET['a']) ? $_GET['a'] : '';
echo '<div style="border:2px solid #f00;">text'.$a.'text</div>';
?>
Co se podle tebe ted zobrazi? Rozbije ti to html kod.
<div style="border:2px solid #f00;">text'NECOtext</div> -
normal
<div style="border:2px solid #f00;">textNECO</div>text</div>
- podstrceny odkaz (nebo vznikly nejakou chybou)
Pr2
https://server.cz/?nick=' OR '1'='1&psw=
<?php
$nick = isset($_GET['nick']) ? $_GET['nick'] : '';
$psw = isset($_GET['psw ']) ? $_GET['psw '] : '';
$sql->connect();
$query = "SELECT * FROM users WHERE nick='$a' AND psw='$psw'";
$rows = $sql->query($query);
foreach($rows as $row)
foreach($row as $value)
{echo $value;}
?>
Co se myslis, ze se ted stane? Uzivatel ziska uplny vypis z tabulky
uzivatele. Snadne se pak nalogovat na admina programu, ze? Nebo si precist
hesla, pokud je autor ani nesifruje. A nebo mit zasifrovana hesla a moci je
nechat lustit programem.
Normalne by mel ziskat data jen o sobe, treba.
Jo, a u stranky, nejen, ze kontrolovat, zda existuje, ale zda to neni stranka v jine slozce. Pripadne tem ostatnim slozkam nastavit takova prava, aby se do nich php nedostalo. Zas takovy priklad...
data/hesla_uzivatelu.php
stranky/hlavni
foto/nahledy/123.jpg - fotka s erotickym charakterem
foto/velike/123.jpg
https://server.cz/?a=../../hesla_uzivatelu.php
<?php
$a = isset($_GET['a']) ? $_GET['a'] : '';
echo file_get_contents('foto/nahledy/'.$a);
?>
V tuto chvili se dostanu do souboru hesla uzivatelu (pokud bych vedel, ze tam neco takoveho je nebo si tipnul nazev souboru). Soubor existuje, takze file_exists, i kdybych ho tam mel, tak si nevsimne zadny problem.
Mas treba seznamku, kde neprihlasenemu uzivateli zobrazujes nahledy
erotickych fotek jineho uzivatele. Kdyz bude chtit si ji rozkliknout, tak po nem
bude chtit prihlaseni. Pripadne treba jeste spesl heslo, ktere by mu sdelila v
pripade zajmu uzivatelka.
Z www prohlizece zjistit adresu fotky (protoze ji name autor zabezpecenou)
foto/nahledy/123.jpg
Tipnes si, ze by slozka pro velke obrazky mozhla mit stejne id a nazev
foto/velka/123.jpg
A autor nema slozku zabezpecenou pred php a verejne dostupnou a soubor zamykat
heslem nejde. Jde ale komprimovat a sifrovat heslem. Ale i na to jsou programy,
ktere se snazi heslo odhalit. Ale rekneme, ze to zkratka nema nijak zavezpecene.
Zadanim adresy ziskam velkou detailni fotku uzivatelky.
A zacnu ji vydirat.
Treba by to mohly byt tve stranky a schovas si tam nekde fotky sve
pritelkyne. A ja si nejak z html kodu vystouram, jake asi pouzivas jmena
adresaru, fotek a zkusim naslepo tipnout podle jmena tve pritelkyne, kde by mohl
byt nejaky soubor. Asi nebudes moc rad, kdybys to zjistil 
Zobrazeno 6 zpráv z 6.