web網頁劫持是如何做到的

2022-08-27 05:57:13 字數 1566 閱讀 5556

按照劫持的方法不同,我將劫持分為下面兩類:

為了區分哪些是第三方給予導流過來的,通常會在url位址增加類似source、from之類的引數,或者進入頁面之前通過「中間頁」種cookie。

這樣,當使用者輸入乙個正常**的時候,劫持方會在網路層讓其跳轉到帶分成或者渠道號的「中間頁」或者帶渠道號的頁面。這樣使用者進行下單或者搜尋等行為,劫持方會得到「佣金」。

頁面在傳輸的過程中,被網路層進行內容「再加工」,常見有:注入js、iframe、篡改頁面。

注入js

注入js的方式可以通過document.write或者直接改html**片段等方式,給頁面增加外鏈js,為了做到更難檢測,有些運營商會捏造乙個不存在的url位址,從而不被過濾或者檢測。

被放入iframe或者iframe其他頁面

篡改頁面內容

這類case很少見,一般是在頁面底部增加js之外的div,然後展現一些非**內容。

改寫document.write方法

遍歷頁面script標籤,給外鏈js增加白名單,不在白名單內js外鏈都上報12

3456

78910

11functiongetparenturl()catch(e)

}returnurl;

}script核心心**如下:12

3456

78910

1112

1314

1516

1718

1920

2122

2324

2526

2728

2930

3132

3334

3536

3738

3940

41functionhijacksniffer()

if(arr.length)

arr=getparenturl();

if(arr&&arr.length)

if(d.documentelement.outerhtml.length>4e3);

varheadjs=$.toarray(d.head.queryselectorall('script'));

varunknowncode=;

if(headjs.length)).filter(function(v)));

}varbody=$.toarray(d.body.queryselectorall('*'));

if(body.length>1)).filter(function(str)

returntrue;

}));

}returnsendimg(unknowncode,3);

}sendimg(,0);

}這樣做除了可以檢測到多餘的js外鏈,還可以檢測出來篡改頁面內容等case。除了檢測網域名稱劫持之外,在使用者輸入query的時刻訪問空白的頁面也可以提前完成dns解析,另外還可以做劫持防禦,所謂「一石三鳥」!

最簡單粗暴的就是直接上https,一勞永逸。再就是取證,去打官司或者警告渠道作弊者。除此之外,我們還可以繼續利用空白頁面做劫持檢測。

MySQL是如何做到安全登陸

首先mysql的密碼許可權儲存在mysql.user表中。我們不關注鑑權的部分,我們只關心身份認證,識別身份,後面的許可權控制是很簡單的事情。在mysql.user表中有個authentication string欄位,儲存的是密碼的兩次sha1值。你可以用下面的語句,驗證和mysql.user表中...

我是如何做到ajax跨域的

公司臨時安排乙個功能 雙十一搶購優惠券的功能。由於頁面和後台處理不在同乙個專案中,需要跨域。前台js function gethb else elseif parseint h 15 else function callback data elseif 2 data elseif 1 data 後端...

我是如何做到早睡早起的

不管白天黑夜,停止攝入咖啡因 咖啡和茶等等 1.個人感覺,咖啡因雖讓人感覺只有提神一兩個小時,但是晚上睡眠質量不好和入睡困難都是由他導致 2.停止咖啡因之後會有一段時間精神萎靡 頭痛,請安排好這一段時間的工作和生活 大概7天左右 效果 每天醒過來,不再伴有頭痛,心情抑鬱等症狀,可以明顯感覺到頭腦清晰...