本發(fā)明屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種在路由器上防止網(wǎng)頁(yè)劫持的方法。
背景技術(shù):
HTTP請(qǐng)求在網(wǎng)絡(luò)中進(jìn)行明文傳輸,傳輸過(guò)程中常常會(huì)被網(wǎng)絡(luò)節(jié)點(diǎn)中的路由設(shè)備進(jìn)行連接并修改,以實(shí)現(xiàn)廣告插入和將請(qǐng)求導(dǎo)流到釣魚(yú)網(wǎng)站。當(dāng)網(wǎng)站同時(shí)存在HTTP和HTTPS的服務(wù)時(shí),如果用戶(hù)直接在瀏覽器中輸入域名進(jìn)行訪(fǎng)問(wèn)時(shí),第一個(gè)請(qǐng)求仍然是HTTP的,存在被攔截修改的風(fēng)險(xiǎn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于:針對(duì)傳統(tǒng)路由器對(duì)用戶(hù)瀏覽器發(fā)起HTTP請(qǐng)求容易被上級(jí)網(wǎng)絡(luò)設(shè)備劫持和篡改的問(wèn)題,提出一種在路由器上防止網(wǎng)頁(yè)劫持的方法。
本發(fā)明采用的技術(shù)方案如下:
一種在路由器上防止網(wǎng)頁(yè)劫持的方法,包括以下步驟:
a.用戶(hù)瀏覽器發(fā)起HTTP訪(fǎng)問(wèn)請(qǐng)求至防劫持路由器;
b.防劫持路由器對(duì)HTTP訪(fǎng)問(wèn)請(qǐng)求的資源進(jìn)行驗(yàn)證,如資源可通過(guò)HTTPS進(jìn)行訪(fǎng)問(wèn)進(jìn)行下一步;如不能通過(guò)HTTPS方式訪(fǎng)問(wèn),則直接通過(guò)HTTP請(qǐng)求訪(fǎng)問(wèn);
c.防劫持路由器返回301,將HTTP請(qǐng)求重新定位為HTTPS請(qǐng)求,發(fā)送至上級(jí)網(wǎng)絡(luò)設(shè)備;
d.上級(jí)網(wǎng)絡(luò)設(shè)備將訪(fǎng)問(wèn)到的網(wǎng)絡(luò)資源通過(guò)防劫持路由器傳送至用戶(hù)。
進(jìn)一步的,所述防劫持路由器驗(yàn)證方式為:通過(guò)防劫持路由器中本地存儲(chǔ)的HTTPS-HTTP映射對(duì)進(jìn)行驗(yàn)證。
進(jìn)一步的,所述本地存儲(chǔ)的HTTPS-HTTP映射對(duì)通過(guò)云端服務(wù)器存儲(chǔ)的HTTPS-HTTP映射對(duì)更新,更新后本地存儲(chǔ)的HTTPS-HTTP映射對(duì)持久化到本地properties配置文件中,以HASH表的方式存儲(chǔ)于防劫持路由的內(nèi)存中。
進(jìn)一步的,所述本體本地存儲(chǔ)HTTPS-HTTP映射對(duì)通過(guò)云端服務(wù)器提供的同步HTTPS-HTTP映射對(duì)的WEB API接口進(jìn)行更新。
進(jìn)一步的,所述本地存儲(chǔ)的HTTPS-HTTP映射對(duì)還通過(guò)防劫持路由器進(jìn)行維護(hù),當(dāng)HTTPS-HTTP映射對(duì)中HTTPS連接失敗超過(guò)設(shè)定次數(shù)閾值時(shí),在本地內(nèi)存HASH表和持久化properties配置文件中刪除此映射對(duì),并通過(guò)HTTPS無(wú)效告警的WEB API接口上報(bào)至云端服務(wù)器;云端服務(wù)器收到無(wú)效告警后依據(jù)設(shè)定周期對(duì)HTTPS連接進(jìn)行訪(fǎng)問(wèn),當(dāng)訪(fǎng)問(wèn)時(shí)段超過(guò)設(shè)定時(shí)長(zhǎng)閾值時(shí),HTTPS鏈接仍然失效,則將其在云端服務(wù)器存儲(chǔ)的HTTPS-HTTP映射對(duì)中刪除。
進(jìn)一步的,所述云端服務(wù)器HTTPS-HTTP映射對(duì)通過(guò)以下步驟進(jìn)行添加:
a.防劫持路由其對(duì)設(shè)定時(shí)間段內(nèi)未存在HTTPS-HTTP映射對(duì)的HTTP鏈接訪(fǎng)問(wèn)次數(shù)進(jìn)行統(tǒng)計(jì);
b.防劫持路由器依據(jù)訪(fǎng)問(wèn)次數(shù)由高到低選取設(shè)定數(shù)量的HTTP鏈接通過(guò)云端服務(wù)器提供的未映射HTTPS的HTTP鏈接的WEB API接口上傳至云端服務(wù)器;
c.云端服務(wù)器對(duì)上報(bào)的HTTP鏈接進(jìn)行分析,對(duì)存在對(duì)于HTTPS映射的HTTP鏈接經(jīng)人工審核后新增入云端服務(wù)器HTTPS-HTTP映射對(duì)。
綜上所述,由于采用了上述技術(shù)方案,本發(fā)明的有益效果是:
本發(fā)明可以降低網(wǎng)頁(yè)瀏覽內(nèi)容在中間網(wǎng)絡(luò)被劫持或篡改的風(fēng)險(xiǎn),防止用戶(hù)受到第三方廣告和釣魚(yú)網(wǎng)站的傷害。
通過(guò)多種方式對(duì)HTTPS-HTTP映射對(duì)進(jìn)行維護(hù)和更新,保證了HTTPS-HTTP映射對(duì)的有效性,提高了用戶(hù)的驗(yàn)證正確率和驗(yàn)證速度,進(jìn)一步保證了用戶(hù)網(wǎng)頁(yè)瀏覽的安全性。
附圖說(shuō)明
圖1為本發(fā)明原理圖。
具體實(shí)施方式
下面結(jié)合試驗(yàn)例及具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。但不應(yīng)將此理解為本發(fā)明上述主題的范圍僅限于以下的實(shí)施例,凡基于本發(fā)明內(nèi)容所實(shí)現(xiàn)的技術(shù)均屬于本發(fā)明的范圍。
一種在路由器上防止網(wǎng)頁(yè)劫持的方法,包括以下步驟:
a.用戶(hù)瀏覽器發(fā)起HTTP訪(fǎng)問(wèn)請(qǐng)求至防劫持路由器;如用戶(hù)通過(guò)瀏覽器輸入www.xxx.com進(jìn)行訪(fǎng)問(wèn),即進(jìn)行http://www.xxx.com訪(fǎng)問(wèn);
b.防劫持路由器對(duì)http://www.xxx.com的資源進(jìn)行驗(yàn)證,通過(guò)防劫持路由器中本地存儲(chǔ)的HTTPS-HTTP映射對(duì)進(jìn)行檢測(cè),如發(fā)現(xiàn)https://www.xxx.com,可用則進(jìn)行下一步;如不能通過(guò)HTTPS方式訪(fǎng)問(wèn),則直接通過(guò)http://www.xxx.com訪(fǎng)問(wèn);
c.防劫持路由器返回301,將HTTP請(qǐng)求重新定位為https://www.xxx.com,發(fā)送至上級(jí)網(wǎng)絡(luò)設(shè)備;
d.上級(jí)網(wǎng)絡(luò)設(shè)備將訪(fǎng)問(wèn)到的網(wǎng)絡(luò)資源通過(guò)防劫持路由器傳送至用戶(hù)。
進(jìn)一步的,所述防劫持路由器驗(yàn)證方式為:通過(guò)防劫持路由器中本地存儲(chǔ)的HTTPS-HTTP映射對(duì)進(jìn)行驗(yàn)證。
進(jìn)一步的,所述本地存儲(chǔ)的HTTPS-HTTP映射對(duì)通過(guò)云端服務(wù)器存儲(chǔ)的HTTPS-HTTP映射對(duì)更新,更新后本地存儲(chǔ)的HTTPS-HTTP映射對(duì)持久化到本地properties配置文件中,以HASH表的方式存儲(chǔ)于防劫持路由的內(nèi)存中。
進(jìn)一步的,所述本體本地存儲(chǔ)HTTPS-HTTP映射對(duì)通過(guò)云端服務(wù)器提供的同步HTTPS-HTTP映射對(duì)的WEB API接口進(jìn)行更新。
進(jìn)一步的,所述本地存儲(chǔ)的HTTPS-HTTP映射對(duì)還通過(guò)防劫持路由器進(jìn)行維護(hù),當(dāng)HTTPS-HTTP映射對(duì)中HTTPS連接失敗超過(guò)三次時(shí),在本地內(nèi)存HASH表和持久化properties配置文件中刪除此映射對(duì),并通過(guò)HTTPS無(wú)效告警的WEB API接口上報(bào)至云端服務(wù)器;云端服務(wù)器收到無(wú)效告警后每小時(shí)對(duì)HTTPS連接進(jìn)行訪(fǎng)問(wèn),當(dāng)訪(fǎng)問(wèn)超過(guò)七天,HTTPS仍然失效,則將其在云端服務(wù)器存儲(chǔ)的HTTPS-HTTP映射對(duì)中刪除。
進(jìn)一步的,所述云端服務(wù)器HTTPS-HTTP映射對(duì)通過(guò)以下步驟進(jìn)行添加:
a.防劫持路由每小時(shí)對(duì)未存在HTTPS-HTTP映射對(duì)的HTTP鏈接訪(fǎng)問(wèn)次數(shù)進(jìn)行統(tǒng)計(jì);
b.防劫持路由器依據(jù)訪(fǎng)問(wèn)次數(shù)由高到低選取20個(gè)相應(yīng)的HTTP鏈接通過(guò)云端服務(wù)器提供的未映射HTTPS的HTTP鏈接的WEB API接口上傳至云端服務(wù)器;
c.云端服務(wù)器對(duì)上報(bào)的HTTP鏈接進(jìn)行分析,對(duì)存在對(duì)于HTTPS映射的HTTP鏈接經(jīng)人工審核后新增入云端服務(wù)器HTTPS-HTTP映射對(duì)。