小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

用DOS命令破除UNIX系統(tǒng)管理員口令

 ldjsld 2015-11-20

引言 

對于廣大的SCO UNIX操作系統(tǒng)管理員來說,最不可原諒的過失之一就是忘記了管理員口令(即超級用戶口令)。這個(gè)過失會導(dǎo)致極其嚴(yán)重的后果,對此凡是具備 UNIX操作系統(tǒng)常識的人都應(yīng)該知道。然而令人遺憾的是,時(shí)至今日鑄錯者依然大有人在。看來,對他們固然要責(zé)備,但既然問題客觀存在,我們就總還須面對現(xiàn)實(shí),想辦法去解決才是。 

長期以來,許多人就超級用戶口令被忘記的問題發(fā)表了各種看法。一部分人認(rèn)為,一旦忘記了超級用戶口令,只能重裝操作系統(tǒng),此外別無它法。另一部分人則堅(jiān)決反對這種“重裝論”,他們提出了一些經(jīng)過成功實(shí)踐的解決方案,使得“重裝論”者敗下陣來?,F(xiàn)在我們可以肯定地說,忘記超級用戶口令是有辦法解決的。 但同時(shí)我們也不得不承認(rèn),現(xiàn)行的解決方案有很大的局限性,這些局限性決定了現(xiàn)有方案無論怎樣變化和發(fā)展也不可能成為一 種有著強(qiáng)大生命力的最徹底的解決方案。 

傳統(tǒng)解決方案的局限性 

上面已經(jīng)談到,目前有多種針對超級用戶口令被忘記問題的解決方案。為了敘述上的方便,本文將這些方案統(tǒng)稱為傳統(tǒng)解決方案。傳統(tǒng)方案乍看起來似乎各不相同,但經(jīng)過認(rèn)真分析和歸納后就會發(fā)現(xiàn),它們實(shí)際上大同小異,都有以下共同點(diǎn): 

1. 必須有一套(兩張)Emergency Boot Floppy (緊急啟動軟盤)。這套軟盤均為文件系統(tǒng)格式,必須在SCO UNIX上制作,并且在不同類型機(jī)器上制作的緊急啟動軟盤相互不能通用。 

2. 用緊急啟動軟盤啟動后,將硬盤根文件系統(tǒng)mount到某個(gè)目錄下(一般為/mnt目錄),然后進(jìn)入該目錄(即進(jìn)入硬盤根文件系統(tǒng)的根目錄),修改相關(guān)目錄下與超級用戶口令有關(guān)的信息(各種方案的不同之處主要體現(xiàn)于此)。最后回到軟盤根目錄,拆卸/dev/hd0root,重啟機(jī)器。 

這些共同點(diǎn)實(shí)際上反映了傳統(tǒng)方案的局限性: 

一、操作平臺局限性:要求自始至終必須在SCO UNIX操作系統(tǒng)平臺上實(shí)施。 

二、操作工具局限性:對緊急啟動軟盤的依賴性太大。萬一軟盤發(fā)生損毀,必須找一臺類型相同的機(jī)器再制作一套,這就是前面所說的“專盤專用”的限制。 

三、操作對象局限性:必須依靠硬盤根文件系統(tǒng)的支持。即操作者與修改對象(指與超級用戶口令有關(guān)的信息)被文件系統(tǒng)隔開,操作者不能直接修改對象,只能調(diào)用文件系統(tǒng)提供的服務(wù)修改。這種方式本是信息科學(xué)中倡導(dǎo)的層次化思想的一種體現(xiàn),在正常情況下應(yīng)予稱道;但任何事物都是有兩面性的,在非常情況下 —— 諸如解決忘記超級用戶口令這一類問題時(shí) —— 該方式反而有可能帶來麻煩。 

三大局限性說明了傳統(tǒng)解決方案可行性的脆弱和狹窄,也決定了它們作為凌駕于文件系統(tǒng)之上的高層方案所必然具有的弊端。于是,打破這些局限性,探索出一種全新的解決方案,就成為了擺在一切UNIX研究者面前的新課題。 

