„vk.com/away.php“ loswerden oder den Links einer gesunden Person folgen

Wenn Sie auf auf Vkontakte gepostete Links klicken, können Sie sehen, dass, wie in anderen sozialen Netzwerken auch, zunächst ein Übergang zu einem „sicheren“ Link erfolgt, wonach das soziale Netzwerk entscheidet, ob der Benutzer weitergehen darf oder nicht. Die meisten aufmerksamen Leute bemerkten das halbsekundenlange Erscheinen von „vk.com/away.php“ in der Adressleiste des Browsers, legten aber natürlich keinen Wert darauf.

„vk.com/away.php“ loswerden oder den Links einer gesunden Person folgen

Vorgeschichte

Eines Tages erkannte ein gewisser Programmierer, nachdem er ein anderes Projekt abgeschlossen hatte, dass er von dem Wunsch besessen war, allen davon zu erzählen. Das Projekt wurde auf einem Server mit einer eindeutigen IP, aber ohne Domänennamen gehostet. Deshalb habe ich schnell eine schöne Subdomain der dritten Ebene in der Domain .ddns.net erstellt, die schließlich als Link verwendet wurde. 

Als der Programmierer nach einiger Zeit zum Beitrag zurückkehrte, stellte er fest, dass anstelle der Site ein VK-Stub geöffnet wurde, der über den Übergang zu einer unsicheren Site informiert:

„vk.com/away.php“ loswerden oder den Links einer gesunden Person folgen

Es scheint, dass kluge Benutzer selbst das Recht haben, zu entscheiden, welche Seite sie besuchen 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 erhebliche Nachteile auf:

  • Die Unfähigkeit, eine verdächtige Website zu öffnen. Wie oben erwähnt, hat der Benutzer nicht die 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 die Verbindung. Die Weiterleitungsgeschwindigkeit hängt vom Ping ab. Dementsprechend können bei einem großen Ping wertvolle Sekunden des Lebens verloren gehen, was bekanntlich nicht akzeptabel ist.
  • Übergangsüberwachung. Diese Methode erleichtert das Sammeln von Informationen über Benutzeraktionen, die VK natürlich verwendet, indem es dem sicheren Link die ID des Beitrags hinzufügt, von dem aus der Übergang durchgeführt wurde.

Django befreien

Die beste Lösung für alle oben genannten Probleme kann eine Browsererweiterung sein. Aus offensichtlichen Gründen fällt die Wahl auf Chrome. Es gibt ein tolles auf dem Hub Beitrag Artikel zum Schreiben von Erweiterungen für Chrome.

Um eine solche Erweiterung zu erstellen, müssen wir zwei Dateien in einem separaten Ordner erstellen: json-Manifest und eine JavaScript-Datei zur Überwachung der aktuellen URL-Adresse.

Erstellen Sie eine Manifestdatei

Das Wichtigste, was wir brauchen, ist, der Erweiterung die Berechtigung zum Arbeiten mit Tabs zu erteilen 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: Im Ereignis, das beim Erstellen eines neuen Tabs aufgerufen wird, fügen wir eine Prüfung für die URL-Adresse hinzu, wenn diese mit „“ beginnt.vk.com/away.php“, dann ersetzen wir es durch das richtige, das in der GET-Anfrage steht:

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});
		}
	});
});

Wir sammeln die Verlängerung

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 laden“. Wählen Sie im sich öffnenden Fenster den Ordner „Extended“ aus und klicken Sie auf „Sammeln“. Bereit! Jetzt werden alle Links wie vk.com/away durch die ursprünglichen ersetzt.

Statt einer Schlussfolgerung

Natürlich hat diese Art von Stub viele Menschen vor Millionen von Betrugsseiten bewahrt. Ich glaube jedoch, dass die Menschen das Recht haben, selbst zu entscheiden, ob sie einen unsicheren Link aufrufen oder nicht.
Der Einfachheit halber habe ich das Projekt auf gepostet github.

Source: habr.com

Kommentar hinzufügen