Ich bekomme immer die Methoden QUIT und CONNECT HTTP an meinen Server gesendet, was bedeuten sie?

8

Ich erhalte die zwei folgenden Fehler von meinem Server, ich nehme an, dass sie nur Bots waren, die nach möglichen Zielen suchen, aber weiß jemand speziell, warum ich diese bekomme? Ich verwende das SslRequirement-Plugin, um sicherzustellen, dass alle Treffer auf der Anmelde- / Anmeldeseite auf SSL umgeleitet werden. Daher sollten alle diese seltsamen https-Anfragen an root einfach an reguläre http umgeleitet werden.

Ein ActionController :: UnknownHttpMethod ist in der Anwendung # index aufgetreten: quit, akzeptierte HTTP-Methoden sind get, head, put, post, delete und options

/usr/local/lib/ruby/gems/1.9.1/gems/actionpack-2.3.4/lib/action_controller/request.rb:35:in 'request_method'

  • PATH_INFO: /
  • REMOTE_ADDR: 99.19.208.249
  • REMOTE_PORT: 6376
  • REQUEST_METHOD: VERBINDEN
  • REQUEST_URI: /
  • SERVER_PORT: 443
  • SERVER_PROTOCOL: HTTP / 1.0
  • SERVER_SOFTWARE: Apache

Ein ActionController :: UnknownHttpMethod ist in der Anwendung # index aufgetreten: CONNECT, akzeptierte HTTP-Methoden sind get, head, put, post, delete und options

/usr/local/lib/ruby/gems/1.9.1/gems/actionpack-2.3.4/lib/action_controller/request.rb:35:in 'request_method'

  • HTTPS: Ein
  • HTTP_X_FORWARDED_PROTO: https
  • PATH_INFO: /
  • REMOTE_ADDR: 91.209.196.76
  • REMOTE_PORT: 50751
  • REQUEST_METHOD: Beenden
  • REQUEST_URI: /
  • SERVER_PORT: 443
  • SERVER_PROTOCOL: HTTP / 0.9
go minimal 13.12.2009, 06:41
quelle

5 Antworten

13

Der Befehl CONNECT wird von HTTP-Proxyservern verwendet, um anzuzeigen, dass der Client nur eine Verbindung herstellen möchte Socket direkt an einen anderen Server; Dies wird normalerweise zum Tunneln von TLS über einen HTTP-Proxy verwendet, könnte aber zum Tunneln fast jedes Protokolls verwendet werden.

QUIT ist kein HTTP-Befehl, sondern ein SMTP-Befehl . Es ist möglich, dass Sie diese Befehle von einem Bot erhalten, der versucht, offene Relais zum Senden von Spam zu finden. Es versucht herauszufinden, ob Sie ein offenes SMTP-Relay oder einen offenen HTTP-Proxy haben, der den CONNECT-Befehl ermöglicht, der auch zum Tunneln von SMTP-Verkehr verwendet werden kann.

Sie werden wahrscheinlich gerade von einem Spam-Botnet getroffen, der versucht, offene Relais zu finden. Mein Rat wäre, solche Anfragen so früh wie möglich fallen zu lassen und sich keine Sorgen um sie zu machen.

    
Brian Campbell 19.01.2010, 15:23
quelle
0

CONNECT: Ссылка

QUIT bedeutet normalerweise "Verbindung schließen".

    
Amber 13.12.2009 06:43
quelle
0
%Vor%

Kredit Ссылка

    
Lumbee 17.10.2014 18:46
quelle
0

Ich habe gerade ein paar Versuche bemerkt, wie folgt mit meinen Servern zu verbinden, wir sehen, dass es mit einem QUIT endet ...

%Vor%
  • Als Randnotiz gibt mein Server 444 zurück, was kein legaler HTTP-Code ist. Es bedeutet KEINE ANTWORT und das mache ich, weil ihre "Agent String" leer ist.

Mit Blick auf die IP-Adresse habe ich eine Suchmaschine gefunden, die im Internet nach Dingen sucht. Kein Hacker, der versucht per se einzubrechen. (Es scheint, dass es nicht böse ist, scheint es.) Ich nehme an, dass einige der Anwendungen, nach denen sie suchen, das QUIT verstehen müssen. Als Roboter macht es Sinn, dass Sie versuchen sollten, was sonst wie komische Befehle wie CONNNECT und QUIT aussehen würde. Es gibt keine wirkliche Begrenzung für die Befehle, die eine Anwendung unterstützen kann, auch wenn diese Befehle keine offiziellen HTTP-Befehle sind.

Wenn Ihre Anwendung diese Methoden nicht versteht, wird nichts passieren, also sollten Sie sich nicht zu viele Gedanken darüber machen.

Wenn Ihre Anwendung diese Methoden empfängt, möchten Sie vielleicht am Anfang ein kleines Element schreiben, um die Methode zu erhalten und mit GET und POST (und was auch immer Sie unterstützen, wie DELETE und PUT) und wenn es keiner von denen entspricht Diese antworten dann mit einem Fehlercode 405: "Method Not Allowed".

Ссылка

Wenn Sie Ihre Anwendung nicht ändern können und nicht sicher sind, ob sie auf einen CONNECT / QUIT-Treffer reagieren könnte, könnten Sie ein Setup wie mod_security für Apache2 verwenden.

    
Alexis Wilke 28.12.2015 05:50
quelle
0

gemäß jturkel bei Ссылка . In Rails 3.2 für nicht http-Aktionen habe ich am Ende von config / application.rb folgendes hinzugefügt und das Problem für quit gelöst.

%Vor%     
jaambros 08.11.2017 04:20
quelle