Wenn Sie auf die auf Vkontakte veröffentlichten Links klicken, werden Sie feststellen, dass der Benutzer wie in anderen sozialen Netzwerken zuerst zu einem „sicheren“ Link wechselt. Danach entscheidet das soziale Netzwerk, ob der Benutzer weiter gehen soll oder nicht. Die meisten aufmerksamen Personen bemerkten ein halbes Sekunden langes Erscheinen von „vk.com/away.php“ in der Adressleiste des Browsers, legten jedoch natürlich keinen Wert darauf.

Hintergrund
Einmal stellte ein bestimmter Programmierer, der ein anderes Projekt abgeschlossen hatte, fest, dass er von dem Wunsch besessen war, allen davon zu erzählen. Das Projekt wurde auf einem Server mit einer eindeutigen IP-Adresse, jedoch ohne Domainnamen, gehostet. Daher habe ich in Eile eine schöne Subdomain der dritten Ebene in der .ddns.net-Domain erstellt, die schließlich als Link verwendet wurde.
Nachdem der Programmierer nach einer Weile zum Beitrag zurückgekehrt war, stellte er fest, dass anstelle der Site ein VK-Stub geöffnet wird, der über den Übergang zu einer unsicheren Site informiert:

Es scheint, dass intelligente Benutzer selbst das Recht haben, zu entscheiden, auf welche Website sie gehen sollen und welche nicht, aber Vkontakte denkt anders und bietet keine Möglichkeit, dem Link ohne Krücken zu folgen.
Was ist los
Diese Implementierung weist mehrere wesentliche Nachteile auf:
- Die Unfähigkeit, eine verdächtige Site zu öffnen. Wie oben erwähnt, hat der Benutzer keine Möglichkeit, den Stub zu überwinden. Die einzige Möglichkeit, den Link zu öffnen, besteht darin, ihn zu kopieren und in die Adressleiste einzufügen.
- Verlangsamt einen Link. Die Umleitungsgeschwindigkeit hängt vom Ping ab. Dementsprechend können mit einem großen Ping kostbare Sekunden des Lebens verschwinden, was bekanntlich nicht zulässig ist.
- Conversion-Überwachung. Diese Methode erleichtert das Sammeln von Informationen über Benutzeraktionen, die natürlich VK verwenden, und fügt dem sicheren Link die ID des Beitrags hinzu, von dem aus der Übergang erfolgt ist.
Kostenloser Django
Die beste Lösung für alle oben genannten Probleme kann eine Browser-Erweiterung sein. Aus offensichtlichen Gründen liegt die Wahl bei Chrome. Auf einem Habr gibt es einen ausgezeichneten Artikel, der sich dem Schreiben von Erweiterungen für Chrome widmet.
Um eine solche Erweiterung zu erstellen, müssen zwei Dateien in einem separaten Ordner erstellt werden: json-Manifest und eine JavaScript-Datei zur Überwachung der aktuellen URL der Adresse.
Manifestdatei erstellen
Die Hauptsache, die wir brauchen, ist, der Erweiterung die Berechtigung zu geben, mit Registerkarten zu arbeiten und ein ausführbares Skript zuzuweisen:
{ "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" } }
Erstellen Sie eine js-Datei
Hier ist alles einfach: Für den Fall, dass beim Erstellen eines neuen Tabs aufgerufen wird, fügen wir eine Überprüfung der URL-Adresse hinzu. Wenn diese mit "
vk.com/away.php " beginnt, ersetzen wir sie durch die richtige in der GET-Anforderung:
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}); } }); });
Erweiterung setzen
Nachdem Sie sichergestellt haben, dass sich beide Dateien im selben Ordner befinden, öffnen Sie Chrome, wählen Sie die Registerkarte "Erweiterung" und klicken Sie auf "Entpackte Erweiterung herunterladen". Wählen Sie im folgenden Fenster den Ordner "Erweitert" aus und klicken Sie auf "Sammeln". Fertig! Jetzt werden alle Links wie vk.com/away durch die ursprünglichen ersetzt.
Anstelle einer Schlussfolgerung
Natürlich hat diese Art von Stub viele Menschen vor Millionen betrügerischer Websites gerettet, aber ich glaube, dass die Menschen selbst das Recht haben, zu entscheiden, ob sie zu einem unsicheren Link gehen oder nicht.
Der
Einfachheit halber habe ich das Projekt auf
Github veröffentlicht .