Article View: pl.comp.www
Article #396269Re: Jak pokazać ścieżkę dostępu do dokumentu?
From: porneL
Date: Sat, 07 Mar 2009 15:26
Date: Sat, 07 Mar 2009 15:26
42 lines
3396 bytes
3396 bytes
On Sat, 07 Mar 2009 12:32:58 -0000, Marek <marek1967@spam.interia.pl> wrote:
> Nie do końca tak jest w praktyce - nie mówię o teorii. Po pierwsze -
> ilość znaków formularza czasem przewyższa możliwości GET. Po drugie
> znacząco utrudniam możliwość ręcznego wpływania na sposób funkcjonowania
> aplikacji
Ale POST wcale nie jest bezpieczniejszy niż GET! W obu przypadkach każdy ma możliwość przesłania ci dowolnych danych.
Nawet nie potrzeba do tego specjalnie hackerskich narzędzi, np. w Operze można otworzyć źródło strony, przerobić formularz, odświeżyć stronę z cache i wysłać przerobione dane.
Tak czy inaczej, przychodzące dane musisz sprawdzać. W przypadku PHP kod praktycznie nie różni się, czy użyjesz $_GET, $_POST czy $_SESSION.
> gdyż nie analizuję tego co ktoś z palca wpisze sobie z nudów w
> adresie URL - w szczególności automatom spamerskim, które potrafią
> udawać wypełnianie formularzy (co już doświadczyłem).
POST przyciąga spamerskie boty znacznie bardziej niż GET, a dobrym botom można zakazać GET w robots.txt.
>> Jeśli potem jeszcze przekierowujesz na stronę, która nie ma w URL
>> parametrów wyszukiwania, to już kompletnie łamiesz bezstanowość HTTP i
>> uzależniasz treść strony danych, o których istnieniu przeglądarka nie
>> ma pojęcia (zmiany danych w sesji są niewidoczne dla klientów HTTP).
>
> Dokładnie tak jest. Jednakże łamanie konwenansów ma swoje zalety
> również. Powrót do wyszukiwarki bez przekazywania do niej jakichkolwiek
> informacji prezentuje ostatnio wyszukiwaną treść - wcale nie oznacza to
> defektu lecz wręcz przeciwnie: jest to czasem bardzo użyteczne
OK, ale proponuję to robić dodatkowo, a nie zamiast tworzenia niezawodnych URL-i.
> "powrót do wyszukiwarki". Wyobraź sobie co się stałoby gdyby po drodze
> przytrafił się jakiś POST. Wtedy taki "wstecz" wywaliłby komunikat o
> potrzebie re-akceptacji formularza.
To nie ma związku z wyszukiwarką, szczególnie jakbyś prawidłowo użył GET.
Kiedy potrzeba użyć POST, to ten bug obchodzi się wysyłając status 303 i przekierowanie. Tego się nie czepiam. Czepiam się, że używasz POST zamiast GET tam, gdzie się nie powinno.
--
http://pornel.net
this.author = new Geek("porneL");
Technical Details
Message-ID:
<op.uqfg6ae2utk0y1@aimac.local>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailReferences:
<gor2lh$feg$1@achot.icm.edu.pl> <gor893$ook$1@nemesis.news.neostrada.pl> <gor9bq$oip$1@achot.icm.edu.pl> <gorb3n$a5b$1@atlantis.news.neostrada.pl> <gorvec$t65$1@achot.icm.edu.pl> <op.uqd2icdoutk0y1@aimac.local> <gotpj5$2v3$1@achot.icm.edu.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: porneL <niusy4@pornel.net> Newsgroups: pl.comp.www Subject: Re: Jak pokazać ścieżkę dostępu do dokumentu? Date: Sat, 07 Mar 2009 15:26:24 -0000 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 43 Message-ID: <op.uqfg6ae2utk0y1@aimac.local> References: <gor2lh$feg$1@achot.icm.edu.pl> <gor893$ook$1@nemesis.news.neostrada.pl> <gor9bq$oip$1@achot.icm.edu.pl> <gorb3n$a5b$1@atlantis.news.neostrada.pl> <gorvec$t65$1@achot.icm.edu.pl> <op.uqd2icdoutk0y1@aimac.local> <gotpj5$2v3$1@achot.icm.edu.pl> NNTP-Posting-Host: cpc1-acto1-2-0-cust35.4-2.cable.virginmedia.com Mime-Version: 1.0 X-Trace: inews.gazeta.pl 1236439586 18221 82.28.217.36 (7 Mar 2009 15:26:26 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Sat, 7 Mar 2009 15:26:26 +0000 (UTC) X-User: pornelspam User-Agent: Opera Mail/10.00 (MacIntel) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit