Dies ist ein Betrugsschema für Abstimmungswebsites mit eingeschränkten IP-Adressen. Diese Methode nutzt einige Schlupflöcher bei der Überwachung von Remote-IP-Adressen durch die Abstimmungswebsite aus. Dabei werden keine IP-Adressen gefälscht. HTTP ist die siebte Schicht, die auf TCP aufbaut. Es ist unmöglich, echte IP-Adressen zu fälschen. Kürzlich brauchte ein Freund eine Abstimmungssoftware, und ich habe mir auch diese Abstimmungswebsite angesehen. Diese Abstimmungswebsite hat einen Bestätigungscode und jede IP ist auf eine Stimme beschränkt. Sie sieht aus wie eine normale Abstimmungswebsite. Ich habe zuerst den Bestätigungscode studiert: Der Bestätigungscode dieser Abstimmungswebsite ist zunächst sehr einfach und besteht aus vier Standardzahlen an Standardpositionen, die leicht zu erkennen sind. Später wurde der Bestätigungscode geändert, sodass er verschiedene Ziffern und Buchstaben enthielt und die Positionen unterschiedlich waren. Jetzt ist es für die Software schwierig, den Bestätigungscode zu erkennen, und selbst die manuelle Erkennung ist schwierig. Wenn Sie am Ende Ihrer Kräfte sind, gibt es immer noch einen Ausweg. Weitere Informationen finden Sie im nächsten Absatz! Bei meinen weiteren Analysen und Recherchen stellte ich fest, dass es eine Lücke bei der Überprüfung des Bestätigungscodes gab. Nachdem ich diese Lücke entdeckt hatte, war der Bestätigungscode nutzlos geworden. Es ist kein Identifikations- oder Bestätigungscode erforderlich. Es kann direkt umgangen werden, da nur der JS-Code auf der Seite mit den Abstimmungsoptionen gesetzt wird, um zu prüfen, ob der Bestätigungscode leer ist. Der JS-Code wird auf dem Client ausgeführt und die Wirkung dieser Überprüfung ist gleich Null. Im Allgemeinen dient die JS-Überprüfung nur der Benutzerfreundlichkeit. Als Abstimmungswebsite verwendet sie nur diese Überprüfungsmethode. Sie prüft nicht, ob der Bestätigungscode auf der dynamischen Seite zur Abstimmungsverarbeitung leer ist. Dies ist wirklich inakzeptabel und stellt eine große Bedrohung für die Sicherheit der Website dar. Was das Problem mit dem Bestätigungscode betrifft, habe ich bereits gelernt, wie man es knackt. Solange Sie beim Abstimmen nicht direkt auf die Bestätigungscodedatei zugreifen, ist der Bestätigungscode leer. Da die dynamische Seite nicht prüft, ob der Bestätigungscode leer ist, ist alles in Ordnung, solange der Bestätigungscodeparameter beim Posten leer ist. Dann gibt es noch ein weiteres Problem. Diese Abstimmungs-Website überprüft die IP und beschränkt eine IP auf nur eine Stimme. Daher kann dies nur durch die Verwendung eines Proxys oder durch ständiges Trennen der Internetverbindung und Einwählen erreicht werden. Mir fiel wirklich keine andere gute Lösung ein, und dann fand dieser Freund ein Programm, mit dem man sehr schnell auf dieser Website abstimmen konnte. Ich war sehr neugierig auf die IP-Lösung dieses Programms und bat meinen Freund, sie zu analysieren. Zuerst habe ich versucht, Pakete der Abstimmungssoftware zu erfassen, um sie zu untersuchen. Als ich fertig war, öffnete ich das Abstimmungsprogramm und „Zisch! Es hat einen Softwarekonflikt ausgelöst!“ Oh nein, auf keinen Fall. Dann habe ich einige Programme geschlossen und nur das Paketerfassungsprogramm verlassen, das immer noch einen Konflikt ausgelöst hat. Haha, es stellte sich heraus, dass dieses Programm wusste, dass jemand seine Software analysieren könnte, und es durchsuchte tatsächlich den Prozessnamen, um zu prüfen, ob es verdächtige Programme gab. Wenn ein Programm es analysierte oder Pakete erfasste, weigerte es sich, zu laufen. Haha, derzeit weiß ich, dass die eingeschränkte Software Easy Language-Programmiersoftware und WSockExpert_Cn-Paketerfassungssoftware umfasst. Haha, ich habe Easy Language geschlossen, den Namen WSockExpert_Cn geändert, den eigenen Sicherheitstest der Software erfolgreich bestanden und es erfolgreich ausgeführt. Nachfolgend das Datenpaket, für das ich bei der Nutzung gestimmt habe: XML/HTML-CodeInhalt in die Zwischenablage kopieren
-Forwarded-For Ich habe diesen HTTP-Header-Parameter gefolgt von der IP gefunden. Haha, dieser Parameter muss eine Historie haben. Ich kannte ihn vorher nicht. Haha, ich habe schnell auf Baidu danach gesucht. Nachfolgend finden Sie einen Erläuterungsartikel von Baidu. Er ist sehr gut erklärt und Sie können einen Blick darauf werfen. Es handelt sich nicht um eine im RFC definierte Standard-Anforderungsheaderinformation. Eine ausführliche Einführung zu diesem Punkt finden Sie in der Entwicklungsdokumentation für den Squid-Cache-Proxyserver. Das Standardformat ist wie folgt: X-Weitergeleitet für: Client1, Proxy1, Proxy2 Wie aus dem Standardformat ersichtlich, können mehrere durch Kommas getrennte X-Forwarded-For-Headerinformationen vorhanden sein. Das erste Element ist die echte Client-IP, und der Rest sind die IP-Adressen der durchgelaufenen Proxys oder Load Balancer. Es wird mehrere davon geben. Erklärung zu X-Forwarded-For im Wiki http://en.wikipedia.org/wiki/X-Forwarded-For-Analyse: Da wir die Client-IP fälschen möchten, schauen wir uns zunächst an, wie wir die Client-IP-Adresse erhalten (am Beispiel von PHP). Dieser Code wurde durch eine Suche auf Baidu gefunden. Die meisten Websites verwenden diesen Code. XML/HTML-CodeInhalt in die Zwischenablage kopieren
Stellen Sie zunächst fest, ob der HTTP_VIA-Header vorhanden ist. Der HTTP_VIA-Header gibt an, ob ein Proxyserver verwendet wird. Wenn nicht, ermitteln Sie die IP-Adresse des Clients aus dem Feld REMOTE_ADDR. Wenn ja, ermitteln Sie die IP des Clients aus X-Forwarded-For. Ich vermute, dass viele Programmierer den Code von Baidu beziehen. Bei ASP ist es ähnlich. Dann lass es uns testen. Servercode: XML/HTML-CodeInhalt in die Zwischenablage kopieren
Sie können sehen, dass die erhaltenen Client-IP-Adressen unterschiedlich sind. REMOTE_ADDR ist die tatsächliche Adresse. Wenn also eine Website die Client-IP-Adresse aus X-Forwarded-For ermittelt, können wir diese logische Lücke zum Betrügen ausnutzen. |
<<: jQuery manipuliert Cookies
Verwenden Sie Vue, um einfach einen Click-Flip-Ef...
Der Docker-Daemon verwendet HTTP_PROXY , HTTPS_PR...
Dieser Artikel listet die am häufigsten verwendet...
Die Verbindungsmethode in der MySQL-Tabelle ist e...
1. Geben Sie die folgende Adresse in den Browser ...
Inhaltsverzeichnis UNION Tabelleninitialisierung ...
Inhaltsverzeichnis Was ist eine Zuordnung? Unters...
Lassen Sie uns keine weitere Zeit verschwenden un...
Vorwort Kürzlich wurde unser Server von Hackern a...
Inhaltsverzeichnis Sequenz 1. Zentralisiertes Rou...
brauchen Unabhängig davon, ob es sich um ein Wind...
Inhaltsverzeichnis Problembeschreibung Szenario S...
In diesem Artikel wird der spezifische Code von j...
Nach der Installation von Jenkins schlägt der ers...
Inhaltsverzeichnis Was ist eine Partitionstabelle...