新課題 

所謂新課題,就是找到一種能夠突破傳統(tǒng)方案局限性的新方案。究竟從何處下手呢? 

讓我們再來看一看三大局限性。 

操作平臺局限性似乎不好突破,因?yàn)槠渌僮飨到y(tǒng)識別不了UNIX的文件系統(tǒng)格式。 

操作工具局限性好象就更難了,因?yàn)榫o急啟動軟盤既要在UNIX上制作,又要在UNIX上使用,所以如果操作平臺局限性突破不了,它就更突破不了。 

最后看看操作對象局限性。操作對象完全由文件系統(tǒng)管理,操作者必須通過文件系統(tǒng)訪問它們。萬一文件系統(tǒng)崩潰,那么即使它下面的文件完好無損,操作者也只能認(rèn)為這些文件已全部丟失 —— 因?yàn)槲募到y(tǒng)無法訪問(例如mount不上來)。其實(shí)這個(gè)時(shí)候還是有辦法找到那些文件的,方法就是直接訪問物理硬盤。道理很簡單:就本質(zhì)而言,文件系統(tǒng)只不過是一個(gè)構(gòu)筑于物理硬盤之上的邏輯組織,平時(shí)我們是通過它來訪問物理硬盤的;現(xiàn)在這個(gè)組織壽終正寢,不能再為我們服務(wù)了,于是我們只好“自己動手,豐衣足食”。直接訪問物理硬盤不但可以使文件“失”而復(fù)得,而且還有另外一個(gè)重要意義 —— 突破了操作對象局限性。 

操作對象局限性一旦突破,我們就會驚奇地發(fā)現(xiàn)突破另外兩大局限性簡直可以說是順理成章了。因?yàn)殡m然其它操作系統(tǒng)識別不了UNIX的文件系統(tǒng)格式,但在任何操作系統(tǒng)上,我們都可以訪問物理硬盤;而只要是帶有訪問物理硬盤功能的軟件,都可以成為我們的操作工具。 

現(xiàn)在我們要做的僅僅是:找一個(gè)大家最熟悉的操作系統(tǒng)和一個(gè)最易尋覓的可以訪問物理硬盤的軟件。 

大家最熟悉的操作系統(tǒng)無疑是DOS。可以訪問物理硬盤的軟件很多,但最易尋覓的莫過DEBUG.EXE。所謂最易尋覓,是因?yàn)镈EBUG是DOS本身的一條外部命令,可以說只要是在安裝了DOS的機(jī)器上都可以找到它。對DEBUG略知一二的人可能會指出該命令并沒有提供訪問物理硬盤的選項(xiàng),但請不要忘記DEBUG是DOS提供給用戶的一個(gè)匯編語言調(diào)試程序,我們完全可以利用它編寫、調(diào)試和執(zhí)行一個(gè)匯編小程序去訪問物理硬盤。應(yīng)該說,這對一個(gè)能夠取得系統(tǒng)管理員身份的人并不困難。 

綜上所述,在DOS上運(yùn)行DEBUG來破除UNIX管理員口令,這就是本文提出的解決SCO UNIX超級用戶口令被忘記問題的新方案。 

新方案的應(yīng)用 

新方案已經(jīng)提出,下面我們來看看它是如何應(yīng)用于實(shí)踐的。 

我們假設(shè)一臺裝有SCO OpenServer Release 5的超級用戶口令被忘記。 

首先,隨便找一臺安裝了DOS的計(jì)算機(jī),制作一張DOS系統(tǒng)盤,并在系統(tǒng)盤上拷貝一個(gè)DEBUG.EXE文件。 

C:\DOS>format/s a: 

C:\DOS>copy debug.exe a: 

然后將該盤插入COMPAQ服務(wù)器A驅(qū),開機(jī)啟動DOS操作系統(tǒng),執(zhí)行DEBUG命令。 

A:\>debug 

