none
如何阻擋外站轉址? RRS feed

  • 問題

  • 有一頁面 ( 假設為 a.aspx ) 必須是從自己站內 Redirect 過來的,

    目前已使用「Request.UrlReferrer Is Nothing 」來判斷該網頁是被直接執行,或是 Redirect 過來的。

    但是經過測試發現,如果是別的網站中有這麼一行:

    Response.Redirect("http://myWebSite/a.aspx") 」的話,

    轉到本站後「Request.UrlReferrer 」依然會有執行個體存在。

    後來我想到用「Request.UrlReferrer.Host = "myWebSite" 」進行判斷是不是站內的Redirect 。

     

    但不知道這樣判斷會不會有問題,或是說有沒有更好的方式做判斷?

     

     

    謝謝~

     

     

     

    2008年5月22日 下午 04:26

解答

  • HI,

     

    這樣的做法基本上是OK的

     

    tihs

    2008年5月23日 上午 12:36
  • 會。

    但看你的目標,若是一般性的問題,這樣就夠用了。

     

    若是你的目標是阻擋張貼廣告文的自動程式,沒用,廣告程式會假造推薦網址,也會先瀏覽讓你的網頁產生 Session 後,再 POST ,比如說:

    Code Snippet
    2008-05-23 00:39:42 W3SVC1 GET /tlcheng/Basic/vbcolor.htm - - 202.160.180.19 HTTP/1.0 Mozilla/5.0+(compatible;+Yahoo!+Slurp+China;+http://misc.yahoo.com.cn/help.html) - - tlcheng.twbbs.org 200 0 0 4490 206 359
    2008-05-23 00:39:42 W3SVC1 GET /News/Post.aspx Newsgroup=tw.bbs.comp.lang.basic&Action=Post - 92.48.65.27 HTTP/1.0 Mozilla/1.22+(compatible;+MSIE+2.0;+Windows+95) - http://tlcheng.twbbs.org/News/Post.aspx?Newsgroup=tw.bbs.comp.lang.basic&Action=Post tlcheng.twbbs.org 200 0 64 6451 311 828
    2008-05-23 00:39:43 W3SVC1 POST /News/Post.aspx Action=Post&NewsGroup=tw.bbs.comp.lang.basic - 92.48.65.27 HTTP/1.0 Mozilla/1.22+(compatible;+MSIE+2.0;+Windows+95) - http://tlcheng.twbbs.org/News/Post.aspx?Newsgroup=tw.bbs.comp.lang.basic&Action=Post tlcheng.twbbs.org 302 0 64 0 694 375
    2008-05-23 00:39:43 W3SVC1 GET /News/Post.aspx Newsgroup=tw.bbs.comp.language&Action=Reply&MessageId=4RV5iH%24IWu%40bbs.ccns.ncku.edu.tw - 66.249.73.83 HTTP/1.1 Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html) - - tlcheng.twbbs.org 200 0 0 5846 335 484

     

     

    這是隨便從我網站上截出今天的一段 log ,前後黑色兩筆無意義,只是讓你看到前後兩筆的 IP 跟廣告程式 IP 無關。

     

    綠色為廣告程式假照的推薦來源,也就是你現在的判斷方式的依據,藍色的為廣告程式先用 Get 來取得 Session ,紅色的為 POST 貼出廣告。

     

    所以只用推薦網址、Session 是擋不掉廣告程式,一般是用會員帳號系統、圖片辨識碼來阻攔廣告程式。

     

    我的網站用比較特別的方法處理,來接收一般無帳號的使用者能張貼文章,不過這種東西不能說,說了就是給廣告商找方法破解,有法故有破,任何的保護技術都要保密。

    2008年5月23日 上午 07:26
    版主
  • 這兩篇是我先前沒擋廣告之前,不爽的抱怨:

    廣告無差別攻擊 http://tlcheng.spaces.live.com/blog/cns!145419920BFD55A7!667.entry

    防堵廣告文章小作戰 http://tlcheng.spaces.live.com/Blog/cns!145419920BFD55A7!1432.entry

     

    上面第二篇有寫道:

    Code Snippet

    我是懷疑這些廣告機器人的開發者可能包含台灣本地人,所以現在不打算說明如何過濾廣告。因為有法故有破,說明過濾方式後,只是加速廣告商破解的速度。

     

     

    當時我改版時,有發現一些企圖測試破解的瀏覽記錄中,有些是台灣本地的 IP ,但不確定是不是就是有問題的人,只是說那些測試網址絕對不是聯結產生,可能是手打或程式自動轟炸的,所以我是認為有台灣這邊也有不少人士在開發廣告程式。

     

    其實現在也不用猜了,現在常在學網常常可以看到有廣告貼說代發廣告,所以有這種人是一定有的。

    2008年5月23日 上午 07:39
    版主

