GANDCRAB V5.2原理分析

(一)準(zhǔn)備階段

1、獲取本機(jī)的殺毒軟件信息

2饼灿、獲取本機(jī)信息

勒索Id的生成方法和之前版本一樣,都是利用RtlComputerCrc32()函數(shù)將本機(jī)硬件信息生成的CRC32,然后再拼接上 小寫的GetVolumeInformationW獲取到的卷序列號(hào)地址(pVolumeSerialNumber )斋攀。

獲取本機(jī)信息

因?yàn)榘薌etVolumeInformationW獲取到卷序列號(hào)的地址(pVolumeSerialNumber )奥此,都保證了每臺(tái)受感染機(jī)器生成的id獨(dú)一無二弧哎。

獲取信息表

3、RC4加密本機(jī)信息

關(guān)于RC4的Sbox:

填充有序的Sbox
打亂之后的Sbox

整體加密算法:

整體加密算法(C++)

4稚虎、區(qū)域豁免

獲取本機(jī)使用的語言信息撤嫩,如果屬于以下語言之一,就不對此電腦進(jìn)行加密蠢终。

不會(huì)被加密的區(qū)域

5序攘、創(chuàng)建唯一的互斥體

創(chuàng)建為"Global\8B5BDDB94369950A5F4C.luck" ?的互斥體茴她,防止多個(gè)實(shí)例相互干擾。因?yàn)橛玫搅司硇蛄刑?hào)的地址程奠,因此每臺(tái)電腦上的互斥體名稱都是唯一的丈牢。

(1),(2)是互斥體"Global\8B5BDDB94369950A5F4C.lock"名稱產(chǎn)生的詳細(xì)流程瞄沙。

(1)明文數(shù)據(jù):2A8972E8

通過GetVolumeInformationW獲取到卷序列號(hào)的地址(pVolumeSerialNumber )是AA25CBA3赡麦,然后將卷序列號(hào)的地址右移2位,得到2A8972E8帕识。

(2)Sala20加密:

64字節(jié)的輸入數(shù)據(jù)(4個(gè)常量詞的選取是由expand 32-byte k得來):

核心函數(shù)輸入規(guī)則


Salsa20的key和初始向量(對照輸入規(guī)則)


Salsa20函數(shù):

Salsa20函數(shù)


加密后:UNICODE "8B5BDDB94369950A5F4C469DD8A7A"泛粹,然后取加密后的前20個(gè)字節(jié)8B5BDDB94369950A5F4C,然后拼接成"Global\8B5BDDB94369950A5F4C.luck"作為互斥體的名稱肮疗。

6晶姊、查殺進(jìn)程

要查殺的進(jìn)程名單內(nèi)有71個(gè)進(jìn)程,相比于GandCrab5.0.4(39個(gè))伪货,這一版本要查殺的進(jìn)程完善了很多

7们衙、解密生成RSA公鑰

將一段全局?jǐn)?shù)據(jù)異或5,然后使用Salsa20進(jìn)行解密碱呼,得到RSA公鑰蒙挑。

Salsa20算法:

Salsa20的秘鑰和初始向量:

Salsa20的秘鑰和初始向量
Salsa20的初始向量

Salsa20函數(shù):

Salsa20函數(shù)(匯編)

8、指定要加密文件的后綴名

