既然來騙我了,那就站在技術角度給你分析一波這個詐騙信息。

你好呀,我是歪歪。

事情是這樣的,前段時間有個人加我微信,說有個文案想要找我幫他們推廣一下:

鏈接點進去後,我一看標題是這樣的:

心裏就有數了,知道這個相關的內容肯定是詐騙信息。

整個文案的內容大概是這樣的:

關鍵的點在於文案中他提供的二維碼和 PC 端投遞地址確實是真實的地址:

上面的網頁地址打開後確實是“百聯集團”在 51job 上的校招投遞地址:

包括長按識別二維碼,也是跳轉到這個地址。

那我是怎麼判斷這是一個詐騙信息的呢?

因爲在這之前,我也接到很多過類似的推廣信息,風格都極其類似,都是打着高薪兼職的幌子,然後以知名公司的信息以假亂真。

真到什麼程度呢,就和你上面看到的一樣,整個內容全是真的,連網站都是真的,甚至這個二維碼“有時候”都是真的。

我還記得特別清楚,我第一次接到類似的推廣內容是沃爾瑪的校招。

文案非常的真,或者說就是真的:

校園招聘、招聘崗位、招聘流程,所有的聯繫方式、網站地址都是沃爾瑪官方的,就是正規校園招聘:

第一次遇到這個文案的時候,說真的,我是半信半疑。

信是因爲內容確實看起來沒毛病,信息都是真的。

疑就疑在它太真了,和真的一模一樣,而如果是真的沃爾瑪校園招聘,它還需要我這個小小的號主,用我這點完全可以忽略不計的流量幫它進行校招的推廣嗎?

不可能,絕不可能。

歪師傅這個人,有一個優點就是有較強的自知之明,所以當時我知道這件事情絕對有問題。

至於具體是什麼問題,我也不知道,反正就是心裏覺得有貓膩。

別問,問就是身爲成熟男人這該死的第六感。

所以當時拒絕了這個合作機會。

也嘗試過思考這到底是一個怎麼樣的套路,但是也沒啥思路,就沒管了。

後來隔了一段時間,看到其他號主朋友也遇到了這個文案,有警惕性比較高的粉絲留言說掃描二維碼後跳轉到的是一個客服對話框,類似於這種:

在這個對話框裏面,對方會引導你去下載“兼職”所需的 APP。

在看到這個案例的時候,關於裏面的套路,我突然一下全部都想明白了。

我給你拆解一下這個套路。

套路

首先,某些中介,會拿着文案去找號主,問能不能進行付錢推廣。

一般來說,號主都會檢查文案內容,判斷是否有風險。

前面我也說了,當號主檢查文案的時候,肯定會對文章中的信息進行甄別判斷。

拿着文案中的鏈接打開,發現確實是官方鏈接,掃描二維碼也進的是和官方鏈接一樣的官方網站。

這個時候一般就會認爲這個二維碼背後對應的就是官方鏈接,只不過是以二維碼的形式展示,方便掃碼。

而且文案裏面的公司都是知名大公司,比如沃爾瑪、餓了麼、美團、淘寶、小紅書什麼的。

有的號主,爲了防止是高仿網站,甚至掃碼之後還模擬了一遍簡歷投遞的過程:

檢查沒問題後,談好合作細節,號主就會按照約定時間進行文案的推廣。

而且在號主點擊“發佈文章”之前,甚至是發文後去檢查二維碼,都還是跳轉官網。

但是,會在某個時間,通常是發文後十分鐘左右,掃描二維碼突然就變成“客服對話框”,然後開始詐騙套路。

比如讓你回答幾個非常簡單的問題,或者說下載一個 APP,然後把截圖發給他們。

他們就會讓你發收款碼,然後給你發個幾塊錢。

歪師傅親測“百聯”的文案,第一個任務是回答這幾個問題:

