Вопрос по защите сайта от инъекций и xss атак - Visavi.net https://visavi.net/ RSS - Visavi.net https://visavi.net/assets/img/images/logo_small.png RSS - Visavi.net https://visavi.net/ [email protected] (admin) [email protected] (admin) Thu, 26 Dec 2024 16:35:22 +0300 11. <strong>XwiruS</strong>, если пользователь должен ввети число то можно результат ввода просто умножить на единицу. на счет изучения я бы тебе посоветовал посмотреть курсы Специалиста по пхп, ну и если будет необходимость по другим интересующим темам https://visavi.net/topics/38853/645531 Вопрос по защите сайта от инъекций и xss атак Win4esteR Thu, 05 Sep 2013 02:38:16 +0400 Сообщения https://visavi.net/topics/38853/645531 <blockquote class="blockquote"><strong>Zдешний</strong> (3 Сентября 2013 / 11:12)<br> 9. <strong>XwiruS</strong>, решаема, да. если нужны только цифры, то регуляркой.<br> <br> <em><span style="font-size:x-small">Добавлено через 05:52 сек.</span></em><br> не помню где, вроде на хвабе видел темку, там автор предлагал фильтровать всё htmlspecialchars с режимом ENT_QUOTES. а если воспользоваться strip_tags? ну при записи в бд конечно mysql_real_escape_string, mysqli_real_escape_string, sqlite_escape_string. хм...</blockquote> Спс почитаю статейки попробую. https://visavi.net/topics/38853/645405 Вопрос по защите сайта от инъекций и xss атак Алексей Tue, 03 Sep 2013 21:54:15 +0400 Сообщения https://visavi.net/topics/38853/645405 9. <strong>XwiruS</strong>, решаема, да. если нужны только цифры, то регуляркой.<br> <br> <em><span style="font-size:x-small">Добавлено через 05:52 сек.</span></em><br> не помню где, вроде на хвабе видел темку, там автор предлагал фильтровать всё htmlspecialchars с режимом ENT_QUOTES. а если воспользоваться strip_tags? ну при записи в бд конечно mysql_real_escape_string, mysqli_real_escape_string, sqlite_escape_string. хм... https://visavi.net/topics/38853/645345 Вопрос по защите сайта от инъекций и xss атак Zдешний Tue, 03 Sep 2013 15:12:42 +0400 Сообщения https://visavi.net/topics/38853/645345 <blockquote class="blockquote"><strong>Zдешний</strong> (3 Сентября 2013 / 05:15)<br> 2147483647 - максимальное значение для int. если число будет больше, оно будет приводиться к этому</blockquote> Уже сталкивался с этой проблемой. Решаема.<br> <br> <em><span style="font-size:x-small">Добавлено через 06:17 сек.</span></em><br> <blockquote class="blockquote"><strong>Кевин Митник_HHTeam</strong> (3 Сентября 2013 / 01:15)<br> ТС, есть много базовых принципов, на основании которых и строится защита от XSS. Они описаны много где. Я вот приведу то, чем сам пользуюсь:<br> 1. все данные нужно приводить к определенному типу, ожидаемому скриптом<br> 2. В зависимости от особенностей задачи, а также сложившейся ситуации, нужно использовать правила. То есть, в одних случаях полностью все запрещать, кроме некоторых исключений. В других же - все разрешать, кроме некоторых исключений. Это так называемые &quot;черные&quot; и &quot;белые&quot; листы. <br> 3. Проверять, или же фильтровать данные. Разница в том, что, если это текстовый блок, и в нем возможна передача скрипту вредоносного кода, то данный текстовый массив можно отфильтровать на предмет всяких &quot;лишних&quot; данных. Если же это же логин пользователя, то нужно проверить, и сгенерировать сообщение об ошибке.<br> 4. Для работы с БД использовать безопасные &quot;подготовленные выражения&quot;. Они обезопасят от выполнения SQL - injection.<br> <br> А вообще-то, вся защита построена на многих факторах. Тут не только XSS, а и много других опасностей.</blockquote> с теоритической частью я знаком.<br> <blockquote class="blockquote">Im-ieee</blockquote> Невижу смысла в чтении того, что сложно понять. Почти все книги написаны одинаково. https://visavi.net/topics/38853/645335 Вопрос по защите сайта от инъекций и xss атак Алексей Tue, 03 Sep 2013 10:53:07 +0400 Сообщения https://visavi.net/topics/38853/645335 2147483647 - максимальное значение для int. если число будет больше, оно будет приводиться к этому https://visavi.net/topics/38853/645332 Вопрос по защите сайта от инъекций и xss атак Zдешний Tue, 03 Sep 2013 09:15:25 +0400 Сообщения https://visavi.net/topics/38853/645332 По-моему, нужно просто получше разобраться с php, а там и понимание защиты от инъекций придет. Если сложно по одной книге - использовать другую, смотреть код скриптов. https://visavi.net/topics/38853/645330 Вопрос по защите сайта от инъекций и xss атак Петр Tue, 03 Sep 2013 08:41:53 +0400 Сообщения https://visavi.net/topics/38853/645330 ТС, есть много базовых принципов, на основании которых и строится защита от XSS. Они описаны много где. Я вот приведу то, чем сам пользуюсь:<br> 1. все данные нужно приводить к определенному типу, ожидаемому скриптом<br> 2. В зависимости от особенностей задачи, а также сложившейся ситуации, нужно использовать правила. То есть, в одних случаях полностью все запрещать, кроме некоторых исключений. В других же - все разрешать, кроме некоторых исключений. Это так называемые &quot;черные&quot; и &quot;белые&quot; листы. <br> 3. Проверять, или же фильтровать данные. Разница в том, что, если это текстовый блок, и в нем возможна передача скрипту вредоносного кода, то данный текстовый массив можно отфильтровать на предмет всяких &quot;лишних&quot; данных. Если же это же логин пользователя, то нужно проверить, и сгенерировать сообщение об ошибке.<br> 4. Для работы с БД использовать безопасные &quot;подготовленные выражения&quot;. Они обезопасят от выполнения SQL - injection.<br> <br> А вообще-то, вся защита построена на многих факторах. Тут не только XSS, а и много других опасностей. https://visavi.net/topics/38853/645325 Вопрос по защите сайта от инъекций и xss атак Кевин Митник Tue, 03 Sep 2013 05:15:00 +0400 Сообщения https://visavi.net/topics/38853/645325 <blockquote class="blockquote"><strong>shilo</strong> (2 Сентября 2013 / 22:53)<br> Регулярка для пароля дюже сложная у тебя <img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> <br> </blockquote> Ну пароли типа Qwert1 сейчас почти на всех веб сайтах используются так как это усложняет возможность подбора + каптча будет.<br> А вот на счет ползовательских функций я уже обдумывал, но не совсем понял как ими пользоваться (нуб)<br> На данный момент имею книгу Нины Савельевой (в Интернет университете информационных технологий покупал) сижу читаю про функции, но чесно сказать &quot; смотрю в книгу, вижу фигу&quot;)) https://visavi.net/topics/38853/645320 Вопрос по защите сайта от инъекций и xss атак Алексей Tue, 03 Sep 2013 03:28:54 +0400 Сообщения https://visavi.net/topics/38853/645320 Привыкай что у каждой переменной свой тип данных, фильтруй соотвественно (регулярки достаточно редко нужны).<br> Регулярка для пароля дюже сложная у тебя <img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> <br> <br> <em><span style="font-size:x-small">Добавлено через 02:28 сек.</span></em><br> Вообще рекомендую сделать функцию-фильтр. есть стандартная, но я предпочитаю делать свою, с своими типами, чтоб можно было централизованно модифицировать фильтр, а не в каждом файле потом править).<br> Ну и использовать типа... <br> $var1=check($_POST[&#039;var1&#039;], &#039;text&#039;);<br> $var2=check($_POST[&#039;var2&#039;], &#039;num&#039;);<br> $var3=check($_POST[&#039;var3&#039;], &#039;mail&#039;);<br> и т.д. https://visavi.net/topics/38853/645307 Вопрос по защите сайта от инъекций и xss атак shilo Tue, 03 Sep 2013 02:53:37 +0400 Сообщения https://visavi.net/topics/38853/645307 <blockquote class="blockquote"><br> Если я в качестве фильтрации символов в данном примере буду использовать<br> $id = int($_POST[&#039;id&#039;]);<br> т.к. id это числовое значение, что может зделать в этом случае злоумышленник?<br> </blockquote> <br> Да ничего он не сможет сделать, все что будет приходить в этом посте, преобразуется в число, только если не ошибаюсь нужно так писать :<br> $id = (int)$_POST[&#039;id&#039;] ; https://visavi.net/topics/38853/645305 Вопрос по защите сайта от инъекций и xss атак lekt Tue, 03 Sep 2013 02:47:42 +0400 Сообщения https://visavi.net/topics/38853/645305 Прошу прощения за последний блок, не то вставил<br> <pre class="prettyprint">if( (isset($_POST&#91;&#039;id&#039;])) &amp; (isset($_POST&#91;&#039;pass&#039;])) ){ $id = $_POST&#91;&#039;id&#039;]; $sql = &quot;SELECT id, pass FROM users WHERE id=&#039;$id&#039;&quot;; $res = mysql_query($sql);</pre> тут кстати проверки вообще нету вот одна из проблем<br> <br> <em><span style="font-size:x-small">Добавлено через 07:49 сек.</span></em><br> Если я в качестве фильтрации символов в данном примере буду использовать <pre class="prettyprint">$id = int($_POST&#91;&#039;id&#039;]);</pre> т.к. id это числовое значение, что может зделать в этом случае злоумышленник? https://visavi.net/topics/38853/645299 Вопрос по защите сайта от инъекций и xss атак Алексей Tue, 03 Sep 2013 02:16:59 +0400 Сообщения https://visavi.net/topics/38853/645299 Доброй ночи!<br> Столкнулся с проблемой по защите сайта.<br> Перелопатил множество статей, но непонял что к чему. Где то пишут что достаточно использовать один метод, где то пишут опровержение этого метода.<br> Вобщем статьи выдаваемые гуглом ввели меня в заблуждение.<br> Данные переданые через form например <br> <pre class="prettyprint">$pass1 = $_POST&#91;&#039;pass1&#039;];</pre> я проверяю через<br> <pre class="prettyprint">if (preg_match(&quot;/^(?&#58;&#91;-_a-zA-Z0-9]*?&#91;A-Z])(?=&#91;-_a-zA-Z0-9]*?&#91;a-z])(?=&#91;-_a-zA-Z0-9]*?&#91;0-9])&#91;-_a-zA-Z0-9]{6,}$/i&quot;, $pass1)){true}{false}</pre> Но для каждого запроса геморно писать РВ (даный РВ я не писал, просто нагуглил, т.к. не совсем понимаю еще РВ).<br> Вот подумал может кто то сможет дать совет по защите от инъекций через урл и xss атак.<br> Так же как защититься от подмены этих данных (если это возможно) <pre class="prettyprint">if( (isset($_COOKIE&#91;&#039;id&#039;])) &amp; (isset($_COOKIE&#91;&#039;pass&#039;])) ) { if (!isset($_GET&#91;&#039;exit&#039;])) { $id=$_COOKIE&#91;&#039;id&#039;]; $pass=$_COOKIE&#91;&#039;pass&#039;]; $sql=&quot;SELECT id, pass FROM users WHERE id=&#039;$id&#039;&quot;;</pre> <br> <em><span style="font-size:x-small">Добавлено через 05:02 сек.</span></em><br> И если можно объясняйте проще, так как терминов(которые могут понять только прошареные программисты) из книг, написаных для новичков (для которых эти термины выглядят как бочка с говном) я не понимаю пока.<br> Может примеры какие то, по примерам смогу сориентироваться думаю.<br> Мне так то друг помогает с освоением, но я уже столько раз к нему обращался что как то не удобно беспокоить его по каждым непоняткам. https://visavi.net/topics/38853/645297 Вопрос по защите сайта от инъекций и xss атак Алексей Tue, 03 Sep 2013 02:00:39 +0400 Сообщения https://visavi.net/topics/38853/645297