PHP headers

HackForum

PHP headers#
uz sa s touto blbostou trapim dosti dlho tak pisem sem,
stiahol som si sniffer aby som mohol zstavit hlavicky paketov, ktre chcem odoslat na server aby som sa mohol automatcky prihlasit, a zostat prihlaseny.

prisiel som na nieco ako je toto

$out = "POST / HTTP/1.1\r\n";
$out .= "Host: jednorozec.cz\r\n";
$out .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11\r\n";
$out .= "Accept: text/xml,application/xml,application/xhtml+
xml,text/html;q=0.9,
text/plain;q=0.8,image/png,*/*;q=0.5\r\n";
$out .= "Accept-Language: en-us\r\n";
$out .= "Accept-Encoding: gzip,deflate\r\n";
$out .= "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n";
$out .= "Keep-Alive: 300\r\n";
$out .= "Connection: keep-alive\r\n";
$out .= "Referer: [link]";
$out .= "Cache-Control: max-age=0\r\n";
$out .= "Cookie: PHPSESSID=$sid; SEScookhash=$ses; SEScookuser=jednorozec\r\n\r\n";

ked toto odoslem pmocou php scriptu na srver pide mi toto


HTTP/1.1 200 OK
Date: Sat, 26 Jan 2008 04:00:13 GMT
Server: Apache/2.0.59 (Unix) mod_ssl/2.0.59 OpenSSL/0.9.8d PHP/5.1.6
X-Powered-By: PHP/5.1.6
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-cache, must-revalidate
Pragma: no-cache
Last-Modified: Sat, 26 Jan 2008 05:00:13 GMT
Keep-Alive: timeout=10, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=utf-8

teraz ide o to ako by sa dali zistit cookies ktore mi server posiela?
este pred tym ako sa odosle "moj rucne spraveny paket"
sa odoslu 2 hlavicky

GET / HTTP/1.0
od tejto ziskam takuto hlavicku

HTTP/1.1 301 Moved Permanently
Date: Sat, 26 Jan 2008 04:02:53 GMT
Server: Apache/2.0.59 (Unix) mod_ssl/2.0.59 OpenSSL/0.9.8d PHP/5.1.6
Location: [link]
Content-Length: 350
Connection: close
Content-Type: text/html; charset=iso-8859-1
X-Pad: avoid browser bug

a od druheho headeru co poslem
GET / HTTP/1.0
ziskam

HTTP/1.1 200 OK
Date: Sat, 26 Jan 2008 04:02:53 GMT
Server: Apache/2.0.59 (Unix) mod_ssl/2.0.59 OpenSSL/0.9.8d PHP/5.1.6
X-Powered-By: PHP/5.1.6
Set-Cookie: PHPSESSID=b284bdae7aae08aca290191905282fa7; path=/
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-cache, must-revalidate
Pragma: no-cache
Last-Modified: Sat, 26 Jan 2008 05:02:54 GMT
Connection: close
Content-Type: text/html; charset=utf-8

(esteraz pripominam ze tieto 2 headery sa odoslu este pred tym mojim co som si vytvoril)

ako by sa dali ziskat te cookies?

samozrejme som presne okopirval tu istu hlavicku ked som to sniffoval a robil s webovim prehliadacom.

a este ako by sa dali odosielat POST data?
vlastne to robim ale nevidim nikde informacie tej html forme <form.... >
</form>

(odpovědět)
:> | 24.67.227.*26.1.2008 5:09
re: PHP headers#
Chlape,me by zajimalo co chces udelat. Predpokladam ze chces pomoci PHP odeslat data abys zustal prihlaseny. A protoze server ma timeout tak pokud urcitou dobu nenactes nejakou stranku tak te to odhlasi takze nemuzes pouzit svoje cookies ale musis se prihlasit. Takze skript pravdepodobne spoustis opakovane cronem. Pokud chces ziskat cookies simuluj budto v netcatu (nebo mem Subber TCP/IP GUNu ;) pozadavek na stranku ktera zpracovava vysledek prihlaseni (jestli metodou POST nebo GET se dozvis z formulare kterym se standardne tyto data odesilaji , take se dozvis co musis touto metodou odeslat za polozky) , pote bys mel v hlavicce cookies obdrzet. Nebo 2. moznost - prihlas se na firefoxu a koukni do editoru cookies,ale neuvidis kdy presne tato cookies byla vytvorena (jestli jde treba o zbytecny scitaci hash vytvoreny hned na zacatku). Ale doufej ze cookie neni spojena s IP (snad ne,existuji jeste dynamicke IP) protoze webserver ktery to bude odesilat (ten kde bude ten php skript) webserveru kde chces drzet prihlaseni bude mit jinou IP.
(odpovědět)
Subber | E-mail26.1.2008 8:47
re: PHP headers#
hele jestliže se to týká toho že tě stránka odpojí a ty tam chceš být pořát online za jakýchkoliv okolností i třeba měsíc mám jednu možnost , chodím na chat www.kecal.cz a nějak jsem tam chtěl být neustále online i když to po 15 minutách kickne. tak jsem se zamyslela koumal a chat mě vždycky přesměroval na stránku která mi oznámila že jsem byl vyhozen protože jsem 15 minut nepsal. tak jsem normálně v Opeře v místním nastavení odškrkl automatické přesměrování a voalá najednou mě to nekickuje i když tam nemluvím 1500 min ;o) ale nevím já jen že se tu někdo zmínil o podobném tématu tak jen jsem to sem napsal třeba potřebuješ něco úplně jiného :o) kdyby to bylo něco jiného tak tento text jakoby tu nebyl :D
(odpovědět)
MiKee | 90.176.215.*26.1.2008 10:03
re: PHP headers#
MiKee: taky dobra moznost. Nekdy se to fakt resi ze odejdes az co nactes tu stranku. Proste ty nactenim ty stranky das pozadavek na odchod a ono ti to napise zes byl vyhozen. Akorat musis zkoumat jestli ti to treba povoli psat a jestli tam skutecne jsi videt u jinych uzivatelu.
(odpovědět)
Subber | E-mail26.1.2008 10:30
re: PHP headers#
Subber: no psát nmohu ale v seznamu nejsem ale to se mi líbí :D nikdo mi nešeptá a každý když něco chce musí na sklo :D
(odpovědět)
MiKee | 90.176.215.*28.1.2008 9:10
re: PHP headers#
tvuj problem je, ze nechapes princip fungovani protokolu HTTP a sezeni v PHP. kdyz se pripojis na nejaky server, kde se k autentizaci vyuziva sezeni, automaticky ti bude prideleno id tveho sezeni (PHPSESSID), ktere ma platnost podle nastaveni daneho serveru (vetsinou neco malo pres 20 minut). tento identifikator se ti ulozi docasne do cookie a je odkazem na realny soubor uchovany na serveru jednorozec.cz (sess_PHPSESSID). v pripade, ze nejsi na serveru aktivni, tento soubor se po uplynuti zminovane platnosti smaze a tobe se pri opetovnem nacteni stranky priradi novy identifikator => musis se znovu zalogovat. a co z toho sahodlouhyho odstavce plyne? =) ze staci, pokud se klasicky prihlasis na jednorozce, podivas se do cookie s nazvem PHPSESSID, ktery identifikator ti server priradil a tuto hodnotu zkopirujes do sveho scriptu, ktery muze vypadat nejak nasledovne (nic vic tam potreba neni, natoz POST pro odeslani formulare):

$header = "GET / HTTP/1.1\r\n";
$header .= "Host: jednorozec.cz\r\n";
$header .= "Keep-Alive: 300\r\n";
$header .= "Connection: keep-alive\r\n";
$header .= "Cookie: PHPSESSID=coooooookie";
$header .= "\r\n\r\n";

pricemz misto slova coooooookie tam dopln hash, co jsi zkopiroval z cookie PHPSESSID (pokud ti server prideli vic cookie, dopln i ty, jako oddelovac pouzij strednik).
tenhle script (kompletni) pak nekde na freehostingu nech CRONem spoustet kazdych 20 minut a doma na pocitaci budes permanentne prihlasen...

ps: jak psal subber, nektere servery kontroluji vlastniky jednotlivych sezeni podle IP, coz by byl samozrejme problem, standardne se to ale nedela a pochybuju, ze na jednorozci tomu bude jinak =)
(odpovědět)
Emkei | E-mail | Website | PGP29.1.2008 0:00

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

 
BBCode