所有回覆

  • HI,

     

    這樣的做法基本上是OK的

     

    tihs

    2008年5月23日 上午 12:36
  • 喔~ 謝謝唷~~

    2008年5月23日 上午 01:22
  • 會。

    但看你的目標,若是一般性的問題,這樣就夠用了。

     

    若是你的目標是阻擋張貼廣告文的自動程式,沒用,廣告程式會假造推薦網址,也會先瀏覽讓你的網頁產生 Session 後,再 POST ,比如說:

    Code Snippet
    2008-05-23 00:39:42 W3SVC1 GET /tlcheng/Basic/vbcolor.htm - - 202.160.180.19 HTTP/1.0 Mozilla/5.0+(compatible;+Yahoo!+Slurp+China;+http://misc.yahoo.com.cn/help.html) - - tlcheng.twbbs.org 200 0 0 4490 206 359
    2008-05-23 00:39:42 W3SVC1 GET /News/Post.aspx Newsgroup=tw.bbs.comp.lang.basic&Action=Post - 92.48.65.27 HTTP/1.0 Mozilla/1.22+(compatible;+MSIE+2.0;+Windows+95) - http://tlcheng.twbbs.org/News/Post.aspx?Newsgroup=tw.bbs.comp.lang.basic&Action=Post tlcheng.twbbs.org 200 0 64 6451 311 828
    2008-05-23 00:39:43 W3SVC1 POST /News/Post.aspx Action=Post&NewsGroup=tw.bbs.comp.lang.basic - 92.48.65.27 HTTP/1.0 Mozilla/1.22+(compatible;+MSIE+2.0;+Windows+95) - http://tlcheng.twbbs.org/News/Post.aspx?Newsgroup=tw.bbs.comp.lang.basic&Action=Post tlcheng.twbbs.org 302 0 64 0 694 375
    2008-05-23 00:39:43 W3SVC1 GET /News/Post.aspx Newsgroup=tw.bbs.comp.language&Action=Reply&MessageId=4RV5iH%24IWu%40bbs.ccns.ncku.edu.tw - 66.249.73.83 HTTP/1.1 Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html) - - tlcheng.twbbs.org 200 0 0 5846 335 484

     

     

    這是隨便從我網站上截出今天的一段 log ,前後黑色兩筆無意義,只是讓你看到前後兩筆的 IP 跟廣告程式 IP 無關。

     

    綠色為廣告程式假照的推薦來源,也就是你現在的判斷方式的依據,藍色的為廣告程式先用 Get 來取得 Session ,紅色的為 POST 貼出廣告。

     

    所以只用推薦網址、Session 是擋不掉廣告程式,一般是用會員帳號系統、圖片辨識碼來阻攔廣告程式。

     

    我的網站用比較特別的方法處理,來接收一般無帳號的使用者能張貼文章,不過這種東西不能說,說了就是給廣告商找方法破解,有法故有破,任何的保護技術都要保密。

    2008年5月23日 上午 07:26
    版主
  • 對了,綠色的文字你可以點下去玩看看,會導向阻擋畫面。

     

    2008年5月23日 上午 07:28
    版主
  • 這兩篇是我先前沒擋廣告之前,不爽的抱怨:

    廣告無差別攻擊 http://tlcheng.spaces.live.com/blog/cns!145419920BFD55A7!667.entry

    防堵廣告文章小作戰 http://tlcheng.spaces.live.com/Blog/cns!145419920BFD55A7!1432.entry

     

    上面第二篇有寫道:

    Code Snippet

    我是懷疑這些廣告機器人的開發者可能包含台灣本地人,所以現在不打算說明如何過濾廣告。因為有法故有破,說明過濾方式後,只是加速廣告商破解的速度。

     

     

    當時我改版時,有發現一些企圖測試破解的瀏覽記錄中,有些是台灣本地的 IP ,但不確定是不是就是有問題的人,只是說那些測試網址絕對不是聯結產生,可能是手打或程式自動轟炸的,所以我是認為有台灣這邊也有不少人士在開發廣告程式。

     

    其實現在也不用猜了,現在常在學網常常可以看到有廣告貼說代發廣告,所以有這種人是一定有的。

    2008年5月23日 上午 07:39
    版主
  • 對了,另外比較著名的砍站程式通常也都支援 Session / 推薦網址 / 瀏覽軟體 假造技術,若是你的網站是類似圖片網站這類,只用推薦網址是不夠用的。

     

    瀏覽軟體是指 

    Mozilla/1.22+(compatible;+MSIE+2.0;+Windows+95)

     

    這一串,本站也有討論到 .Net 程式如何變更字串以取得特定網站的資訊,所以這類資訊僅能參考用,不能做為攔截的終極方式。
    2008年5月23日 上午 07:47
    版主
  • 大概有些概念了~

    但小站因為是會員制的,因此可能暫時不需比較複雜的做法

    不過還是很謝謝璉大提供的資訊,未來應該會有用。  感謝唷 ^^

     

     

     

    2008年5月24日 上午 11:21
  • 或許可以從登入機制上做過濾
    未正常登入者
    不給貼文

    還有發文頻率過短者
    亦可視為機器人

    或是貼文時
    用關鍵字過濾 (關鍵字的黑名單)

    ...等
    2008年5月26日 上午 11:39