回答完成就給 3.5 元,我本來想着有 3.5 元的收入也是不錯的。但是當我把收款碼發過去之後,對方並沒有給我錢,可能是號主發現了文案有問題,進行了刪除,對方也檢測到了,所以不再繼續溝通。

按理來說,流程應該是對方給我打 3.5 元,然後說:你需要下載某某 APP,在 APP 裏面領任務。

而這個 APP 需要使用他們發過來的鏈接才能下載到,下載下來的 APP 名稱,可能就叫“沃爾瑪”,“百聯”,“亞馬遜”什麼的,只不過是山寨的。

如果下載了 APP,這就算是第一個階段完成。

接着會引導你在 APP 裏面接單,前幾個任務,會給你分配個幾塊錢的,完成後就會把錢給你打到支付寶。

讓用戶嚐到點小甜頭,這算是第二個階段。

然後,會再次引導你進入一個類似於“專屬羣”、“接單羣”、“任務羣”、“搶單羣”這樣的羣,羣裏面有大幾百人,羣消息時時刻刻都在刷新,大家聊得不亦樂乎。

時不時的有人說搶到了大單子,收到了大額的任務金,並且把對應的支付寶、微信或者銀行流水截圖發羣裏。

這個時候就會有一個客服人員出來說類似於這樣的話:我馬上要發佈另外一個任務了,必須在發佈之後 2 分鐘完成搶單,並支付 xxx 元才能獲得對應的獎金 xxx 元。

2 分鐘,就是給你營造一種時間短,要立刻搶,立刻完成任務的錯覺。羣裏也在不停的烘托效果。

如果你去搶了,那麼就算是上鉤了。慢慢的,後面的任務的獎金可能是成千上萬元,但是你需要先支付一筆。

也許前幾次你都能拿到幾塊錢的獎金,但是到後面,比如需要你先支付 2000 元,才能拿到 2500 元的獎勵。

當你把 2000 元支付出去,對方會告訴你說:怎麼回事,沒收到啊?

你說:不可能啊,前面都是這樣操作的,一直是對的呢?

對方說:對呀,一直都是對的呢,爲什麼這次不對呢?你看我這邊確實沒有。時不時銀行那邊出問題了,延遲了呀?任務馬上就要截至了,要不你再轉一次,免得錯過這個任務?

你說:但是我明明已經給過錢了呀?

對方說:應該是銀行那邊的問題,你再轉一次吧,之前轉錯的那筆錢肯定會退給你的。

然後,你開始操作第二次轉賬。

然而,對方說還是沒收到...

就這樣拉扯幾個來回,你的錢就出去了,少則幾千塊,多則幾十萬。

再然後,就沒有然後了。

對方下線了,羣裏也安靜了,你開始回過味來了。

你甚至以爲剛剛發生的一切是幻覺,是一場夢。

但是,銀行卡餘額告訴你,都是真的,都已經來不及了。

所以,牢記一句話:

凡是下載APP,接任務刷單的,皆是詐騙。

就這個套路,你說它手段低吧,確實是有一點點水平在的,畢竟能騙到一部分公衆號給他進行推廣。

你說它手段高吧,最終的詐騙形式還是誘導下載 APP ,接單返利這個老套路。

背後的技術

作爲一個技術博主,我也還是簡單的解析一下這個詐騙裏面的一點點技術的東西。

前面說了,因爲站在號主的視野中,整個文案沒有任何問題,招聘信息、聯繫方式都是真的,掃描二維碼也跳轉的是官網,這足以讓一部分人放下防備。

你猜也能猜到了,除了它誇張的標題外,文案中的二維碼是唯獨有問題的地方。

有的上當的號主在回顧這個事件時候提到了這樣的一句話:

同一個二維碼兩個人掃描的結果居然會不一樣,又不是動態碼,這你敢信?

一個靜態的二維碼,不同的人掃描的結果是不一樣的,從技術的角度講,這並不是什麼神奇的事情。