現(xiàn)在我們就編寫一段匯編語言程序,來讀出硬盤0柱0頭1扇區(qū)的內(nèi)容。該扇區(qū)存放的是主引導(dǎo)記錄,讀出它是為了確定SCO UNIX分區(qū)的起始位置。該程序是調(diào)用中斷13H實(shí)現(xiàn)的,以后我們還要反復(fù)用到它,當(dāng)然入口參數(shù)將隨所讀內(nèi)容物理地址的變化而變化。 

-a
2039:0100 MOV AX,0201
2039:0103 MOV BX,1000
2039:0106 MOV CX,0001
2039:0109 MOV DX,0080
2039:010C INT 13
2039:010E INT 20
2039:0110 
-g
Program terminated normally
-d 1180
2039:1180  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1190  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:11A0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:11B0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:11C0  01 6E 06 3F 20 96 00 70-03 00 00 48 01 00 00 00   .n.? ..p...H....
2039:11D0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:11E0  01 97 05 3F E0 FF 00 B8-04 00 00 C8 1B 00 80 00   ..c?............
2039:11F0  01 01 63 3F 20 6D 00 08-00 00 00 68 03 00 55 AA   ..c? m.....h..U.
 


從分區(qū)表中可看出硬盤上共有三個(gè)分區(qū),其中類型標(biāo)志字節(jié)為 63H的分區(qū)是SCO UNIX分區(qū)。該分區(qū)起始于1柱面0磁頭1扇。 

下面,讀出UNIX根文件系統(tǒng)i-node表的第一個(gè)扇區(qū),以確定根目錄的位置。 

先讀 i-node 表。由于UNIX分區(qū)始于1柱0頭1扇,所以根文件系統(tǒng)必定始于2柱0頭1扇。并且,由于2柱0頭1扇是引導(dǎo)塊,2扇是專用塊,3、4扇為間隔,所以 i-node 表必定始于第5扇。 

-a
2039:0100 MOV AX,0201
2039:0103 MOV BX,1000
2039:0106 MOV CX,0205
2039:0109 MOV DX,0080
2039:010C INT 13
2039:010E INT 20
2039:0110 
-g
Program terminated normally
-d 1000
2039:1000  00 80 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................  
2039:1010  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1020  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1030  00 00 00 00 0A 4B 32 33-0A 4B 32 33 0A 4B 32 33   .....K23.K23.K23
2039:1040  ED 41 10 00 00 00 02 00-80 02 00 00 DA 05 00 00   .A..............
2039:1050  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1060  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1070  00 00 00 00 E1 83 C5 35-46 82 C5 35 46 82 C5 35   .......5F..5F..5
 


現(xiàn)在我們看到的是 i-node 表的前兩項(xiàng)。從偏移1040H至107FH的64個(gè)字節(jié)是2號i-node ,即根目錄的 i-node 。 

下面我們就根據(jù) i-node 計(jì)算根目錄在硬盤上的物理地址。 

我們從偏移1040H看起: 

ED41H表示文件類型與存取權(quán)限為“drwxr-xr-x”; 

1000H表示文件連結(jié)數(shù)為16; 

0000H表示文件屬主ID為 0; 

0200H表示文件組ID為 2; 

80020000H表示文件字節(jié)數(shù)為 640個(gè); 

DA0500H表示第一個(gè)數(shù)據(jù)塊地址。由于其它12個(gè)數(shù)據(jù)塊地址均為 0,所以可斷定根目錄在硬盤上只占了一個(gè)數(shù)據(jù)塊?,F(xiàn)在我們必須依據(jù)DA0500H計(jì)算出這個(gè)數(shù)據(jù)塊存放在硬盤的第幾柱面、第幾磁頭、第幾扇區(qū)。如何計(jì)算?作者專門總結(jié)了一套公式: 

C = TRUNC ( P/(H*S) ) 

C1 = C0 + C 

H1 = TRUNC( (P-C*H*S)/S ) 

S1 = P - C*H*S - H1*S + 1 

其中: 