...a.n.i. ...c.a.b. ...c.p.l. ...c.u.r. ...d.i.a.g.c.a.b. ...d.i.a.g.p.k.g. ?...d.l.l. ...d.r.v. ...l.o.c.k. ...h.l.p. ...l.d.f. ...i.c.l. ...i.c.n.s. ...i.c.o. ...i.c.s. ...l.n.k. ...k.e.y....i.d.x. ...m.o.d. ...m.p.a. ...m.s.c. ...m.s.p. ...m.s.s.t.y.l.e.s. ...m.s.u. ...n.o.m.e.d.i.a. ...o.c.x. ...p.r.f. ...r.o.m....r.t.p. ...s.c.r. ...s.h.s. ...s.p.l. ...s.y.s. ...t.h.e.m.e. ...t.h.e.m.e.p.a.c.k. ...e.x.e. ...b.a.t. ...c.m.d. ...g.a.n.d.c.r.a.b. ...K.R.A.B. ...C.R.A.B. ...z.e.r.o.p.h.a.g.e._.i._.l.i.k.e._.y.o.u.r._.p.i.c.t.u.r.e.s.. ...r.a.r. ...z.i.p. ...c.a.b. ...a.r.j. ...l.z.h. ...t.a.r. ...7.z. ...g.z.i.p. ...i.s.o. ?...z. ...7.-.z.i.p. ...l.z.m.a. ...v.m.x. ...v.m.d.k. ...v.m.e.m. ...v.d.i. . ...v.b.o.x . ?...1.s.t. ...6.0.2. ...d.o.c.b. ...x.l.m. ...x.l.s.x....x.l.s.m. ...x.l.t.x. ...x.l.t.m. ...x.l.s.b. ...x.l.a. ...x.l.a.m. ...x.l.l. ...x.l.w. ...p.p.t. ...p.o.t. ...p.p.s. ...p.p.t.x. ...p.p.t.m. ...p.o.t.x. ...p.o.t.m. ...p.p.a.m. ...p.p.s.x. ...p.p.s.m. ...s.l.d.x. ...s.l.d.m. ...x.p.s. ...x.l.s. ...x.l.t..._.d.o.c. ...d.o.t.m. ?..._.d.o.c.x. ...a.b.w. ...a.c.t. ...a.d.o.c. ...a.i.m. ...a.n.s. ...a.p.k.g. ...a.p.t. ?...a.s.c. ...a.s.c. ...a.s.c.i.i. ...a.s.e. ...a.t.y. ...a.w.p. ...a.w.t. ...a.w.w. ?...b.a.d. ...b.b.s. ...b.d.p. ...b.d.r. ...b.e.a.n. ...b.i.b. ...b.i.b. ...b.i.b.t.e.x. ...b.m.l. ...b.n.a. ...b.o.c. ...b.r.x. ...b.t.d. ...b.z.a.b.w. ...c.a.l.c.a. ...c.h.a.r.s.e.t. ...c.h.a.r.t. ...c.h.o.r.d. ...c.n.m. ...c.o.d. ...c.r.w.l. ...c.w.s. ...c.y.i. ...d.c.a. ...d.f.t.i. ...d.g.s. ...d.i.z. ...d.n.e. ...d.o.t. ...d.o.c. ...d.o.c.m. ...d.o.t.x. ...d.o.c.x. ...d.o.c.x.m.l. ...d.o.c.z. ...d.o.x. ...d.r.o.p.b.o.x. ...d.s.c. ...d.v.i. ...d.w.d. ...d.x. ...d.x.b. ...d.x.p. ...e.i.o. ...e.i.t. ...e.m.f. ...e.m.l. ...e.m.l.x. ...e.m.u.l.e.c.o.l.l.e.c.t.i.o.n . ...e.p.p. ...e.r.r. ...e.r.r. ...e.t.f. ...e.t.x. ...e.u.c. ...f.a.d.e.i.n...t.e.m.p.l.a.t.e. ...f.a.q. ...f.b.l. ...f.c.f. ...f.d.f. ...f.d.r. ...f.d.s. ...f.d.t. ...f.d.x. ...f.d.x.t. ?...f.f.t. ...f.g.s. ...f.l.r. ...f.o.d.t. ...f.o.u.n.t.a.i.n. ...f.p.t. ...f.r.t. ...f.w.d. ...f.w.d.n. ...g.m.d. ...g.p.d. ...g.p.n. ...g.s.d. ...g.t.h.r. ...g.v. ...h.b.k. ...h.h.t. ...h.s. ...h.w.p. ...h.w.p. ...h.z. ...i.d.x. ...i.i.l. ...i.p.f. ...i.p.s.p.o.t. ...j.a.r.v.i.s. ...j.i.s. ...j.n.p. ...j.o.e. ...j.p.1. ...j.r.t.f. ...j.t.d. ...k.e.s. ...k.l.g. ...k.l.g. ...k.n.t. ...k.o.n. ...k.w.d. ...l.a.t.e.x. ...l.b.t. ...l.i.s. ...l.n.t. ...l.o.g. ...l.p.2. ...l.s.t. ...l.s.t. ...l.t.r. ...l.t.x. ...l.u.e. ...l.u.f. ...l.w.p. ...l.x.f.m.l. ...l.y.t. ...l.y.x. ...m.a.n. ...m.b.o.x. ?...m.c.w. ...m.d.5. ...m.e. ...m.e.l.l. ...m.e.l.l.e.l. ...m.i.n. ...m.n.t. ...m.s.g. ...m.w. ...m.w.d. ...m.w.p....n.b. ...n.d.o.c. ...n.f.o. ...n.g.l.o.s.s. ...n.j.x. ...n.o.t.e. ...n.o.t.e.s. ...n.o.w. ...n.w.c.t.x.t. ...n.w.m. ...n.w.p....o.c.r. ...o.d.i.f. ...o.d.m. ...o.d.o. ...o.d.t. ...o.f.l. ...o.p.e.i.c.o. ...o.p.e.n.b.s.d. ...o.r.t. ...o.t.t. ...p.7.s. ?...p.a.g.e.s. ...p.a.g.e.s.-.t.e.f. ...p.d.p.c.m.d. ...p.f.x. ...p.j.t. ...p.l.a.i.n. ...p.l.a.n.t.u.m.l. ...p.m.o. ...p.r.t. ...p.r.t. ...p.s.w. ...p.u. ...p.v.j. ...p.v.m. ...p.w.d. ...p.w.d.p . ...p.w.d.p.l. ...p.w.i. ...p.w.r. ...q.d.l. ...q.p.f. ...r.a.d. ...r.e.a.d.m.e. ...r.f.t ?...r.i.s. ...r.p.t. ...r.s.t. ...r.t.d. ...r.t.f. ...r.t.f.d. ...r.t.x. ...r.u.n. ...r.v.f. ...r.z.k. ...r.z.n. ...s.a.f. ...s.a.f.e.t.e.x.t. ...s.a.m. ...s.a.m. .. .s.a.v.e. ...s.c.c. ?...s.c.m. ...s.c.r.i.v. ...s.c.r.i.v.x. ...s.c.t. ...s.c.w. ...s.d.m. ...s.d.o.c. ...s.d.w. ...s.e. ...s.e.s.s.i.o.n. ...s.g.m. ...s.i.g. ...s.k.c.a.r.d. ...s.l.a. ...s.l.a...g.z. ...s.m.f. ...s.m.s. ...s.s.a. ...s.t.o.r.y. ...s.t.r.i.n.g.s. ...s.t.w. ...s.t.y. ...s.u.b.l.i.m.e.-.p.r.o.j.e.c.t. ...s.u.b.l.i.m.e.-.w.o.r.k.s.p.a.c.e. ...s.x.g. ...s.x.w. ...t.a.b. ...t.a.b. ...t.d.f. ...t.d.f. ...t.e.m.p.l.a.t.e. ...t.e.x. ...t.e.x.t. ...t.e.x.t.c.l.i.p.p.i.n.g. ...t.h.p. ...t.l.b. ...t.m....t.m.d. ...t.m.d.x. ...t.m.v. ...t.m.v.x. ...t.p.c. ...t.r.e.l.b.y. ...t.v.j. ...t.x.t. ...u.3.i. ...u.n.a.u.t.h. ...u.n.x. ...u.o.f. ...u.o.t. ...u.p.d. ...u.t.f.8. ...u.t.x.t. ...v.c.t. ...v.n.t. ...v.w. ...w.b.k. ...w.e.b.d.o.c. ...w.n. ?...w.p. ...w.p.4. ...w.p.5. ...w.p.6. ...w.p.7. ...w.p.a. ...w.p.d. ...w.p.d....w.p.d. ...w.p.l. ...w.p.s. ...w.p.s. ...w.p.t. ...w.p.t. ...w.p.w. ...w.r.i. ...w.s.d. ...w.t.t ?...w.t.x. ...x.b.d.o.c. ...x.b.p.l.a.t.e. ...x.d.l. ...x.d.l. ...x.w.p. ...x.w.p. ...x.w.p. ...x.y. ...x.y.3. ...x.y.p. ...x.y.w. ...z.a.b.w. ...z.r.t.f. ...z.w.

