免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

PHP留言板安全開發(fā):從SQL注入到XSS的全鏈路防護(hù)筆記

PHP留言板安全開發(fā):從SQL注入到XSS的全鏈路防護(hù)筆記 安全開發(fā)筆記做到第22天話題輪到了一個既基礎(chǔ)又容易翻車的東西PHP留言板。也許有人覺得留言板太小兒科了路由、接口、緩存、消息隊(duì)列才是生產(chǎn)級但真實(shí)情況恰好相反。留言板幾乎是Web安全攻防的濃縮樣本一個表單進(jìn)來經(jīng)過超全局變量接收落到數(shù)據(jù)庫再原路吐回頁面中間還夾著會話狀態(tài)和第三方組件。這一圈走下來如果每一層都沒有邊界處理普通的一句話都能把站打穿。這次筆記我想把留言板當(dāng)載體重新梳理PHP安全開發(fā)的幾個核心命題超全局變量的使用邊界、數(shù)據(jù)庫操作里的參數(shù)化查詢、第三方插件引入的風(fēng)險(xiǎn)控制以及一個完整的留言板功能從設(shè)計(jì)到上線的安全加固流程。適合正在學(xué)Web安全開發(fā)的人也適合寫過PHP但沒系統(tǒng)性想過“數(shù)據(jù)從哪來到哪去、該在哪設(shè)防”的開發(fā)者。不要急著寫功能先把數(shù)據(jù)流和安全邊界想清楚。下面是我整理出來的完整筆記。1. 為什么留言板項(xiàng)目在安全開發(fā)里地位這么高很多初學(xué)者問我的第一句話是安全開發(fā)為什么不講一個更復(fù)雜的系統(tǒng)比如電商、CMS非要拿留言板說事我的回答是留言板是唯一一個能用較短時間講完“輸入到處理、存儲到輸出”完整閉環(huán)的項(xiàng)目而且每個環(huán)節(jié)都有現(xiàn)實(shí)攻擊案例。電商系統(tǒng)的大頭在業(yè)務(wù)邏輯權(quán)限留言板的大頭在通用安全基線后者才是安全開發(fā)的地基。留言板這個形態(tài)幾乎覆蓋了一個Web應(yīng)用最常見的攻擊面用戶提交的數(shù)據(jù)會進(jìn)數(shù)據(jù)庫有注入面會展示給其他人有XSS面會觸發(fā)管理操作有CSRF和越權(quán)面還會拉動周邊資源比如富文本編輯器、驗(yàn)證碼庫、Markdown解析器引入第三方插件后就有了供應(yīng)鏈面。一個看似簡單的“寫一條留言、展示一條留言”如果只做功能不修安全整體脆弱性比一個結(jié)構(gòu)復(fù)雜的后臺系統(tǒng)還高。更關(guān)鍵的是留言板的數(shù)據(jù)流非常清晰適合建立安全開發(fā)思維模型。不管以后做API、小程序后端還是管理平臺你都要回答這幾個問題用戶輸入到了哪個超全局變量經(jīng)過哪些過濾函數(shù)以什么方式進(jìn)入SQL以什么方式渲染到前端第三方依賴是否可信這套思維模型一旦建立換什么框架、換什么語言都能復(fù)用。所以寫留言板寫的不是留言板本身而是把每個開發(fā)者腦子里那根數(shù)據(jù)邊界的弦接上。1.1 留言板牽出的六層風(fēng)險(xiǎn)清單我習(xí)慣在動手前把風(fēng)險(xiǎn)點(diǎn)列一遍相當(dāng)于給項(xiàng)目畫風(fēng)險(xiǎn)地圖。留言板對應(yīng)的風(fēng)險(xiǎn)層大概是六層入口層超全局變量的使用不規(guī)范導(dǎo)致參數(shù)來源混淆或變量覆蓋。校驗(yàn)層對數(shù)據(jù)類型、長度、字符集缺少約束臟數(shù)據(jù)直接進(jìn)入業(yè)務(wù)邏輯。存儲層SQL語句拼接用戶輸入形成注入點(diǎn)。輸出層用戶內(nèi)容未經(jīng)編碼直接輸出形成存儲型XSS。會話層身份認(rèn)證和CSRF防護(hù)缺失管理操作可被偽造。供應(yīng)鏈層第三方插件帶版本漏洞或惡意代碼拖垮整個應(yīng)用。后面的所有工作本質(zhì)上是讓這六層風(fēng)險(xiǎn)降到可控范圍。帶著這張清單去看后面的章節(jié)思路會順很多。1.2 一句話概括今天的目標(biāo)今天的目標(biāo)不是做一個演示用的Hello留言板而是做一個有基礎(chǔ)抗攻擊能力的留言板能防SQL注入、能防存儲型XSS、能防CSRF、能控制第三方插件的引入風(fēng)險(xiǎn)。這個標(biāo)準(zhǔn)看著不高但很多存量項(xiàng)目其實(shí)一條都沒做到。2. PHP超全局變量每一個入口都可能被投毒PHP開發(fā)里最常用的就是超全局變量但大多數(shù)人只把它們當(dāng)成拿參數(shù)的盒子沒人想過這些盒子里的數(shù)據(jù)是帶著敵意的。這一節(jié)把每個超全局變量的角色和風(fēng)險(xiǎn)邊界過一遍。2.1 超全局變量全家桶與數(shù)據(jù)來源PHP常用的超全局變量有8個留言板場景里至少會碰到6個。我直接用表格梳理一下變量名數(shù)據(jù)來源在留言板里的角色$_GETURL查詢字符串分頁參數(shù)、搜索關(guān)鍵字$_POSTHTTP請求體表單字段留言內(nèi)容、用戶名、郵箱、CSRF Token$_REQUESTGET與POST合并不推薦使用見下文$_COOKIECookie頭登錄令牌通常是會話ID$_SESSION服務(wù)端會話存儲登錄狀態(tài)、CSRF Token、限流計(jì)數(shù)器$_SERVER服務(wù)端環(huán)境客戶端IP、User-Agent、請求方法$_FILES文件上傳字段留言板頭像如果做上傳功能$_ENV環(huán)境變量應(yīng)用配置這里單說 $_REQUEST。很多老代碼喜歡用它一把梭既能接GET又能接POST省事。但問題就出在省事上它把數(shù)據(jù)來源搞混了當(dāng)GET和POST同時出現(xiàn)同名參數(shù)時$_REQUEST 的優(yōu)先級在不同的PHP配置下還不一樣出了問題排查難度直接拉高。安全開發(fā)的第一原則是來源清晰誰敢把多個入口混成一個誰就在給后續(xù)維護(hù)埋雷。所以我自己的代碼里只用 $_GET 和 $_POST不用 $_REQUEST。2.2 超全局變量里常見的三個坑第一個坑是 $_SERVER[PHP_SELF]。它本身是服務(wù)器生成的腳本路徑看起來應(yīng)該安全但實(shí)際上可以被URL污染。如果在地址欄構(gòu)造一個包含XSS payload的路徑部分場景下直接輸出 PHP_SELF 就會觸發(fā)反射型XSS。處理辦法有兩種要么用 $_SERVER[SCRIPT_NAME] 替代要么在輸出時做 htmlspecialchars 編碼。第二個坑是變量覆蓋。有些老框架和遺留代碼喜歡用 extract($_POST) 把用戶提交的參數(shù)直接變成同名PHP變量或者用 $$id 這種動態(tài)變量拼接。這看起來是省了代碼實(shí)際上用戶可以通過構(gòu)造參數(shù)名來覆蓋程序里原有的變量。早期PHP圈出過一批這類漏洞基本都跟超全局變量被暴力展開有關(guān)?,F(xiàn)在寫代碼我是一律不建議用這種寫法顯式從超全局變量取值再校驗(yàn)是最笨但最穩(wěn)的做法。第三個坑是默認(rèn)信任。很多人拿到 $_POST[content] 就認(rèn)為它是字符串實(shí)際上對方提交的可能是數(shù)組比如構(gòu)造 content[]xxx賦值行為就會異常甚至在某些參數(shù)化過程不嚴(yán)格的代碼里繞過過濾。判斷類型比判斷值更優(yōu)先取值后先用 is_string、is_numeric 這類函數(shù)做類型確認(rèn)再談長度和格式校驗(yàn)。2.3 超全局變量的安全使用規(guī)范我給自己定了三條規(guī)矩基本能覆蓋90%的入口風(fēng)險(xiǎn)第一只從明確的超全局變量取值不同時混用GET和POST語義。GET只承載獲取類參數(shù)POST只承載變更類參數(shù)。第二所有超全局變量里的值一律視為不可信輸入先做類型校驗(yàn)再做白名單校驗(yàn)最后做長度限制。第三不要在業(yè)務(wù)代碼里直接輸出超全局變量要么編碼后輸出要么轉(zhuǎn)存到經(jīng)過處理的局部變量里。配合這三條規(guī)范超全局變量從任意數(shù)據(jù)入口變成了嚴(yán)格受控的數(shù)據(jù)渡口攻擊面瞬間就小了一半。3. 數(shù)據(jù)庫操作留言數(shù)據(jù)的安全存儲通道留言板數(shù)據(jù)量不大但如果處理不好一條SQL注入就能讓整個數(shù)據(jù)庫裸奔。這個章節(jié)重點(diǎn)講PDO的使用方式和參數(shù)化查詢的底層邏輯。3.1 為什么用PDO而不是MySQLiPHP連MySQL的主流方案是兩個MySQLi和PDO。我的選擇是PDO原因有三第一PDO提供統(tǒng)一的抽象層以后要換數(shù)據(jù)庫引擎改動成本低。第二PDO支持服務(wù)端的預(yù)處理語句開啟方式明確。第三PDO的錯誤處理模式可以通過 PDO::ATTR_ERRMODE 統(tǒng)一設(shè)置成異常模式代碼里更好控錯。MySQLi不是不能用只是它的預(yù)處理和結(jié)果集處理相對啰嗦在安全設(shè)置上需要手工關(guān)注的點(diǎn)更多。團(tuán)隊(duì)里新人多的時候PDO的規(guī)范約束力更強(qiáng)。3.2 連接層配置里的三個安全點(diǎn)數(shù)據(jù)庫連接的DSN和PDO選項(xiàng)是最容易被忽略的安全位置。很多人隨手把連接參數(shù)寫出來就完事結(jié)果在三個點(diǎn)上埋了雷。第一個點(diǎn)是字符集。連接字符串里必須帶 charsetutf8mb4而且要放在DSN里不能只靠SQL里的 SET NAMES。如果數(shù)據(jù)庫連接字符集是latin1目標(biāo)表又是UTF-8一旦遇到特定編碼的注入payload就可能出現(xiàn)寬字節(jié)注入問題。把字符集固定下來是防御這一類注入的第一道閘門。第二個點(diǎn)是關(guān)閉本地模擬預(yù)處理。PDO默認(rèn)會嘗試用本地模擬預(yù)處理這會導(dǎo)致即便寫了占位符最終還是可能走字符串拼接再發(fā)到服務(wù)端當(dāng)PHP版本或驅(qū)動有差異時仍然存在注入風(fēng)險(xiǎn)。連接參數(shù)里寫 PDO::ATTR_EMULATE_PREPARES false強(qiáng)制走M(jìn)ySQL服務(wù)端的原生預(yù)處理這是關(guān)鍵安全開關(guān)。第三個點(diǎn)是錯誤信息不落地。開啟 PDO::ATTR_ERRMODE PDO::ERRMODE_EXCEPTION然后在整個調(diào)用鏈最外層統(tǒng)一捕獲異常記錄到日志絕不把PDOException的message直接展示給用戶。很多注入探測就是從數(shù)據(jù)庫報(bào)錯開始的把報(bào)錯隱藏掉等于把偵察路徑堵了一半。3.3 參數(shù)化查詢?yōu)槭裁茨軗踝QL注入很多人會背“參數(shù)化查詢防SQL注入”但說不出原理。我用一句話解釋預(yù)處理語句在發(fā)送到數(shù)據(jù)庫時SQL語句的結(jié)構(gòu)和參數(shù)是分開的兩個通道。數(shù)據(jù)庫先解析了SQL結(jié)構(gòu)把它當(dāng)成模板之后參數(shù)只是按類型填入的數(shù)據(jù)值。也就是說即使用戶輸入的內(nèi)容是 OR 11它也不會被當(dāng)成SQL語法去解析而只是一個字符串字面量。結(jié)構(gòu)是結(jié)構(gòu)數(shù)據(jù)是數(shù)據(jù)兩條通道隔離注入自然失效。寫法的差別也很直觀。拼接式寫法是$sql SELECT * FROM messages WHERE id . $_GET[id];參數(shù)化寫法是$stmt $pdo-prepare(SELECT * FROM messages WHERE id ?); $stmt-execute([$_GET[id]]);兩種寫法在功能上好像差不多但本質(zhì)差了一個維度前者把用戶數(shù)據(jù)融進(jìn)了SQL語法樹后者把用戶數(shù)據(jù)限制在了參數(shù)位。在留言板的所有SQL操作里我都用參數(shù)化寫法一條拼接都不用。3.4 bindParam 的經(jīng)典坑PDO的預(yù)處理支持 bindParam 和 bindValue 兩種綁定方式實(shí)測中有一個坑特別經(jīng)典。bindParam 綁定的是變量引用它不是在上一次bind那一刻取值的而是在 execute 的時候才取值。如果在循環(huán)里一直復(fù)用同一個變量并且反復(fù) execute最后一次循環(huán)的變量值會被所有 execute 使用。比如下面這種寫法就翻過車foreach ($dataList as $item) { $stmt-bindParam(:id, $item[id]); $stmt-execute(); }因?yàn)?$item[id] 是引用綁定每次 execute 前變量值已經(jīng)被下一次循環(huán)覆蓋最后所有行都更新成同一批ID。安全上可能不直接翻車但業(yè)務(wù)正確性就毀了。我的建議是不折騰 bindParam直接在 execute 括號里傳參數(shù)數(shù)組。$stmt-execute([:id $item[id]])又清晰又穩(wěn)。安全代碼最怕花活越直白的寫法越不容易出錯。4. 第三方插件引入拿來主義的代價都在暗處留言板做到一定階段就會出現(xiàn)一個誘惑富文本編輯器丑裝一個吧驗(yàn)證碼不想自己寫引個庫吧Markdown想讓格式更漂亮再拉個解析器吧。沒有問題插件本身是提升效率的好東西但你必須知道引入一個第三方插件等于把一段別人的代碼放進(jìn)了你的信任邊界。4.1 留言板里最容易引入的三類插件第一類是富文本編輯器。它功能強(qiáng)但歷史包袱也重。不少富文本編輯器都出過文件上傳漏洞攻擊者可以利用上傳接口在服務(wù)器上放一個可執(zhí)行的腳本文件。第二類是驗(yàn)證碼庫。長期停止維護(hù)的驗(yàn)證碼組件會有幾個問題圖形驗(yàn)證碼的強(qiáng)度弱、缺少音頻干擾、甚至存在被繞過的手段。第三類是Markdown解析器。如果解析器沒有做HTML過濾被注入的Markdown代碼在轉(zhuǎn)換后會把XSS帶進(jìn)頁面。這三類插件有一個共同特點(diǎn)看似只是前端工具實(shí)際都會觸及后端處理邏輯這就是風(fēng)險(xiǎn)放大的根源。4.2 插件選型的檢查清單我現(xiàn)在引入第三方插件前會強(qiáng)制自己過一遍清單共七項(xiàng)從官方渠道獲取優(yōu)先使用包管理工具安裝便于鎖定版本。固定版本號并把鎖定文件提交到版本庫防止依賴漂移。對下載包做校驗(yàn)和核對包管理工具自帶的hash驗(yàn)證要開啟。到公開漏洞庫查詢這個插件是否有已知高危漏洞??错?xiàng)目維護(hù)狀態(tài)最近一次提交是什么時間是否還有安全公告渠道。裁剪功能用不到的上傳、模板、演示文件全部刪掉。跑一次最小化測試只保留實(shí)際業(yè)務(wù)要用的路徑。清單看著繁瑣但真正發(fā)生供應(yīng)鏈問題的時候你會發(fā)現(xiàn)這七步每一條都是在救命的。4.3 插件權(quán)限最小化與部署隔離插件引入之后還要注意給它關(guān)權(quán)限。很多編輯器自帶上傳功能默認(rèn)上傳目錄放在Web根目錄里上傳文件直接可訪問。不做限制的話攻擊者一旦繞過文件類型檢查就能直接執(zhí)行腳本。我的做法是上傳目錄獨(dú)立出來只存儲文件禁止執(zhí)行腳本上傳目錄的PHP執(zhí)行權(quán)限在Web服務(wù)器層面直接關(guān)掉編輯器用不到的那些接口文件在部署時刪除插件依賴的數(shù)據(jù)庫賬號用獨(dú)立最小權(quán)限賬號不給DROP、GRANT這類高危權(quán)限。插件可以幫你干活但不給它鑰匙庫的鑰匙。這個原則推廣到整個留言板也一樣數(shù)據(jù)庫賬號不要用root要單獨(dú)建一個只對留言數(shù)據(jù)庫有增刪查改權(quán)限的賬號。權(quán)限最小化永遠(yuǎn)是安全開發(fā)的核心思維。5. 從零開始實(shí)現(xiàn)一個帶安全基線的留言板理論說多了都是空的進(jìn)入實(shí)操。我把留言板分成四個模塊實(shí)現(xiàn)每個模塊都會給出帶注釋的PHP代碼并解釋為什么這么寫。5.1 表結(jié)構(gòu)設(shè)計(jì)先建表。留言板業(yè)務(wù)只要一張 messages 表就夠但字段要夠用管理功能后面都要靠它。CREATE TABLE messages ( id INT UNSIGNED NOT NULL AUTO_INCREMENT, username VARCHAR(30) NOT NULL, email VARCHAR(100) NOT NULL, content TEXT NOT NULL, ip VARCHAR(45) NOT NULL, user_agent VARCHAR(255) NOT NULL, status TINYINT NOT NULL DEFAULT 1, created_at DATETIME NOT NULL, PRIMARY KEY (id), KEY idx_status_created (status, created_at) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;幾個設(shè)計(jì)點(diǎn)說明一下。status 字段用來標(biāo)記留言審核狀態(tài)未過審的留言不對外展示這是內(nèi)容安全的兜底。ip 字段用 VARCHAR(45) 存雙棧地址IPv6 的地址長度也能放下。user_agent 字段不是必須的但留一個可以用于異常分析比如短時間內(nèi)同一UA加同一IP高頻發(fā)言就可以快速識別刷屏行為。5.2 發(fā)表留言模塊發(fā)表留言是數(shù)據(jù)入口攻擊者最關(guān)注這里。整個流程是校驗(yàn)CSRF Token然后校驗(yàn)輸入格式再做頻率限制最后寫入數(shù)據(jù)庫。提交處理的完整代碼session_start(); if (strtoupper($_SERVER[REQUEST_METHOD]) ! POST) { exit(非法訪問); } // 1. CSRF校驗(yàn) if (!hash_equals($_SESSION[csrf_token] ?? , $_POST[csrf_token] ?? )) { exit(CSRF校驗(yàn)失敗); } // 2. 輸入校驗(yàn) $username trim((string)($_POST[username] ?? )); $email trim((string)($_POST[email] ?? )); $content trim((string)($_POST[content] ?? )); if ($username || mb_strlen($username) 30) { exit(用戶名不能為空且不能超過30字); } if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { exit(郵箱格式不正確); } if ($content || mb_strlen($content) 2000) { exit(留言內(nèi)容不能為空且不能超過2000字); } // 3. 頻率限制同一IP在60秒內(nèi)只能留言一次 $key gb_limit_ . md5($_SERVER[REMOTE_ADDR]); $last (int)($_SESSION[$key] ?? 0); if (time() - $last 60) { exit(留言過于頻繁請稍后再試); } $_SESSION[$key] time(); // 4. 參數(shù)化寫入 $ip $_SERVER[REMOTE_ADDR]; $ua substr((string)($_SERVER[HTTP_USER_AGENT] ?? ), 0, 254); $dsn mysql:host127.0.0.1;port3306;dbnameguestbook;charsetutf8mb4; $options [ PDO::ATTR_ERRMODE PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES false, ]; $pdo new PDO($dsn, gb_user, yourpassword, $options); $stmt $pdo-prepare( INSERT INTO messages (username, email, content, ip, user_agent, status, created_at) VALUES (?, ?, ?, ?, ?, 1, ?) ); $stmt-execute([ $username, $email, $content, $ip, $ua, date(Y-m-d H:i:s), ]); header(Location: list.php); exit;這段代碼把前面幾章的理念全部落地了。CSRF校驗(yàn)用的是 hash_equals 做時間安全比較比普通等號判斷更防側(cè)信道。輸入校驗(yàn)全部走白名單式的長度和格式判斷。頻率限制用會話變量做標(biāo)記簡單但有效想要更強(qiáng)的限制可以把記錄存到數(shù)據(jù)庫或內(nèi)存緩存。為什么CSRF校驗(yàn)必須放在最前面因?yàn)槿绻茸鰳I(yè)務(wù)判斷再校驗(yàn)Token攻擊者可以通過觀察不同的響應(yīng)時間差來判斷Token是否正確這等于給了側(cè)信道攻擊機(jī)會。先校驗(yàn)Token再處理業(yè)務(wù)錯誤提示統(tǒng)一攻擊者就無從分辨了。5.3 留言展示模塊留言展示是輸出側(cè)重點(diǎn)解決存儲型XSS。讀取數(shù)據(jù)用參數(shù)化查詢輸出內(nèi)容要經(jīng)過 htmlspecialchars 編碼一個地方都不能漏。$page max(1, (int)($_GET[page] ?? 1)); $perPage 10; $offset ($page - 1) * $perPage; $stmt $pdo-prepare( SELECT username, email, content, created_at FROM messages WHERE status 1 ORDER BY created_at DESC LIMIT ? OFFSET ? ); $stmt-bindValue(1, $perPage, PDO::PARAM_INT); $stmt-bindValue(2, $offset, PDO::PARAM_INT); $stmt-execute(); $rows $stmt-fetchAll();注意這里用了 bindValue 綁定 LIMIT 和 OFFSET是因?yàn)?PDO 的 execute 傳數(shù)組時默認(rèn)會把值當(dāng)成字符串而 LIMIT 語句里必須明確是整型不然在嚴(yán)格模式下會報(bào)錯。取數(shù)據(jù)只用參數(shù)化查詢配合 status1 過濾未審核留言。輸出的核心代碼foreach ($rows as $row) { echo h3 . htmlspecialchars($row[username], ENT_QUOTES, UTF-8) . /h3; echo p . htmlspecialchars($row[content], ENT_QUOTES, UTF-8) . /p; echo p . htmlspecialchars($row[created_at], ENT_QUOTES, UTF-8) . /p; }為什么用 htmlspecialchars 加 ENT_QUOTES因?yàn)閱我柡碗p引號都會被轉(zhuǎn)成實(shí)體在HTML上下文里就沒有構(gòu)造屬性、事件注入的機(jī)會。還有一點(diǎn)編碼時一定要指定 UTF-8否則默認(rèn)編碼可能導(dǎo)致實(shí)體轉(zhuǎn)換失敗等于防護(hù)失效。5.4 后臺管理模塊管理功能只有一個需求查看和刪除留言。不要小看這么簡單的后臺權(quán)限和CSRF一個都不能少。session_start(); // 管理員身份校驗(yàn) if (!isset($_SESSION[admin]) || $_SESSION[admin] ! true) { exit(無權(quán)限訪問); } if (strtoupper($_SERVER[REQUEST_METHOD]) POST) { if (!hash_equals($_SESSION[csrf_token] ?? , $_POST[csrf_token] ?? )) { exit(CSRF校驗(yàn)失敗); } $id (int)($_POST[id] ?? 0); if ($id 0) { exit(無效的留言ID); } $stmt $pdo-prepare(DELETE FROM messages WHERE id ?); $stmt-execute([$id]); }刪除操作用的還是參數(shù)化查詢。在后臺模塊里我加了一層身份校驗(yàn)確保只有管理員會話可以執(zhí)行刪除操作。管理頁面的表單里也要帶CSRF Token防止其他頁面的構(gòu)造請求冒充管理員刪除數(shù)據(jù)。這個模塊還隱含一個越權(quán)判斷刪除操作的權(quán)限校驗(yàn)放在POST分支之內(nèi)任何人只要能發(fā)起POST請求都要先通過身份和Token校驗(yàn)。順序是先認(rèn)證再授權(quán)再執(zhí)行業(yè)務(wù)三步缺一不可。6. 安全驗(yàn)證清單與測試方法功能寫完不算完安全開發(fā)必須走到驗(yàn)證環(huán)節(jié)。我有一套自己常用的測試用例表發(fā)布前過一遍能攔住絕大多數(shù)低級漏洞。6.1 十個必測用例整理成表格方便直接拿去用用例操作方法判定標(biāo)準(zhǔn)基礎(chǔ)SQL注入在留言內(nèi)容里提交單引號和典型閉合語句頁面正常顯示數(shù)據(jù)庫無異常報(bào)錯存儲型XSS提交帶script標(biāo)簽的HTML內(nèi)容頁面原樣顯示為文本不執(zhí)行腳本屬性型XSS提交帶onerror事件的img標(biāo)簽輸出時屬性轉(zhuǎn)義事件不觸發(fā)CSRF驗(yàn)證移除表單Token后再次提交提交被拒絕越權(quán)刪除非管理員會話直接POST刪除接口返回?zé)o權(quán)限提示超長輸入提交超過2000字的內(nèi)容被長度校驗(yàn)攔截類型注入把content字段提交為數(shù)組形式被類型校驗(yàn)攔截分頁注入修改page參數(shù)為非法字符串取整兜底頁面不報(bào)錯頻率刷屏短時間連續(xù)提交多條留言被限流攔截編碼繞過提交UTF-16或特殊空白字符統(tǒng)一按UTF-8編碼后正常顯示這里特別說一下編碼繞過。很多過濾邏輯只過濾了普通英文引號和括號但如果應(yīng)用和數(shù)據(jù)庫的字符集處理不一致攻擊者可以利用寬字節(jié)payload繞過。解決方法就是前面說的連接層強(qiáng)制UTF-8所有輸出指定UTF-8兩端字符集對齊后這類繞過基本失效。6.2 自動化檢查三件套人工測試能覆蓋主流程但還是建議配自動化檢查。我最常用的三件套第一php -l 做語法檢查排除低級語法錯誤。第二用包含常見payload的請求集做回歸測試每次改代碼后跑一遍。第三開啟應(yīng)用層的訪問日志和數(shù)據(jù)庫慢查詢?nèi)罩驹跍y試環(huán)境里模擬攻擊流量觀察異常。這三件套不復(fù)雜但足以攔住絕大多數(shù)因?yàn)樯暇€前倉促導(dǎo)致的低級問題。7. 常見問題排查與踩坑實(shí)錄到這里代碼和測試都講完了最后聊聊實(shí)操中一定會遇到的幾個問題。7.1 為什么表單提交后CSRF Token總是失效這是寫CSRF最容易遇到的問題。排查路徑一般是先看 session_start 有沒有在任何輸出之前調(diào)用再看表單里的Token是否來自同一個會話很多人會在兩個頁面分別生成新Token導(dǎo)致表單頁Token和校驗(yàn)頁Token不一致最后看跳轉(zhuǎn)邏輯如果提交后刷新頁面Token已經(jīng)被消費(fèi)或過期也會出現(xiàn)校驗(yàn)失敗。我的處理方式是Token在會話里只存一份表單和校驗(yàn)都讀同一個值提交成功后可以注銷Token要求刷新頁面重新生成避免重放攻擊。7.2 為什么留言內(nèi)容明明過濾了還是有XSS過濾了還是有XSS多半是輸出側(cè)出了問題。很多人只過濾了輸入側(cè)覺得壞東西已經(jīng)進(jìn)不來了卻忘了存儲型XSS的觸發(fā)點(diǎn)在輸出。如果過濾用的還是黑名單式正則防得住 script 標(biāo)簽但防不住 img 的 onerror、svg 的 onload、甚至CSS背景圖注入。解決方案是輸入側(cè)做邏輯校驗(yàn)輸出側(cè)做統(tǒng)一轉(zhuǎn)義兩條線同時存在互不替代。不要把輸出編碼的活全部交給輸入過濾因?yàn)檩敵鼍幋a才是真正的最后防線。7.3 頁面把數(shù)據(jù)庫錯誤信息給用戶看到了怎么辦報(bào)錯信息泄露是開發(fā)階段常見但上線前容易漏的坑?,F(xiàn)象是用戶提交異常數(shù)據(jù)后頁面直接打印SQL錯誤里面會帶表名、字段名甚至查詢片段這些信息會幫助攻擊者快速定位數(shù)據(jù)庫結(jié)構(gòu)。處理辦法是把PDO設(shè)置為異常模式后在入口位置統(tǒng)一捕獲異常錯誤詳情記錄到日志頁面只顯示友好的通用提示。線上環(huán)境把 display_errors 關(guān)掉日志級別保持 error這樣既能排查問題又不會把內(nèi)幕暴露給外部。7.4 引入插件后網(wǎng)站變慢變卡怎么定位第三方插件導(dǎo)致性能問題的排查思路比較直接。第一步是看請求日志找到耗時最長的請求第二步是確認(rèn)該請求是否進(jìn)了插件目錄第三步是檢查插件是否有數(shù)據(jù)庫查詢或遠(yuǎn)程請求。多數(shù)卡頓是因?yàn)椴寮诿看握埱髸r都執(zhí)行了無關(guān)的初始化代碼。我的建議是能靜態(tài)化的靜態(tài)化能懶加載的懶加載。留言列表頁用不著加載編輯器的時候就不要加載那幾百KB的腳本。功能最小化不僅為了安全也為了性能一舉兩得。寫到這里今天的留言板安全開發(fā)筆記算是閉環(huán)了。從超全局變量到數(shù)據(jù)庫操作從第三方插件引入到CSRF防護(hù)每個環(huán)節(jié)我都盡量把“為什么”背后的原理講清楚。我在實(shí)際動手過程里最大的感觸是安全開發(fā)不是某一招特別華麗而是每個環(huán)節(jié)都堅(jiān)持看似枯燥的規(guī)范來源明確、邊界清晰、權(quán)限最小、輸出編碼、參數(shù)化查詢。這些規(guī)范單拎出來都平平無奇但串在一起攻擊面就被壓縮得很干凈。最后再分享一個小技巧每次寫完一個功能都試著站在攻擊者的角度問自己一個問題——如果我是攻擊者我會怎么打這個功能順著這個角度走一遍很多漏洞根本不用掃描器就能自己暴露出來。留言板只是一個起點(diǎn)帶著這套思維去做下一個項(xiàng)目你會發(fā)現(xiàn)自己寫的代碼越來越難打。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
9191avse| 亚洲最大在线| 丁香五月自拍| 丁香久久综合| 91丁香婷婷综合久久欧美| 婷婷五月丁香六月| 亚洲五月天激情| 人人爽在线视频综合网| 超碰在线9| 嫩草AV久久伊人妇女超级A| 能看的av| 色停停五月,在线观看| 美女亚洲五月丁香| 丁香五月婷婷啪| 九九成人电影婷婷| 极品少妇XXXX精品少妇偷拍| 丁香婷婷大香蕉| 日本色五月| 99热这里只有精品23| 超碰97人人操| 亚洲另类婷婷综合| av在线观看网站| AAAA网站| 婷婷五月色亚洲| 99,色| 综合狠狠干| 色吧99| AV大片在线播放| 亚洲无码色| 久久精彩视频| 激情婷婷丁香五月天| 丁香六月激情国产| 丁香婷婷中文字幕| 99精品免费欧美小视频| 久 久9 9 热 视 频| 華人性愛AV在線| 婷婷六月天天| 亚洲综合色婷婷| 97se视频在线| 五月婷婷av| 婷婷五月激情五月丁香五月| 97久久婷婷色| www,天天干| 夜夜天天久久婷婷| 日韩六十路91性交电影| 青青草蜜臀| 99热人人| 极品色丁香| 五月丁香888| 色五月婷婷777| 99热综合| 内射人妻视频国内| 亚洲亚洲人成综合网络| 1024在线一区| 91九色白丝| 色婷婷黄色网络| 色碰碰| 久久性爱视频网站| 春色激情| 五月天综合久久| 五月天丁香看婷婷| 97色一二三| 欧美日韩色色| 99久久五月天| 97在线/亚洲| 日韩久综合| 99久久婷婷综合| www九九免费视频| 国产精品美女久久久久AV超清 | 日日夜夜狠狠| 超碰人人干| 综合网五月| 99亚州综合精品成人网| 久久久久久9| 亚洲婷婷欧美婷婷| 五月天国产| 天天爽天天操| 性爱激情五月| www.婷婷,com| 色婷婷五月六月丁香综合视频| 亚洲黄色影视| 久久性爱网站| 丁香婷婷激情| 99热亚洲精品| 丁香五月婷婷老师网站| 欧美色九| 美女va| 久久成人性爱| 婷婷丁香成人五月天| 亚洲精品国产精品乱码不99| 91成人视频| www99热| www.久久久久| 91n网站cad入口在线观看| 色婷婷情片| 狠狠爱婷婷| 综合色色婷婷| 97婷婷五月| 狠狠干综合| 丁香激情久久| 色域五月丁香| 激情五月婷婷| 婷婷色五月综合| 亚洲无码色| 99熟女视频| 91久操| 伊久大香蕉| 激情五月瑟瑟| 熟女乱论网| 激情综合色婷婷啪啪六月天| 99ri精品视频在线观看| 国产精品久久久久久久久久| 久久久五月五丁香| 深爱五月亚洲| 婷婷97| 欧美性色A片免费免费观看的| 婷婷视频在线碰| 热99久| 欧亚洲在线高清视频| 九九操综合网| 91狠狠综合久久久| 色五月激情综合网站| 9l视频自拍九色9l视频在线观看| 99热大片| 九九黄色网| 久久免费干| 五月天色色色| 五月天国产| 婷婷五月色天| 午夜丁香综合婷婷| 五月婷婷在线观看| JAPANRCEP老熟妇乱子伦视频| 精品国婬伦V无码久久久| 91婷色| 天天综合天天玩夜夜玩天天玩夜夜玩| 99婷婷国产最新视频| 色噜噜狠狠色综无码久久合欧美| 久久色天堂| 天天日天天做天天操| 香蕉视频91| 国产69精品久久久久999小说| 97自拍99| 四色AVwww| 丁香激情五月| 色五月天堂| 丁香五月婷婷骚视屏| 伊人激情影院| 大香蕉久久草| 婷婷五月天天天| 精品人妻伦九区久久AAA片| 麻豆雪千夏| 激情五月丁香六月婷婷| 狠狠插.com| Av九九| www99热| 色99在线| 久久五月六月| 日韩999| 4438激情网| 色播五月婷婷五月| www99xxxx五月丁| 久色姿源| 无码少妇高潮喷水A片免费| 91丨九色丨熟女|新版| 亚洲va欧美va国产综合久久久| 五月丁香| 丁香五月婷婷六月婷| 婷婷色色网| 色色综合激情| 综合久久高清| 色天堂在线| 婷婷五月天影视首页| 九九九干精品| 人草人人| 一起草av在线观看| 九九热在线视频| 丁香伊人五月色婷婷五十路| 亚洲综合热| 影音先锋91在线资源站| 五月婷婷婷婷婷| 黑人巨粗进入警花疼哭A片| 另类少妇人与禽zOZZ0性伦| www.色综合.com| a久久| 亚洲在线成人| 久久思思热| 伊人久久中文网| 99热这里只有是亚洲国产| 色噜噜狠狠色综无码久久合欧美| 久久五月婷婷开心网| 五月色丁香| 色五月丁香六月资源站| 精品一二三区久久AAA片| 激情网五夜婷婷| 久久婷婷亚洲| 人妻VideOssS人妻| 丁乡久久| 激情五月天综合| 色婷婷视频| 99色精品| 天天日天天操天天干| 久久国产一区二区三区| 九九热10| 激情五月综合婷婷| 99精品爱| 五月婷婷七月丁香| 色五月婷婷亚洲| 色婷婷中文字母五月丁香| 激情婷婷五月天| 色五月婷婷在线视频| 国产精品色情AAAAA片软件| 日日夜夜爽爽| 日本久久人| 日韩性视频| a色色色色色| 婷婷色爱| 51成人| 天天色视频| 久久五月天激情婷婷| 国产古装妇女野外A片| 日本成人噜噜噜噜噜| 丁香婷婷五月激情四射网| 综合一本道| www.9797国产| 国产69久久久欧美黑人A片| 96五月丁香熟女| www,色婷婷| 婷婷视频网| 极品九九九九九九| 丁香六月婷| 精品九九视频| 五月婷精品| 伊人综合网站| 91九色在线视频| 秋霞簧片| 99热超碰| 五月丁了香蕉综合| 国产精品人成A片一区二区| 色综合色综合色综合| 五月丁香激| 色色亚洲| 狠狠干五月丁香| 亚洲岛国电影| 欧亚成人A片一区二区| 天天爽天天草| 激情5月舔| 九色视频入口91| 久久婷婷五月天懂色| 九九这里精品| 91丨九色丨熟女高潮| 91 影音先锋| 久久9视频欧美| 中文字幕簧片| 欧美性二区| 亚洲AV日韩AV永久无码网站| 成人做爰A片免费看网站找不到了| 夜夜夜夜夜骑撸| 五月天婷婷久久日| 久久永久视频| 超碰伊人碰婷婷五月| 国产精品涩涩涩视频网站| 国产亚洲色婷婷久久99精品91| 色婷婷丁香五月高清在线| 狠狠干在线| 欧美顶级少妇做爰HD| 中文字幕综合| 亚洲综合五月天婷婷| 干婷婷五月天| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 色婷婷a| 野战J办公桌椅H| 欧美色久| 婷婷五月天社区| 五月婷丁香亚洲| 色情五月丁香| 国産精品| 99热99久久| 在线观看日韩12345区| 99久热| 91精品在线看| 精品久久9| 久久金品黃色| www天天色天天射| 九九一综合精品| 一起草AV| 五月婷婷激情综合在线| 欧美日韩999| 玖玖99精品视频| 亲子乱AV-区二区三区| 第四色在线观看| 老司机日日夜夜青草| 五月亭亭开心网| 婷婷丁香五月天在线| 九九热99精品| 久久久精品色色色| 欧美日韩一区二区三区四区| 婷婷五月丁香五月综合网| 日日夜夜爽爽| 色五月六月| 色亭亭五月天网扯| 深爱激情网综合| 99热在线这里只有精品| 婷婷五月天论坛| 婷婷成人在线| 亚洲精品五月| 懂色AⅤ| 伊人久久五月天| 久久机只有这里精品| 狠狠干总合| 婷婷五月永远18免费久久久| 久久久人人人妻丝丝丝| 开心五月色婷婷综合开心网| 丁香五月网在线观看| www.五月天。com| 欧美英丁香开心快乐六月天网| 婷婷 亚洲图片 丁香| 婷婷五月天伦理| 综合性视频99| 狠狠色综合网站久久久久| 99国产性感视频| 婷婷情色激情| 日日干日日| 色综合中文| 欧美色色色| 激情六月婷婷| 丁香五月激情五月| 99热爱爱干干日| 极品人妻XXXXOOOO| 九月丁香八月婷婷加勒比| 婷色天堂| 日本人人干| 亚洲网视屏| 开心婷婷五月激情网小说| 99热精品网| 无码婷婷五月天| 无码任你操| 五月天婷综合| 91丨九色丨东北熟女| 性做爰A片免费视频A片直播| ady狠狠入| 色婷婷免费视频| 欧美S码亚洲码精品M码| 99精品偷拍视频| 九热免费视频| 深爱五月天 开心网| 色五月丁香六月欧美综合| 久热免费| 韩国真做片在线观看| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 亚洲五月婷婷在线| 99综合| 欧美内射AA| 麻豆WWWCOM内射软件| 午夜激情久久| 噜综合| 五月色丁香激情| 婷婷五月丁香在线视频| 97人人射| 伊人九九热| 蜜臀丁香黄色婷婷五月天| 手机AVAV天堂看网| 五月婷婷色播| 色色综合网络| 亚洲男女激情| 色五月婷婷AV| 婷婷色色网| 色婷婷伊人| 碰97 久| 香蕉97碰碰碰超视精品| 天天插天天日天天爽| 深爱五月激情| 不卡在线视频| 五月婷婷六月丁香激情深爱| 爱草人视频| 777精品久无码人妻蜜桃| 91窝窝| 激情综合自拍五月婷婷色五月| 99热免费看| 99色天堂| 色综合婷婷| 天天插插天天| 色一色综合| 亚洲熟女色| 天天夜夜六月丁香五月婷婷老师| 久久久婷婷婷| BT综合在线视频观看| 99re这里有精品手机在线| 狠狠综合久久| 国产免费av在线| 丁香五月激情视频在线| 五月婷婷六月天| 欧美久久网| 99热亚洲精品66| 久久9视频| 久久久婷丁香五月天激情综合| 五月丁香欧美综合免费视频| 国产精品电影| 天天骑日日爽| 九九性视频| 婷婷五月天丁香成人社区| 91视屏在线观看com.wwwvv| 中文字幕AV在线播放| 青青草原爱爱网| 很很干五月天| 成人做爰黄A片免费看直播室男男| 国产XXXX搡XXXXX搡麻豆| 五月天天堂久久| 色五XX| 亚洲亚洲人成综合网络| 性婷婷| 99亚洲精品视频| 久久99精品久久久久子伦| 啄木鸟丝袜美女福利视频| 极品人妻VIDEOSSS人妻| 91啪级电影| 五月天激情小说| 五月天无码| 91久久久久久久久| 综合久久久| 狠狠综合网| 99在线播放| 天天操夜夜爽歪歪| 丁香婷婷久久综合在线| 丁香六月久久| 色呦呦美女| 久久在线大香蕉| 欧美丁香五月| www.黄色片-久久成人国产精品在线播放-999AV | 九九热在线精品视频| 在线天堂9| 99啪啪网| 久久九九视频网站| 亚洲亚洲人成综合网络| 色婷婷五月天小说网| 99欧美精品99日本精品| 五月亭亭性| 懂色av蜜臀av粉嫩av永陈冠希| 丁香婷婷五月| 丁香五月欧美色综合| 丁香五月影视| 六月婷婷无码| 五月J香蕉婷婷| 激情五月婷婷色播网| 激情精品久久| 天天综合久久| 婷婷丁香五月天哟啪| 九九热九九| 丁香五月aV| 久久无码成人| 五月欧美丁香在线观看| 五月丁香色情| 丁香激情网| 99热这里有精品2| 99久久久精品| 五月天社区| 人人操Av| 婷婷新网址| 9热在线观看| 激情丁香六月| 1024操逼| 久色激情| 色97综合婷婷天天色| 碰超亚洲| 97干网站| 五月激情基地| 香蕉久久六月| 香蕉久久av一区二区三区| 99热这里全是精品| 久er免费视频| 国产欧美大香蕉一区| 97操碰在线视频| 欧美色图天堂网| 五月丁香色婷婷| 国产AV不卡福利| 九九精品亚洲| 五月天日日操夜夜操| 91传媒无码人妻精| 91打屁股免费看| 2015WWW永久免费观看播放| 色五月亚洲| 99久热| 在线视频区| 色欲一区二区三区精品A片| 国产人妻操逼| 九月av在线| 婷婷五月天小说网| 中文av网| 五月丁香婷婷AV天堂| 色婷婷色| av大片在线| 成人网在线视频| 二人电影免费版在线观看| 影音先锋男人av资源站| 婷婷爱五月天| 真实亲子乱子伦高清在线观看| AV在线免费网站| 亚洲无码性爱| 五月亭亭开心网| 婷婷婷婷色| 久久五月六月| 日韩 中文 欧美| 丁香花社区av| 五月天丁香网| 九月丁香亭亭| 婷婷六月丁香五月| 六月色国内综合| 久久五月综合| 91久久五月天| 五月婷婷黄色毛片| 先锋影音男人的天堂AV| 日日夜夜天天| 5月丁香啪啪啪| www.色婷婷| 亭亭社区五月天| 久久这里只有精彩| 欧美日韩123| 91国产精品视频播放| 久色激情| 91丨九色丨大屁股| 香焦网五月天| 婷婷五月天美女21p| 久久九精品| 日韩欧美一区二区三区四区| 入口五月婷婷六月香| 91日韩美女被插视频| 九九精品丁香花| 艳妇野外情欲放荡HD| 婷婷六月丁| 生活片五区| 五月丁香六月婷婷激情网| 五月天婷婷丁香社区| 色丁香综合影院| 99久久久国产大片区| 综合色五月| 五月丁香婷草| 婷婷五月综合社区| 激情床戏| 婷婷五月丁香六月| 99热99ai| 亚洲日韩人妻操逼| VA国产在线综合网站| 五月婷婷xxx| 91超碰在线观看| 97人人看| 99操| 伊人五月婷婷| 五月丁香六月婷婷不卡免费无码| 丁香亚洲婷婷五月| 婷婷五月天激情五月天网站| 成人色色视频| 狠狠干综合网| 五月激情小说网| 色五月婷婷五月天| 久热九九| 九九aV| 六月丁香啪啪啪| 九九黄色网| 婷婷视频网| 嫩BBB槡BBBB搡BBBB| 精品色色| 久久婷婷青青| 91人人爽人人操| 久久久久久久久久婷婷| 性天堂久久| 色九月婷婷综合| 色五月婷婷婷婷婷婷婷婷婷婷| 五月激情丁香六月狠狠干| 99这里只有精品国产| 天天操天天操综合| 亚城区在线| 五月激情六月丁香| 色婷婷在线播放| 九九热精品视频在线观看| 色婷婷丁香五月| 国产肥白大熟妇BBBB视频| 超PEN精品在线| 久久久.www| 视频1区2区| 五月丁香色色| 狠狠草婷婷| 一级A片天天操夜夜操| 俺也高清无码高清视频| 玖玖五月丁香| 天天干天天色综合| 综合久久8| 久久久久激情| 五月激情综合婷婷| 婷婷va| 97香蕉碰碰人妻国产欧美| 伊人在线视频| 色婷婷激情Av久久久| 五月天堂色色| 丁香色五月婷婷17C| 五月丁香久久综合精品| 婷婷亚洲五月| 亚洲激情在线| 国产亚洲成AV人片在线| 成人在线精品| 婷婷香五月综合激情| 另类色视频| 五月夜丁香| 色天五月天在线观看视频| 99这里只有精| 在线综合91| 婷婷五月丁香av网站| va亚洲中文在线| 久色网| 丰滿爆乳一区二区三区| 久操人妻| 五月丁香婷婷成人综合网| 五月天大香蕉| 日本A片一区| 91精品熟女| 能看的av| 婷婷五月丁香六月综合网| 99久在线精品99re8热| 91碰免费视频| 激情五月天噢美| 久久五月天激情| 久久五月综合| 99网址在线看| www色婷婷com| 国产特级毛片AAAAAAA高清| 蜜乳人妻一区二区三区| 六月伊人婷婷| 欧美色婷婷| 色欲五月婷婷| 99亚洲色色| 99热在线观看| 五月丁香香蕉| 中文久久婷婷| 97色综合| 欧美一区二区三区不卡影视| 久久久久er热| 日韩精品一品二区三区的使用体验| 丁香婷停五月激情综合深爱| 99热国产精品| 欧美97色| 五月天婷婷基地综合网| 天天婬色综合| 五月丁香六月婷婷久久久综合| www.99热| 人人操99| 久久婷婷综合基地| 9l视频自拍九色9l视频在线观看| 开心激情网五月| 少妇被下春药玩弄A片| 99婷婷| 操日视频| 91色干| 毛片色五月| 90色免费视频| 狠狠操狠狠狠| aV直接看| 天天操天天谢| www,婷婷,com| 五月丁香欧美综合免费视频| 中国女人做爰A片| 99热6这里之有精品| 亚洲男女激情| 超碰av在线| 色五月激情问网站| 五月丁香狠狠爱| 丁香九月综合| 亚洲va成人va成人va在线观看| 99精品热视频| 五月伊人网| 五月色丁香| 日本一级一片免费视频| 性视频久久| 91丨九色丨熟女|老版| 視频福利乱色| 99热成人精品网站| 大香蕉520| 日韩啊啊啊| 99在线观看视频免费| 亭亭五月色男人| 99热99在线| 九九热精品| 美臀自射自家人妻| 人人爽网| 97色色在线视频| 日本人妻操| 五月人妻婷婷视频| 亚洲成人免费在线| 开心激情站| 26uuuu精品一区二区| 亚洲中文字幕在线观看| 五月婷婷丁香综合网| 东京热人妻一区二区三区在线| 夜夜干天天操| 久久婷色| 日本色色色| 久久婷婷草| 色五月婷婷影院| 欧美 日韩 成人在线| 97人妻碰碰中文无码久热丝袜| 五月色综合| 中文字幕丰满孑伦无码专区| 亚洲无码九九| 日本97在线| 深爱激情六月天| 丁香成人综合| 五月婷婷亚洲综合在线 | 538在线精品| 99这里有精品视频3| 99热在线观看| 五月丁香六月激情啪| 99热免费在线| 6080av| 五月情涩综合婷婷| 九热视频| 另类五月激情| 欧美色色色| 亚洲亚洲人成综合网络| 99热在线看| 亚洲精品乱码久久久久久按摩观| 日韩成人精品中文字幕电影| 天天操综合网| 日本天天综合| 十区AV| 99热超碰| 色五月丁香婷婷在线观看| 美女天天久久| 日韩啪图| 另类小说五月天| 91精品综合久久久久久五月丁香 | 久久色频| 久久九九九九| 精品一二三区久久AAA片| 四色99久久| 五月丁香久久精品在线观看| 超碰五月婷婷五月天| 婷婷五月天综合网| 4399人妻无码久久久| 美女天天久久| 99免费偷拍视频| 精品一二三区久久AAA片| 六月激情婷婷| 成人网丁香五月| 色婷婷伊人| 五月婷婷综合天天操| 激情综合五月婷婷| 五月婷视频在线| 色青五月天| 久热这里只精品| 五月激情射| 久操香蕉| 亚洲操操操| 九九色欲网| 激情婷婷色五月| 婷婷丁香色五月天久久88| 另类激情五| 九久九精品| 人妻体体内射精一区二区 | 超碰在线日夜| 久久久人妻| www.91在线观看| 天天操夜夜爽歪歪| 日操五月婷| 五月婷色| 色欲天天综合| 中文字幕AV网址| 在线日韩av| 日本精品人妻无码77777| 丁香五月久久| 日韩99视频| 天天高潮夜夜爽| 6080av| 欧美激情 日韩无码 婷婷 五月天| 五月丁香黄色| 五月天久久色| 成人中文网| 亚洲综合九九| 99热手机在线精品| 91精品无码| 色五婷婷开心缴| 第四色26uuu| 色五月av伊人| 天天爽天天日人人爱| 九九热这里只有精品首页| 丁香五月激情啪| 海外网站专业操老外| 五月综合激情| 婷婷的色色五月天| 色色色综合色| 色亭亭五月天丁香综合AV - 百度 - 百度 | 影音先锋日本三级资源| 538在线精品| 国产精品色| 人人爱操| AA片在线观看视频在线播放| 色婷五月| 97色碰| 97色吧| 99国产精品久久久久久久久久久 | 伊人久久婷| 久9久9久9久9久9久9| 99riAv1国产在线观看| 久久综合婷婷五月| 99超级碰碰| 九色91视频| 九九99久久| 欧美激情综合色综合啪啪五月| 狠狠操狠狠操AV| 成人做爰A片免费看视频| 国产SUV精品一区二区6| 婷婷五月天激情网| 97caop| av操B网站| 丁香五月天日韩无码| 国产午夜精品一区二区| 欧美 日韩 成人在线| 九热视频| 天天狠狠插| 五月婷婷花| 夜夜骑天天操| 亚洲六月婷婷| 综合婷婷| 色婷网站| 99人人操| 九九色99| 啪啪啪啪五月天| 天天做 天天爱| 五月天婷婷在线播放| 久久婷婷五月天激情| 无码99| 婷婷最新地址| 一起肏在线视频| 亚洲精品久久久久久久久久飞鱼 | 热99玖玖99玖玖99九九| 色99无码| 久热伊人| 亚洲色小说在线综合| 亚洲综合激情五月| 碰碰91| 国产SUV精品一区二区6| 免费视频WWW在线观看网站| 99热很操老逼| 综合色久| www五月天激情com| 98色花堂98t.R| 成人日韩欧美| 五月丁香中文婷婷中文| 97香蕉久久超级碰碰高清版| 六月婷婷私欲| 五月天狠狠色| 免费看欧美成人A片无码| 超碰A V在线| 大香蕉五月天婷婷| 欧美婷| 九九大香蕉黄色影院| 黄网在线播放| 欧美超碰亚洲| 亚洲色9| 婷婷色五月天在线| 丁香成人五月天| 亚洲情欲久久| 婷婷五月天视| 深情五月天| 强壮公让我夜夜高潮A片视频| 免费看片在线观看| 亚洲精品五十一区| 四月婷婷五月丁香| 白人荫道BBWBBB大荫道| 强伦轩人妻一区二区电影| 99色6爱9热| www.色婷婷| AA片在线观看视频在线播放| 人妻久久婷婷| 久机视频这只有精品| 国产亚洲色婷婷久久99精品91| 成人一区在线观看| 老司机视频lsj爱就色| 色九月婷婷综合| 色操b| 99色性爰网络| 狠狠色丁香婷婷| 婷婷五月天第四色| 天天综合网在线| 激情久久网 | 香蕉人在线香蕉人在线 | A片试看120分钟做受视频红杏 | 丁香六月成人网| 五月婷婷色| 99精品网址| 丁香五月网在线观看| 亚洲色婷婷五月天| www一起操| 五月婷六月婷婷| 亚洲中文字幕在线观看| 日韩啪啪视频| 桃色五月天| 婷婷五月六月| 五月婷婷丁香五月婷婷| 99热自拍| 在线婷婷| 中文字幕丰满人妻无码专区| 岛国AAAV| 久久综合热17c| 色色色色色色色色综合网| 老妇操B| 91色情播放| 色135综合网| 色欲Av五月天| 丁香六月色婷婷| 五月婷婷激情久久| 久久最新色| 色婷婷色| 婷婷婷婷婷开心无码播放| 日本熟妇乱妇熟色A片蜜桃| 日本色色网| 激情综合婷婷| 亚洲熟女色| 色哟哟www| 高清成人综合| 色丁香五月婷婷| 人人操人人爽成人AV| 日本婷婷色日| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 亚洲 五月 婷婷 成人| 超级碰碰97在线| 色的色综合| 99热精品在线| 这里只有国产精品在线| 亚洲精品V天堂中文字幕| 色综久久久| 欧美色婷婷| 538在线| 色5月婷婷| 婷婷五月丁香六月伊人网| www.久久99| 久久五月天综合视频网站| 丁香婷婷激情| 久久99激情| 亚洲国产精品二二三三区 | 亚洲最大视频| 玖玖伦理电影| 亚洲精品又粗又大又爽A片| 久久久色婷婷五月天| 另类视频在线| 手机AVAV天堂看网| 久cao香蕉影院| 五月激情婷婷女| 淫五月停停| 婷婷色狠狠| 成人永久免费视频在线观看| 91AV婷婷| 噜综合| 99视频| 色综合色色色色色| 色色色9 9 9| 五月天婷婷色色| 丁香五月综合久久八| 亚洲无AV在线中文字幕| 就去涩涩丁香五月天| 色婷婷精| 丁香五月欧美色综合| 1024国产| 婷婷不干网| 天天久| 天天操B| 久热一区| 热99这就是精品视频| 色情丁香五月婷婷精品| 激情综合网五月婷婷| 丁香五月婷婷亚洲另类| 热婷婷久| 国产操碰| 日日操夜夜爽天天天| 色在线免费观看| 久久婷婷五月综合激情国产 | 99精品网| 深爱激清网| 九九综合九九| 午夜不卡久久精品无码免费| 五月丁香天堂网| 五月停亭六月,六月停亭的英语| 久碰视频| 丁香五月天啪啪| 五月丁香大香蕉| 国产婷伊人| 婷婷娌伦网| 婷婷丁香五月天色播网站| 91久久久久| 免费婷婷| 久热这里只有精品在线| 站长推荐无码播放| 青青久在线视频免费观看| 欧美色色色色色| 五月总合激情网| 性爱七区| 人人操AV| 99色综合| xxx综合在线| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 国产乱妇乱子在线播视频播放网站 | 香蕉99网| 免费看欧美成人A片无码| 日日色综合| 夜夜爽天天| 亚洲激情五月| 天天做天天爱天天爽| 九九热免费视频| 日韩欧美四五区| xx久久| 射满了还射免费在线观看 -午夜版全集-新视觉影院 | 色婷婷九月综合| 99热国产精品| 婷婷丁香综合| 成人做爰A片免费看网站找不到了 国产露脸150部国语对白 | 99久久天堂婷婷| 婷婷五月天网| 五月丁查人人| 激情网开心网| 2015好吊操| 婷婷色五月天色| 国产黄大片在线观看画质优化| 超碰日日操| 五月激情婷婷在线| 天天人人天天爽| 国产精品人妻欲求不满| 色婷婷五月丁香色| 国产亚洲精品AAAAAAA片| 欧美99视频| 伊人五月综合网| 婷婷色丁香五月| 天天舔天天插天天爱| 久碰婷婷视频| 婷婷免费视频| 国产精品久久久爽爽爽麻豆色哟哟| 91操片| 丁香五月天堂| 天天舔天天摸视频| 人妻内射麻豆视频| 99无码视频| 久操人妻| 777久久久| 超碰av在| 天天色粽合合合合合合合| 超碰九九热| 色五月婷婷综合| 婷婷操婷婷干婷婷射| 先锋资源 996| 丁香六月狠狠| 九月色婷婷| 五月丁香九九| 国产AV不卡福利| 婷婷日本在线| www99精品日韩| 国产古装妇女野外A片| 欧美在线干| 五月天色图| 天天干夜晚夜操| 超碰操网| 伊人狠狠丁香婷婷综合尤物| 五月天婷婷丁香| 五月天伊人| 天天爽天天| 婷婷九月丁香| www.五月丁香| 激情婷婷五月| 丁香婷婷91在线观看视频| 激情五月婷婷丁香| 日本操B视频| 婷婷播5月| 五月亚洲| 色色色五月婷| 婷婷九月亚洲| 91干视频| 99视频精品| 色噜噜狠狠色综合网| 日韩黄黄| 五月丁香六月婷婷久久| 激情六月综合| 99人人干| 六月婷婷中文字幕| 免费看欧美成人A片无码| 香蕉AV福利精品导航| 国产成人精品123区免费视频| 天天干天天干天天| 色5月婷婷| 天天插操| 日本一区二区三区精品视频| 任我肏视频精品| 综合玖玖偷拍| 久久九九网| 丁香婷婷六月激情文学| 夜夜噜夜夜奇| 欧美婷婷五月| 色色亚洲五月天| www.色9| 啪啪啪综合网| 日韩黄色影院| 曰本aaaaaa丈片| 狠狠色丁香久久婷婷综合五月| 夜夜大香蕉婷婷丁香| 久久婷婷六月| 五月丁香六月情婷婷久久| 亚洲色A| 五月丁香影院| 任你爽视频| 日逼AV影音先锋男人资源站| 操大屄五月天视频| 色色色色区| 久久激情视频| 夜夜爽天天日| 婷婷日欧美在线观看| 超碰91在线| 五月丁香综合网| 色激情网| 婷婷五月天成人| 99久久思思| 丰满熟女人妻一区二区三| 九九99精品视频| www久| 九九精品丁香花| www.黄色片-久久成人国产精品在线播放-999AV | 99爽视频| 六月激情婷婷| 五月色情婷婷| 久久久久久久97| 亚洲五月天伊人| 草综合14| 少妇性BBB搡BBB爽爽爽电影| 99久久五月婷婷| 99视频久久| 俺也去综合| 五月天婷婷综合免费| 五月香婷婷| 免费观看高清无码| 成人片在线播放| A A色色| 九九九九这里只有精品| 五月停停大香蕉| 综合AV在线| 色狠狠图片| 99九九在线| 2050人人操免费工开爱| 色琪琪一综合久久激情五月视频| www.色婷婷。com| 开心五月深爱激情| 99综合| WWW99视频| 熟女五月天久久综合| 久久久噜噜噜久久人妻| 国产精品久久久久久久久久免费| 激情久久丁香| 五月 丁香 欧美| 碰97久久| 色五月婷婷91在线| 九九99视频精品| 超碰a女人的天堂| 91男同视频| 亚洲综合网区| 五月天综合在线| 久热婷婷综合| 成人精品在线| 天天综合精品| 七月婷婷色香综合网| 91viP在线看| 亚洲狠狠干| 99热香港| 婷婷九月激情| 97干97色| 国产婷婷五月| 丁香五月五婷| 乱岳熟女50岁| 婷婷久久久| 五月天亭亭俺也| 婷婷日本在线| 丁香五月天婷婷久久| 婷婷五月天影院| 色色色97| 丁香 婷婷 亚洲 熟女| 丁香五月色| 97久久久久| 久久这里只有精品99| 春色激情| 天天插天天草人人玩| 色婷婷丁香五月| 色九月婷婷综合| 黄色激情五月天| 九九综合影音先锋 | 熟女国产在线一区二区三区四区| WWW.开心五月天.COM| 激情五月天网站| 婷婷五月亚洲综合| 丁香五月AV| 干一干xxxx| 久久精品视频在这里有| 婷婷五月综合性爱| 五月婷婷成人w| 大战熟女丰满人妻AV| 丁香六月色香蕉视频| 欧美日韩99| 激情久久肏屄视频| 色哟哟www| 色色婷婷色色| 婷婷丁香五月亚洲17cao| 色欧美日| 五月丁香成人视频| 久久综合综合综合| 欧洲亚洲激情五月天在线| www.婷婷com| 丁香六月爱综合| 亚洲精品久久久久久久久久飞鱼 | 精品婷婷五| 精品人妻伦一二三区久| 狠色狠色狠狠色综合网| 99热66| 九九人妻福利| 99久久婷婷国产综合| 久久久思思热| 婷婷丁香成人| 激情丁香五月婷| 免费无码毛片一区二区A片| 琪琪理论片| 五月色丁香| 快乐婷婷五月天| 精品久久久人妻| 久久久这里都是精品| 久热免费视频| 日本nghangse中文字幕| 涩婷婷五月天| 五月天婷婷色色首页| 中文字幕成人影视| 伊人久久大香天蕉亚洲特级| 婷婷伊人综合中文字幕| 婷婷九月激情| 天天玩夜夜操| 天天综合天天玩夜夜玩天天玩夜夜玩 | 日日操夜夜擼| 综合图区激情| 亚洲av网址| 色五月超碰| 99re思思久久| 婷婷五月天影院| 久鲁鲁色网| 狠狠色五月| 1024操逼视频| 丁香伊人网| 99热九九这里只有精品| 青柠影视免费高清电视剧| 五月丁香六月情婷婷久久| 丁香五月欧美婷婷| 99热99热在线| 色婷五月| 国产精品涩涩涩视频网站| 五月天激情婷婷丁香| 香蕉伊人综合| 亚洲激情四射| 色婷婷综合五月| 久99精品视频| 另类视频在线| 超碰AAAAAAV| 永久免费一区二区三区| 色婷婷狠狠| 天天综合五月| 久久91久久91色欲精品| 国产激情综合五月久久| 6月丁香婷婷激情| 丁香五月瑟瑟| 五月婷婷,六月丁香| 人人干Av| 成人午夜在线视频|