亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

利用PHP程序設(shè)定防止MySQL注入或HTML表單濫用

瀏覽:131日期:2024-01-13 16:40:29

MySQL注入的意圖是接管網(wǎng)站數(shù)據(jù)庫(kù)并竊取信息。常見(jiàn)的開(kāi)源數(shù)據(jù)庫(kù),如MySQL,已經(jīng)被許多網(wǎng)站開(kāi)發(fā)人員用來(lái)儲(chǔ)存重要信息,如密碼,個(gè)人信息和管理信息。

MySQL之所以流行,是因?yàn)樗c最流行的服務(wù)器端腳本語(yǔ)言PHP一起使用。而且,PHP是主導(dǎo)互聯(lián)網(wǎng)的Linux- Apache服務(wù)器的主要語(yǔ)言。因此,這意味著黑客可以很容易地利用PHP就像Windows的間諜軟件一樣。

黑客向一個(gè)無(wú)擔(dān)保的網(wǎng)頁(yè)表單輸入大量惡意代碼(通過(guò)下拉菜單,搜索框,聯(lián)系表單,查詢表單和復(fù)選框)。

惡意代碼將被送到MySQL數(shù)據(jù)庫(kù),然后“注入”。要查看這個(gè)過(guò)程,首先考慮以下基本的MySQL SELECT查詢語(yǔ)句:

SELECT * FROM xmen WHERE username = 'wolverine'

此查詢會(huì)向有“xmen”表的數(shù)據(jù)庫(kù)要求返回某一段MySQL中用戶名為“wolverine”的數(shù)據(jù)。

在Web表單中,用戶將輸入wolverine,然后這些數(shù)據(jù)將被傳到MySQL查詢。

如果輸入無(wú)效,黑客還有其他方法控制數(shù)據(jù)庫(kù),如設(shè)置用戶名:

' OR ''=''

你可能認(rèn)為使用正常的PHP和MySQL句法執(zhí)行輸入是安全的,因?yàn)槊慨?dāng)有人輸入惡意代碼,他們將會(huì)得到一個(gè)“無(wú)效的查詢”的消息,但事實(shí)并非如此。黑客很聰明,且因?yàn)樯婕皵?shù)據(jù)庫(kù)清理和重設(shè)管理權(quán)限,任何一個(gè)安全漏洞都不容易糾正。

兩種對(duì)MySQL注入攻擊的常見(jiàn)誤解如下:

1.網(wǎng)管認(rèn)為惡意注入可用防病毒軟件或反間諜軟件清理。事實(shí)是,這種類型的感染利用了MySQL數(shù)據(jù)庫(kù)的弱點(diǎn)。它不能簡(jiǎn)單地被任何反間諜軟件或防病毒程序刪除。

2. MySQL注入是由于復(fù)制了從另一臺(tái)服務(wù)器或外部來(lái)源被感染的文件。事實(shí)并非如此。這種類型的感染是由于有人將惡意代碼輸入到網(wǎng)站不受保護(hù)表單,然后訪問(wèn)數(shù)據(jù)庫(kù)。MySQL注入可通過(guò)刪除惡意腳本清除掉,而不是使用防病毒程序。

用戶輸入驗(yàn)證流程

備份一個(gè)清潔的數(shù)據(jù)庫(kù),并放置在服務(wù)器外。輸出一套MySQL表并保存在桌面。

然后轉(zhuǎn)到服務(wù)器,先暫時(shí)關(guān)閉表單輸入。這意味著表單不能處理數(shù)據(jù),網(wǎng)站被關(guān)閉了。

然后啟動(dòng)清理進(jìn)程。首先,在您的服務(wù)器上,清理遺留的混亂的MySQL注入。更改所有的數(shù)據(jù)庫(kù),F(xiàn)TP和網(wǎng)站的密碼。

在最壞的情況下,如果你清理遲了,你可以再次檢查在您服務(wù)器上運(yùn)行的隱藏程序。這些隱藏程序是黑客安裝的木馬。將其完全刪除并更改所有FTP權(quán)限。掃描服務(wù)器上所有木馬程序和惡意軟件。

當(dāng)您修改PHP腳本程序時(shí),將處理表單數(shù)據(jù)。防止MySQL注入的一個(gè)好辦法是:連用戶數(shù)據(jù)也不信任。用戶輸入驗(yàn)證對(duì)于防止MySQL注入是相當(dāng)重要的。

