<?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"
	>
<channel>
	<title>Comments on: Как защитить свой web ресурс. Примеры безопасных PHP скриптов.</title>
	<atom:link href="http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html/feed" rel="self" type="application/rss+xml" />
	<link>http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html</link>
	<description>Блог о программировании</description>
	<pubDate>Tue, 07 Oct 2008 12:44:53 +0000</pubDate>
	
		<item>
		<title>By: ЮАР</title>
		<link>http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-271</link>
		<dc:creator>ЮАР</dc:creator>
		<pubDate>Mon, 04 Feb 2008 15:26:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-271</guid>
		<description>Спасибо за информыцию, как раз искал.</description>
		<content:encoded><![CDATA[<p>Спасибо за информыцию, как раз искал.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Владимир</title>
		<link>http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-266</link>
		<dc:creator>Владимир</dc:creator>
		<pubDate>Sat, 02 Feb 2008 08:25:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-266</guid>
		<description>Отвечаю по-порядку.

&lt;blockquote&gt;Не рассмотрены ситуации с запросами вида
index.php?open=http://anothersite.com/xss.php&lt;/blockquote&gt;

Сначала нужно решить разрешать такие ссылки или нет. Если нет, то можно проверять наличие "?" и выводить сообщение об ошибке или еще что-нибудь...

&lt;blockquote&gt;проверка типов заливаемых файлов&lt;/blockquote&gt;

На эту тему я собирался написать небольшую статью :-)
В CI есть библиотек upload.
При создании загрузчика можно указать разрешенные типы файлов, ограничения по размеру и т.п.
Например, 
$config['allowed_types'] = 'gif&#124;jpg&#124;png';
$this-&gt;load-&gt;library('upload', $config);
Я пользовался, очень удобно.

&lt;blockquote&gt;использование простых паролей&lt;/blockquote&gt;

О "человеческом факторе" я написал (самый конец статьи).

&lt;blockquote&gt;не действие, а процесс&lt;/blockquote&gt;

Спорить сложно :-)</description>
		<content:encoded><![CDATA[<p>Отвечаю по-порядку.</p>
<blockquote><p>Не рассмотрены ситуации с запросами вида<br />
index.php?open=http://anothersite.com/xss.php</p></blockquote>
<p>Сначала нужно решить разрешать такие ссылки или нет. Если нет, то можно проверять наличие &#034;?&#034; и выводить сообщение об ошибке или еще что-нибудь&#8230;</p>
<blockquote><p>проверка типов заливаемых файлов</p></blockquote>
<p>На эту тему я собирался написать небольшую статью <img src='http://www.simplecoding.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
В CI есть библиотек upload.<br />
При создании загрузчика можно указать разрешенные типы файлов, ограничения по размеру и т.п.<br />
Например,<br />
$config['allowed_types'] = &#039;gif|jpg|png&#039;;<br />
$this->load->library(&#039;upload&#039;, $config);<br />
Я пользовался, очень удобно.</p>
<blockquote><p>использование простых паролей</p></blockquote>
<p>О &#034;человеческом факторе&#034; я написал (самый конец статьи).</p>
<blockquote><p>не действие, а процесс</p></blockquote>
<p>Спорить сложно <img src='http://www.simplecoding.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scratch</title>
		<link>http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-265</link>
		<dc:creator>Scratch</dc:creator>
		<pubDate>Fri, 01 Feb 2008 15:18:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-265</guid>
		<description>Хм... Не рассмотрены ситуации с запросами вида 
index.php?open=http://anothersite.com/xss.php
(открытие внешних источников),
и запросами вида
index.php?open=../../config.php (открытие локальных файлов)

а также ничего не сказано, например, про проверку типов заливаемых файлов (я заливаю как аватарку php файл, а потом вызываю что-то вида http://victim.org/project/images/users/112233abcd.php). При неправильной настройке сервера тоже работает :) Сам сталкивался.

Далее, забыты такие вещи как, например, использование простых паролей для администраторского входа (очень много  взломов админки -- из-за использований стандартного "admin/admin").

И забыто самое главное.
Защита сайта (и вообще ИБ) -- это не действие, а процесс. :)</description>
		<content:encoded><![CDATA[<p>Хм&#8230; Не рассмотрены ситуации с запросами вида<br />
index.php?open=http://anothersite.com/xss.php<br />
(открытие внешних источников),<br />
и запросами вида<br />
index.php?open=../../config.php (открытие локальных файлов)</p>
<p>а также ничего не сказано, например, про проверку типов заливаемых файлов (я заливаю как аватарку php файл, а потом вызываю что-то вида <a href="http://victim.org/project/images/users/112233abcd.php" rel="nofollow">http://victim.org/project/images/users/112233abcd.php</a>). При неправильной настройке сервера тоже работает <img src='http://www.simplecoding.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Сам сталкивался.</p>
<p>Далее, забыты такие вещи как, например, использование простых паролей для администраторского входа (очень много  взломов админки &#8212; из-за использований стандартного &#034;admin/admin&#034;).</p>
<p>И забыто самое главное.<br />
Защита сайта (и вообще ИБ) &#8212; это не действие, а процесс. <img src='http://www.simplecoding.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Владимир</title>
		<link>http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-262</link>
		<dc:creator>Владимир</dc:creator>
		<pubDate>Fri, 01 Feb 2008 14:17:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-262</guid>
		<description>Согласен. Но я бы сказал не говорил "правильнее", т.к. второй параметр (TRUE) пропускает данные через встроенный XSS фильтр.
Если вы используете библиотеку вроде HTML Purifier, то в двойной проверке особенного смысла нет.

С другой стороны,
$this-&gt;input-&gt;post( ‘username’ );
возвращает FALSE если параметр ‘username’ не установлен, а это удобно.</description>
		<content:encoded><![CDATA[<p>Согласен. Но я бы сказал не говорил &#034;правильнее&#034;, т.к. второй параметр (TRUE) пропускает данные через встроенный XSS фильтр.<br />
Если вы используете библиотеку вроде HTML Purifier, то в двойной проверке особенного смысла нет.</p>
<p>С другой стороны,<br />
$this->input->post( ‘username’ );<br />
возвращает FALSE если параметр ‘username’ не установлен, а это удобно.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MpaK</title>
		<link>http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-258</link>
		<dc:creator>MpaK</dc:creator>
		<pubDate>Fri, 01 Feb 2008 09:59:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.simplecoding.org/kak-zashhitit-svoj-web-resurs.html#comment-258</guid>
		<description>в CodeIgniter правильнее еще брать параметры не пост, а например

$this-&#62;input-&#62;post( 'username', TRUE );</description>
		<content:encoded><![CDATA[<p>в CodeIgniter правильнее еще брать параметры не пост, а например</p>
<p>$this-&gt;input-&gt;post( &#039;username&#039;, TRUE );</p>
]]></content:encoded>
	</item>
</channel>
</rss>