9愚臀、生成User公私鑰

生產(chǎn)User公私鑰函數(shù):

生產(chǎn)User公私鑰函數(shù)

User公鑰:

User公鑰

User私鑰:

User私鑰

10忆蚀、加密后的User私鑰

User私鑰被使用Salsa20算法加密,并在其前拼接上被User公鑰加密的512個(gè)字節(jié)姑裂。這512個(gè)字節(jié)中記錄加密User私鑰的Salsa20密鑰馋袜。以下是加密流程:

① 兩次調(diào)用CryptGenRandom,第一次生成32字節(jié)隨機(jī)字符串作為Salsa20的key舶斧,記錄在數(shù)據(jù)開頭的第一個(gè)256字節(jié)欣鳖,第二次生成8字節(jié)隨機(jī)字符串作為Salsa20的向量,記錄在數(shù)據(jù)的第二個(gè)256字節(jié)茴厉。

32字節(jié)的key:

32字節(jié)的key

8字節(jié)的向量:

8字節(jié)的向量

② User私鑰記錄在數(shù)據(jù)的256*2字節(jié)后泽台,User私鑰用Salsa20加密。

Salsa20的密鑰:

Salsa20的密鑰
Salsa20的密鑰

Salsa20函數(shù):

Salsa20函數(shù)

