PHP安全編程小記

來源:互聯網
上載者:User

1,防範SQL注入,HTML中JS指令碼注入

原則:不要相信對於用戶端提交的值,必須經過安全處理後才可以使用。比如:

$variable = $_POST['user_input'];
$variable = mysql_real_escape_string($variable);
$variable = stripslashes($variable);
$variable = htmlentities($variable); //比如會將 <b>hi</b>轉化為&lt;b&gt;hi&lt;/b&gt
$variable = strip_tags($variable);//還可以去掉HTML標籤

通常的做法是:

function sanitizeString($var)
{
$var = stripslashes($var);
$var = htmlentities($var);
$var = strip_tags($var);
return $var;
}

 

function sanitizeMySQL($var)
{
$var = mysql_real_escape_string($var);
$var = sanitizeString($var);
return $var;
}

3,防範MD5密碼暴力密碼破解攻擊

許多網站資料庫被攻破後,其所儲存的MD5值會被用來作為對其它網站進行密碼猜測暴力密碼破解攻擊,因此我們需要構造不同於其他網站的MD5值,即使同一個使用者使用相同密碼,那麼在這裡的MD5值要與其在其他網站上所儲存的不一致,這時可用Salting技術,比如:
令salt=”he$&*sdf123”  passmd5=md5(“$salt” . “$password”);

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.