經(jīng)驗總結(jié)|美團(tuán)點評業(yè)務(wù)風(fēng)控系統(tǒng)的構(gòu)建

1 評論 22283 瀏覽 146 收藏 24 分鐘

以風(fēng)控面臨的這幾個挑戰(zhàn)為出發(fā)點,介紹了美團(tuán)點評在業(yè)務(wù)風(fēng)控系統(tǒng)構(gòu)建中所取得的經(jīng)驗。

背景

美團(tuán)最初以團(tuán)購的形式出現(xiàn),到現(xiàn)在有了很大的業(yè)務(wù)形態(tài)轉(zhuǎn)變。尤其是經(jīng)過與大眾點評的業(yè)務(wù)融合,從單一業(yè)務(wù)發(fā)展成了覆蓋到店餐飲、到店綜合、貓眼、外賣、酒店、旅游等多個垂直領(lǐng)域的綜合性電商,并且在各個領(lǐng)域都處于行業(yè)領(lǐng)先的地位。在這背后,美團(tuán)點評不僅面臨激烈的行業(yè)競爭,還有黑色產(chǎn)業(yè)(以下簡稱“黑產(chǎn)”)帶來的各種風(fēng)險,因為我們的業(yè)務(wù)有這樣一些特點:

  • 品類多、覆蓋面廣:包括幾乎所有吃喝玩樂服務(wù),其中不乏容易被銷贓的品類。
  • 用戶多、商戶多:美團(tuán)點評擁有6億以上用戶,400萬以上合作商家,覆蓋了很大部分國內(nèi)網(wǎng)民和商戶。
  • 交易高頻:每日訂單峰值突破千萬。

美團(tuán)點評對黑產(chǎn)有著巨大的吸引力,歸納起來在這些方面尤其突出:

  • 用戶作弊:大家常說的“薅羊毛”,用戶為了騙取促銷優(yōu)惠的作弊行為。
  • 商家刷單:常見的有刷排名、刷銷量、刷好評等違反商家平臺協(xié)議的行為。
  • 賬戶和支付安全:公民信息盜用形勢已經(jīng)十分嚴(yán)峻,黑產(chǎn)從業(yè)者會在電商平臺上盜取用戶的余額,或使用他人支付信息來消費。

這些行為嚴(yán)重侵害平臺用戶和商戶的利益、擾亂正常交易秩序,處理結(jié)果的好壞將決定整個業(yè)務(wù)的成敗。所以,美團(tuán)點評需要一套靈活高效的風(fēng)險控制系統(tǒng)和工作機(jī)制來防控這些風(fēng)險。

歸納一下,風(fēng)控系統(tǒng)面臨的挑戰(zhàn)有:

  • 業(yè)務(wù)多、風(fēng)險點多:上面提到的風(fēng)險涉及到各個業(yè)務(wù)的購買流程、用戶操作、商家操作等多個場景。
  • 變化快:黑產(chǎn)的攻擊手段升級,自身業(yè)務(wù)在變化,互聯(lián)網(wǎng)環(huán)境也會不斷變化。
  • 我在明、敵在暗:平臺在明處,但攻擊者是誰、會在什么時候出現(xiàn)、用什么方式進(jìn)攻卻無法預(yù)知。

接下來就以風(fēng)控面臨的這幾個挑戰(zhàn)為出發(fā)點,介紹我們在系統(tǒng)構(gòu)建中所取得的經(jīng)驗。

系統(tǒng)構(gòu)建經(jīng)驗

挑戰(zhàn)一:業(yè)務(wù)多,風(fēng)險點多

回到風(fēng)控工作的起點,在了解業(yè)務(wù)所面臨的風(fēng)險類別后,首先要面對的問題就是:怎樣才能知道有風(fēng)險,并且能夠控制風(fēng)險?我們很容易想到,為了做到這些必須與業(yè)務(wù)系統(tǒng)對接,這部分系統(tǒng)我們稱之為“對接系統(tǒng)”,它的目標(biāo)抽象來說就是:感知風(fēng)險控制風(fēng)險。

感知風(fēng)險”是指要收集盡可能完整的數(shù)據(jù)。風(fēng)控需要關(guān)注:誰、在什么時候、通過什么方式、對什么對象、做了什么?這句話抽象概括了要感知的內(nèi)容,絕大多數(shù)信息都可以套用到這句話。