③,包含Salsa20 key的256個(gè)字節(jié)和包含Salsa20初始向量的256個(gè)字節(jié)分別用RSA算法加密,密鑰是RSA公鑰沪哺。沒有攻擊者的RSA私鑰無法通過解密RSA算法得出Salsa20密鑰烤镐,因此也就無法獲取User私鑰。

RSA公鑰

11、生成隨機(jī)字符串,這個(gè)字符串的作用是作為被加密文件的新后綴名

生成隨機(jī)字符(C)

12鲫尊、創(chuàng)建\HKEY_LOCAL_MACHINE\SOFTWARE\ex_data\data笔横,記錄生成的隨機(jī)字符串?竞滓,這個(gè)字符串將作為被加密文件的新后綴名。

13吹缔、在\HKEY_LOCAL_MACHINE\SOFTWARE\keys_data\data商佑,在public上:記錄User公鑰。private上:記錄加密后的User私鑰

14厢塘、加密后的User私鑰和加密后的本機(jī)信息被用Base64加密 茶没。這兩個(gè)信息又被記錄在了勒索信中

Base加密


15、在C盤下創(chuàng)建勒索信晚碾,勒索信的命名方式是:“注冊表中記錄的后綴名-DECRYPT.txt“抓半。

勒索信中記錄了繳納贖金的詳細(xì)步驟,RSA加密的User私鑰和RC4加密的本機(jī)信息的base64

生成付款信息


(二)加密階段

1格嘁、在要加密文件的同級目錄下創(chuàng)建勒索信笛求,勒索信的命名方式是:“勒索后綴名-DECRYPT.txt“。

勒索信中記錄了繳納贖金的詳細(xì)步驟糕簿,RSA加密的User私鑰和RC4加密的本機(jī)信息的base64


2探入、 排除以下文件,文件夾懂诗,不對其進(jìn)行加密蜂嗽。以防對操作系統(tǒng)進(jìn)行損害和誤將勒索信進(jìn)行加密。

3殃恒、遍歷磁盤植旧,對文件進(jìn)行加密。

加密的文本過程分為:加密文本整體User公鑰芋类;加密帶有Salsa20秘鑰的540個(gè)字節(jié)隆嗅;最后將這兩部分進(jìn)行拼接:加密的文本=Salsa20加密后的文本整體 拼接上 RSA加密后的文件末尾540個(gè)字節(jié)

以下是加密的具體步驟:

(1)判斷文件是否有加密的標(biāo)識(shí)

① 文件的后綴名是不是和注冊表中記錄的后綴名一樣

②?取文件末尾的540個(gè)字節(jié)界阁,判斷這540個(gè)字節(jié)中倒數(shù)第一個(gè)4字節(jié)是不是 0x38281侯繁,倒數(shù)第二個(gè)4字節(jié)是不是0x93892918。


(2)對文件末尾的540個(gè)字節(jié)中的進(jìn)行處理加密:前512字節(jié)記錄Salsa20秘鑰,使用RSA加密泡躯;20字節(jié)記錄文本加密前信息贮竟;8字節(jié)記錄加密后的標(biāo)識(shí);

① 8字節(jié)記錄加密后的標(biāo)識(shí):

賦值加密后的標(biāo)識(shí)給這540字節(jié)的末尾:將數(shù)據(jù)從第532字節(jié)開始賦值為0x38281较剃,將數(shù)據(jù)從536字節(jié)開始賦值為為0x93892918咕别。


② 前512字節(jié)記錄Salsa20秘鑰,RSA算法加密写穴,密鑰是User公鑰:

調(diào)用兩次CryptGenRandom惰拱,第一次產(chǎn)生32字節(jié)的隨機(jī)字符串作為Salsa20的key。第二次產(chǎn)生8字節(jié)的隨機(jī)字符串作為Salsa20的向量

32字節(jié)的key:

8字節(jié)的向量:

③ 在這540字節(jié)中存儲(chǔ)Salsa20的密鑰啊送,然后用User公鑰加密:分為兩步