也許是套了一個二維碼的殼,讓你覺得高深莫測,我給你換個說法,你就覺得沒那麼神奇了:一個短鏈接,不同的時間去點,跳轉的頁面是不一樣的。

首先,一個靜態的二維碼一定是對應一個固定的鏈接,這是由二維碼的底層邏輯所決定的。

但是這個所謂的“固定的鏈接”,只是一個入口而已。

既然是個入口,那可以做的文章可就多了去了。

在這個詐騙裏面,利用到的原理其實和“短鏈接”的原理是一樣的。

首先,我們看一下關於“短鏈接”正常的場景。

剛好我前幾天收到了這樣的一個短信:

其中就有一個短鏈接,把短鏈拿出來訪問一下,是這樣的:

短鏈最終會跳轉到這個地址:

這裏也額外插一句:短信裏面爲什麼要用短鏈呢,放原鏈接可不可以呢?

可以,但是沒必要。

一個是因爲對客體驗不好,另一個更大的原因是要控制成本。

歪師傅剛好對短信平臺有比較深入的瞭解,所以我知道短信的計費不是按照你發多少條這個維度類進行計費的,而是按照一條短信的具體長度進行計費的。

比如某平臺的計費規則就是這樣的:

所以,短信內容越長,成本就越高,而且是成倍數的高。

短信內容使用短鏈,長度短,短信發送的成本就整體下來了。

好,現在我們回到這個“短鏈”上來。

短鏈跳轉的底層邏輯相信大家也都有所耳聞,核心原理就是利用了“重定向”。

大概就是這麼一回事:

這一點我們也可以利用開發者工具進行驗證:

訪問短鏈的響應嗎是 302,響應裏面給了個“Location”,對應要跳轉的鏈接。

那麼八股文就隨之而來了:HTTP 狀態碼 301 和 302 的區別是什麼呢?

  • 301 Moved Permanently:指頁面永久性轉移,表示爲資源或頁面永久性地轉移到了另一個位置。301是HTTP協議中的一種狀態碼,當用戶或搜索引擎向服務器發出瀏覽請求時,服務器返回的 HTTP 數據流中頭信息(header)中包含狀態碼 301 ,表示該資源已經永久改變了位置。
  • 302 Found:指頁面暫時性轉移,表示資源或頁面暫時轉移到另一個位置。由於這樣的重定向是臨時的,客戶端應當繼續向原有地址發送以後的請求。只有在 Cache-Control 或 Expires 中進行了指定的情況下,這個響應纔是可緩存的。

按照上面的說法,其實我們直接使用 301 響應碼是沒有任何毛病的,甚至由於是永久性轉移,在緩存的作用下,響應還更快一點。

那這裏爲什麼要用 302 呢,或者說爲什麼市面上能看到的短鏈跳轉響應碼都是 302 呢?

因爲它們要做“數據分析”這個事情:

數據分析,是除了解決成本問題外,短鏈另一個核心功能,也是核心賣點。

因爲 302 還是會請求到原地址去,所以除了獲取短鏈對應的原鏈接外,還可以在短鏈服務器這裏做很多數據收集的動作,從而支撐運營人員進行數據分析:

短鏈大家日常接觸的也應該比較多,至少對它有個大概的認知,我就不贅述了。

然後,給大家上個示例代碼,你粘過去就能用:

@Slf4j
@RestController
public class TestController {

    /**
     * 基於短鏈接參數重定向
     */
    @GetMapping("/{shortKey}")
    public RedirectView redirect(@PathVariable("shortKey") String shortKey) {
        if ("123why".equals(shortKey)) {
            //官方活動頁面(正常邏輯是程序在數據庫中維護了一份shortKey和原鏈接的映射關係表)
            return new RedirectView("https://activity.juejin.cn/rank/2023?utm_campaign=annual_2023&utm_medium=sms&utm_source=yybm1");
        }
        return new RedirectView("/notFound");
    }

