PHP代碼審計(jì)-常見ini配置

配置文件

php.ini

在 PHP 啟動(dòng)時(shí)被讀取。對(duì)于服務(wù)器模塊版本的 PHP,僅在 web 服務(wù)器啟動(dòng)時(shí)讀取一次比勉。對(duì)于 CGI 和 CLI 版本埋同,每次調(diào)用都會(huì)讀取州叠。

  • Apache web 服務(wù)器在啟動(dòng)時(shí)會(huì)把目錄轉(zhuǎn)到根目錄,這將導(dǎo)致 PHP 嘗試在根目錄下讀取 php.ini凶赁,如果存在的話咧栗。
  • 在 php.ini 中可以使用環(huán)境變量逆甜。

由擴(kuò)展庫(kù)處理的php.ini指令,其文檔分別在各擴(kuò)展庫(kù)的頁(yè)面致板。內(nèi)核配置選項(xiàng)見附錄交煞。不過也許不是所有的 PHP 指令都在手冊(cè)中有文檔說(shuō)明。要得到自己的 PHP 版本中的配置指令完整列表斟或,請(qǐng)閱讀php.ini文件素征,其中都有注釋。此外萝挤,也許從 Git 得到的? 最新版php.ini 也有幫助御毅。

注:php.ini的詳細(xì)配置,可參見PHP官方手冊(cè):http://php.net/manual/zh/ini.php
PHP的配置文件信息怜珍,參見PHP官方手冊(cè):http://php.net/manual/zh/configuration.file.php

.user.ini 文件

自 PHP 5.3.0 起端蛆,PHP 支持基于每個(gè)目錄的 .htaccess 風(fēng)格的 INI 文件。此類文件僅被 CGI/FastCGI SAPI 處理酥泛。此功能使得 PECL 的 htscanner 擴(kuò)展作廢今豆。如果使用 Apache,則用 .htaccess 文件有同樣效果柔袁。

語(yǔ)法

語(yǔ)法非常簡(jiǎn)單晚凿。
空白字符和以分號(hào)開始的行被簡(jiǎn)單地忽略。
章節(jié)標(biāo)題(例如: [php])也被簡(jiǎn)單地忽略瘦馍,即使將來(lái)它們可能有某種意義歼秽。
設(shè)置指令的格式如下:directive = value
注意:指令名 directive 是大小寫敏感的。要區(qū)分大小寫情组。
值(value)可以是:

  • 用引號(hào)界定的字符串(如:"foo")
  • 一個(gè)數(shù)字(整數(shù)或浮點(diǎn)數(shù)燥筷,如:0, 1, 34, -1, 33.55)
  • 一個(gè)PHP常量(如:E_ALL, M_PI)
  • 一個(gè)INI常量(On, Off, none)
  • 一個(gè)表達(dá)式(如:E_ALL & ~E_NOTICE)
    一個(gè)空字符串可以用在等號(hào)后不寫任何東西表示,或者用 none 關(guān)鍵字:
foo = ; 將foo設(shè)為空字符串
foo = none ; 將foo設(shè)為空字符串
foo = "none" ; 將foo設(shè)為字符串''none''  

INI文件中的表達(dá)式僅使用:
位運(yùn)算符院崇、邏輯非肆氓、圓括號(hào),| 位或 底瓣、& 位與 谢揪、~ 位非 、! 邏輯非 捐凭,布爾標(biāo)志用 On 表示打開拨扶,用 Off 表示關(guān)閉。
如果你在指令值中使用動(dòng)態(tài)擴(kuò)展(PHP擴(kuò)展或Zend擴(kuò)展)中的常量茁肠,那么你只能在加載這些動(dòng)態(tài)擴(kuò)展的指令行之后使用這些常量患民。

重要配置 - 變量相關(guān)

啟用全局變量

名字 默認(rèn) 可修改范圍 更新日志
register_globals=off "0" PHP_INI_PERDIR 在 PHP <= 4.2.3 時(shí)是 PHP_INI_ALL。 從 PHP 5.3.0 起不推薦使用垦梆。 在 PHP 5.4.0 中移除該選項(xiàng)匹颤。

