Time of Update: 2016-07-13
CSRF站外類型的漏洞其實就是傳統意義上的外部提交資料問題,一般程式員會考慮給一些留言評論等的表單加上浮水印以防止SPAM問題,但是為了使用者的體驗性,一些操作可能沒有做任何限制,所以攻擊者可以先預測好請求的參數,在站外的Web頁面裡編寫javascript指令碼偽造檔案請求或和自動認可的表單來實現GET、POST請求,使用者在工作階段狀態下點選連結訪問站外的Web頁面,用戶端就被強迫發起請求。瀏覽器的安全缺陷現在的Web應用程式幾乎都是使用Cookie來識別使用者身份以及儲存工作階段狀態,但是
Time of Update: 2016-07-13
我們在做留言系統時經常會想把一些不出現的敏感詞過濾掉了,下面是一個簡單的實現,其實我們可以利用資料庫來儲存這些資訊,然後查出來再作判斷即可。 代碼如下複製代碼 /用Regex(把髒話想替換成什麼就替換成什麼) $str = "aa=!!|bb=@@|cc=##|dd=$$|ee=%%|ff=^^|gg=&&"; $arr = explode('|',$str); foreach($arr as $key=>$val) {
Time of Update: 2016-07-13
在php5的環境中我們的$_SERVER變數將不再受magic_quotes_gpc的保護,至於程式該如何加強自己的安全性,下面我們總結了怎麼保護php中的cookie,get,post,files資料哦,有需要的朋友可參考一下。 代碼如下複製代碼 $magic_quotes_gpc =
Time of Update: 2016-07-13
文章介紹了兩個給php程式自身加密的方法,我們常的方法base64_encode(gzdeflate($contents))這樣來加密了,第二種方法不多見有需要的朋友也可以參考一下。執行個體1 代碼如下複製代碼 function encode_file_contents($filename) { $type=strtolower(substr(strrchr($filename,'.'),1)); if('php'==$type && is_file($filename) && is_
Time of Update: 2016-07-13
這是一個考慮比較全面的php和sql結合的防注入程式,在php方便主要對get,post,cooke,files進行了過濾,在sql中我們就對delete,update一些查詢命令進行檢測過濾。SQL注入攻擊的總體思路·發現SQL注入位置; ·判斷後台資料庫類型; ·確定XP_CMDSHELL可執行情況 ·發現WEB虛擬目錄 ·上傳ASP,php,jsp木馬;
Time of Update: 2016-07-13
對於sql注入與防注入其實就是一個攻與防的,今天我們要告訴大家最基本的注入和防止方法,原理都是利用了php或mysql的一些特性而我們沒注意所造成的。一個簡單的SQL注入攻擊案例假如我們有一個公司網站,在網站的後台資料庫中儲存了所有的客戶資料等重要訊息。假如網站登入頁面的代碼中有這樣一條命令來讀取使用者資訊。 代碼如下複製代碼 $q = "SELECT `id` FROM `users` WHERE `username`= ' " .$_GET['username']. " '
Time of Update: 2016-07-13
一般在用驗證碼時我們都要實現局部重新整理了,這個是必然的,也是提高使用者體驗的一點,下面我們來看一個php驗證碼在實際應用中的用法,有需要的朋友來參考一下。/* * Auth_code()是驗證碼函數 * @access public * @param int $width 表示驗證碼的長度,預設為80 * @param int $height 表示驗證碼的高度,預設為20 * @param int $num 表示驗證碼中數字位元,預設為4 * @param int $line
Time of Update: 2016-07-13
開啟magic_quote_gpc=on之後,能實現addslshes()和stripslashes()這兩個函數的功能。在PHP4.0及以上的版本中,該選項預設情況下是開啟的,所以在PHP4.0及以上的版本中,就算PHP程式中的參數沒有進行過濾,PHP系統也會對每一個通過GET、POST、COOKIE方式傳遞的變數自動轉換,換句話說,輸入的注入攻擊代碼將會全部被轉換,將給攻擊者帶來非常大的困難。 雖然如此,攻擊者仍然有機會進行SQL注入攻擊。。。。。。前提是,當參數為數字型的時候,
Time of Update: 2016-07-13
這是我自己碰到的問題,在一台機器出現了apache
Time of Update: 2016-07-13
我們舉例只講linux的系統,但是防止方法在任何系統都是有效,下面我們先來看看等操作你可以這樣使用 代碼如下複製代碼 http://www.xxx.com/index.php?page=../etc/passwd http://www.xxx.com/index.php?page=../../../etc/passwd http://www.xxx.com/index.php?page=..../../etc/passwd擷取更多資料: etc/profile
Time of Update: 2016-07-13
PHP本身再老版本有一些問題,比如在 php4.3.10和php5.0.3以前有一些比較嚴重的bug,所以推薦使用新版。另外,目前鬧的轟轟烈烈的SQL Injection也是在PHP上有很多利用方式,所以要保證安全,PHP代碼編寫是一方面,PHP的配置更是非常關鍵。我們php手手工安裝的,php的預設設定檔在
Time of Update: 2016-07-13
首先測試 magic_quotes_gpc 是否為 ON, 如果是,則用 array_map() 遞迴還原轉義的資料,下面看用 stripslashes 還原 addslashes 轉義後的資料 的簡單實現代碼 代碼如下複製代碼 if(get_magic_quotes_gpc()) { function stripslashes_deep($value) { $value = is_array($value) ?
Time of Update: 2016-07-13
SQL注入攻擊是駭客攻擊網站最常用的手段。如果你的網站沒有使用嚴格的使用者輸入檢驗,那麼常容易遭到SQL注入攻擊。SQL注入攻擊通常通過給網站資料庫提交不良的資料或查詢語句來實現,很可能使資料庫中的紀錄遭到暴露,更改或被刪除。 為了防止SQL注入攻擊,PHP內建一個功能可以對輸入的字串進行處理,可以在較底層對輸入進行安全上的初步處理,也即Magic Quotes。(php.ini
Time of Update: 2016-07-13
文章介紹了關於php 自訂加密解密,很多朋友都是用php內建的,我們如果自己寫個會怎麼樣呢,下面看代碼。 代碼如下複製代碼 // 說明:PHP 寫的加密函數,支援私人密鑰 // 整理:http://www.bKjia.c0m function keyED($txt,$encrypt_key) { $encrypt_key = md5($encrypt_key); $ctr=0; $tmp = ""; for ($i=0;$i {
Time of Update: 2016-07-13
PHP 的 Mcrypt 加密庫又需要額外設定,很多人都是直接使用md5()函數加密,這個方法的確安全,但是因為md5是無法復原加密,無法還原密碼,因此也有一些不便之處,本文介紹加密函數支援私密金鑰,用起來還是不錯的 代碼如下複製代碼 // 說明:PHP 寫的加密函數,支援私人密鑰 function keyED($txt,$encrypt_key) { $encrypt_key = md5($encrypt_key); $ctr=0; $tmp = "";
Time of Update: 2016-07-13
自己寫的一款sql注入檢測函數,可以有效檢測使用者post,get過來的參考進行過濾,有需要的朋友參考一下。 代碼如下複製代碼 /*sql 注入 字元的檢測* 在所有使用者輸入的資料,post傳參, get傳參 都需要檢測下 * 如果有匹配到關鍵字 則 返回該關鍵字 否則返回false* 這個和敏感字元的檢測不是一樣的*/function Filter_SQL($strData) { $strFilter=$blnFlag=$arrayFilter=''; $strFilter="
Time of Update: 2016-07-13
本文章介紹了關於利用了php的ase64_encode和urlencode來對字串進行簡單的加密處理,也是比較常用的方法,有需要的同學可參考一下本文章哦。base64_decode將 BASE64 編碼字串解碼。文法: string base64_decode(string encoded_data);傳回值: 字串函數種類: 編碼處理 內容說明本函數將以 MIME BASE64 編碼字串解碼。解碼後的字串可能為中文字串或其它的二進位資料。例 代碼如下複製代碼 $str =
Time of Update: 2016-07-13
本文章分享的這個php加密類是一個可以支援中文和英文的可加密碼可解密的php實作類別檔案,有需要的同學可以參考一下,不過最好把文檔編碼設定為utf-8哦。下面代碼儲存成MD5Crypt.class.php檔案 代碼如下複製代碼 class MD5Crypt { /** * Enter description here ... * @param unknown_type $str * @return string */ public final static function
Time of Update: 2016-07-13
這裡介紹了一款安全性比較高的驗證產生程式,可以帶幹擾線等內容,可以有效防止使用者用程式識別驗證碼的難度了。 代碼如下複製代碼 /* * Created on 2011-3-11 * Programmer : xiaoyao, QQ:1045195056 驗證通過判斷輸入值與$_SESSION['check_pic']值 */session_start(); function RandAscii($number){//$number產生數字和字母個數$arr=array('0','1',
Time of Update: 2016-07-13
利用php自身帶的函數來實現圖片驗證碼產生功能,有需要的朋友可以參考一下。//must start or continue session and save CAPTCHA string in $_SESSION for //it to be available to other requests if(!isset($_SESSION)){ session_start(); header('Cache-control:private'); } //create a 65*20 pixel