第二個目標(biāo)是“控制風(fēng)險”。如果僅僅站在防守方的角度看,并不容易知道應(yīng)該控制哪里;我們應(yīng)該站在攻擊者的角度思考:攻擊者關(guān)注什么?答案是利益。以美團(tuán)點評為例,可帶來的利益有:

  • 促銷優(yōu)惠:相關(guān)的風(fēng)險場景有下單、支付、購買、驗券等。
  • 商家銷量和排名等:涉及購買、搜索、銷量展示等頁面。
  • 用戶余額:即需要控制登錄、查看余額等動作。

以這樣的角度排查,就不容易漏掉風(fēng)險點。排查清風(fēng)險點后,實際對接工作也有很大挑戰(zhàn):美團(tuán)點評的細(xì)分業(yè)務(wù)有100多個,很多業(yè)務(wù)都有多種用戶終端(iPhone, Android,H5,PC等)、多個業(yè)務(wù)后臺(促銷工具,商家后臺等),需要對接的場景數(shù)量很多。所以感知風(fēng)險、控制風(fēng)險背后最大的挑戰(zhàn)是如何與業(yè)務(wù)方緊密配合順利對接。

在配合中,業(yè)務(wù)團(tuán)隊常顧慮因風(fēng)控需求拖慢業(yè)務(wù)開發(fā)速度,而風(fēng)控也常感到業(yè)務(wù)團(tuán)隊配合不足。在配合的問題上,應(yīng)該先充分認(rèn)識兩個團(tuán)隊合作的目的,就好像生產(chǎn)汽車和生產(chǎn)安全氣囊,安全氣囊在大多數(shù)國家已經(jīng)是汽車生產(chǎn)銷售的必須要求;同理,在現(xiàn)今互聯(lián)網(wǎng)服務(wù)中,安全配備也已經(jīng)成為了用戶體驗、業(yè)務(wù)需求的一部分,一個忽略安全的產(chǎn)品,終究會被市場淘汰。另一方面對風(fēng)控而言,業(yè)務(wù)發(fā)展是風(fēng)控存在的前提,如果風(fēng)控的安全需求影響到業(yè)務(wù)發(fā)展也是不合理的,因此風(fēng)控要提高服務(wù)質(zhì)量,讓對接帶來的負(fù)擔(dān)降到最低——這就是對接系統(tǒng)設(shè)計的核心目標(biāo)。

總結(jié)一下,風(fēng)控工作經(jīng)驗一:安全是業(yè)務(wù)的必要屬性,沒有安全保障的產(chǎn)品,終究會被市場淘汰; 風(fēng)險控制要服務(wù)于業(yè)務(wù),減少業(yè)務(wù)對接負(fù)擔(dān)。具體而言,業(yè)務(wù)接入風(fēng)控的成本主要有接入成本運行成本兩方面。下面分別來看我們在風(fēng)控系統(tǒng)構(gòu)建中的做法。

1、接入成本

風(fēng)控系統(tǒng)最早只是業(yè)務(wù)系統(tǒng)中的一個函數(shù),逐步演化成了獨立的服務(wù)。而這個獨立服務(wù)與業(yè)務(wù)后臺的交互最初時也沿用了舊的思路,即業(yè)務(wù)后臺在關(guān)鍵動作前調(diào)用風(fēng)控服務(wù)判斷“有沒有風(fēng)險”。但這樣每次新增加一個業(yè)務(wù)或新出現(xiàn)一個風(fēng)險場景時,風(fēng)控和業(yè)務(wù)都要重新對接聯(lián)調(diào)。這樣頻繁地調(diào)整給上下游團(tuán)隊都帶來了不小的負(fù)擔(dān),在頻繁的更改中系統(tǒng)質(zhì)量也難以保證。

