JĂ€lgides linke, mis on postitatud Vkontakte, vĂ”ib mĂ€rgata, et nagu ka teistes sotsiaalmeedia platvormides, suundub kĂŒlastaja esmalt "turvalisele" lingile, seejĂ€rel otsustab sotsiaalmeedia, kas lasta kasutaja edasi vĂ”i mitte. Enamik tĂ€helepanelikke inimesi on mĂ€rganud poole sekundi pikkust "vk.com/away.php" ilmumist brauseri aadressiribal, kuid loomulikult ei ole nad sellele suurt tĂ€helepanu pööranud.

Eellugu
Ăhel pĂ€eval, pĂ€rast jĂ€rjekordse projekti lĂ”petamist, mĂ”istis ĂŒks programmeerija, et tal on tungavalt soov sellest kĂ”igile rÀÀkida. Projekt oli hostitud serveris unikaalse IP-ga, kuid ilma domeeninimega. SeetĂ”ttu loodi kiirelt ilus kolmandat taset alamdomeen .ddns.net domeenis, mida lĂ”puks kasutati lingina.Â
MÔni aeg hiljem postitusele tagasi minnes avastas programmeerija, et saidi asemel avaneb Vkontakte-saber, mis teavitab, et suundutakse ebaturvalisele veebisaidile:

TÔepoolest, arukad kasutajad peaksid ise saama otsustada, millistele veebisaitidele nad suunduvad ja millistele mitte, kuid Vkontakte mÔtleb teisiti ja ei paku mingit vÔimalust linki avada ilma kÔrvalmeetmeteta.
Mis on valesti
Sellel lahendusel on mitu tÔsist puudust:
- Puudub vĂ”imalus avada kahtlane veebisait. Kuidas eelnevalt mainitud, ei ole kasutajal vĂ”imalik ĂŒletada takistust. Ainus vĂ”imalus lingi avamiseks on see kopeerida ja kanda brauseri aadressiriba.
- Aeglustab lingile suundumise protsessi. Suundumise kiirus sÔltub pingest. Seega, kui ping on suur, vÔivad kaduda kallid sekundid elust, mis, nagu me teame, ei ole vastuvÔetav.
- Lingipöörde jÀlgimine. See meetod lihtsustab teabe kogumist kasutajate tegevuse kohta, mida loomulikult kasutab Vkontakte, lisades turvalisele lingile postituse ID, millelt suundumine toimus.
Vabastage Django
KĂ”ikide ĂŒlalmainitud probleemide optimaalseks lahenduseks vĂ”iks olla brauserilaiendus. Ilmselgetel pĂ”hjustel langeb valik Chrome'i kasuks. HabrĂ© on suurepĂ€rane artikkel, mis kĂ€sitleb laiendite loomist Chrome'ile.
Selle laiendi loomiseks peame looma eraldi kausta kaks faili: json-manifesti ja JavaScripti faili, et jÀlgida hetkel aktiivset url-aadressi.
Looge manifestifail
Peamine, mida vajame, on anda laiendile Ôigused vahekaartide kasutamiseks ja mÀÀrata tÀidetav skript:
{
"manifest_version": 2,
"name": "Jooksma vk.com/away-lt",
"version": "1.0",
"background": {
"scripts": ["background.js"]
},
"permissions": ["tabs"],
"browser_action": {
"default_title": "Jooksma vk.com/away-lt"
}
}
Loome js faili
Siin on kĂ”ik lihtne: sĂŒndmuses, mis kĂ€ivitatakse uue vahekaartide loomisel, lisame url-aadressi kontrolli, kui see algab "", siis vahetame selle Ă”ige vastu, mis asub GET-pĂ€ringus:
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});
}
});
});
Kogume laiendust
Veendudes, et mĂ”lemad failid on samas kaustas, avame Chrome'i, valime laienduste vahekaardi ja klĂ”psame "Laadi lahti pakendatud laiendus". Avanevas aknas valime kirjutatud laienduse kausta ja klĂ”psame koguda. Valmis! NĂŒĂŒd asendatakse kĂ”ik linkide vormingud vk.com/away algsete vastu.
LÔpetuseks
Muidugi on selline tĂŒĂŒpi pudelid pÀÀstnud palju inimesi miljonitest petusaitidest, kuid ma arvan, et inimesed peaksid ise otsustama, kas liikuda ebaturvalisele lingile vĂ”i mitte.
Kasutusmugavuse huvides olen projekti paigutanud .
Allikas: habr.com
