<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Кардинальный метод защиты от XSS и атак по подстановке SQL-з...</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html</link>
    <description>Ден Каминский (Dan Kaminsky (http://en.wikipedia.org/wiki/Dan_Kaminsky)), получивший известность обнаружением фундаментальной уязвимости в DNS, представил (http://recursion.com/interpolique.html) универсальную технику защиты от &quot;SQL Injection&quot; (подстановка SQL-запросов) и XSS (межсайтовый скриптинг) атак. Суть техники защиты от подстановки SQL-запросов в том, что при работе с пользовательскими данными в запросе к СУБД фигурируют не открытые данные, а строка в base64-представлении, в которой изначально отсутствуют спецсимволы. В отличие от традиционной практики анализа вводимых пользователем данных и экранирования опасных символов перед формированием запроса, метод Каминского по своей сути исключает человеческий фактор и возможность недосмотра при проверке. &lt;br&gt;&lt;br&gt;&lt;br&gt;Для наглядности рассмотрим пример. Допустим в программе имеется строка&lt;br&gt;&lt;br&gt;&amp;lt;font color=&quot;#461b7e&quot;&amp;gt;     $conn-&amp;gt;query(&quot;select * from table where fname=$fname;&quot;);&amp;lt;/font&amp;gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;в случае отсутствия должных проверок в переменной $fname мо...&lt;br&gt;&lt;br&gt;URL: http://www.dar</description>

<item>
    <title>Здесь Дэн облажался (RinNas)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#105</link>
    <pubDate>Fri, 30 Jul 2010 08:48:01 GMT</pubDate>
    <description>base64() ничем не лучше встроенных в БД методов квотирования, а минусы есть -- декодирование для БД не родное. Здесь Дэн облажался.&lt;br&gt;</description>
</item>

<item>
    <title>Кардинальный метод защиты от XSS и атак по подстановке SQL-з... (Kibab)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#104</link>
    <pubDate>Tue, 22 Jun 2010 15:49:37 GMT</pubDate>
    <description>В то время, как такие, как Вы, орут об убогости пхп на форумах, нормальные разработчики зарабатывают деньги на написанных на пхп проектах :-)&lt;br&gt;&lt;br&gt;&quot;Ах, Моська, знать, она сильна, что лает на слона...&quot;&lt;br&gt;</description>
</item>

<item>
    <title>Кардинальный метод защиты от XSS и атак по подстановке SQL-з... (noname)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#103</link>
    <pubDate>Mon, 21 Jun 2010 18:13:55 GMT</pubDate>
    <description>&amp;gt;4. Выше было замечено, что даже друпал и жумла пишутся &quot;спустя рукава&quot;. Ну а что можно написать на пхп не спустя рукава? Какой нормальный программист будет использовать эту поделку, в которой какие-то переменные конфига меняют всю суть &quot;языка&quot;, синтаксис понадёрган из 30 разных языков и то возможности, которые были изначально в других давно существующих языках, появляются только в версии 5.3, а ещё (при программистской лени) нужно зачем-то везде ставить эти $, -&amp;gt;, array() и прочие идиотские излишества. Код на пхп убог по сути пхп. И единственное универсальное средство против sql-injection для пхп - это отказ от пхп.&lt;br&gt;&lt;br&gt;А что бы вместо пхп предпочли вы?&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Кардинальный метод защиты от XSS и атак по подстановке SQL-з... (Kibab)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#102</link>
    <pubDate>Mon, 21 Jun 2010 05:34:40 GMT</pubDate>
    <description>В PHP достаточно юзать PDO и bindColumn()-методы для достижения того же самого результата. Сделано для людей (с) Вы.&lt;br&gt;</description>
</item>

<item>
    <title>Кардинальный метод защиты от XSS и атак по подстановке SQL-з... (_Vitaly_)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#100</link>
    <pubDate>Sat, 19 Jun 2010 20:15:44 GMT</pubDate>
    <description>Теперь просек. Действительно хороший выход для тех, кто без врапперов пишет.&lt;br&gt;</description>
</item>

<item>
    <title>Кардинальный метод защиты от XSS и атак по подстановке SQL-з... (StrangeAttractor)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#99</link>
    <pubDate>Fri, 18 Jun 2010 17:27:36 GMT</pubDate>
    <description>Проблема в том, что base64 - по природе своей костыль. Если подумать, &quot;экранировка&quot;, в общем-то, тоже. Надо копать в какую-то другую сторону, imho, отделять мух от котлет более радикально.&lt;br&gt;</description>
</item>

<item>
    <title>Кардинальный метод защиты от XSS и атак по подстановке SQL-з... (Аноним)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#98</link>
    <pubDate>Fri, 18 Jun 2010 17:26:41 GMT</pubDate>
    <description>&amp;gt; Зачем это?&lt;br&gt;&amp;gt; А внешних кавычек ($conn-&amp;gt;query(&quot;select * from table where fname=&#092;&quot;$fname&#092;&quot;;&quot;);) и &lt;br&gt;&amp;gt; isset($fname) недостаточно?&lt;br&gt;&lt;br&gt;PHP-программисты такие програссимты...&lt;br&gt;&lt;br&gt;ясное дело что подставление ковычек -- НЕ запускает процесс экранирования :-D !&lt;br&gt;&lt;br&gt;в Python DB-API-2.0 -- всё сделано для людей:&lt;br&gt;&lt;br&gt;c.execute(&apos;SELECT * FROM stocks WHERE symbol=?&apos;, (symbol,))&lt;br&gt;&lt;br&gt;вот вам и решение проблемы с безопасностью от инъекций&lt;br&gt;</description>
</item>

<item>
    <title>bind (tupka)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#97</link>
    <pubDate>Fri, 18 Jun 2010 15:34:44 GMT</pubDate>
    <description>&amp;gt;Вот - вот, семь раз RTFM - один раз ...  :)&lt;br&gt;&lt;br&gt;Семь раз RTFM, один раз rm -rf :D&lt;br&gt;</description>
</item>

<item>
    <title>Кардинальный метод защиты от XSS и атак по подстановке SQL-з... (vvvua)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/68030.html#96</link>
    <pubDate>Fri, 18 Jun 2010 12:02:20 GMT</pubDate>
    <description>На счет костыльного решения - 100&#037;. Что моё, что Камински.&lt;br&gt;Я не приветствую решения, которые замедляют (читай увеличивают нагрузку на CPU) работу отдельных функций СУБД. Вот если создать работу со специндексами в самой СУБД (например, для полнотекстового поиска в кодировке base64 или подобной), которые будут работать не медленнее существующих - это уже будет не костыль, а фича!&lt;br&gt; &lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