C1、H1、S1分別為數(shù)據(jù)塊物理地址柱面號、磁頭號、扇區(qū)號 

P等于數(shù)據(jù)塊地址翻譯成十進(jìn)制數(shù)后再乘以 2 

H為硬盤磁頭數(shù) 

S為每磁頭扇區(qū)數(shù) 

C0為根文件系統(tǒng)起始柱面 

C只是一個(gè)中間量 

將DA0500H代入上述公式,并根據(jù)H=64,S=32,C0=2,可算出C1=3,H1=29,S1=21。因此根目錄在硬盤上的物理地址為: 3柱面 29頭 21扇。 

下面就把它讀出來。 

-a
2039:0100 MOV AX,0201
2039:0103 MOV BX,1000
2039:0106 MOV CX,0315
2039:0109 MOV DX,1D80
2039:010C INT 13
2039:010E INT 20
2039:0110 
-g
Program terminated normally
-d 1000
2039:1000  02 00 2E 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1010  02 00 2E 2E 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1020  03 00 64 65 76 00 00 00-00 00 00 00 00 00 00 00   ..dev...........
2039:1030  0C 00 62 69 6E 00 00 00-00 00 00 00 00 00 00 00   ..bin...........
2039:1040  1F 00 75 73 72 00 00 00-00 00 00 00 00 00 00 00   ..usr...........
2039:1050  22 00 65 74 63 00 00 00-00 00 00 00 00 00 00 00   ".etc...........
2039:1060  4B 00 73 68 6C 69 62 00-00 00 00 00 00 00 00 00   K.shlib.........
2039:1070  4E 01 2E 6C 61 73 74 6C-6F 67 69 6E 00 00 00 00   N..lastlogin....
 


上面列出的就是根目錄的前八項(xiàng),從中可以看出 /etc 目錄的 i-node 號為 22H,即34D。 

因?yàn)槊總€(gè)扇區(qū)有8個(gè) i-node,所以34號 i-node 必定在2柱面0頭9扇。 

