Einige seltsame Anfragen erscheinen seit dem 20. Oktober 2014 in unseren Logs. Sie sind auf etwa ein paar Dutzend pro Tag angewachsen. Obwohl es kein großes Problem ist, ist es dennoch interessant, den Grund herauszufinden.
Frühere:
%Vor%Einige aktuelle:
%Vor%Einige Anfragen sind von angemeldeten Mitgliedern und einige nicht.
Ich würde raten, dass einige Javascript in ihrem Browser versuchen, eine URL durch eine nicht initialisierte Variable, also "undefiniert", aufzurufen.
Ich bezweifle, dass es sich um einen Fehler auf unserer Client-Seite handelt. Javascript würde dazu führen, dass täglich mehr als ein paar Dutzend solcher Anfragen von etwa einer Million Seitenaufrufen generiert werden.
Irgendwelche Ideen? Lohnt es sich zu verfolgen?
Das ist ein großes Problem, aber es kommt nicht von dir.
Dies sind JavaScript Injection Angriffe (Client-Computer-Malware) mit selbstsigniertem Root Zertifikat .
Insbesondere wurden sf_main.html
und deals.html
mit Superfish , die kürzlich mit Lenovo ausgeliefert wurde. Während Lenovo seine neuen PC-Reihen vorantreibt, Berichte der Angriffe sind kürzlich in die Luft gejagt.
Diese Man-in-the-middle Angriffe beginnen indem Sie die Anfragen des Kunden übernehmen und dann HTML und JavaScript einfügen.
Der Grund, warum es so viele undefined
-Symbole gibt, ist, dass Superfish getreu seinem Namen nach Plugins, Erweiterungen und Bibliotheken fischt, die es nutzen kann, ihre erwarteten Namen, Token, und Wege. Dies ist Brute Force XSS .
Wenig. Nicht viel.
Da die Anfragen auf dem Client-Rechner und durch http request
hijacking entführt werden, kennen Sie den Unterschied nicht. Sie könnten versuchen, nach bestimmten Arten von feindlichen "Indikatoren" zu "fischen", aber jetzt machen Sie die Arbeit von Anti-Malware.
Lenovo Ansprüche , dass
SuperFish hat Server-seitige Interaktionen vollständig deaktiviert (seit Januar) auf alle Lenovo Produkte, so dass das Softwareprodukt keine länger aktiv, deaktiviert SuperFish für alle Produkte in der Markt
Ich vertraue zwar der Aufrichtigkeit des in China ansässigen Lenovo, das ernsthafte Marktinteressen in der westlichen Welt hat, aber ich würde dem Wort der chinesischen Malware-Firma Superfish nicht trauen.
Diese Angriffe sind für Sie weniger problematisch als Ihre Kunden
Wenn Sie nicht für eine große Bank oder eine beliebte Social Networking-Website arbeiten, ist es höchst unwahrscheinlich, dass Malware wie Superfish Sie gezielt anspricht. Die Bank- und sozialen Netzwerkkonten Ihres Kunden sind gefährdet, aber nicht aufgrund von irgendetwas, das Sie getan haben oder tun können, um es zu stoppen.
Wie immer ist die Heilung für Angriffsangriffe auf Client-Seite ein guter clientseitiger Schutz.
Irgendwelche Ideen?
Es scheint hier zwei verschiedene Optionen zu geben:
Um zwischen den beiden zu unterscheiden, müssen Sie eine spezifischere Protokollierung einrichten. Wenn Sie beispielsweise die Benutzeragenten zu Protokollzeilen hinzufügen, die die Zeichenfolge undefined
enthalten, wird diese Frage beantwortet. Wenn Ihr Code das Problem verursacht, möchten Sie auch den Header referer
protokollieren, da auf dieser Seite die fehlerhaften URLs generiert werden.
Eine andere Möglichkeit, das Problem zu identifizieren, ist, wenn Sie eine Analyselösung auf Ihrer Website wie Google Analytics ausführen, können Sie Ihren Bericht ganz einfach auf url
mit undefined
beschränken. Wenn es keine solche Anfrage gibt, können Sie daraus schließen, dass es sich um einen Bot handeln muss (da dies nicht dazu führen würde, dass der clientseitige Analysecode ausgeführt wird), da ansonsten alle Informationen zur Verfügung stehen, um das Problem zu identifizieren.
Schließlich könnte es eine gute Idee sein, eine Javascript-Fehler-Logging-Lösung (in seiner einfachsten Form ein window.onerror
-Handler mit einer Ajax-Anfrage an \log.something
) einzuschließen. Wenn Ihr Code undefined
erzeugt, ist das sehr wahrscheinlich Einige Fehler werden ebenfalls ausgelöst.
Lohnt es sich zu verfolgen?
Wenn Benutzern tatsächlich ungültige Seiten geliefert werden, dann ist dies definitiv etwas, das untersucht werden sollte.
Tags und Links javascript http server undefined