換個角度看,其實還有更好的交互方式:當(dāng)風(fēng)控要保證賬戶操作環(huán)節(jié)的安全,可以讓用戶中心直接與風(fēng)控系統(tǒng)對接。即業(yè)務(wù)系統(tǒng)調(diào)用用戶中心,用戶中心再調(diào)用風(fēng)控透傳風(fēng)控所需參數(shù),而風(fēng)控的決策也通過用戶中心返回給業(yè)務(wù)后臺。這樣的好處是只需要用戶中心與風(fēng)控對接一次,業(yè)務(wù)系統(tǒng)甚至不需要明顯感知到風(fēng)控的存在。同樣的道理,與商戶中心、支付環(huán)節(jié)的交互也可以采取類似的設(shè)計方法。這樣的改造相當(dāng)于把風(fēng)險控制的“責(zé)任”從業(yè)務(wù)方移交給了中間件,即由中間件來保證提供安全的服務(wù)。這樣理順系統(tǒng)模塊間的關(guān)系,從而降低整體開發(fā)成本。

2、運行成本

業(yè)務(wù)接入風(fēng)控系統(tǒng)后,尤其關(guān)心運行過程中的是否會有問題。風(fēng)控系統(tǒng)要尤其關(guān)注以下這些方面:

(1)服務(wù)穩(wěn)定性

  • 隔離部署:在對接的眾多后臺服務(wù)流程中,哪些是核心流程、哪些是非核心流程,需要隔離開防止相互影響。
  • 依賴降級:風(fēng)控策略需要實時依賴大量外部數(shù)據(jù)接口和存儲,依賴越多穩(wěn)定性問題發(fā)生的概率越大,相應(yīng)的熔斷、降級機(jī)制不可缺少。
  • 限流防刷:業(yè)務(wù)尤其是高風(fēng)險業(yè)務(wù)隨時可能因爬蟲、惡意攻擊而造成流量突增。系統(tǒng)需要具備識別和拒絕這些惡意流量的能力,而不是放任其消耗業(yè)務(wù)后臺和風(fēng)控系統(tǒng)的計算資源。為了做到這一點,風(fēng)控系統(tǒng)不應(yīng)僅位于業(yè)務(wù)系統(tǒng)的調(diào)用下游,而要在全局流量入口處插入反爬防刷模塊來實現(xiàn)整體控制。

(2)服務(wù)性能

1)風(fēng)控與業(yè)務(wù)對接可以大致分為兩類:

  1. 同步控制接口,返回風(fēng)控決策并由上游實時處理。
  2. 異步信息收集接口,主要目的是收集數(shù)據(jù)提供風(fēng)控決策依據(jù)。異步接口可以顯著減少上游服務(wù)的阻塞時間。

2)最初風(fēng)控策略硬編碼在代碼中,對運行過程的優(yōu)化也以人為調(diào)整代碼為主,但策略調(diào)整頻繁,運行優(yōu)化無法跟上策略調(diào)整,而且策略復(fù)雜度提高后,人為優(yōu)化代碼也不再現(xiàn)實,因此需要在運行時動態(tài)決定運行策略才能達(dá)到最好的優(yōu)化效果。這點通過規(guī)則平臺來完成,將在后文中“規(guī)則平臺”中介紹。

3)風(fēng)控運營

風(fēng)控策略不可能做到完全精確,為了降低業(yè)務(wù)損失很多情況下要以犧牲一部分用戶體驗為代價,因此完善的用戶運營保障不可或缺。這在后文的“運營系統(tǒng)”中會提到。

挑戰(zhàn)二:變化快

具備感知風(fēng)險和控制風(fēng)險的能力后,實現(xiàn)風(fēng)控策略就是第二個關(guān)鍵問題。最初的策略可以很簡單,比如此時我們認(rèn)定:“穿黑衣服的是壞人”。類似策略運行一段時間后會出現(xiàn)有意思的現(xiàn)象:“壞人會逐漸換上其他顏色衣服”。這也很好理解,攻擊者不會持續(xù)做無效的攻擊浪費資源,而是會轉(zhuǎn)向其他進(jìn)攻手段。這樣舊策略反而只會影響到一部分正常用戶——觀察到的結(jié)果是策略準(zhǔn)確率下降。這樣的情況無法避免,因為——風(fēng)控工作經(jīng)驗二: 風(fēng)控是一項長期的對抗性工作。