-a
2039:0100 MOV AX,0201
2039:0103 MOV BX,1000
2039:0106 MOV CX,0209
2039:0109 MOV DX,0080
2039:010C INT 13
2039:010E INT 20
2039:0110 
-g
Program terminated normally
-d 1000
2039:1000  C9 81 01 00 02 00 02 00-36 9F 00 00 04 07 00 05   ........6.......
2039:1010  07 00 06 07 00 07 07 00-08 07 00 09 07 00 0A 07   ................
2039:1020  00 0B 07 00 0C 07 00 0D-07 00 0E 07 00 00 00 00   ................
2039:1030  00 00 00 00 DA 83 C5 35-7C 22 A5 2B 37 4B 32 33   .......5|".+7K23
2039:1040  FD 41 16 00 02 00 15 00-00 12 00 00 2D 07 00 B8   .A..........-...
2039:1050  17 00 78 1A 00 68 83 00-28 9E 00 00 00 00 00 00   ..x..h..(.......
2039:1060  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1070  00 00 00 00 2A 31 C1 35-C7 83 C5 35 C7 83 C5 35   ....*1.5...5...5
 


偏移1040H至107FH正是 /etc 目錄的 i-node 。我們把它的數(shù)據(jù)塊也讀出來。先讀第一個(gè)數(shù)據(jù)塊。將2D0700H代入公式,算出 /etc第一個(gè)數(shù)據(jù)塊物理地址是3柱面50頭27扇。 

-a
2039:0100 MOV AX,0201
2039:0103 MOV BX,1000
2039:0106 MOV CX,031B
2039:0109 MOV DX,3280
2039:010C INT 13
2039:010E INT 20
2039:0110 
-g
Program terminated normally
-d 1000
2039:1000  22 00 2E 00 00 00 00 00-00 00 00 00 00 00 00 00   "...............
2039:1010  02 00 2E 2E 00 00 00 00-00 00 00 00 00 00 00 00   ................
2039:1020  23 00 54 49 4D 45 5A 4F-4E 45 00 00 00 00 00 00   #.TIMEZONE......
2039:1030  24 00 62 61 64 74 72 6B-00 00 00 00 00 00 00 00   $.badtrk........
2039:1040  25 00 62 63 68 65 63 6B-72 63 00 00 00 00 00 00   %.bcheckrc......
2039:1050  26 00 64 65 66 61 75 6C-74 00 00 00 00 00 00 00   &.default.......
2039:1060  2B 00 64 69 76 76 79 00-00 00 00 00 00 00 00 00   +.divvy.........
2039:1070  2C 00 64 6B 69 6E 69 74-00 00 00 00 00 00 00 00   ,.dkinit........
-d
2039:1080  2D 00 65 6D 75 6C 61 74-6F 72 00 00 00 00 00 00   -.emulator......
2039:1090  2D 00 65 6D 75 6C 61 74-6F 72 2E 6D 73 00 00 00   -.emulator.ms...
2039:10A0  2E 00 66 64 69 73 6B 00-00 00 00 00 00 00 00 00   ..fdisk.........
2039:10B0  2F 00 66 73 63 6B 00 00-00 00 00 00 00 00 00 00   /.fsck..........
2039:10C0  30 00 66 73 63 6D 64 2E-64 00 00 00 00 00 00 00   0.fscmd.d.......
2039:10D0  37 00 66 73 73 74 61 74-00 00 00 00 00 00 00 00   7.fsstat........
2039:10E0  38 00 67 72 6F 75 70 00-00 00 00 00 00 00 00 00   8.group.........
2039:10F0  39 00 68 61 6C 74 73 79-73 00 00 00 00 00 00 00   9.haltsys.......
-d
2039:1100  39 00 72 65 62 6F 6F 74-00 00 00 00 00 00 00 00   9.reboot........
2039:1110  3A 00 68 64 62 6F 6F 74-30 00 00 00 00 00 00 00   :.hdboot0.......
2039:1120  3B 00 68 64 62 6F 6F 74-31 00 00 00 00 00 00 00   ;.hdboot1.......
2039:1130  3C 00 69 6E 69 74 00 00-00 00 00 00 00 00 00 00   <.init..........
2039:1140  AD 13 69 6E 69 74 74 61-62 00 00 00 00 00 00 00   ..inittab.......
2039:1150  3E 00 69 6F 63 74 6C 2E-73 79 73 63 6F 6E 00 00   >.ioctl.syscon..
2039:1160  3F 00 6D 61 73 74 65 72-62 6F 6F 74 00 00 00 00   ?.masterboot....
2039:1170  40 00 6D 6B 66 73 00 00-00 00 00 00 00 00 00 00   @.mkfs..........
-d
2039:1180  41 00 6D 6B 6E 6F 64 00-00 00 00 00 00 00 00 00   A.mknod.........
2039:1190  42 00 6D 6F 75 6E 74 61-6C 6C 00 00 00 00 00 00   B.mountall......
2039:11A0  0C 02 70 61 73 73 77 64-00 00 00 00 00 00 00 00   ..passwd........
2039:11B0  44 00 70 69 70 65 00 00-00 00 00 00 00 00 00 00   D.pipe..........
2039:11C0  45 00 73 63 73 69 62 61-64 62 6C 6B 00 00 00 00   E.scsibadblk....
2039:11D0  46 00 73 65 74 6D 6E 74-00 00 00 00 00 00 00 00   F.setmnt........
2039:11E0  47 00 73 77 61 70 00 00-00 00 00 00 00 00 00 00   G.swap..........
2039:11F0  48 00 74 74 79 74 79 70-65 00 00 00 00 00 00 00   H.ttytype.......
 


偏移11A0H至11AFH是 /etc 目錄下的passwd文件名。我們把它改成zls。 

-e 11a2
2039:11A2  70.7a  61.6c  73.73  73.00  77.00  64.00
-a 100
2039:0100  MOV AX,0301
2039:0103
-g
Program terminated normally
 


現(xiàn)在退出DEBUG命令。 

取出軟盤,重啟機(jī)器,引導(dǎo)UNIX操作系統(tǒng)。 

按照引導(dǎo)順序,UNIX顯示出硬件配置信息后就該提問超級用戶口令了,但就在此時(shí)它卻突然發(fā)現(xiàn) /etc/passwd 文件失蹤了!(其實(shí)只是被改名為zls,但UNIX對此一無所知。) 

沒有了這個(gè)文件,UNIX無法提問超級用戶口令,于是它只好在屏幕上顯示如下信息并允許用戶以系統(tǒng)管理員身份直接進(jìn)入系統(tǒng)維護(hù)態(tài): 

su:  Unknown  id:  root
/etc/tcbck:  file  /etc/passwd  is  missing or zero  length
/etc/tcbck:  either  slash  (/) is  missing 
from  /etc/auth/system/files or there
are  malformed  entries in /etc/passwd or /etc/group
/etc/smmck:  restore  missing  files  from backup or distribution.
INIT:  SINGLE  USER  MODE
****  PASSWORD  FILE  MISSING!  ****
Entering  System  Maintenance  Mode
#
 


現(xiàn)在既然已經(jīng)進(jìn)入維護(hù)態(tài),當(dāng)然就可以“為所欲為”了。但最好先設(shè)置一個(gè)新的超級用戶口令。 

首先,我們必須恢復(fù)passwd文件名。 

#mv/etc/zls /etc/passwd
 


然后,就可以用passwd命令設(shè)置新的超級用戶口令了。 

#  passwd
Setting password for user: root
Choose password
You can choose whether you pick a password,
or have the system create one for you.
1. Pick a password
2. Pronounceable password will be generated for you

Enter choice (default is 1): 1
Please enter new password:
New password:
Re-enter password:
#  reboot
 


以后就可以用新口令登錄系統(tǒng)了。 

結(jié)束語 

在本文行將結(jié)束時(shí),我們再來作一個(gè)小小的總結(jié)。 

傳統(tǒng)方案有操作平臺、操作工具和操作對象局限性。新方案則突破了這三大局限性。 

一、新方案突破了操作平臺局限性。傳統(tǒng)方案的操作平臺必須是UNIX,而新方案則是DOS。DOS比UNIX普及得多,中國的絕大部分計(jì)算機(jī)用戶對UNIX陌生,但對DOS卻相當(dāng)熟悉,使用起來也有親切感。 

二、新方案突破了操作工具局限性。傳統(tǒng)方案的操作工具必須是兩張緊急啟動軟盤,而新方案僅使用一張DOS系統(tǒng)盤,其上只需拷貝一個(gè)DEBUG.EXE文件。緊急啟動軟盤只能專盤專用,DOS系統(tǒng)盤卻不存在這個(gè)問題 —— 用任何一臺機(jī)器上的DOS制作出的系統(tǒng)盤,可以用來解決任何一臺機(jī)器上的UNIX超級用戶口令被忘記的問題。至于用來訪問物理硬盤的軟件,當(dāng)然更不是非DEBUG不可,任何軟件——只要支持訪問物理盤——均 

可。作者推薦使用Norton 8.0 軟件包里的diskedit程序,對不懂匯編語言編程的人來說該程序無疑是一個(gè)最好的選擇。 

三、新方案突破了操作對象局限性。傳統(tǒng)方案的操作對象是文件系統(tǒng)管理下的文件,而新方案撇開了文件系統(tǒng),直接在底層修改數(shù)據(jù)。 

最后需要強(qiáng)調(diào)的是,本文的要旨所在絕非僅僅體現(xiàn)在解決超級用戶口令被遺忘的問題上。事實(shí)上,利用這種直接讀取硬盤物理扇區(qū)的方法,還可以恢復(fù)那些在UNIX上被誤刪除的文件。 

關(guān)于這一點(diǎn),如果有機(jī)會,作者會加以適當(dāng)?shù)难a(bǔ)充。 


  

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多