設(shè)計(jì)一個(gè)過(guò)濾器篩選出用戶輸入,以下是幾點(diǎn)提示:

1.輸入到表單的是數(shù)字。你可以通過(guò)測(cè)試它等于或大于0.001 (假設(shè)你不接受一個(gè)零)驗(yàn)證它是不是數(shù)字。

2.如果是Email地址。驗(yàn)證其是否由允許的字符組合構(gòu)成,如“ @ ” ,A-Z,a-z或一些數(shù)字。

3.如果是人名或用戶名。可以通過(guò)是否包含任何非法字符驗(yàn)證它,如and和*,是可用于SQL注入的惡意字符。

驗(yàn)證數(shù)字輸入

下面的腳本驗(yàn)證了是否輸入一個(gè)從0.001至無(wú)限大的有效數(shù)字。值得一提的是,在一個(gè)PHP程序中,甚至可以允許使用一定范圍內(nèi)的數(shù)字。使用此驗(yàn)證腳本可確保輸入到表單的只是一個(gè)數(shù)字。

假設(shè)在程序中有三個(gè)數(shù)字變量;您需要將它們進(jìn)行驗(yàn)證,我們將它們命名num1 , num2和num3:

//Validate numerical inputif($_POST['num1'] >= 0.001 && $_POST['num2'] >= 0.001 && $_POST['num3'] >= 0.001){

}else{

}

?>

And條件可被延長(zhǎng)到能容納超過(guò)三個(gè)數(shù)字。所以,如果你有10個(gè),您將只需要擴(kuò)展AND語(yǔ)句。

這可以用來(lái)驗(yàn)證一個(gè)只接受數(shù)字的表單,如合同數(shù)量,許可證號(hào)碼,電話號(hào)碼等。

驗(yàn)證文字和郵件地址的輸入

以下可以用于驗(yàn)證諸如用戶名,名字以及電子郵件地址的表單輸入:

//Validate text inputif (! preg_match('/^[-a-z.-@,'s]*$/i',$_POST['name'])){

}

elseif ($empty==0){

}else{

}

?>

該驗(yàn)證腳本的一個(gè)優(yōu)點(diǎn)是,它不接受空白輸入。一些惡意用戶還通過(guò)空白投入操縱數(shù)據(jù)庫(kù)。使用上面的腳本,只驗(yàn)證一個(gè)文字變量, “ $name”。這意味著,如果有三個(gè)文字變量,你可以分別對(duì)每個(gè)變量設(shè)置一個(gè)驗(yàn)證腳本,以確保每一個(gè)變量都在進(jìn)入數(shù)據(jù)庫(kù)前通過(guò)了審查。

標(biāo)簽: PHP
主站蜘蛛池模板: 亚洲国产综合人成综合网站00 | 免费播放拍拍视频在线观看 | 久久久久久久91精品免费观看 | 手机看片久久高清国产日韩 | 久久h | 国产大尺度吃奶无遮无挡网 | 午夜性刺激片免费观看成人 | 一级久久 | 全免费a级毛片免费看视频免 | 在线观看毛片视频 | 欧美大片毛片大片 | 国产精品99r8免费视频2022 | 日本亚洲精品久久 | 久久久青草青青亚洲国产免观 | 久久久久久91精品色婷婷 | 麻豆视频一区二区 | 国产精品福利影院 | 一级特黄性生活大片免费观看 | 男人狂躁女人下面视频免费看 | 天天影视色香欲综合网老头 | 九九热在线免费视频 | 免费一级大片 | 毛片大全 | 婷婷六月在线 | 亚洲狠狠婷婷综合久久久久网站 | 久久91视频| 国产欧美日韩在线播放 | 特黄特色大片免费视频播放 | 丁香六月啪啪 | 国产精品玖玖玖在线观看 | 九一在线完整视频免费观看 | 黄色1级| 亚洲人成人网毛片在线播放 | 天天影视色香欲综合网老头 | 国产日本韩国不卡在线视频 | 亚洲女初尝黑人巨高清在线观看 | 青青青久在线视频免费观看 | 日韩欧美精品一区二区 | 亚洲国产色综合有声小说 | 中文字幕在线播放一区 | 亚洲视频一二区 |