那么我們首先要加強(qiáng)策略健壯性。還用上面的例子,攻擊者很容易發(fā)現(xiàn)后臺針對黑衣人的策略。但如果策略復(fù)雜一些,識別“穿黑衣服而且戴黑帽子的人”有問題,那么策略被暴露的概率就低了很多。但這會影響策略的覆蓋面,所以需要更多的策略形成策略網(wǎng)共同作用。假設(shè)極端一點,把能想到的識別要素都用上,制定策略也就變成了模型訓(xùn)練問題,通過機(jī)器學(xué)習(xí)來制定策略會有更好的健壯性。不過這只是理想情況,現(xiàn)實并沒有這么樂觀。風(fēng)控所面對的真實場景中正樣本和負(fù)樣本數(shù)量差距懸殊,而且攻擊模式在持續(xù)變化,導(dǎo)致這并不是穩(wěn)定的算法問題。所以實際工作中人工介入制定專家規(guī)則并與算法策略結(jié)合使用是更有效的方法。

涉及到長期對抗的工作,效率高低將是對抗效果的決定性因素。風(fēng)控需要多種角色配合,典型如:開發(fā)者建設(shè)系統(tǒng)、策略制定者制定規(guī)則策略、產(chǎn)品角色把策略應(yīng)用到合適的場景。讓這些角色并行不悖就是工作的理想高效狀態(tài)?!耙?guī)則平臺”就是我們用來達(dá)到這一狀態(tài)的秘密武器。

1、規(guī)則平臺

為了解耦系統(tǒng)開發(fā)策略開發(fā),需要讓策略執(zhí)行過程標(biāo)準(zhǔn)化。我們把策略劃分成幾個層次:

  • 場景:對應(yīng)規(guī)則集合,一個場景包含若干條規(guī)則。
  • 規(guī)則:是最小的決策單元,一個規(guī)則包含多個因子。
  • 因子:因子是組成規(guī)則的最小邏輯單元。

上下兩層之間都是多對多的關(guān)系。這樣劃分后,所有策略都套用標(biāo)準(zhǔn)化的執(zhí)行過程,并能達(dá)到最大程度的配置復(fù)用。此外還有一個好處,就是將策略配置從代碼中抽離。舊的策略執(zhí)行過程是用硬編碼預(yù)先編寫好,對執(zhí)行過程代碼調(diào)優(yōu)十分復(fù)雜,即使調(diào)優(yōu)也只能針對特定的策略配置。如果策略改變了,原來的優(yōu)化可能就不再適用。通過配置執(zhí)行策略后,執(zhí)行過程也變成動態(tài)的。具體來說,運行時會根據(jù)請求來決定需要計算哪些場景、規(guī)則和因子,每個元素計算且僅計算一次,沒有相互依賴的部分放入多個線程并行處理。通過這樣的優(yōu)化,效率和性能得到大幅度提高。

再看策略開發(fā)決策應(yīng)用。最初實際工作中這兩者耦合在一起不加區(qū)分,即針對特定場景開發(fā)特定策略。逐漸暴露出一些問題,比如場景會變化、會新增,那原有的策略是否還適用?一個策略是否只能使用固定的決策動作?為了讓這兩部分工作并行,需要從設(shè)計定位上就把兩者區(qū)分開。即:

  • 策略:是為了識別一些特定的問題,例如“是不是模擬器請求”,“該用戶是不是新客”。
  • 決策:是針對場景的應(yīng)用,如拒絕、驗證手機(jī)短信等。

規(guī)則平臺設(shè)計讓每個場景可以應(yīng)用不同策略,命中策略后的決策也可以靈活定制,甚至可以配置多個決策,并設(shè)置不同優(yōu)先級。

2、驗證中心

上文中的“決策”代表系統(tǒng)是否信任該請求,風(fēng)控背后的工作也圍繞這個“信任”而展開。拒絕不信任的,放行信任的。但還有不少情況是中間不足以確定的部分,常見的處理方法是需要讓用戶補充驗證信息來輔助判斷。最初實現(xiàn)的驗證流程是:風(fēng)控服務(wù)識別風(fēng)險后返回決策給業(yè)務(wù)系統(tǒng),由業(yè)務(wù)系統(tǒng)實現(xiàn)驗證的完整交互過程。這樣存在兩個問題:

  • 首先業(yè)務(wù)方很多,不同的業(yè)務(wù)需要重復(fù)實現(xiàn)驗證流程,造成重復(fù)開發(fā)。
  • 其次驗證種類有很多,從較弱可信度的短信驗證,到較高可信度的銀行卡驗證等——風(fēng)控能返回什么樣的決策受限于特定場景業(yè)務(wù)方的實現(xiàn)了什么驗證支持。

