蜜桃久久久久久久,台湾亚洲精品一区二区tv,成人片免费看,无遮挡在线观看

快消品貨源批發市場
快消品貨源分銷平臺
 
 
當前位置: 貨源批發網 » 網商學院 » 獨立商城 » DESTOON防注冊機可采用隱藏變量和防御遠程表單提交

DESTOON防注冊機可采用隱藏變量和防御遠程表單提交

放大字體  縮小字體 發布日期:2024-11-15 07:27:50  來源:電商聯盟  作者:樂發網  瀏覽次數:1

DESTOON防主機可采用隱藏變量和防御遠程表單提交 
1.隱藏變量
代碼如下:

復制代碼
<?php
if ($_POST['submit'] == “go”){
//strip_tags
$name = strip_tags($_POST['name']);
$name = substr($name,0,40);
//clean out any potential hexadecimal characters
$name = cleanHex($name);
//continue processing….
}
function cleanHex($input){
$clean = preg_replace(”![\][xX]([A-Fa-f0-9]{1,3})!”, “”,$input);
return $clean;
}
?>
<form action=”<?php echo $_SERVER['PHP_SELF'];?>” method=”post”>
<p><label for=”name”>Name</label>
<input type=”text” name=”name” id=”name” size=”20″ maxlength=”40″/></p>
<input type=”hidden” name=”table” value=”users”/>
<input type=”hidden” name=”action” value=”create”/>
<input type=”hidden” name=”status” value=”live\”/>
<p><input type=”submit” name=”submit” value=”go”/></p>
</form>

注意,隱藏變量之一暴露了表名:users。還會看到一個值為 create 的 action 字段。只要有基本的 SQL 經驗,就能夠看出這些命令可能控制著中間件中的一個 SQL 引擎。想搞大破壞的人只需改變表名或提供另一個選項,比如 delete。
現在還剩下什么問題呢?遠程表單提交。
遠程表單提交
Web 的好處是可以分享信息和服務。壞處也是可以分享信息和服務,因為有些人做事毫無顧忌。
以 表單為例。任何人都能夠訪問一個 Web 站點,并使用瀏覽器上的 File > Save As 建立表單的本地副本。然后,他可以修改 action 參數來指向一個完全限定的 URL(不指向 formHandler.php,而是指向 http://www.yoursite.com/formHandler.php,因為表單在這個站點上),做他希望的任何修改,點擊 Submit,服務器會把這個表單數據作為合法通信流接收。
首先可能考慮檢查 $_SERVER['HTTP_REFERER'],從而判斷請求是否來自自己的服務器,這種方法可以擋住大多數惡意用戶,但是擋不住最高明的黑客。這些人足夠聰明,能夠篡改頭部中的引用者信息,使表單的遠程副本看起來像是從您的服務器提交的。
處理遠程表單提交更好的方式是,根據一個惟一的字符串或時間戳生成一個令牌,并將這個令牌放在會話變量和表單中。提交表單之后,檢查兩個令牌是否匹配。如果不匹配,就知道有人試圖從表單的遠程副本發送數據。
要創建隨機的令牌,可以使用 PHP 內置的 md5()、uniqid() 和 rand() 函數,如下所示:
2. 防御遠程表單提交
代碼如下:

<?php
session_start();
if ($_POST['submit'] == “go”){
//check token
if ($_POST['token'] == $_SESSION['token']){
//strip_tags
$name = strip_tags($_POST['name']);
$name = substr($name,0,40);
//clean out any potential hexadecimal characters
$name = cleanHex($name);
//continue processing….
}else{
//stop all processing! remote form posting attempt!
}
}
$token = md5(uniqid(rand(), true));
$_SESSION['token']= $token;
function cleanHex($input){
$clean = preg_replace(”![\][xX]([A-Fa-f0-9]{1,3})!”, “”,$input);
return $clean;
}
?>
<form action=”<?php echo $_SERVER['PHP_SELF'];?>” method=”post”>
<p><label for=”name”>Name</label>
<input type=”text” name=”name” id=”name” size=”20″ maxlength=”40″/></p>
<input type=”hidden” name=”token” value=”<?php echo $token;?>”/>
<p><input type=”submit” name=”submit” value=”go”/></p>
</form>

這種技術是有效的,這是因為在 PHP 中會話數據無法在服務器之間遷移。即使有人獲得了您的 PHP 源代碼,將它轉移到自己的服務器上,并向您的服務器提交信息,您的服務器接收的也只是空的或畸形的會話令牌和原來提供的表單令牌。它們不匹配,遠程表單提交就失敗了。

樂發網超市批發網提供超市貨源信息,超市采購進貨渠道。超市進貨網提供成都食品批發,日用百貨批發信息、微信淘寶網店超市采購信息和超市加盟信息.打造國內超市采購商與批發市場供應廠商搭建網上批發市場平臺,是全國批發市場行業中電子商務權威性網站。

本文內容整合網站:百度百科知乎淘寶平臺規則

本文來源: DESTOON防注冊機可采用隱藏變量和防御遠程表單提交

分享與收藏:  網商學院搜索  告訴好友  關閉窗口  打印本文 本文關鍵字:
 
更多..資源下載
獨立商城圖文
獨立商城網商學院推薦
獨立商城點擊排行
 
手機版 手機掃描訪問
主站蜘蛛池模板: 图们市| 平遥县| 莎车县| 鄂尔多斯市| 广灵县| 芦山县| 曲麻莱县| 当涂县| 巨野县| 黔江区| 沐川县| 余姚市| 启东市| 陇川县| 涿州市| 德化县| 南召县| 宜兴市| 峡江县| 隆化县| 南郑县| 和静县| 礼泉县| 安远县| 安多县| 正定县| 宽城| 平利县| 昌邑市| 六安市| 分宜县| 馆陶县| 剑河县| 通辽市| 太谷县| 娄烦县| 新野县| 永定县| 江口县| 北辰区| 彭水|