有些程序(如OSC)需要啟用全局變量仅孩。
這個(gè)設(shè)置的作用是:關(guān)閉自動(dòng)注冊(cè)的全局變量,
在設(shè)置為On的時(shí)候印蓖,php會(huì)將 $_POST辽慕,$_GET,$_COOKIE赦肃,$_ENV溅蛉,$_SESSION數(shù)組中的$key=>$value 直接注冊(cè)為變量,比如$_POST['username']就會(huì)被注冊(cè)為$username摆尝。
雖然方便了調(diào)用温艇,但是會(huì)有三個(gè)問題:

  • 不知道變量是哪里來(lái)的,$_POST來(lái)的還是$_SESSION來(lái)的呢堕汞?非常不方便別人閱讀代碼勺爱。
  • 變量之間互相覆蓋,引起不必要的麻煩讯检。
  • 安全問題琐鲁。
    所以要設(shè)置為Off。

短標(biāo)簽

名字 默認(rèn) 可修改范圍 更新日志
short_open_tag = on “1” PHP_INI_ALL 在 PHP 4.0.0 時(shí)是 PHP_INI_ALL人灼。 在 PHP < 5.3.0 時(shí)是 PHP_INI_PERDIR围段。

注:關(guān)于可修改范圍,參見:http://blog.csdn.net/XavierDarkness/article/details/78031266
這個(gè)設(shè)置決定是否允許使用 PHP 代碼開始標(biāo)志的縮寫形式(<? ?>)投放。如果禁用了奈泪,必須使用 PHP 代碼開始
標(biāo)志的完整形式(<?php ?>)。

本指令也會(huì)影響到縮寫形式 <?=灸芳,它和 <? echo 等價(jià)涝桅。使用此縮寫需要 short_open_tag 的值為 On。 從
PHP 5.4.0 起烙样, <?= 總是可用的冯遂。

短標(biāo)簽在安全上的作用:當(dāng)程序過濾<?php ?>形式的PHP代碼時(shí),可以用@int_set('short_open_tag',0) 開啟短標(biāo)簽谒获,用短標(biāo)簽形式<? ?>繞過過濾蛤肌。

安全模式

安全模式

名字 默認(rèn) 可修改范圍 更新日志
safe_mode=off "0" PHP_INI_SYSTEM 在 PHP 5.4.0 中移除該選項(xiàng)。

php的安全模式是個(gè)非常重要的內(nèi)嵌的安全機(jī)制批狱,能夠控制一些php中的函數(shù)裸准,比如system(),同時(shí)把很多文件操作函數(shù)進(jìn)行了權(quán)限控制精耐,也不允許對(duì)某些關(guān)鍵文件的文件狼速,比如/etc/passwd,但是默認(rèn)的php.ini是沒有打開安全模式的卦停。
當(dāng) safe_mode 設(shè)置為 on向胡,PHP 將通過文件函數(shù)或其目錄檢查當(dāng)前腳本的擁有者是否和將被操作的文件的擁有者相匹配。
在 PHP 5.4.0 中移除該選項(xiàng)惊完。

安全模式下執(zhí)行程序主目錄

名字 默認(rèn) 可修改范圍 更新日志
safe_mode_exec_dir=/var/www/html NULL PHP_INI_SYSTEM 自 PHP 4.1.0 起可用

如果 PHP 使用了安全模式僵芹,system() 和其它程序執(zhí)行函數(shù)將拒絕啟動(dòng)不在此目錄中的程序。必須使用 / 作為目錄分隔符小槐,包括 Windows 中拇派。
簡(jiǎn)單來(lái)說(shuō),就是這個(gè)目錄下可以執(zhí)行凿跳。

禁用類/函數(shù)

名字 默認(rèn) 可修改范圍 更新日志
disable_class= "" php.ini only 從 PHP 4.3.2 起可用件豌。
disable_functions= "" php.ini only 從 PHP 4.0.1 起可用。
disable_functions=opendir,readdir,scandir,fopen,unlink

禁用某些類控嗜,禁止某些函數(shù)茧彤。接受逗號(hào)分隔的函數(shù)名列表作為參數(shù)。只能設(shè)置在 php.ini 中疆栏。

  • disable_classes string
    本指令可以使你出于安全的理由禁用某些類曾掂。用逗號(hào)分隔類名。disable_classes 不受安全模式的影響壁顶。 本指令只能設(shè)置在 php.ini 中珠洗。例如不能將其設(shè)置在 httpd.conf。
  • disable_functions string
    本指令允許你基于安全原因禁止某些函數(shù)若专。接受逗號(hào)分隔的函數(shù)名列表作為參數(shù)许蓖。 disable_functions 不受安全模式的影響。 本指令只能設(shè)置在 php.ini 中调衰。例如不能將其設(shè)置在 httpd.conf膊爪。

上傳文件及目錄權(quán)限

設(shè)置上傳文件大小