    @GetMapping("/notFound")
    public String notFound() {
        return "沒有找到對應頁面";
    }
}

把服務在 8085 端口啓動起來,然後訪問鏈接:

http://127.0.0.1:8085/123why

可以看到這樣的效果:

通過開發者工具,我們也能找到 302 的存在:

這樣就算是完成了一個短鏈跳轉到原鏈接的動作。

在跳轉之前,我們還可以做一點統計信息相關的事情:

比如,我這裏獲取一下訪問的瀏覽器和操作系統類型。發起調用之後,觀察控制檯輸出:

是不是就能做出類似於這樣的統計信息:

那麼怎麼實現前面詐騙中的效果呢:一個靜態二維碼,即一個短鏈,不同的時間去點,跳轉的頁面是不一樣的?

跳轉的頁面其實是你程序控制的,無非在跳轉之前加上“滿足某某條件之後,跳轉指定鏈接”。

比如這樣:

第一次訪問的時候,跳轉到官方活動主頁,第二次掃描跳轉到歪師傅的個人拉票頁面。之後再掃描,就是詐騙信息。

上個效果圖,你可以看到我對同一個二維碼掃碼三次,三次跳轉的頁面內容都不一樣:

這個效果不就類似於前面的詐騙文案,二維碼沒有發生任何變化,但是某個時間之前掃碼,跳轉到官方鏈接,之後就跳轉到客服對話嗎?

另外,我在使用草料二維碼進行二維碼轉換的時候,發現這個玩意還有個學名,叫做“活碼”:

原本把短鏈轉化成靜態二維碼之後就叫做“活碼”了,可以,又學習到一個新名詞。

活碼,就是詐騙套路背後的技術手段之一。

這個東西的出現,確實是方便運營人員進行數據分析,但是同時它也可以去做一些灰產的業務。

那句話是怎麼說的?

技術本無罪,有罪的是人。

另外,也表揚一下微信。前面提到的以“百聯”爲幌子的詐騙信息,我第二天再次去掃描二維碼的時候,發現已經被微信官方攔截了,防止更多的人被騙:

最後,再囉嗦一句。

你看我代碼的這個部分:

維護一份shortKey和原鏈接的映射關係表

這是一句簡簡單單的話,但是裏面的學問可就多了去了。

比如原鏈接的長度是這麼長:

https://activity.juejin.cn/rank/2023/writer/3702810893364350?utm_campaign=annual_2023&utm_medium=self_web_share&utm_source=why%E6%8A%80%E6%9C%AF

我怎麼才能壓縮到和“123why”對應起來呢?

這裏面就涉及到各種各樣的壓縮算法了。

關於“短鏈的設計”據說現在偶現於面試的場景設計題中,好在網上關於短鏈系統的設計的文章已經非常多了,如果你不知道其中細節的話,可以去搜搜,學習一下,有備無患。

最後,提高警惕,謹防詐騙。

牢記以下警方提示:

拉票

明人不說暗話,這一部分我想來拉個票。

主要還是爲了滿足自己的那點虛榮心,也爲了方便以後裝逼。

從今天到 29 號 18 點之前,每人每天可以在 web 端投兩票:

如果你願意給我投票的話,你可以長按掃碼:

然後登錄,就可以雙擊投票了。

或者直接把這個鏈接複製到瀏覽器中:

https://activity.juejin.cn/rank/2023/writer/3702810893364350?utm_campaign=annual_2023&utm_medium=self_web_share&utm_source=why%E6%8A%80%E6%9C%AF

放心,這肯定不是詐騙鏈接。

我常常說寫文章是非常需要正反饋的,這就是體現正反饋最好的時候了,如果我的文章曾經對你有一絲絲幫助,麻煩花 30 秒時間投我兩票,滿足我這該死的虛榮心。

抱拳了,老鐵。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章