|  | 
 
| 前言 3 s* d' r2 K% @& L7 x  i% O9 ]去年我说过要写个关于cookie stuffing(简称CS)的资料.开写了大部分后, 于去年9月份时中断
 + k: a; |, |# b; @' }9 H后来断续又写了一点,还没写完.
 ) H# J" X% K" J/ m5 S7 l现在决定暂时不用PDF形式发布,而是用贴子分几期在5月份发完.- K0 k  K' @' b+ H
 整个资料内容不涉及实战,以介绍方法为主,里面的代码来自老外,和本人无关,请注意了.       : ]  A, {9 }9 i) U& f: M- H
 OK,首先我还是重复下什么是cookie stuffing的概念
 $ }! t  e7 p- b* h0 Wcookies是通过html中header(头部信息)传递的,除非浏览器的做了一定安全设置,否则是不会忽略这个信息的.
 : |8 x3 Z+ t$ k7 n& e既然cookies通过头部信息传送,那么,一个网页可以不必通过一个header传递,通过图片等方式也可以实现.0 q- |& U* A1 W: ?7 P
 当一个浏览者向服务器发送一个图像请求时,在返回的页面之中,一个header已经被包括了.浏览器获得了header,就不需要管那些文章信息,一个cookies就是这样植入的.
 ' d# C( f% K+ T0 r! ccookie stuffing的存在是因为广告联盟用cookie来跟踪业绩.用最简单的话就是说,广告联盟给你一个链接,当他人点击了链接并购买了产品,你就获得了佣金.
 5 A: O* Q' h$ G% J2 D+ I现在你知道了,就是要想办法让人多点击,你就可能得到更多提成.比如把广告图片放在你站上,并尽量使图片和网站融为一体.但可怜的是这样做效果很差,几乎没人点你的广告图片./ e6 F# P1 V& S" {+ E  z% }
 所以,怎样强制他人点击链接呢?从而cookie stuffing就这样被发明出来了.它的最终目标就是把affiliate cookies加入浏览者的电脑中,以投机取巧获取利益.5 t9 k2 L; S2 ~+ \9 J$ Z5 L- |
 看起来cookie stuffing是一种容易赚钱的方法.当然,广告联盟不是傻瓜,他们有很多办法能抓到你,这在以后会讲到的.0 B) P5 b* ^; Q3 i4 g5 D
 基本方法# v+ ?: v6 U5 C
 1. Image Stuffing
 3 O$ k- O. ?$ r& {6 o9 s+ `$ Kcookie stuffing一般在开头会先讲这个Image Stuffing的,代码很简单,这里是个例子:9 \. |% y1 P+ k, |2 P2 P) H+ \
 <img src=”http://www.advertcn.com/affiliatelink”>
 ) G* r  v: Q/ Z! [- t+ }1 ]# A在大多数浏览器,它表现为一个大的红叉,看上去像是服务器出了毛病一样.4 X1 A+ F) |! W8 H! P
 在国外大多数论坛有不少会员是专家,如果你在论坛用这个方法,会很容易被他们识破的.
 . O( A/ ?2 c! i3 c4 `所以,  在实施一些方法前, 还有很多的东西要学.' o- R3 x& t) T  \% U2 @, j
 回过来继续说Image Stuffing.为了不让用户发现,你不得不设置图片大小为1个像素,代码如下:
 ! K# x6 ^" T8 {: r( g( P  z4 p+ C<img src=”http://www.advertcn.com/affiliatelink” height=1 width=1>
 & E: C+ n+ w! H! R但这样还是会显示一个红叉,所以,再给它加上个alt标签,用来替换你想要的文本文字.
 0 k; F8 E3 ^& d! m+ z% f% Iimage tag stuff:
 * W. q4 X/ z: H8 z7 u5 {3 {9 k3 b<img src=”http://www.advertcn.com/affiliatelink” height=”1″ width=”1″ alt=” “>7 f2 H/ K* H! V; \
 然后,当它和其它方法结合在一起后,就成为cookie stuffing牢固的基石了,后面会继续讲到的.
 ' k1 y& Z, M7 y( G  O2. Iframe Stuffing; p  N# j' }% s$ ^5 V. {8 a
 Iframe对初学者来说相当容易理解(不知道Iframe为何物的,请自己查资料吧),以下是Iframe Stuffing的代码例子.
 2 h8 H% R4 h3 T% D& `: x0 Z<iframe src=”http://www.advertcn.com/affiliatelink” height=”1″ width=”1″>
 : U$ P" ~9 B; D" I- e8 W# a% s访问者来到你的网站后,就不知不觉的已打开窗口访问了商家的网站,也就是点击了http://www.advertcn.com/affiliatelink,因为这个Iframe的大小是1个像素,所以访问者毫无知觉.如果他们购买了东西,提成就是你的了.
 . [: h# O1 h& V: U2 iIframe Stuffing也很容易让你马上被banned.当然,也有办法隐蔽它,在后面我们会讨论到.  Y4 p; U. O0 W' F+ s1 x0 v
 3. Javascript Stuffing
 2 f  s9 j' N5 I9 k. ]4 d很久以前-从互联网早期,到现在,有个东西叫弹窗的,可以说是最原始的强制植入cookie的方式.确切的说,属于不完全意义上的cookie stuffing.
 ; j# M8 ?7 \8 \效果是一样的,只是很令访问者反感.所以大多数浏览器有了可以锁定弹出式窗口的功能.) d* _- m, g6 S! a- _  f& g3 p- h
 现在,我们来到了有点复杂的cookie stuffing的章节-Javascript Stuffing,这个需要一点程序知识,毕竟Javascript是一种脚本语言.因为较难明白,我们就跳过程序知识这部分.
 6 ]+ {  R) |  t7 ]' o8 [% d2 E, x下面举个代码例子,并简单地解释一下它是如何工作的:
 0 x7 w* X, Z5 ^. X- m& t<script language=”JavaScript”>' r/ E. t8 e6 L" @
 <!– window.focus();# u. N. B% ~, a$ p- t- e
 setTimeout(“window.focus()”,900);
 4 J6 ?3 x% y: J+ r, P0 g* y$ L3 |//–>& S! \4 J; Z5 X& s! H
 </script>
 1 A, g- F  U% }! j  x8 C<script language=”javascript”>
 & I- `% ?5 r' W% O. n<!–# b. S$ R0 L7 ?; d' r/ o% F5 j
 w=window.open(‘http://www.advertcn.com/affiliatelink’,'affiliate_description’);w.blur();) J8 _! |4 H+ h( ?' P- p
 //–>
 ) M1 l0 B5 {" ~$ H) ]) p</script>
 2 ^. Y4 g, v) [- u( Z) k- d这个独特的方法是过了设定时间后,打开弹出式窗口(商家的网站,或者是你的推广链接),并移离目前主窗口的视觉中心,放置于主窗口的后面,对访问者来说,就不那么烦人侵扰了.3 G9 n0 a, w4 {8 p, l
 由于访问者其实已用你的链接打开了商家的网站,所以他们被植入了cookie.0 r1 _: G* R1 ^2 E
 如果你懂得javascript,懂得弹出式窗口,够精通javascript编程的话,你应该有能力值得花些时间去改进发展Javascript Stuffing., J* U5 F! J  M6 K
 但大多数时候,Javascript Stuffing已进入死胡同,发展余地已不大.
 $ q; J, h$ D$ O% e# U" Q+ w/ n后记:; ]3 T+ e( n; ]) j0 ?
 数年前,我在CB培训的群里,也给过学员类似的代码,不一样的在于,我给的是隐形弹窗,也就是说肉眼是看不见这个弹窗的.
 & u, j' f* k$ y! ^: `8 r代码作者原本是出售这个程序的,后来05年取消了,改为到他网站上在线生成代码.现在他的网站已指向了别的地方,所以别问我要这个东西啊.& B3 e1 k' ], ~. h. X
 4. .htaccess stuffing 通常,即使是会点网站设计的人,也不一定知道.htaccess是什么., H; t5 P; T7 z  m
 .htaccess在大多数服务器是个隐藏文件,有时被默认是没有的,所以实际上需要我们建立一个.5 N; [& B$ {, P; Q" C6 D( K
 .htaccess这个文件告诉服务器当一个特别条件相适应时,应该去干什么.
 * `, z3 U& n/ L' B! |. n  b好了现在我们至少知道了什么是.htaccess文件,我们就开始复习Image Stuffing代码吧.
 0 ~: g" F% L5 s; X. S& {- X比如说你在论坛的签名.
 ; ?2 ~/ G8 i/ r6 S7 z<img src=”
  ”>( I2 r# A! _. g9 w" v 然后我们把以下htaccess文件传到空间里
 8 x  I1 M+ o2 m# t3 fRewriteEngine on; @  I: E. |& G1 q' f
 RewriteRule signature.jpg http://www.advertcn.com/affiliatelink/ [L,R=301], L8 n: J. ^6 t6 r; V, w, y4 G( o
 这个htaccess是说,访问者在读取你的论坛签名里的图片时,会被转向到你的affiliate链接,这样他们就被植入了cookie.
 ) U+ V8 ?5 d. N4 O* s7 l2 V: n: \那么,你的图片在浏览器里真正看上去是这样的:
 ) k$ v# e% j2 U$ p<img src=”http://www.advertcn.com/affiliatelink”>, O4 i4 ]3 n6 D) L! C! ^
 还记得前面讲到过的Image Stuffing吗?现在访问者看到的链接就是一个真实的图片了.
 9 ^+ g6 D7 t4 q6 D+ K9 F# W5. Flash Stuffing( f) {) \$ O7 t1 e
 关于Flash Stuffing这一部分,还可以参见一本书,CookieStuffingGuide,广告中国有下载,地址:
 " ^& |& X' p$ Q) b; [; \http://advertcn.com/viewthread.php?tid=72234&extra=page%3D1
 , o% A* K1 g( d" a. H# p相信大家都玩过Flash游戏吧,可以使用键盘或鼠标操纵动画里的部分动作,交互性很强,这便是ActionScript的厉害之处,它与JavaScript结构类似,但是它的编程要容易得多.
 ) w" g; T9 T9 m; `' ^2 ^4 {用ActionScript创作出来的动画具有很强的交互性,Flash程序脚本语言就是ActionScript,译作行动脚本.最近版本是3.0.( S  ]" B% t4 c' R+ F
 讲述Flash Stuffing,专业术语较多,我看资料时头也很大.所以,一些复杂的理论我跳过去省略掉." Y) S8 W8 C, f3 V6 W% @
 Flash几乎无可能对所发送的referer作假,所幸它有个可以利用的漏洞,那就是sendToURL().
 2 n* P+ A- w! u# g0 ZActionScript3.0里有个叫sendToURL()的功能,这个功能的设计是,发送信息到一个网站,但不用等待响应.
 / N: i8 B1 ?* }; a! R2 {具体来说,sendToURL()发送一个URL到服务器确认,但不理睬任何响应.也就是说,它用访问者的浏览器(你的cookie stuffing”受害者”)提交一个请求到一个网站,但浏览器被假设为不理睬任何响应.
 , f  f6 _5 K! q) f* {  D) J0 c但头部信息是不会被拒绝的,cookie能穿越sendToURL()未触及的功能通过去,cookie的植入自然也就无疑问.
 8 _# p$ ~! c3 i% r5 W如果你会PHP的话,你可以指定哪个浏览器不发送空白的referers,以及阻止来自被发送到sendToURL()的信息.你还可以设定你的PHP文件指令,优化你想要的CTR比率,以保持稳定的收入.
 J- ~  {% l4 t4 L" X5 G; y& A* H/ {此类程序有几种,有的已停止出售.最好是找人写一个针对特定联盟的.当然前提是联盟默许cookie stuffing.
 $ V0 O, }9 }$ R% E3 A% D8 k前面所讲到的每个cookie stuffing方法,不管是哪个,都会被联盟发现从而封掉你的账号.不信的话你可以多试试看,除非你发现了高手成功的方法.) e. j. K0 d' {) C4 E6 _
 那么,联盟是怎样抓住你使用了cookie stuffing的呢?
 8 i. @2 N3 ^. b( N$ l* `& g首先,image stuffing,包括和它相结合的.htaccess stuffing,被证明是无法改变referer的.
 ) h" [  q& l( P. b后面我会讲到如何改变iframes和弹出式窗口的referer.% T0 R4 N9 `- C9 E
 其次,第二个察觉cookie stuffing的方法是blank referer,这个方法是合法的,但联盟会告诉你不行,或不给你一个明确的答复.) V- m  @+ `/ e" u( x- _
 如果你用了blank referer,你认为该怎样解释?这里有2个选择:
 ) V, Q' K7 z4 N- w; B1:你偷偷摸摸地在做某种事情,也就是blackhat
 7 L" X/ G, C. b7 m+ k+ `. A2 ]5 W2:你隐藏了流量来源.
 0 X' {- m, ~- \那么,你会用哪个选择来回答联盟呢?1,还是2?
 b* F$ P/ G* N我直接说吧,永远也不要说你在做blackhat的事情,只说你的流量来源是个机密.3 `& L& e$ _& a9 e
 然后你可能会收到电话或电子邮件,问你空白referer的来源,因此你事先要做好准备.
 7 D- f! M  I2 Q  m) k# Y$ K第三个方法是他们用转化率来破解你是否用了cookie stuffers./ T% f$ T+ z( |/ I( d: R
 什么是转化率?比方说,被你植入cookie的访问者都是潜在的消费者,如果他们没有消费或注册,或很少很少,你的转化率会显示很低.原因是你那些流量都是随机的乱七八糟的,不是目标流量,并没有真的点击了你的链接来到商家网站.
 5 o/ H0 A6 Y2 r* R& C2 i! {在大多数情况下,联盟不会封掉你的账号,他们仅委婉地告诉你: 你不能再推广那个任务,也许你会发现推广别的任务比较好.
 & H+ c* S3 s: _1 c  N1 S. {& J  t第四个方法是联盟用CTR数据来发现你在emu.事实上,图片是不可能有100%的点击率的,这是affiliates界的尺度,所以要注意了.) z3 B! O. p/ _' A4 v
 最后,最坏的情况是,联盟从你收入的情况来判断你是否emu.4 y5 g$ d# }0 M- j( O% `
 怎么判断的呢?联盟用某个一样的比例来衡量affiliates的收入.
 ' j/ O5 m- ~  u( T. c举个例子,假如一万个会员平均月收入是100美元,并有3个人超过了500美元一个月.那么,你会被列入那个人里面,被联盟重点照顾.
 : r3 V) P0 n6 s3 N7 r5 x联盟不放过每个细节,对你仔细分析哪些是你做对的,哪些是做错的.这就是前面我提到过的,这种时候联盟会来调查电话问你空白流量的来源.
 * X/ V  m, q9 D7 [好了,现在我们已知道了联盟是怎样检查我们的,下一步我将讲解如何应对.( k5 J/ M2 M7 b3 Y' E
 在(四)里,我们大体已知道了联盟是怎样检查我们的,那么,现在该如何去应对它呢?以下内容是比较深的.6 ^; {/ d8 M4 x3 A* V
 首先,必须接受这样的事实,在image stuffing里改变referer是不可能的,因此,除非你能承担和把风险降低到最低点,否则不要在网站或论坛搞image stuff.. O% r' n# n1 o2 \1 m3 \& L
 第二,学会如何适当地使用刷新代码.把iframe和刷新2者结合,referer信息将是空白的.: }% J7 g& n  b8 k5 Q
 现在不是所有的浏览器都支持上面所说的第二点,因此我们得把它过滤掉.我们做成2个PHP跳转页面,先是第一个刷新页面到达第二个页面,第二个页面自动检查referer信息是否是空白.如果是,那么这个浏览器可以使用.然后我们就可以第二次刷新来到affiliate推广页面.0 t7 b7 ?" \; m) A% T
 联盟将看到你的来了来源都是空白的.
 9 }. J* d8 f; X$ ]5 w关于这个2次刷新脚本,不懂的话读者可以自己找人写个.7 W% n0 u% O$ [! ]% ~" n7 m2 [6 M
 嗯,有的联盟已规定流量来源不可以是空白的,自然就不能用以上方法.
 , v4 s1 z! M6 T! C0 C  z4 ]5 q第三
 2 I- F) q+ C4 v: d0 s* {这个方法已用得很广泛了.如果访问者是通过搜索引擎来到你的网站,那么无疑,这时stuffing是相当安全的,联盟对此情况必定无话可说的.; F* a% X3 v; h4 r
 那么我们可以这么做,让搜索引擎收录,比如雅虎的目录;让分类信息站收录,比如craigslist;再比如加入到ebay. 这些都是可以做到的几种不同的方法.2 p! z% y1 D2 ~& q" {
 我们可以用一个htaccess文件转到指定的affiliate链接的来源.+ x; ^2 C6 B2 e5 E) G, H. m
 或者我们可以写一个来源到数据库里,然后让被称为index.php的页面执行.我们可以告诉我们的PHP文件,对写好的某段代码做出决定,即使是来自某个站点的来源也可以改变.5 D+ \( O8 D* F. O+ S0 b/ }
 if(substr((trim($_SERVER['HTTP_REFERER'])),0,23)==”http://www.google.com/”). P" H2 z4 ]" {- p2 D4 F
 {! H9 h5 e+ I' h! d
 echo “<img src=\”http://www.advertcn.com/affiliatelink” height=\”1\” width=\”1\” alt=\”\”>”;) y( _' o5 U0 V: [* _, Y" p! M
 }* ~7 j2 W! v( j/ D
 现在我们要抛弃掉image stuff,使用加上刷新代码的iframe,或flash文件,用于植入特定的来源对象,没有任何限制." d, Y9 J5 S* ]$ h) d3 q
 这个程序能很好的平衡CTR和对流量来源的检验,还能避免你的AM被植入cookies.: s! _$ s& v3 B/ r, W% H
 不过,需要懂些PHP程序方面的知识才行.如果没这个能力,可以考虑去威客平台找外包,在国外有Freelance programmers接这种活.国内的我觉得就别找了吧.
 * u0 k, Y& ~5 ?' s6 n+ p0 J! {第四0 S3 H. ?7 Q  s* V. [# E+ Z+ k
 这是另一个不会引起别人警觉的在论坛植入cookies的方法,可以设置一个比例,让访问者随机被植入cookies. 比如说设置5%,那么,100个访问者里有5人会被植入cookies. 这个方法工作原理是怎么样的呢? 它有个名称叫动态.htaccess.它包含了2个图片文件和1个.htaccess文件.2 T  w. n3 z! A2 ^* Y6 V
 当显示图片时,会适时地运行一PHP程序.; S) N2 {# L; o) Z+ j$ ^1 Q
 现在我讲解一下这2个图片.
 8 I* m  I9 R& y5 V: F6 z6 e( ?+ U第一个图片其实是假的,每次被访问会编辑.htaccess文件.我们设置一定的比例多少次图片1被图片2″覆盖”,比如5%.
 7 V  Z( B& a9 i( q5 ~3 ]4 b下面的代码是5%的时间里时htaccess的写法:) c! u! Q! w! M& ~7 W# ?
 RewriteEngine on) v' g# J, j; }4 y7 j0 i" C( c
 RewriteRule signature.jpg signature.php [L,R=301]2 Y5 J+ a( W, M0 s0 _& a7 l; E$ Q) X
 RewriteRule affiliatetracking_pixel.gif http://www.advertcn.com/affiliatelink [L,R=301]
 . r5 x  Z2 {1 k5 F) K" P: |下面的代码是95%的时间里时,htaccess的写法:
 ! k3 v, d, |6 c" O: vRewriteEngine on* |' j; O8 b% m9 t% b+ Z
 RewriteRule signature.jpg signature.php [L,R=301]
 ]- o  k$ G: d# fRewriteRule affiliatetracking_pixel.gif tp.gif [L,R=301]
 ; s2 O) |: ~; ~; O, Z% [' C3 u6 o就是说,95%的时候,在论坛看到的是正常的签名,5%的时候看到的是×.万一如果有人怀疑这个×,那么,他刷新一下帖子的页面后,看到的又是一个真实的图片.' b7 _/ u2 r$ }. S
 这是因为刷新后htaccess又被重写了.
 # d% v% l8 `% W+ E2 h使用这个方法事先要注意是否容许在论坛推广,以及签名除了图片还可以使用文本." m  j$ O4 m+ V. F8 k2 q3 z- j
 第五9 T$ z6 A; {* Q: @8 m
 前面我们已知道,那个红叉是个麻烦问题.
 9 J( I/ Q% Z' g2 _9 N2 n+ c但如果我们是在一般非技术论坛搞cookie植入的话,仅针对火狐浏览器用户植入就可,因为火狐浏览器不会显示红叉,这点它跟IE6/7不一样的.0 x! c* B) a2 b2 q# P! U
 这个方法的代码如下,由上往下读:1 v$ W& F) `6 `( a, ^2 g
 Options +FollowSymlinks: S1 M& s8 m( z' I3 ]: Q1 {
 RewriteEngine on7 w% S# a8 {9 }8 @& q
 RewriteCond %{HTTP_REFERER} !^$% J& M+ p$ ~! {
 RewriteRule signature.jpg special.jpg [P,L] ^Mozilla/5.0.*$ [NC]- {: q% p0 l5 Y0 r$ L+ B/ B
 RewriteRule signature.jpg http://www.advertcn.com/affiliatelink[R,L]6 B- M7 A3 y( N( _/ F
 RewriteCond %{HTTP_REFERER} ^$
 & ~0 p& p/ B  Y% rRewriteRule signature.jpg special.jpg [P,L]' E* |7 v9 ?7 G( C- o
 RewriteCond %{HTTP_USER_AGENT}
 : O- c- c) N. |% I6 V; |) o. d% N简单的解读是,如果是火狐浏览器用户,就发送你的推广链接给他们,植入cookie,他们看不到红叉.3 W7 n& y* s2 J1 J' l; q
 其余IE用户则看到的是真实的图片,不被植入cookie.1 C+ g; E* [0 H. k
 这个方法相对来说简便易行.
 2 b9 ~5 I* p. B结语
 : B7 _$ ^6 F- i2 X关于cookie stuffing的秘密,到此算是讲完了,希望各位有所收获.此外,既然是秘密,如今公开了,就说明是有一定时效性的,故运用时需要自己加以改进.* Q! ~$ x% ~% B. G+ ]6 C4 k" D; @- t
 最后,谢谢大家阅读,我期待着有更多的积极性去写其它的内容.
 | 
 评分
查看全部评分
 |