名字 默認(rèn) 可修改范圍 更新日志
file_uploads = on "1" PHP_INI_SYSTEM 在 PHP <= 4.2.3 時(shí)是 PHP_INI_ALL。 從 PHP 4.0.3 起可用窖式。
upload_max_filesize = 8M "2M" PHP_INI_PERDIR 在 PHP <= 4.2.3 時(shí)是 PHP_INI_ALL蚁飒。
post_max_size = 8M "8M" PHP_INI_PERDIR 在 PHP <= 4.2.3 時(shí)是 PHP_INI_SYSTEM。 從 PHP 4.0.3 起可用萝喘。

POST的數(shù)值要大于等于upload淮逻,否則upload不起作用。
詳見:http://php.net/manual/zh/ini.core.php#ini.file-uploads

文件上傳臨時(shí)目錄

名字 默認(rèn) 可修改范圍 更新日志
upload_tmp_dir = NULL PHP_INI_SYSTEM

上傳臨時(shí)文件保存的目錄阁簸,需要可寫爬早,如果不設(shè)置,則采用系統(tǒng)臨時(shí)目錄启妹。(/tmp)

用戶訪問目錄限制

名字 默認(rèn) 可修改范圍 更新日志
open_basedir = .:/tmp/ NULL PHP_INI_ALL 在 PHP < 5.2.3 時(shí)是 PHP_INI_SYSTEM筛严。

使用open_basedir選項(xiàng)能夠控制PHP腳本只能訪問指定的目錄,這樣能避免PHP腳本訪問不應(yīng)該訪問的文件饶米,一定程度上限制了phpshell的危害桨啃。我們一般可以設(shè)置為只能訪問網(wǎng)站目錄,表示允許訪問當(dāng)前目錄(即PHP腳本文件所在之目錄)和/tmp/目錄车胡,有效防止php木馬跨站運(yùn)行。
將 PHP 所能打開的文件限制在指定的目錄樹照瘾,包括文件本身匈棘。本指令不受安全模式打開或者關(guān)閉的影響。
特殊值 . 指明腳本的工作目錄將被作為基準(zhǔn)目錄析命。但這有些危險(xiǎn)主卫,因?yàn)槟_本的工作目錄可以輕易被 chdir() 而改變。
在 httpd.conf 文件中中鹃愤,open_basedir 可以像其它任何配置選項(xiàng)一樣用“php_admin_value open_basedir none”[方法關(guān)閉(例如某些虛擬主機(jī)中)簇搅。
在 Windows 中,用分號(hào)(;)分隔目錄软吐。在任何其它系統(tǒng)中用冒號(hào)(:)分隔目錄瘩将。作為 Apache 模塊時(shí),父目錄中的 open_basedir 路徑自動(dòng)被繼承关噪。

注意:用 open_basedir 指定的限制實(shí)際上是前綴鸟蟹,不是目錄名。也就是說(shuō)“open_basedir = /dir/incl”也會(huì)允許訪問“/dir/include”和“/dir/incls”使兔,如果它們存在的話建钥。如果要將訪問限制在僅為指定的目錄,用斜線結(jié)束路徑名虐沥。例如:“open_basedir = /dir/incl/”熊经。
默認(rèn)是允許打開所有文件。

錯(cuò)誤信息

錯(cuò)誤信息控制

名字 默認(rèn) 可修改范圍 更新日志
display_error = On "1" PHP_INI_ALL

該選項(xiàng)設(shè)置是否將錯(cuò)誤信息作為輸出的一部分顯示到屏幕欲险,或者對(duì)用戶隱藏而不顯示镐依。
站點(diǎn)發(fā)布后應(yīng)該關(guān)閉這項(xiàng)功能,以免暴露信息天试。調(diào)試的時(shí)候當(dāng)然是要On的槐壳,不然就什么錯(cuò)誤信息也看不到了。
設(shè)置 "stderr" 表示發(fā)送到 stderr 而不是 stdout喜每。 "stderr"從 PHP 5.2.4 開始可用务唐。在以前的版本中,該配置值的類型為 boolean带兜。
Note:
盡管 display_errors 也可以在運(yùn)行時(shí)設(shè)置 (使用 ini_set())枫笛, 但是腳本出現(xiàn)致命錯(cuò)誤時(shí)任何運(yùn)行時(shí)的設(shè)置都是無(wú)效的。 因?yàn)樵谶@種情況下預(yù)期運(yùn)行的操作不會(huì)被執(zhí)行刚照。

設(shè)置錯(cuò)誤報(bào)告級(jí)別