a),將第一個(gè)256個(gè)字節(jié)中的前32字節(jié)替換成Salsa20的key偿短。再將256字節(jié)數(shù)據(jù)使用RSA算法加密欣孤,密鑰是User公鑰。

b),將第二個(gè)256個(gè)字節(jié)中的前8個(gè)字節(jié)替換成Salsa20的向量昔逗。再將256字節(jié)數(shù)據(jù)使用RSA算法加密降传,密鑰是User公鑰。

User公鑰加密函數(shù):

④ 20字節(jié)中記錄文本加密前總大小勾怒,每次加密文本字節(jié)數(shù)和加密的次數(shù)

(3)文本整體加密

① 每次讀取文件0x10 0000(1M)的字節(jié)數(shù)據(jù)進(jìn)行加密

② 加密:加密算法是Salsa20加密

帶key(32字節(jié)的隨機(jī)字符串)和向量(8字節(jié)的隨機(jī)字符串)的64字節(jié)的數(shù)據(jù):

Salsa20加密:

(4)拼接構(gòu)成加密后的文本:加密的文本=加密后的文本整體 拼接上 加密后的本身末尾的540個(gè)字節(jié)

(5)在加密后的文本名稱后添加上注冊表中記錄的后綴名婆排。至此加密文本完結(jié)。

(三)笔链、其他階段

1段只、加密局域網(wǎng)中共享目錄下的文件

2、傳送本機(jī)信息

(1)url的生成如下

① 遍歷網(wǎng)址鉴扫,每個(gè)網(wǎng)址之間是用分號(hào)隔開的翼悴。

② 拼接URL:從a),b)幔妨,c)鹦赎,d)中選取字符進(jìn)行url拼接。

a):wp-content误堡、static古话、content、includes锁施、data陪踩、uploads、news

b):images悉抵、pictures肩狂、image、graphic姥饰、assets傻谁、pics、imgs列粪、tmp

c):im审磁、de、ka岂座、ke态蒂、am、es费什、so钾恢、fu、se、da瘩蚪、he刑桑、ru、me募舟、mo祠斧、th、zu

d):jpg拱礁、png琢锋、gif、bmp

例如:


(2)發(fā)送數(shù)據(jù):發(fā)送數(shù)據(jù)到拼接出的url

數(shù)據(jù)標(biāo)頭"Content-Type: multipart/form-data"要傳送的數(shù)據(jù)是已經(jīng)加密的本機(jī)信息的base64

3呢灶、刪除文件備份

4吴超、設(shè)置桌面背景

圖片位置:C:\Users\15pb-win7\AppData\Local\Temp\bxmeoengtf.bmp

桌面背景:

桌面背景
桌面背景

5、病毒加密完成后鸯乃,刪除自身鲸阻。退出進(jìn)程。


注:轉(zhuǎn)自http://it.rising.com.cn/fanglesuo/19523.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末缨睡,一起剝皮案震驚了整個(gè)濱河市鸟悴,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌奖年,老刑警劉巖细诸,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異陋守,居然都是意外死亡震贵,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進(jìn)店門水评,熙熙樓的掌柜王于貴愁眉苦臉地迎上來猩系,“玉大人,你說我怎么就攤上這事中燥】艿椋” “怎么了?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵褪那,是天一觀的道長幽纷。 經(jīng)常有香客問我,道長博敬,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任峰尝,我火速辦了婚禮偏窝,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己祭往,他們只是感情好伦意,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著硼补,像睡著了一般驮肉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上已骇,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天离钝,我揣著相機(jī)與錄音,去河邊找鬼褪储。 笑死卵渴,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的鲤竹。 我是一名探鬼主播浪读,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼辛藻!你這毒婦竟也來了碘橘?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤吱肌,失蹤者是張志新(化名)和其女友劉穎蛹屿,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體岩榆,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡错负,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了勇边。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片犹撒。...
    茶點(diǎn)故事閱讀 39,841評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖粒褒,靈堂內(nèi)的尸體忽然破棺而出识颊,到底是詐尸還是另有隱情,我是刑警寧澤奕坟,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布祥款,位于F島的核電站,受9級特大地震影響月杉,放射性物質(zhì)發(fā)生泄漏刃跛。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一苛萎、第九天 我趴在偏房一處隱蔽的房頂上張望桨昙。 院中可真熱鬧检号,春花似錦、人聲如沸蛙酪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽桂塞。三九已至凹蜂,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間阁危,已是汗流浹背玛痊。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留欲芹,地道東北人卿啡。 一個(gè)月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像菱父,于是被迫代替她去往敵國和親颈娜。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容