這些問題對于業(yè)務(wù)和風(fēng)控系統(tǒng)造成了不小麻煩。所以我們需要優(yōu)化這一過程,讓驗證過程由一個獨立的服務(wù)——驗證中心來完成。業(yè)務(wù)系統(tǒng)從風(fēng)控服務(wù)獲得風(fēng)險決策,再與驗證中心交互完成驗證。從風(fēng)控的角度看,以前的處理方式稱作“只管殺,不管埋”,優(yōu)化后可以稱之為“殺埋一條龍服務(wù)”。

除了規(guī)則平臺、驗證中心,我們還抽象出了累計服務(wù)、處罰中心、算法平臺等服務(wù)來提升風(fēng)控對抗效率。

挑戰(zhàn)三:我在明,敵在暗

風(fēng)控與黑色產(chǎn)業(yè)的對抗有個天然的不利因素,就是風(fēng)控團(tuán)隊需要防御所有短板,而對手只需要找到薄弱的環(huán)節(jié)進(jìn)攻。面對進(jìn)攻,我們可以建立相對完善的實時策略體系和工具系統(tǒng),但如果僅寄希望于實時策略解決所有問題也是不現(xiàn)實的。即使策略再優(yōu),黑產(chǎn)、業(yè)務(wù)、環(huán)境都在變化,仍然可能留有漏洞,或者陷于疲于應(yīng)付的境地。這樣的現(xiàn)實需要風(fēng)控團(tuán)隊視角更寬廣一些——風(fēng)控工作經(jīng)驗三:要從事中防守擴(kuò)展到立體事前、事中、事后防御。

在風(fēng)險事前,要注意提升防御能力,減少防御短板:

  • 風(fēng)險教育:在快速發(fā)展的業(yè)務(wù)中,風(fēng)險控制的核心在于人,要將風(fēng)險意識和基本概念傳遞到業(yè)務(wù)的各個階段,明確告知風(fēng)控可以提供的服務(wù)。
  • 參與業(yè)務(wù):參與到業(yè)務(wù)的產(chǎn)品流程中,了解高風(fēng)險業(yè)務(wù)、活動的規(guī)則,預(yù)判風(fēng)險并給予合適力度的干預(yù)。
  • 數(shù)據(jù)準(zhǔn)備:打通數(shù)據(jù)收集流程,制定預(yù)警規(guī)則、模型策略等。
  • 主動防護(hù):關(guān)注業(yè)界風(fēng)險動態(tài),發(fā)生行業(yè)安全事件后,或重大活動、產(chǎn)品改動上線前,制定有針對性的規(guī)則,甚至采取鎖定高危賬戶、發(fā)送預(yù)警消息等措施。

在風(fēng)險事后,要快速響應(yīng),靈活管控。客戶投訴是風(fēng)控了解策略效果的最重要指標(biāo)之一。 針對風(fēng)險場景,風(fēng)控還要主動關(guān)注異常數(shù)據(jù),實現(xiàn)“預(yù)警”監(jiān)控。這些反饋都會進(jìn)入運營工作流做處理。 運營工作流中,盡管各風(fēng)控產(chǎn)品具體流程不同,都可以劃分為初步受理、核查審理、案件處理三個步驟,對應(yīng)著以下三個系統(tǒng):

  • 初步受理:主要用作初步篩選案件,決定是否需要進(jìn)入下一步驟。其流程較為簡單,系統(tǒng)的設(shè)計目標(biāo)是讓風(fēng)控運營人員可以便捷的處理案件,因此處理效率是其中的重要衡量指標(biāo)。
  • 核查審理:用于詳細(xì)核查案件,通常有多步驟流程,不同角色以其專業(yè)視角做判斷。核查過程中需要大量數(shù)據(jù)支持和處理系統(tǒng)支持,因此有了運營支持系統(tǒng)。
  • 案件處理:確認(rèn)且涉及到資金損失的案件需要進(jìn)入賠付流程。因為涉及到資金賠付,精確的權(quán)限管理是系統(tǒng)設(shè)計和實現(xiàn)時需要特別注意的問題。