名字 默認(rèn) 可修改范圍 更新日志
error_reporting = E_ALL NULL PHP_INI_ALL

這個(gè)設(shè)置的作用是將錯(cuò)誤級(jí)別設(shè)置為最高刑巧,可以顯示所有的問題,方便查錯(cuò),也有利于寫出高質(zhì)量的代碼啊楚。
日志級(jí)別是一些常量吠冤,在php.ini中有寫,推薦使用 E_ALL | E_STRICT特幔,即所有級(jí)別咨演。

設(shè)置錯(cuò)誤報(bào)告的級(jí)別闸昨。該參數(shù)可以是一個(gè)任意的表示二進(jìn)制位字段的整數(shù)蚯斯,或者常數(shù)名稱。錯(cuò)誤級(jí)別和常數(shù)是在 預(yù)定義常量定義的饵较,在php.ini 之中也有專門的說(shuō)明拍嵌。在程序運(yùn)行時(shí),還可以通過 error_reporting() 函數(shù)進(jìn)行設(shè)置循诉。
在PHP 4和PHP 5之中横辆,其默認(rèn)值為 E_ALL & ~E_NOTICE。 該設(shè)置表示除了 E_NOTICE 其他都顯示的錯(cuò)誤級(jí)別茄猫。在開發(fā)過程中很有必要顯示它們狈蚤。
詳見:http://php.net/manual/zh/errorfunc.configuration.php#ini.error-reporting

錯(cuò)誤日志

名字 默認(rèn) 可修改范圍 更新日志
error_log = NULL PHP_INI_ALL

錯(cuò)誤日志的位置,必須對(duì)web用戶可寫入划纽,如果不定義則默認(rèn)寫入到web服務(wù)器的錯(cuò)誤日志中去 脆侮。

設(shè)置腳本錯(cuò)誤將被記錄到的文件。該文件必須是web服務(wù)器用戶可寫的勇劣。如果特殊值 syslog 被設(shè)置靖避,則將錯(cuò)誤信息發(fā)送到系統(tǒng)日志記錄器。在Unix以及類似系統(tǒng)上比默,使用的是 syslog(3) 幻捏,而在 Windows NT 類系統(tǒng)上則為事件日志。Windows 95上不支持系統(tǒng)日志記錄命咐。參見:syslog(). 如果該配置沒有設(shè)置篡九,則錯(cuò)誤信息會(huì)被發(fā)送到 SAPI 錯(cuò)誤記錄器。例如醋奠,出現(xiàn)在Apache的錯(cuò)誤日志中榛臼,或者在CLI中發(fā)送到 stderr

名字 默認(rèn) 可修改范圍 更新日志
log_errors = on NULL PHP_INI_ALL

設(shè)置是否將腳本運(yùn)行的錯(cuò)誤信息記錄到服務(wù)器錯(cuò)誤日志或者error_log之中钝域。注意讽坏,這是與服務(wù)器相關(guān)的特定配置項(xiàng)。

魔術(shù)引號(hào)及遠(yuǎn)程文件

魔術(shù)引號(hào) 【W(wǎng)arning:本特性已自 PHP 5.3.0 起廢棄并將自 PHP 5.4.0 起移除例证÷肺兀】

名字 默認(rèn) 可修改范圍 更新日志
magic_quotes_gpc = On “1” PHP_INI_PERDIR 在 PHP <= 4.2.3 時(shí)是 PHP_INI_ALL。 從 PHP 5.3.0 起不推薦使用。 在 PHP 5.4.0 中移除該選項(xiàng)
magic_quotes_runtime = Off “0” PHP_INI_ALL 在 PHP 5.4.0 中移除該選項(xiàng)

為 GPC (Get/Post/Cookie) 操作設(shè)置 magic_quotes 狀態(tài)胀葱。 當(dāng) magic_quotes 為 on漠秋,所有的 ' (單引號(hào))、"
(雙引號(hào))抵屿、\(反斜杠)和 NULL 被一個(gè)反斜杠自動(dòng)轉(zhuǎn)義庆锦。

Note:
在 PHP 4,$_ENV也會(huì)被轉(zhuǎn)義轧葛。

Note:
如果 magic_quotes_sybase 也是 ON搂抒,它會(huì)完全覆蓋 magic_quotes_gpc。 兩個(gè)指令都啟用意味著只有單引號(hào)被轉(zhuǎn)義為 ''尿扯。 雙引號(hào)求晶、反斜杠和 NUL's 不會(huì)被轉(zhuǎn)義。

