• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于“軟能力”的操作系統(tǒng)可信增強與恢復技術(shù)*

    2020-04-25 13:37:40楊少鵬馮中華
    通信技術(shù) 2020年4期
    關鍵詞:白名單內(nèi)核度量

    楊少鵬,陳 佳,馮中華

    (中國電子科技集團公司第三十研究所,四川 成都 610041)

    0 引 言

    隨著全球信息化的飛速發(fā)展,網(wǎng)絡信息技術(shù)的持續(xù)演進,計算機網(wǎng)絡已經(jīng)成為當今世界必不可少的高新技術(shù)之一?;ヂ?lián)網(wǎng)對整個經(jīng)濟社會發(fā)展的滲透、驅(qū)動作用越來越明顯,帶來的風險挑戰(zhàn)也在不斷擴大。

    隨著《國家安全法》和《國家網(wǎng)絡空間安全戰(zhàn)略》的發(fā)布,以及近期發(fā)生的“斯諾登”事件、“震網(wǎng)”病毒攻擊、”勒索”病毒攻擊等安全事件,網(wǎng)絡空間安全技術(shù)已成為關系到國家利益和安全的核心技術(shù)。

    網(wǎng)絡攻擊的基本步驟包括搜集信息、實施入侵、上傳程序、下載數(shù)據(jù)和保持訪問。研究表明,信息系統(tǒng)中主要的安全事件都源于不安全的終端。病毒、木馬、黑客等攻擊行為利用終端上的安全弱點,在終端上發(fā)起攻擊,并通過網(wǎng)絡感染或破壞其他系統(tǒng)。例如,現(xiàn)在流行的APT 攻擊具有結(jié)構(gòu)復雜、手段高超、破壞嚴重、處理棘手、防范困難等特點。APT攻擊的手段主要是在目標基礎上建立并擴展立足點來獲取信息,在一個很長的時間段內(nèi)潛伏并反復對目標進行攻擊,突破傳統(tǒng)安全系統(tǒng)的防御措施。

    目前,有效的安全防御手段是“控”和“防”相互結(jié)合,從終端源頭進行控制,對用戶行為規(guī)范進行安全管理和控制,從系統(tǒng)層面進行防御和預警。病毒、木馬、黑客等攻擊行為都是可執(zhí)行程序,所以終端層面的控制就是通過可執(zhí)行文件運行控制,即計算機運行可信。

    1 研究現(xiàn)狀

    計算機可信的主題思想是“行為的可預期性”,即通過可信根建立的一系列可信信任鏈,最后到應用程序可信。這里的可信是相對于可信源(即度量值)來說的,滿足預期的度量值即為可信。所以,在商用可信中,如何獲取度量值,從哪里開始比對度量值非常關鍵。操作系統(tǒng)啟動時,開始度量的階段越靠前,可信度越高,被篡改的機會越少。

    目前,市面上使用的可信系統(tǒng)大多是基于硬件平臺設計的??尚畔到y(tǒng)通過增加額外的硬件、固件、中間件來實現(xiàn)操作系統(tǒng)的運行可信。例如,可信BIOS 是對BIOS 進行安全加固,是整個計算平臺安全的基石,只有保證BIOS 的安全可信,上層的操作系統(tǒng)和應用程序才具有安全基礎;可信平臺模塊(Trusted Platform Module,TPM)是基于安全芯片實現(xiàn)的可信,實現(xiàn)數(shù)字簽名、數(shù)據(jù)加解密和數(shù)據(jù)的訪問控制,主要實現(xiàn)硬件的可信度量[1]。

    基于硬件的可信計算機系統(tǒng)在易用性和可靠性上還有所不足,主要表現(xiàn)在以下幾個方面。

    (1)可信固件的改造和適配是一個復雜和長期的工作,只有新定制的計算機才具有可信BIOS的能力,已經(jīng)在使用的計算機無法安裝可信BIOS。

    (2)安全芯片存儲容量有限,內(nèi)部無法存儲大量摘要值,無法實現(xiàn)全覆蓋。

    (3)外接硬件容易受到供電、工藝水平等影響,有時無法識別,影響使用性。

    (4)市面上的可信計算系統(tǒng),在操作系統(tǒng)關鍵文件度量失敗后無法自動完成修復,操作系統(tǒng)無法進入,影響系統(tǒng)的使用性和便捷性。

    本文實現(xiàn)的可信系統(tǒng)軟件為純軟件形態(tài),以信任鏈傳遞技術(shù)為基礎,通過軟件白名單技術(shù),實現(xiàn)對計算機操作系統(tǒng)文件和可執(zhí)行文件摘要值的度量,在系統(tǒng)啟動過程中建立可信鏈,達到對用戶行為規(guī)范進行安全管理和控制,同時起到有效防范惡意代碼的作用,確保運行的程序都是合法的、可知的和可信的。

    可信系統(tǒng)軟件是在現(xiàn)有計算機操作系統(tǒng)中安裝部署,不涉及硬件的改動和操作系統(tǒng)的變動,在操作系統(tǒng)啟動前開始度量,提高可信度。

    2 可信增強與恢復設計

    2.1 操作系統(tǒng)啟動原理

    操作系統(tǒng)的啟動過程是一個復雜的過程,不同的操作系統(tǒng)具有相似但各不相同的啟動方式和過程。系統(tǒng)啟動是一個操作系統(tǒng)必經(jīng)的階段,是一個操作系統(tǒng)得以穩(wěn)定運行的基礎。操作系統(tǒng)文件和內(nèi)核是操作系統(tǒng)的重要組件,運行在操作系統(tǒng)上的程序無時無刻在與系統(tǒng)文件進行交互。因此,操作系統(tǒng)文件和內(nèi)核的可信運行對操作系統(tǒng)的安全增強至關重義。可執(zhí)行文件是計算機上運行的單元,它們直接被用戶使用,是操作系統(tǒng)與用戶的接口。從安全角度上看,可執(zhí)行文件的運行對操作系統(tǒng)安全構(gòu)成了威脅。

    計算機系統(tǒng)的啟動過程,如圖1 所示。計算機加電后首先執(zhí)行系統(tǒng)主板BIOS 中的自檢程序,而后根據(jù)CMOS 設置的啟動順序加載介質(zhì)上的引導程序。以硬盤優(yōu)先引導為例,BIOS 通過JMP 指令轉(zhuǎn)跳到啟動設備的主引導記錄(Master Boot Record,MBR)。如果計算機上只安裝了一個操作系統(tǒng),那么系統(tǒng)將直接載入操作系統(tǒng)的內(nèi)核鏡像,然后啟動操作系統(tǒng)[2]。如果該計算機上同時安裝多個操作系統(tǒng),則MBR 將會被Boot Loader(操作系統(tǒng)啟動裝載器)所覆蓋,然后由用戶進行配置和選擇要啟動的操作系統(tǒng)。

    圖1 操作系統(tǒng)啟動流程

    2.2 操作系統(tǒng)可信增強和恢復設計

    操作系統(tǒng)可信增強的設計思想是“根據(jù)預制的可執(zhí)行文件的摘要值,確??蓤?zhí)行文件按照預期的行為運行”。根據(jù)操作系統(tǒng)啟動原理及啟動過程之間的依賴關系,在MBR 階段、操作系統(tǒng)啟動裝載器階段和操作系統(tǒng)啟動后3 個階段,通過“軟能力”對操作系統(tǒng)運行進行安全增強,確保操作系統(tǒng)運行環(huán)境安全可信。同時,對操作系統(tǒng)啟動關鍵文件進行備份和自動恢復,確保操作系統(tǒng)文件異常后能夠快速實現(xiàn)文件恢復,提高操作系統(tǒng)的可用性和安全性,如圖2 所示。

    2.2.1 MBR 的可信

    MBR 占據(jù)硬盤的一個扇區(qū),它在磁盤的物理地址為0 磁頭0 柱面1 扇區(qū),大小為512 B。對MBR進行度量需要讀取磁盤物理位置上的塊數(shù)據(jù),需要通過BIOS 提供的讀寫磁盤13H 號中斷功能來實現(xiàn)。若MBR 異常,操作系統(tǒng)無法被正常引導。

    圖2 操作系統(tǒng)安全增強示意

    2.2.2 OS Loader(操作系統(tǒng)裝載器)的可信

    在商用計算機中,OS Loader 處于MBR 和操作系統(tǒng)之間,主要職責用于引導操作系統(tǒng),并把CPU控制權(quán)遞交給它。

    OS Loader 對其進行可信認證的關鍵在于要從磁盤扇區(qū)中讀取引導程序文件數(shù)據(jù)。引導程序文件在磁盤中的位置是不固定的,且所在扇區(qū)也不一定是連續(xù)的,需要通過讀取文件系統(tǒng)的結(jié)構(gòu)元數(shù)據(jù)來定位,流程如下:

    (1)獲取OS Loader 所在分區(qū)的文件系統(tǒng)類型;

    (2)根據(jù)文件系統(tǒng)類型加載相應的文件系統(tǒng)解析庫;

    (3)通過文件系統(tǒng)解析庫讀取引導文件數(shù)據(jù),并驗證其完整性。

    2.2.3 操作系統(tǒng)的可信度量和備份恢復

    操作系統(tǒng)的可信驗證與OS Loader 的可信驗證基本相同,也是驗證文件的完整性。但是,操作系統(tǒng)的文件類型和數(shù)量遠不止一個,包括操作系統(tǒng)的配置文件、主內(nèi)核文件、內(nèi)核驅(qū)動文件、系統(tǒng)服務程序文件、系統(tǒng)接口庫文件等。通過文件采集工具,將要度量的操作系統(tǒng)文件摘要值計算加密保存,同時將文件進行加密存儲。

    操作系統(tǒng)文件度量時,若摘要值比對失敗,則通過接口計入PE 操作系統(tǒng),自動執(zhí)行文件恢復程序,實現(xiàn)操作系統(tǒng)文件的自動恢復。

    2.2.4 可執(zhí)行文件的可信度量

    可執(zhí)行文件的運行控制是根據(jù)白名單機制,通過摘要值比對控制文件的運行,使文件的運行是可預期的。可執(zhí)行文件的摘要值需提前采集。

    Windows 系統(tǒng)的運行控制模塊是通過內(nèi)核驅(qū)動實現(xiàn)的。當可執(zhí)行文件運行時,驅(qū)動攔截將要加載的可執(zhí)行文件,計算可執(zhí)行文件的摘要值判斷此程序是否在可信列表中,如果在列表中則允許運行,否則拒絕運行。

    可執(zhí)行文件控制技術(shù)在Windows XP/2003 與Windows Vista/7 的實現(xiàn)方法不同,前者采用SSDT HOOK 技術(shù),后者采用Windows 過濾平臺(Windows Filter Platform,WFP)技術(shù)。中標麒麟系統(tǒng)的可信運行控制基于Linux 安全模塊(Linux Security Module,LSM)框架實現(xiàn)。LSM 框架是一個針對Linux 內(nèi)核的安全框架,在訪問系統(tǒng)內(nèi)核的資源接口處注冊HOOK 函數(shù)接口,在進程訪問系統(tǒng)資源前對進程行為進行控制[2]。

    2.3 可信系統(tǒng)軟件工作流程設計

    可信系統(tǒng)軟件主要分為操作系統(tǒng)啟動前的可信度量和操作系統(tǒng)啟動后的可信度量兩部分,主要工作流程如圖3 所示。

    圖3 可信系統(tǒng)軟件工作流程

    (1)以一個干凈的操作系統(tǒng)作為可信源進行操作系統(tǒng)文件和可執(zhí)行文件的摘要值采集,并加密存儲于操作系統(tǒng)硬盤;

    (2)操作系統(tǒng)啟動前,輸入認證口令;

    (3)口令認證成功后,對操作系統(tǒng)文件開始度量,操作系統(tǒng)文件度量值比對成功后進入操作系統(tǒng);若操作系統(tǒng)文件度量值比對失敗,則進入文件恢復階段恢復異常的系統(tǒng)文件,恢復成功后重新度量進入操作系統(tǒng);

    (4)進入操作系統(tǒng)后,可執(zhí)行軟件若要運行,需與存儲的摘要值進行比對,比對成功可以運行,比對失敗禁止運行;

    (5)用戶可以根據(jù)需求,通過軟件界面動態(tài)調(diào)整摘要值庫文件。

    3 可信增強與恢復實現(xiàn)

    本文基于“軟能力”的可信系統(tǒng)軟件是基于Windows XP 系統(tǒng)實現(xiàn)的,可以對操作系統(tǒng)文件進行摘要值度量和恢復,同時對可執(zhí)行文件進行摘要值度量,在系統(tǒng)運行過程中建立可信傳遞,確保運行環(huán)境是可控的、可信的。

    操作系統(tǒng)啟動前的可信增強基于Grub4Dos 源碼實現(xiàn),通過grubinst.exe 程序覆蓋系統(tǒng)原來的MBR,通過MBR 查找并加載grldr,在Grub 階段完成操作系統(tǒng)文件的安全度量。若操作系統(tǒng)文件度量失敗,則進入文件恢復模式進行受損文件的恢復。操作系統(tǒng)啟動后的可信增強基于C/C++實現(xiàn),包括應用層界面程序和驅(qū)動層程序。內(nèi)核驅(qū)動實現(xiàn)可執(zhí)行文件的安全度量,驅(qū)動程序以服務方式隨操作系統(tǒng)自啟動,確保系統(tǒng)環(huán)境運行安全可信。

    3.1 操作系統(tǒng)文件采集和文件備份

    3.1.1 采集源環(huán)境準備

    計算機操作系統(tǒng)安裝完成后,進行多殺毒引擎、多輪次全盤殺毒,確保操作系統(tǒng)采集源環(huán)境是安全的、可信的,后面將以此作為比對的基礎。

    3.1.2 文件采集和備份

    通過可信系統(tǒng)軟件提供的采集和備份工具,將操作系統(tǒng)啟動過程中的exe、dll、sys、ini 等文件進行摘要值采集,形成摘要值數(shù)據(jù)鏈,加密保存到hmldr.cfg 文件中。涉及的主要函數(shù)包括AddHashToFile(char*filepath,char*filehash)、SetGrubPwd(char*pcszpwd)和AddFileToBackDirec(char*filepath)。AddHashTofile 函數(shù)將采集的操作系統(tǒng)內(nèi)核文件的路徑和計算的摘要值寫入hmldr.cfg 中。SetGrubPwd 函數(shù)設置Grub 引導界面的登錄口令,用于操作系統(tǒng)登錄身份認證。Add FileToBackDirec 函數(shù)負責將操作系統(tǒng)內(nèi)核文件備份。

    3.2 操作系統(tǒng)文件可信度量與恢復實現(xiàn)

    Grub 包 括Stage1 和Stage2 階 段。Stage1 實 現(xiàn)Bootloader 的功能;Stage2 是一個小型的操作系統(tǒng),有自己的API 函數(shù)[3]。

    本文通過Grub4Dos 0.4.5 版本源碼實現(xiàn)操作系統(tǒng)文件安全度量和文件恢復。

    備份操作系統(tǒng)原MBR,然后將Grub 程序安裝到MBR,使其能夠加載編譯的新文件grldr。通過grubinst.exe 程序,將Grub4Dos 中的Stage1(512 B)安裝到硬盤的MBR。運行腳本執(zhí)行g(shù)rubinst-savembr=MBR.sav(hd0),安 裝GRLDR MBR 到 第 一 塊硬盤并保存原來的MBR 到MBR.sav 文件中,確保MBR 被破壞后能夠及時恢復引導區(qū),確保操作系統(tǒng)可用。操作系統(tǒng)啟動后,BIOS 執(zhí)行軟中斷調(diào)用,加載MBR 至0x7c00 并跳轉(zhuǎn)執(zhí)行,Stage1 開始執(zhí)行,然后加載Stage2 并跳轉(zhuǎn)執(zhí)行,Stage2 中的微型操作系統(tǒng)啟動,完成對操作系統(tǒng)文件的安全度量。

    (2)操作系統(tǒng)文件度量和文件恢復。操作系統(tǒng)文件的度量和恢復是在Stage2 階段實現(xiàn)的,具體實現(xiàn)邏輯如圖4 所示。

    圖4 文件度量和恢復邏輯

    操作系統(tǒng)文件度量和文件恢復功能是在stage2.c 代碼中實現(xiàn),stage2 的入口是stage2/asm.S。asm.S 在設置好C 運行環(huán)境后,調(diào)用第一個函數(shù)init_bios_info(stage2/common.c)。該函數(shù)在執(zhí)行一些底層的初始化后,調(diào)用stage2 的main 函數(shù)cmain,在cmain 函數(shù)中實現(xiàn)度量和恢復功能,其偽代碼如下:

    (1)計算機開機后,BIOS 引導MBR,然后加載Grub,執(zhí)行stage2.c 中的cmain(void)函數(shù);

    (2)通過函數(shù)exec_cmdline 執(zhí)行”inputpwd--cfgfile=/hmldr/hmldr.cfg--cfgpwd=%s--boot”,實現(xiàn)Grub 登錄的口令認證;

    (3)執(zhí)行”graphicsmode-1 800 600 32”和”font/hmldr/hmldr.fnt”,進行背景圖片和字體設置,用于展示操作系統(tǒng)文件度量過程;

    (4)check_system_integrity 函數(shù)用來實現(xiàn)操作系統(tǒng)文件摘要值比對,通過_grub_open、grub_read等一系列函數(shù)讀取操作系統(tǒng)文件,計算摘要值,通過grub_memcmp 函數(shù)實現(xiàn)摘要值比對,將結(jié)果通過函數(shù)display_check_progress 展示到顯示器,方便用戶直觀看到操作系統(tǒng)文件摘要值正?;虍惓#?/p>

    (5)如果所有文件度量成功,則執(zhí)行”chainloader(hd0,0)+1”,啟動操作系統(tǒng);

    (6)若某個文件摘要值度量失敗,則進入恢復操作系統(tǒng)文件階段,執(zhí)行命令”{map--mem/hmldr/pe.iso(0xff)”,”map--hook”,”root(0xff)”,”chainloader--force(0xff)”,”boot”},操作系統(tǒng)會加載PE 鏡像文件進入PE 模式;

    (7)修改PE.iso 鏡像,將文件備份恢復程序添加到自啟動項中,PE 系統(tǒng)進入后自動執(zhí)行文件恢復,文件修復完成后重啟操作系統(tǒng)。

    3.3 可執(zhí)行文件采集

    3.3.1 可執(zhí)行文件初始化摘要值采集

    可信系統(tǒng)軟件初次安裝時,需要用戶根據(jù)需求掃描磁盤,計算并保存可執(zhí)行文件摘要值,以此作為可執(zhí)行文件基礎白名單。

    3.3.2 可執(zhí)行文件白名單增加和刪除

    可信控制功能生效后,新增的可執(zhí)行文件運行會被攔截。為滿足操作系統(tǒng)用戶的使用需求,需要對白名單進行高效的增加或刪除。系統(tǒng)用戶可以在軟件界面進行可執(zhí)行文件摘要值的刪除。

    可執(zhí)行文件摘要值的增加包括兩種方式。

    (1)先運行,后添加。可執(zhí)行文件嘗試運行,驅(qū)動攔截模塊捕捉可執(zhí)行文件產(chǎn)生的摘要值形成攔截日志,用戶可以將攔截的摘要值添加到白名單中,添加成功后可執(zhí)行文件可以運行;

    (2)先添加,再運行。用戶可以通過軟件界面進行可執(zhí)行文件的添加,可執(zhí)行文件的摘要值添加到白名單中,添加成功后可執(zhí)行文件可以運行。

    可執(zhí)行文件采集流程如圖5 所示。

    3.4 可執(zhí)行文件可信度量實現(xiàn)

    Windows 系統(tǒng)的可執(zhí)行文件可信度量由底層驅(qū)動實現(xiàn)。可執(zhí)行文件運行時,驅(qū)動攔截運行的可執(zhí)行程序,然后通過計算可執(zhí)行程序的度量值判斷此程序是否在白名單中。如果在白名單中則允許運行,否則拒絕運行。

    圖5 可執(zhí)行文件摘要采集

    在Windows XP 系統(tǒng),采用SSDT HOOK 技術(shù)實現(xiàn)可執(zhí)行文件運行攔截。系統(tǒng)服務描述符(System Service Descriptor Table,SSDT)是應用層到內(nèi)核層的一個通道,將應用層的Win32 API 與內(nèi)核層的Native API 串聯(lián)起來。可執(zhí)行文件運行時,通過調(diào)用kernel32 的API 轉(zhuǎn) 移 到ntdll.dll 和notskrnl.exe,最后通過SSDT 檢索調(diào)用Native API 函數(shù)。通過HOOK 系統(tǒng)服務描述表中函數(shù)的地址,用自定義的函數(shù)地址替換原函數(shù)地址,實現(xiàn)可執(zhí)行文件的攔截處理,具體原理如圖6 所示。

    圖6 可執(zhí)行文件可信度量

    具體實現(xiàn)邏輯代碼如下。

    (1)編寫sys 驅(qū)動程序,以服務方式注冊到操作系統(tǒng),實現(xiàn)驅(qū)動自動加載。

    (2)在驅(qū)動中修改SSDT 內(nèi)存保護機制[4]。在內(nèi)核中修改內(nèi)存,可以修改CR0 寄存器,關閉寫保護屬性實現(xiàn),也可以使用內(nèi)存描述符表(Memory Descriptor List,MDL)方式修改內(nèi)存。前者只支持32 位,后者32 位和64 位都支持。使用MDL 修改內(nèi)存具體流程如下:首先,調(diào)用MmCreateMdl 函數(shù)分配足夠大的MDL 結(jié)構(gòu)映射給指定的緩沖區(qū);其次,調(diào)用MmBuildMdlForNonPagedPool 函數(shù)更新MDL 對物理內(nèi)存的描述;最后,調(diào)用MmMapLockedPages函數(shù)將MDL中描述的物理頁面映射到虛擬內(nèi)存中,并返回映射地址。

    (3)修 改SSDT 表,KeServiceDescriptorTable→ServiceTableBase[XX]=HKFun。

    (4)在HKFun 函數(shù)中,實現(xiàn)可執(zhí)行文件摘要值的計算和比對,并將結(jié)果返回給應用層。

    4 結(jié) 語

    本文在Windows XP 系統(tǒng)上實現(xiàn)了基于“軟能力”的操作系統(tǒng)可信度量與恢復,實現(xiàn)了從MBR階段到可執(zhí)行文件運行的可信鏈建立,確保了操作系統(tǒng)運行環(huán)境的可信。在解決系統(tǒng)完整性保護方面,該技術(shù)可以起到基礎保護作用,但從信息系統(tǒng)安全的整體角度來看,需與其他安全技術(shù)相結(jié)合(如防火墻、入侵檢測),才能使整個信息系統(tǒng)更加安全、可信。

    目前,該軟件功能已經(jīng)得到驗證,但在使用中有一些不足,后期需要改進。

    (1)摘要值比對算法優(yōu)化問題。當摘要值數(shù)量龐大時,檢索時間會較長,目前使用的是二分法查找。

    (2)Grub 引導代碼不能識別所有的文件系統(tǒng),目前支持的類型包括NTFS、FAT12、FAT16、FAT32、EXT2 以及EXT3。

    (3)驅(qū)動控制模塊實現(xiàn)過程中,由于SSDT HOOK 的不穩(wěn)定性,現(xiàn)在使用較多的是通過回調(diào)函數(shù)PsSetCreateProcessNotifyRoutineEx實現(xiàn)進程攔截。

    猜你喜歡
    白名單內(nèi)核度量
    有趣的度量
    基于白名單的車道工控系統(tǒng)信息安全解決方案
    萬物皆可IP的時代,我們當夯實的IP內(nèi)核是什么?
    模糊度量空間的強嵌入
    強化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
    核電廠儀控系統(tǒng)安全防護策略研究及應用
    迷向表示分為6個不可約直和的旗流形上不變愛因斯坦度量
    基于嵌入式Linux內(nèi)核的自恢復設計
    Linux內(nèi)核mmap保護機制研究
    地質(zhì)異常的奇異性度量與隱伏源致礦異常識別
    卢湾区| 巢湖市| 新和县| 武清区| 云林县| 五大连池市| 翁源县| 长寿区| 阿合奇县| 阜平县| 邵武市| 巫山县| 甘孜县| 绥德县| 贵德县| 棋牌| 连山| 江孜县| 天全县| 天柱县| 东源县| 雅江县| 阿尔山市| 买车| 老河口市| 郓城县| 台州市| 中超| 新田县| 永嘉县| 东乌| 仁化县| 横山县| 山阴县| 万源市| 四平市| 赤水市| 新巴尔虎右旗| 宁夏| 博乐市| 东平县|