<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Komentarze do: Ochrona przed XSS &#8211; podstawy</title>
	<atom:link href="http://www.beldzio.com/ochrona-przed-xss-podstawy/feed" rel="self" type="application/rss+xml" />
	<link>http://www.beldzio.com/ochrona-przed-xss-podstawy</link>
	<description>Bełdziowe spojrzenie na aplikacje internetowe</description>
	<lastBuildDate>Wed, 23 Nov 2011 11:05:26 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
	<item>
		<title>Autor: kl</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-884</link>
		<dc:creator>kl</dc:creator>
		<pubDate>Thu, 13 May 2010 22:56:26 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-884</guid>
		<description>Strip_tags nie jest właściwe. Odpowiednie jest htmlspecialchars(), które równie dobrze unieszkodliwia tagi, ale nie rujnuje przy tym tekstu i pozwala napisać &quot;1 mniejsze od 2&quot; bez wycinania znaku mniejszości.</description>
		<content:encoded><![CDATA[<p>Strip_tags nie jest właściwe. Odpowiednie jest htmlspecialchars(), które równie dobrze unieszkodliwia tagi, ale nie rujnuje przy tym tekstu i pozwala napisać &#8222;1 mniejsze od 2&#8243; bez wycinania znaku mniejszości.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: panisher</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-809</link>
		<dc:creator>panisher</dc:creator>
		<pubDate>Fri, 04 Dec 2009 18:41:47 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-809</guid>
		<description>Witam, a ja proponuje całą tablice $_GET zapisywać jako jedna zmieną typu string a nie tablice. 
Bardzo prosto to wykonac podam na przykładzie obiektu: mamy plik router.php

	class routers {
		static public function _url() {
			if($_GET[&#039;myurl&#039;]) {
				$exp=explode(&#039;/&#039;, utf8::_mb_strtolower(str_replace(array(&#039; &#039;,&#039;.html&#039;), array(&#039;&#039;,&#039;&#039;), trim(htmlentities($_GET[&#039;myurl&#039;])))));
				unset($_GET);
			}
                        $result-&gt;get-&gt;$exp;

                        z Post robimy podobnie... .
                        $result-&gt;post-&gt;$filtrpost
                       return($result);  
w htaccess dodajemy dyrektywe:
RewriteRule ^(.+)$ index.php?myurl=$1 [QSA]   
Przykładowy adres www.panisher.pl/start/start.html --&gt;.html jest usuwany w $_GET ale widoczny w url na stronie. Znaki specjalne zastępują encje, a znak / dzieli na tablice naszą przefiltrowaną, ponieważ $exp[0] to nazwa pliku,a $exp[1] nazwa metody odpalanej.

Jest to kawałek mojego frameworka jaki zastosowałem na panisher.pl, jak ktoś znajdzie lukę niech napiszę.
Dostęp odbywa się przez $url = routers::_url();</description>
		<content:encoded><![CDATA[<p>Witam, a ja proponuje całą tablice $_GET zapisywać jako jedna zmieną typu string a nie tablice.<br />
Bardzo prosto to wykonac podam na przykładzie obiektu: mamy plik router.php</p>
<p>	class routers {<br />
		static public function _url() {<br />
			if($_GET['myurl']) {<br />
				$exp=explode(&#8216;/&#8217;, utf8::_mb_strtolower(str_replace(array(&#8216; &#8216;,&#8217;.html&#8217;), array(&#8221;,&#8221;), trim(htmlentities($_GET['myurl'])))));<br />
				unset($_GET);<br />
			}<br />
                        $result-&gt;get-&gt;$exp;</p>
<p>                        z Post robimy podobnie&#8230; .<br />
                        $result-&gt;post-&gt;$filtrpost<br />
                       return($result);<br />
w htaccess dodajemy dyrektywe:<br />
RewriteRule ^(.+)$ index.php?myurl=$1 [QSA]<br />
Przykładowy adres <a href="http://www.panisher.pl/start/start.html" rel="nofollow">http://www.panisher.pl/start/start.html</a> &#8211;&gt;.html jest usuwany w $_GET ale widoczny w url na stronie. Znaki specjalne zastępują encje, a znak / dzieli na tablice naszą przefiltrowaną, ponieważ $exp[0] to nazwa pliku,a $exp[1] nazwa metody odpalanej.</p>
<p>Jest to kawałek mojego frameworka jaki zastosowałem na panisher.pl, jak ktoś znajdzie lukę niech napiszę.<br />
Dostęp odbywa się przez $url = routers::_url();</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Zdzich</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-762</link>
		<dc:creator>Zdzich</dc:creator>
		<pubDate>Wed, 19 Aug 2009 15:50:59 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-762</guid>
		<description>@Kokoss: przecież  to zwykły GET - do każdego GETa coś możesz dokleić ;)</description>
		<content:encoded><![CDATA[<p>@Kokoss: przecież  to zwykły GET &#8211; do każdego GETa coś możesz dokleić ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: m45</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-441</link>
		<dc:creator>m45</dc:creator>
		<pubDate>Mon, 16 Mar 2009 08:00:22 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-441</guid>
		<description>Jeszcze było coś takiego co przerabiało znnaki na liczby i potem mozna bylo przy filtrowaniu addslashes lub magic_quotes_gpc dalej walic XSS-a.</description>
		<content:encoded><![CDATA[<p>Jeszcze było coś takiego co przerabiało znnaki na liczby i potem mozna bylo przy filtrowaniu addslashes lub magic_quotes_gpc dalej walic XSS-a.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Kokoss</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-32</link>
		<dc:creator>Kokoss</dc:creator>
		<pubDate>Wed, 06 Feb 2008 14:58:29 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-32</guid>
		<description>Dobry artykuł. Jak już jechać po nfz to jechać :) Register globals też mają włącznone :) http://www.nfz.gov.pl/new/szukaj.php?szukana=%22%3EO%20tak!%20Mamy%20w%B3%B9czone%20register%20globals! :)) Tylko mi jakoś nie udało się użyć tagu h1 :p Ale fakt faktem - XSS jest :) Super art.</description>
		<content:encoded><![CDATA[<p>Dobry artykuł. Jak już jechać po nfz to jechać :) Register globals też mają włącznone :) <a href="http://www.nfz.gov.pl/new/szukaj.php?szukana=%22%3EO%20tak!%20Mamy%20w%B3%B9czone%20register%20globals" rel="nofollow">http://www.nfz.gov.pl/new/szukaj.php?szukana=%22%3EO%20tak!%20Mamy%20w%B3%B9czone%20register%20globals</a>! :)) Tylko mi jakoś nie udało się użyć tagu h1 :p Ale fakt faktem &#8211; XSS jest :) Super art.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Kokoss</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-31</link>
		<dc:creator>Kokoss</dc:creator>
		<pubDate>Wed, 06 Feb 2008 14:58:28 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-31</guid>
		<description>Dobry artykuł. Jak już jechać po nfz to jechać :) Register globals też mają włącznone :) http://www.nfz.gov.pl/new/szukaj.php?szukana=%22%3EO%20tak!%20Mamy%20w%B3%B9czone%20register%20globals! :)) Tylko mi jakoś nie udało się użyć tagu h1 :p Ale fakt faktem - XSS jest :) Super art.</description>
		<content:encoded><![CDATA[<p>Dobry artykuł. Jak już jechać po nfz to jechać :) Register globals też mają włącznone :) <a href="http://www.nfz.gov.pl/new/szukaj.php?szukana=%22%3EO%20tak!%20Mamy%20w%B3%B9czone%20register%20globals" rel="nofollow">http://www.nfz.gov.pl/new/szukaj.php?szukana=%22%3EO%20tak!%20Mamy%20w%B3%B9czone%20register%20globals</a>! :)) Tylko mi jakoś nie udało się użyć tagu h1 :p Ale fakt faktem &#8211; XSS jest :) Super art.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Drexav</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-30</link>
		<dc:creator>Drexav</dc:creator>
		<pubDate>Wed, 31 Oct 2007 23:19:01 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-30</guid>
		<description>Świetnie!</description>
		<content:encoded><![CDATA[<p>Świetnie!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Michał `Bełdzio` Ławicki</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-29</link>
		<dc:creator>Michał `Bełdzio` Ławicki</dc:creator>
		<pubDate>Mon, 06 Aug 2007 14:55:55 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-29</guid>
		<description>@Tomek temu artukułowi sporo brakuje ;-) pisałem go 2 lata temu, a przez te dwa lata moja wiedza się troszkę zwiększyła ;-) Zostawiłem go tu z kwestii sentymentalnej ;-) Teraz na bieżąco będę pisał o podobnych rzeczach, ale już troszkę konkretniej (mam nadzieję) :)&lt;br /&gt;&lt;br /&gt;btw pisanie obiektowo jest bardziej naturalne :) np&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;class Ptak&lt;br /&gt;{&lt;br /&gt;  public function lec(){}&lt;br /&gt;  public function cwirkaj(){}&lt;br /&gt;  public function zjedzRobaka(){}&lt;br /&gt;}&lt;br /&gt;$oPtak -&gt; lec( ) etc :) &lt;br /&gt;&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>@Tomek temu artukułowi sporo brakuje ;-) pisałem go 2 lata temu, a przez te dwa lata moja wiedza się troszkę zwiększyła ;-) Zostawiłem go tu z kwestii sentymentalnej ;-) Teraz na bieżąco będę pisał o podobnych rzeczach, ale już troszkę konkretniej (mam nadzieję) :)</p>
<p>btw pisanie obiektowo jest bardziej naturalne :) np</p>
<p><code><br />class Ptak<br />{<br />  public function lec(){}<br />  public function cwirkaj(){}<br />  public function zjedzRobaka(){}<br />}<br />$oPtak -&gt; lec( ) etc :) <br /></code></p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: Tomek</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-28</link>
		<dc:creator>Tomek</dc:creator>
		<pubDate>Mon, 06 Aug 2007 13:46:06 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-28</guid>
		<description>Artykuł zgodnie z nazwą jest skierowany raczej do bardzo początkujących webmasterów.&lt;br /&gt;Co ro register_globals to jest za tym by wyłączyć, a przypisać sobie do zmiennych przefiltrowane dane z formularza.&lt;br /&gt;Co do pisania obiektowo to sam sie przyznam ze pisze strukturalnie, a idea obiektowa jest dla mnie poki co nie naturalna. Dopiero raczkuje ;)</description>
		<content:encoded><![CDATA[<p>Artykuł zgodnie z nazwą jest skierowany raczej do bardzo początkujących webmasterów.<br />Co ro register_globals to jest za tym by wyłączyć, a przypisać sobie do zmiennych przefiltrowane dane z formularza.<br />Co do pisania obiektowo to sam sie przyznam ze pisze strukturalnie, a idea obiektowa jest dla mnie poki co nie naturalna. Dopiero raczkuje ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Autor: sxs</title>
		<link>http://www.beldzio.com/ochrona-przed-xss-podstawy/comment-page-1#comment-27</link>
		<dc:creator>sxs</dc:creator>
		<pubDate>Wed, 30 May 2007 17:57:06 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/wordpress/?p=155#comment-27</guid>
		<description>&quot;&gt;&lt;h1&gt;Test XSS&lt;/h1&gt;</description>
		<content:encoded><![CDATA[<p>&quot;&gt;&lt;h1&gt;Test XSS&lt;/h1&gt;</p>
]]></content:encoded>
	</item>
</channel>
</rss>

