Potlačení refereru

HackForum

Potlačení refereru#
Rád bych odeslal POST požadavek z formuláře a potřebuji zakázat předání hodnoty referer v hlavičce. Máte s tímto někdo nějaké zkušenosti? Jde vůbec odeslání refereru zakázat na straně serveru, nebo to jde jen na klientovi?
Vygooglil jsem něco o tom, že se požadavek musí prohnat skrz nějakou další stránku pomocí refresh namísto location, ale moc jsem tomu nerozumněl :(
Pokud byste někdo měl jakoukoliv radu, budu za ní vděčný...

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP29.5.2008 18:22
re: Potlačení refereru#
mozno hladas toto:

[link]
(odpovědět)
myself | 78.128.195.*29.5.2008 19:16
re: Potlačení refereru#
myself: Díky za odkaz. V RFC jsem se dočetl, že klient nesmí poslat referer, pokud požadavek směřuje ze zabezpečené stránky a směřuje na nezabezpečenou. Toto skutečně funguje výborně, ale bohužel browser vyhazuje zprávy o tom, že opouštím zabezpečenou zónu a vstupuji do nezabezpečené :(
Tomuto bych se rád vyhnul, takže pokud máte někdo další nápad...

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP29.5.2008 20:15
re: Potlačení refereru#
na to je rovnou plugin do firefoxa ne?
(odpovědět)
sdfsdfsdfassfdajdlfrghakjlgfgadg | 194.228.223.*29.5.2008 22:55
re: Potlačení refereru#
zrovna minuly tyden jsem resil stejny problem, nastesti v pripade GET pozadavku, reseni bylo jednoduche, a sice pomoci fce file_get_contents() pri zapnute direktive allow_url_fopen. v pripade POST pozadavku bych osobne problem resil pomoci fce fsockopen() a jednoduse nedefinoval hlavicku Referer, viz nazorny priklad v dokumentaci [link]
(odpovědět)
Emkei | E-mail | Website | PGP29.5.2008 22:58
re: Potlačení refereru#
No podle me nejde zarucit, ze browser referera nevyzradi. Je to precijenom jeho vec, jake hlavicky posle. Nicmene ani s location ani s meta refresh neposles post pozadavek (alespon pokud vim). Jedine, co by mozna slo, udelat si takove formularove "proxy" - hodit si nekam svuj skript a na nej nasmerovat formular. Odpoved skriptu by obsahovala stejny formular (pole by treba byla skryta) + js kod pro automaticke odeslani formulare. Tim by se melo predat v refereru url toho skriptu a ne puvodniho formulare.
(odpovědět)
Petrof_ | 213.192.3.*29.5.2008 23:35
re: Potlačení refereru#
Emkei: Díky, zkusím na to mrknout.
Petrof_: Potřebuji, aby byl referer NULL, tedy buďto prázdný, nebo aby nebyl vůbec v hlavičce. Proto by mi ta proxy bohužel nepomohla.

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP29.5.2008 23:39
re: Potlačení refereru#
Co spustit normalni proxy server na localhostu. Pokud vim, tak proxy server muze upravovat hlavicky ktere z nej odchazeji az do urovne protokolu aplikacni vrstvy.
Bohuzel o tom, jak to potlacit na servru nevim.
(odpovědět)
ask@t | E-mail | ICQ 200-358-16830.5.2008 17:02
re: Potlačení refereru#
ask@t: to pak muze ten packet s pozadavkem vytvorit rucne a ten refferer tam neuvest (nebo rovnou uvest falesny) . On asi nekomu chce poslat odkaz proto musi ze strany serveru prinutit prohlizec. Nejspise chce ucinit pokus o xss na skript zpracovavajici formulare ktery kontroluje jestli je ref. urcite hodnoty nebo nulove hodnoty.
(odpovědět)
Subber | E-mail30.5.2008 17:56
re: Potlačení refereru#
Aha, tak jestli nechces hlav. referer odesilat vubec, tak se bojim, ze k tomu browser primo nedonutis... samozrejme to pujde tak, jak to rika Emkei nb Subber, nicmene pokud tky musis odesilat cookie v ramci domeny a nasmerujes formular na svoji domenu, tak samozrejme o cookies prijdes, pokud je tedy nepredas v parametrech. A tky samozrejme cilovy hostitel uvidi ipa tvyho serveru a uzivatel nejspis uvidi byt jen na okamzik adresu tvyho skriptu (pokud jsem to teda pochopil dobre, ze Emkei chtel udelat jakoby php proxy, ktera by odfiltrovala referera).
(odpovědět)
Petrof_ | 213.192.3.*30.5.2008 21:16
re: Potlačení refereru#
myslel jsem to tak, ze se to nebude odesilat pres nejaky formular, ale primo se vytvori ten pozadavek, tedy konkretne napr. takto:
__________

<?php
$fp = @fsockopen("www.sld.tld", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)";
} else {
$post = "foo=bar&foo=bar&foo=bar";

$out = "POST /dir/script.php HTTP/1.1\r\n";
$out .= "Host: www.sld.tld\r\n";
$out .= "Connection: Close\r\n";
$out .= "jine nepovinne hlavicky vyjma refereru...";
$out .= "Cookie: foo=bar; foo=bar; foo=bar\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Content-Length: ".strlen($post)."\r\n\r\n";
$out .= $post;

fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}

fclose($fp);
}
?>

__________
(odpovědět)
Emkei | E-mail | Website | PGP31.5.2008 13:57
re: Potlačení refereru#
Subber: JJ, je to přesně tak, jak píšeš. Potřebuji odeslat pod identitou jiného uživatele (z jeho browseru) POST požadavek, ale webový server kontroluje referer zda obsahuje správnou nebo žádnou hodnotu. Nemyslel jsem tedy odeslání požadavku z mého PC, jak píše ask@t.

Emkei: Tak tadytudy cesta bohužel asi také nepovede. Je to sice varianta, kterou určitě někdy využiji a už si ji značím, ale tentokrát je můj problém trochu složitější.
Potřebuji, aby to na straně klienta vypadalo, že požadavek vyšel z jeho klienta. Totiž, aby se mu v browseru zobrazila odpověď serveru (vyžádaná webová stránka). To co popisuješ ty, by se podle mě chovalo tak, že požadavek odešle server, ale zrovna tak se mu vrátí i odpověď, kterou sice může uživateli zobrazit, ale pouze jako výsledek dotazu na doméně s uvedeným php skriptem. Přemýšlím, jak by potom šlo uživatele nasměrovat s vráceným cookie na požadovanou stránku, ale nemohu na to přijít. S největší pravděpodobností to nebude možné :(

Když nad tím tak přemýšlím, tak nejlepším způsobem by bylo zakázání refereru při odeslání požadavku pomocí javascriptu, ale nevím jak na to a zda to vůbec jde.

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP1.6.2008 16:39
re: Potlačení refereru#
[link]
(odpovědět)
asdas | 194.228.223.*1.6.2008 21:56
re: Potlačení refereru#
.cCuMiNn.: už jsi to tedy vyřešil?
(odpovědět)
Shaiiiiiiii | 81.92.146.*8.6.2008 13:35
re: Potlačení refereru#
co to poslat pres Curl... mas tam CURLOPT_REFERER a tam muzes napsat co chces...takze i nic.

abych jen tak neplacal:
$p=curl_init($url);//url-kam to chces poslat
curl_setopt($p, CURLOPT_POST, 1);
curl_setopt($p, CURLOPT_POSTFIELDS, $_POST);
curl_setopt($p, CURLOPT_REFERER, "");
curl_close($p);

(odpovědět)
kvoky | 195.113.176.*8.6.2008 14:02
re: Potlačení refereru#
kvoky: Myslím, že curl je na tom stejně jako fsockopen a s mým problémem mi tak nedokáže pomoci, viz. má odpověď Emkeiovi na jeho radu.

Shaiii: bohužel zatím ne :( Ptáš se, protože tě odpověď také zajímá, nebo máš nějakou radu :)

Ještě jednou popíši konkrétně svůj problém:
- Zveřejním odkaz na svou stránku.
- Ta obsahuje kód který odešle POST požadavek na cizí webový server.
- Tento server splní požadavek pouze tehdy, když je správná hodnota referer, nebo pokud je nullový.
- Odpověď od serveru se má zobrazit uživateli, který klikl na můj odkaz.
- Otázka zní, jak zamezit odeslání adresy mé stránky v refereru?

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP8.6.2008 21:22
re: Potlačení refereru#
podle mého mínění je to věc téměř nemožná, prohlížeče vědí, že MUSÍ posílat referer. Kdyby si autor stránky mohl "volitelně zvolit", zda se referer odešle nebo ne, byl by to silný bezpečnostní nedostatek...

myslím, že něco takového je realizovatelné pouze přes nějaké chyby v prohlížečích, jako například tato (IE):

[link]

(Microsoft Internet Explorer 7 is prone to multiple vulnerabilities that allow for referer-spoofing, HTTP-request-splitting, and HTTP-request-smuggling attacks.)

nebo tato ve FF : [link]
----
jen doufám že nemluvím moc hloupě, v této problematice se moc nevyznám...



----------
Get enlightened!
(odpovědět)
mr.Crow | E-mail | Website8.6.2008 22:23
re: Potlačení refereru#
a ta odpoved se smi zobrazit na tve domene, nebo ma byt uzivatel presmerovan na domenu, ktera odpoved vygenerovala a teprve tam se mu ma ona odpoved zobrazit?
(odpovědět)
Emkei | E-mail | Website | PGP9.6.2008 11:01
re: Potlačení refereru#
Emkei: Uživatel musí být přesměrován na doménu, která odpověď vygenerovala, s tím, že má použít cookie, které ji po požadavku přidělil právě ten server.

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP9.6.2008 22:04
re: Potlačení refereru#
mr.Crow: Zas až takový nesmysl to není, viz jeden z prvních příspěvků v tomto threadu. Pokud je na mou stránku odkazováno jako na zabezpečenou a ta odešle požadavek na nezabezpečenou stránku, pak podle RFC prohlížeče referer poslat nesmí. Bohužel se ale v tomhle případě objevují výstražná okna o vstupu na zabezpečenou stránku a pak o přechodu na stránku nezabezpečenou :(

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP8.6.2008 22:43
re: Potlačení refereru#
Iframe bez obsahu a javascriptem naplneny HTML neposle vetsinou (mimo Opery) referer.

[link]

Je to ono?

Trochu problem je u MSIE, kde se u iframe neposlou vsechny cookie, tam se to da "resit" otevrenim formulare do noveho okna (target=...) ale to uz neni tak "uzivatelsky privetive"

zdroj: [link]
(odpovědět)
martins16.6.2008 23:40
re: Potlačení refereru#
martins: Bohužel :( Potřebuji, přesměrovat uživatele na danou doménu s tím, že při tomto přesměrování odešle post data. V tebou uvedeném případě (využití iframe) je pro mě špatně nastaveno url v adressbaru :( Zkusím se však zamyslet, zda by se to nedalo využít trochu jinak, než jsem původně plánoval. Dík za radu...

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP18.6.2008 22:30
re: Potlačení refereru#
Udela to co jsi na zacatku chtel, post data bez refereru prohlizec posle ...

Takze zbyva to nove okno:
[link]

coz je zase ale trochu uzivatelsky neprivetive.
(odpovědět)
martin+ | 85.207.209.*18.6.2008 23:37
re: Potlačení refereru#
MOŽNÁ by no to mohlo pomoct odeslat klientovi něco jako pragma: no-cache. Nikdy jsem to nezkoušel, ale teoreticky by to mohlo fungovat.
(odpovědět)
tomas789@gmail.com | 213.250.202.*23.6.2008 0:45

Zpět
Svou ideální brigádu na léto najdete na webu Ideální brigáda
 
 
 

 
BBCode