Ku ngaklik tautan anu dipasang dina VKontakte, anjeun bakal perhatikeun yén, sapertos dina jaringan sosial anu sanés, mimiti aya transisi ka tautan "aman", saatos éta jaringan sosial mutuskeun naha pangguna kedah diidinan salajengna atanapi henteu. Seuseueurna jalma anu ati-ati ningali penampilan satengah detik "vk.com/away.php" dina bar alamat browser, tapi, tangtosna, henteu ngagantelkeun pentingna.
prasajarah
Hiji poé, programmer tangtu, sanggeus réngsé proyék séjén, sadar yén anjeunna obsessed jeung kahayang pikeun ngabejaan dulur ngeunaan eta. Proyék ieu di-host dina server anu gaduh IP unik, tapi tanpa nami domain. Ku alatan éta, subdomain tingkat katilu geulis gancang dijieun dina domain .ddns.net, nu ieu pamustunganana dipaké salaku link.
Balik deui ka postingan saatos sababaraha waktos, programer mendakan yén sanés situs, rintisan VK dibuka, nginpokeun ngeunaan transisi ka situs anu teu aman:
Sigana yén pamaké pinter sorangan boga hak mutuskeun situs mana maranéhna kudu indit jeung nu henteu, tapi VKontakte pikir béda jeung teu nyadiakeun kasempetan pikeun nuturkeun link tanpa crutches.
Aya naon
Palaksanaan ieu ngagaduhan sababaraha kalemahan anu signifikan:
- Henteu mampuh muka situs anu curiga. Sakumaha anu dijelaskeun di luhur, pangguna henteu gaduh cara pikeun ngatasi rintisan. Hiji-hijina jalan pikeun muka tautan nyaéta nyalin sareng nempelkeun kana palang alamat.
- Ngalambatkeun navigasi tautan. Laju alihan gumantung kana ping. Sasuai, ku ping luhur, detik berharga tina kahirupan bisa leungit, nu, sakumaha urang terang, teu bisa ditarima.
- Ngawas transisi. Metoda ieu ngagampangkeun pikeun ngumpulkeun inpormasi ngeunaan tindakan pangguna, anu, tangtosna, anu dianggo ku VK, nambihan tautan aman kana id pos ti mana transisina dilakukeun.
Ngabébaskeun Django
Solusi optimal pikeun sadaya masalah di luhur tiasa janten extension browser. Pikeun alesan anu jelas, pilihanna aya dina Chrome. Aya hiji unggulan dina hub
Pikeun nyiptakeun ekstensi sapertos kitu, urang kedah nyiptakeun dua file dina folder anu misah: json-Manifest sareng file JavaScript pikeun ngawas alamat url ayeuna.
Jieun file Manifest
Hal utama anu urang peryogikeun nyaéta masihan idin ekstensi pikeun damel sareng tab sareng napelkeun naskah anu tiasa dieksekusi:
{
"manifest_version": 2,
"name": "Run Away From vk.com/away",
"version": "1.0",
"background": {
"scripts": ["background.js"]
},
"permissions": ["tabs"],
"browser_action": {
"default_title": "Run Away From vk.com/away"
}
}
Jieun file js
Sadayana saderhana di dieu: dina acara anu disebut nalika tab énggal didamel, kami nambihan cek pikeun alamat url upami dimimitian ku "
chrome.tabs.onCreated.addListener( function (tabId, changeInfo, tab) {
chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
var url = tabs[0].url;
if (url.substr(0,23) == "https://vk.com/away.php"){
var last = url.indexOf("&", 0)
if(last == -1)last = 1000;
var url = decodeURIComponent(url.substr(27, last-27));
chrome.tabs.update({url: url});
}
});
});
Ngumpulkeun extension
Saatos mastikeun yén duanana file aya dina polder anu sami, buka Chrome, pilih tab ekstensi teras klik "Muat ekstensi anu teu dibungkus". Dina jandéla anu muka, pilih polder file anu dipanjangkeun sareng klik Kumpulkeun. Siap! Ayeuna sadaya tautan sapertos vk.com/away diganti ku anu asli.
Gantina kacindekan
Tangtosna, jenis ieu rintisan geus disimpen loba jalma ti jutaan situs curang, kumaha oge, kuring yakin yén jalma sorangan boga hak mutuskeun mun klik link unsafe atanapi henteu.
Pikeun genah, abdi dipasang proyék on
sumber: www.habr.com