如果啟用了 magic_quotes_runtime衷笋,大多數(shù)返回任何形式外部數(shù)據(jù)的函數(shù)芳杏,包括數(shù)據(jù)庫(kù)和文本段將會(huì)用反斜線轉(zhuǎn)義引號(hào)。 如果啟用了magic_quotes_sybase辟宗,單引號(hào)會(huì)被單引號(hào)轉(zhuǎn)義而不是反斜線爵赵。

受 magic_quotes_runtime 影響的函數(shù)(不包括 PECL 里的函數(shù)):
參見:http://blog.csdn.net/XavierDarkness/article/details/78032716

是否允許打開遠(yuǎn)程文件

名字 默認(rèn) 可修改范圍 更新日志
allow_url_fopen = on "1" PHP_INI_SYSTEM 在 PHP <= 4.3.4 時(shí)是 PHP_INI_ALL。

本選項(xiàng)激活了 URL 形式的 fopen 封裝協(xié)議使得可以訪問 URL 對(duì)象例如文件泊脐。默認(rèn)的封裝協(xié)議提供用 ftp 和 http 協(xié)議來(lái)訪問遠(yuǎn)程文件空幻,一些擴(kuò)展庫(kù)例如 zlib可能會(huì)注冊(cè)更多的封裝協(xié)議。

Note:
出于安全性考慮晨抡,此選項(xiàng)只能在 php.ini 中設(shè)置氛悬。

Note:
此選項(xiàng)是緊接著版本 4.0.3 發(fā)布后引進(jìn)的。版本 4.0.3 以及之前的版本只能在編譯時(shí)通過配置項(xiàng) --disable-url-fopen-wrapper
來(lái)取消此特性耘柱。

Warning:Windows 版在 PHP 4.3.0 之前如捅,以下函數(shù)不支持遠(yuǎn)程文件訪問:includeinclude_once, require调煎,require_onceGD 和圖像處理 函數(shù)中的 imagecreatefromXXX 函數(shù)镜遣。

是否允許包含遠(yuǎn)程文件

名字 默認(rèn) 可修改范圍 更新日志
allow_url_include = off “0” PHP_INI_ALL 在 PHP 5 時(shí)是 PHP_INI_SYSTEM。 從 PHP 5.2.0 起可用士袄。

本選項(xiàng)激活允許 include, include_once, require, require_once等函數(shù)使用 URL 形式的 fopen 封裝協(xié)議悲关。簡(jiǎn)
單來(lái)說(shuō)就是可以包含遠(yuǎn)程文件。

Note
此選項(xiàng)要求開啟 allow_url_fopen 娄柳。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末寓辱,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子赤拒,更是在濱河造成了極大的恐慌秫筏,老刑警劉巖诱鞠,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異这敬,居然都是意外死亡航夺,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門崔涂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)阳掐,“玉大人,你說(shuō)我怎么就攤上這事冷蚂$员#” “怎么了?”我有些...
    開封第一講書人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵帝雇,是天一觀的道長(zhǎng)涮俄。 經(jīng)常有香客問我,道長(zhǎng)尸闸,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任孕锄,我火速辦了婚禮吮廉,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘畸肆。我一直安慰自己宦芦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開白布轴脐。 她就那樣靜靜地躺著调卑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪大咱。 梳的紋絲不亂的頭發(fā)上恬涧,一...
    開封第一講書人閱讀 50,050評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音碴巾,去河邊找鬼溯捆。 笑死,一個(gè)胖子當(dāng)著我的面吹牛厦瓢,可吹牛的內(nèi)容都是我干的提揍。 我是一名探鬼主播,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼煮仇,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼劳跃!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起浙垫,我...
    開封第一講書人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤刨仑,失蹤者是張志新(化名)和其女友劉穎强重,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體贸人,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡间景,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了艺智。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片倘要。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖十拣,靈堂內(nèi)的尸體忽然破棺而出封拧,到底是詐尸還是另有隱情,我是刑警寧澤夭问,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布泽西,位于F島的核電站,受9級(jí)特大地震影響缰趋,放射性物質(zhì)發(fā)生泄漏捧杉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一秘血、第九天 我趴在偏房一處隱蔽的房頂上張望味抖。 院中可真熱鬧,春花似錦灰粮、人聲如沸仔涩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)熔脂。三九已至,卻和暖如春柑肴,著一層夾襖步出監(jiān)牢的瞬間霞揉,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工嘉抒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留零聚,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓些侍,卻偏偏與公主長(zhǎng)得像隶症,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子岗宣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

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