運營平臺的意義不僅在于處理案件本身,更在于將處理結(jié)果反饋到線上系統(tǒng)中實現(xiàn)風(fēng)控線上和線下的運行閉環(huán)。除了運營平臺,逆轉(zhuǎn)信息劣勢還要靠完善的數(shù)據(jù)體系的幫助。風(fēng)險控制所使用的數(shù)據(jù)可以這樣分類:

  • 事件快照:原始而完整的信息,用于生成聚合數(shù)據(jù),也是支持運營查詢的主要數(shù)據(jù)源。
  • 聚合事實:相比于原始的事件記錄,更多使用場景更關(guān)心聚合的結(jié)果,例如某用戶、某商家的歷史購買次數(shù)。經(jīng)過聚合整理后的數(shù)據(jù),是進(jìn)一步數(shù)據(jù)挖掘的基礎(chǔ)。
  • 衍生信息:指基于事件快照和聚合事實衍生出的理解信息,例如用戶的作弊風(fēng)險、設(shè)備的可信程度、黑白灰名單等。這些衍生信息可以適配到各個特定場景中使用。
  • 基礎(chǔ)數(shù)據(jù):除了直接傳遞到風(fēng)控的數(shù)據(jù)外,風(fēng)控處理過程少不了需要業(yè)務(wù)甚至是外部的輔助信息。例如,業(yè)務(wù)相關(guān)訂單和活動信息、公認(rèn)的事實數(shù)據(jù)、外部輔助決策信息等。

小結(jié)

把上面三部分融合起來,可以看到風(fēng)控系統(tǒng)的全景:

風(fēng)控之道

從上文三條風(fēng)控工作原則可以看到,風(fēng)控系統(tǒng)構(gòu)建過程各個階段的關(guān)注點從對接質(zhì)量,到平臺效率,再過渡到立體的閉環(huán)防御。但即使系統(tǒng)發(fā)展到了相對成熟的階段,與黑產(chǎn)的斗爭也遠(yuǎn)沒有結(jié)束。為了更好的對抗,我們要從對手身上學(xué)習(xí):

  • 黑產(chǎn)鏈條經(jīng)過長時間的實戰(zhàn)優(yōu)化,分工極為細(xì)致。風(fēng)控團(tuán)隊也應(yīng)該學(xué)習(xí)這樣的思路,將服務(wù)功能切分到細(xì)粒度以更好適應(yīng)變化。
  • 黑產(chǎn)對利益極為敏感,甚至很多時候比業(yè)務(wù)開發(fā)者還要了解業(yè)務(wù)。風(fēng)控團(tuán)隊只有比對手更了解“主場”——也就是自身業(yè)務(wù),才有可能在對抗中取得主動。

如果把風(fēng)險控制比喻成一場戰(zhàn)爭,還可以從軍事理論中得到借鑒。《孫子兵法?謀攻篇》中的一段描述就十分貼切:

“知可以戰(zhàn)與不可以戰(zhàn)者勝,識眾寡之用者勝,上下同欲者勝,以虞待不虞者勝,將能而君不御者勝。此五者,知勝之道也?!?/p>

類比到風(fēng)控工作中,風(fēng)控團(tuán)隊需要考量:

  1. 控制風(fēng)險是否現(xiàn)實
  2. 團(tuán)隊人才質(zhì)量和數(shù)量是否足夠
  3. 團(tuán)隊價值觀是否統(tǒng)一
  4. 對風(fēng)險是否足夠了解
  5. 是否得到上層支持

這五點就是風(fēng)控工作的取勝之道啊。

參考文獻(xiàn)

  1. Samet O. Introduction to Online Payments Risk Management. O’Reilly. 2013.
  2. 李俊奎. ArchSummit. 支付寶:敢付敢賠背后的互聯(lián)網(wǎng)實時風(fēng)控技術(shù). 2014.

本文根據(jù)“第八屆中國系統(tǒng)架構(gòu)師大會”演講內(nèi)容整理而成。

 

作者:美團(tuán)點評技術(shù)團(tuán)隊

來源:https://zhuanlan.zhihu.com/p/24936694

版權(quán)聲明:人人都是產(chǎn)品經(jīng)理尊重行業(yè)規(guī)范,所轉(zhuǎn)載的文章都注明作者和來源,若標(biāo)注有誤,請聯(lián)系主編QQ:419297645更改。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. ??

    來自廣東 回復(fù)