<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7333616449766036283</id><updated>2011-04-21T14:46:56.527-07:00</updated><title type='text'>web</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog-dejavu.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7333616449766036283/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blog-dejavu.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Kornienko Dmitry</name><uri>http://www.blogger.com/profile/05042804552278190056</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7333616449766036283.post-27720277769727949</id><published>2008-05-08T07:41:00.000-07:00</published><updated>2008-05-08T08:20:59.110-07:00</updated><title type='text'>ASP.NET. Валидация и XSS-уязвимости</title><content type='html'>Для начала немного о том что такое XSS-уязвимости.   Это уязвимость на сервере, позволяющая внедрить в генерируемую страницу на сервере нежелательные скрипты (назовем их так).  &lt;br /&gt;&lt;br /&gt;Для ASP.NET нужно обязательно проверять данные которые отправляет ваша форма.&lt;br /&gt;Делать это можно так:&lt;br /&gt;&lt;br /&gt;У директивы Page есть булевое свойство "ValidateRequest",  &lt;br /&gt;которое проверяет все данные переданные вашей формой.         &lt;br /&gt; Вот как быть, если по каким-то причинам вам понадобится отключить проверку всей формы:&lt;br /&gt;&lt;br /&gt;Например у вас есть форма, на ней текстовое поле TextBox1. Чтобы проверить его, достаточно получать данные так:&lt;br /&gt;&lt;br /&gt;Server.&lt;span&gt;&lt;span&gt;&lt;span&gt;HtmlEncode&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;(TextBox1.Text);&lt;br /&gt;&lt;br /&gt;        или&lt;br /&gt;&lt;br /&gt;HttpUtility.&lt;span&gt;&lt;span&gt;&lt;span&gt;HtmlEncode&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;(TextBox1.Text);&lt;br /&gt;&lt;br /&gt;Тем самым вы проверяете данные на XSS уязвимость. Если же в данных найдены запрещенные сиволы, они будут заменены. Например  &amp;lt;script&amp;gt;  бедет заменен на  &amp;amp;lt;script&amp;amp;gt;.&lt;br /&gt;&lt;br /&gt;Рекомендую всегда проверять то что "уходит" на сервер, чтобы предотвратить XSS!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7333616449766036283-27720277769727949?l=blog-dejavu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog-dejavu.blogspot.com/feeds/27720277769727949/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7333616449766036283&amp;postID=27720277769727949' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7333616449766036283/posts/default/27720277769727949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7333616449766036283/posts/default/27720277769727949'/><link rel='alternate' type='text/html' href='http://blog-dejavu.blogspot.com/2008/05/aspnet-xss.html' title='ASP.NET. Валидация и XSS-уязвимости'/><author><name>Kornienko Dmitry</name><uri>http://www.blogger.com/profile/05042804552278190056</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7333616449766036283.post-6519630562952020262</id><published>2008-05-03T07:47:00.000-07:00</published><updated>2008-05-03T08:42:38.100-07:00</updated><title type='text'>Условные комментарии IE</title><content type='html'>Тот кто в жизни создавал кроссбраузерную верстку, сталкивался, когда один из браузеров показывает не так как хотелось бы...  Вот как обойти это для Internet Explorer.&lt;br /&gt;&lt;br /&gt;Существуют так называемые «условные комментарии»  для Internet Explorer.  Выглядят они как обычные комментарии, но с добавлением некоторых команд. Приведу пример. Скажем нам нужно вывести заголовок H1 только в Internet Explorer 6-ой версии.  Выглядеть это будет так:&lt;br /&gt;&lt;br /&gt;&amp;lt;!--[if IE 6]&amp;gt;&lt;br /&gt;          &amp;lt;h1&amp;gt;Заголовок виден только в 6-ой версии IE&amp;lt;/h1&amp;gt;&lt;br /&gt;&amp;lt;![endif]&amp;gt;&lt;br /&gt;&lt;br /&gt;Также возможно использовать операторы. Вот список возможных операторов:&lt;br /&gt;&lt;br /&gt;        !            -     отрицание&lt;br /&gt;        lt           -     меньше чем&lt;br /&gt;        lte         -     меньше или равно&lt;br /&gt;        gt          -     больше чем&lt;br /&gt;        gte        -     больше или равно&lt;br /&gt;&lt;br /&gt;Пример. Вставить CSS стили в том случае если версия IE миньше или равна Internet Explorer 6&lt;br /&gt;&lt;br /&gt;&amp;lt;!--[if lte IE 6]&amp;gt;&lt;br /&gt;          &amp;lt;link href="ie.css" rel="stylesheet" type="text/css" /&amp;gt;&lt;br /&gt;&amp;lt;![endif]&amp;gt;&lt;br /&gt;&lt;br /&gt;Надеюсь,  «условный комментарий» &amp;lt;!--[if IE 8]&amp;gt;  писать не придется никогда :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7333616449766036283-6519630562952020262?l=blog-dejavu.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog-dejavu.blogspot.com/feeds/6519630562952020262/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7333616449766036283&amp;postID=6519630562952020262' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7333616449766036283/posts/default/6519630562952020262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7333616449766036283/posts/default/6519630562952020262'/><link rel='alternate' type='text/html' href='http://blog-dejavu.blogspot.com/2008/05/ie.html' title='Условные комментарии IE'/><author><name>Kornienko Dmitry</name><uri>http://www.blogger.com/profile/05042804552278190056</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
