Qualcuno può riconoscere questo improvviso afflusso di richieste HTTP malformate?

16

A partire da circa 3 settimane fa, il mio sito ha iniziato a ricevere molte e frequenti richieste http dai miei utenti.

Ho familiarità con scansioni malevoli che avvengono quotidianamente, ma queste richieste sembrano essere diverse, e credo che il suo browser, l'estensione o il malfunzionamento di javascript da qualche parte, piuttosto che qualcosa di malevolo.

Ecco un piccolo campione della richiesta da parte di un utente (sebbene influenzi vari agenti utente e utenti)

[22/Jul/2014:20:57:49 +0100] "GET /groups/%60%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:20:58:11 +0100] "GET /members/%EF%BF%BD%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5176  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:20:58:45 +0100] "GET /%EF%BF%BD%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5345  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:20:59:18 +0100] "GET /groups/%EF%BF%BD%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:20:59:41 +0100] "GET /groups/%EF%BF%BDi%19%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:00:06 +0100] "GET /%EF%BF%BDg%19%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5008  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:00:30 +0100] "GET /%EF%BF%BDc%19%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 4991  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:01:35 +0100] "GET /%EF%BF%BD%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5167  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:03:08 +0100] "GET /%EF%BF%BD%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5129  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:04:35 +0100] "GET /groups/%EF%BF%BDj%19%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:05:21 +0100] "GET /%EF%BF%BDf%19%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5271  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:07:01 +0100] "GET /groups/%EF%BF%BDc%19%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:12:44 +0100] "GET /P%EF%BF%BD%16%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5161  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:13:04 +0100] "GET /%EF%BF%BDO%0F%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5328  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:13:52 +0100] "GET /groups/0%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:14:14 +0100] "GET /groups/%EF%BF%BD%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:14:34 +0100] "GET /@%EF%BF%BD%16%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5347  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:15:04 +0100] "GET /@%EF%BF%BD%16%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 4942  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:15:11 +0100] "GET /groups/%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 723  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[22/Jul/2014:21:16:05 +0100] "GET /p%EF%BF%BD%18%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 5020  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"
[23/Jul/2014:01:11:58 +0100] "GET /%EF%BF%BD%07%1B%01?o=3&g=&s=&z=\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-\x//\x,/\x,-X? HTTP/1.1" 404 4877  "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" "-"

L'ho studiato in dettaglio, ma estrapolando. Ecco cosa ho concluso fino ad ora ...

  • La maggior parte di queste richieste proviene da utenti a lungo termine che hanno effettuato l'accesso al mio sito e hanno iniziato a inviarle tutte intorno allo stesso tempo

  • Ho iniziato a registrare il metodo di richiesta, e sono tutti standard http piuttosto che una chiamata XMLHttp malfunzionante

  • Ho isolato alcuni utenti che sembrano inviarli frequentemente, e ho iniziato la registrazione catturato l'HTML della pagina che stavo inviando loro prima. Sono abbastanza fiducioso che non c'è nulla nel mio codice HTML che potrebbe richiedere al loro browser di generare queste richieste. Il mio sito e il mio database sono completamente utf-8. Sono anche sicuro che il mio sito non sia stato compromesso e che non serva script o annunci di terze parti, ad eccezione di Google Analytics.

  • Contengono sempre% EF% BF% BD che è la versione codificata della rappresentazione esadecimale (EF BF BD) dei byte del carattere di sostituzione UTF-8

  • Le richieste contengono sempre parametri GET o, g, s, z

  • Non accade a tutti gli utenti e non posso riprodurlo su una varietà di browser Windows, Mac o Mobile.

  • Per alcuni utenti, mentre l'utente naviga nel mio sito, circa il 40% del tempo è seguito da una o più di queste richieste (che accede alla stessa directory della precedente richiesta valida)

Mi piacerebbe un po 'di aiuto su questo, forse qualcuno guarderà i parametri e riconoscerà cosa potrebbe causarlo

Le possibili spiegazioni a cui posso pensare sono:

  • Alcune regressioni jquery (ma non sono richieste Ajax)
  • Alcune regressioni con google maps (non possono essere riprodotte)
  • Forse una popolare estensione per il browser che ha improvvisamente iniziato ad andare in tilt
posta carpii 23.07.2014 - 14:56
fonte

3 risposte

4

Queste richieste sono causate dal malfunzionamento di Adware: Win32 / Adpeak (sì, che ci crediate o meno, anche il malware può funzionare male).

Configura un server proxy sui sistemi infetti che inietta i tag script in tutto il contenuto HTML che lo attraversa, in modo simile a

<script type="text/javascript" id="2f2a695a6afce2c2d833c706cd677a8e" src="http://d.lqw.me/xuiow/?g=750C2C5B-CF42-6996-0E5A-306165564128&s=F5D333A8-C748-4686-AE0A-9E008F670C22&z=1384886096"></script>

InalcunecircostanzespecificheivaloridelnomehosteiparametriGETpossonoesserecorrottiequestoèilmomentoincuisivedonorichiestecomequellecheOPhapubblicato404neilog.

Ulterioriinformazioniin nella relativa discussione su SO.

    
risposta data 31.10.2014 - 15:45
fonte
4

Poiché tutte le richieste falliscono con lo stato "404 non trovato" , prova a creare una pagina di errore 404 personalizzata che registrerà tutto (tutte le intestazioni, la richiesta, la sessione dell'utente) e eseguirà il debug di questo , guarda se le richieste effettive provengono da pochi utenti con un browser web rotto (virus, trojan ecc. sul computer client), da tutti gli utenti, solo dagli utenti che hanno effettuato l'accesso al tuo sito web o qualcuno che sta tentando di lanciare alcuni attacchi per indirizzare la tua applicazione.

Se si tratta di un problema da parte del cliente, non c'è molto che puoi fare se non tenerne traccia e assicurarti che non influenzi la tua applicazione.

D'altra parte, se si tratta di un problema dalla tua parte (server o applicazione), questo dovrebbe darti almeno qualcosa per analizzare alcuni punti di partenza nel risolvere il problema.

Ecco alcuni 404 di base personalizzati che fanno questo:

<?php
/**
 * File: CustomError404.php
 * Custom 404 error page
 */

// Set the proper headers
if (!function_exists('http_response_code')) {
    header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");
    header("Status: 404 Not Found");
} else {
    http_response_code(404);
}

// Log whatever here...
$logMessage  = '**************************************************************' . PHP_EOL;
$logMessage .= '** Full request log - ' . date('Y-m-d H:i:s') . PHP_EOL;
$logMessage .= '**************************************************************' . PHP_EOL;
$logMessage .= "ALL HEADERS: " . PHP_EOL . print_r(getallheaders(), true);
$logMessage .= "REQUEST: " . PHP_EOL . print_r($_REQUEST, true);
$logMessage .= "SESSION: " . PHP_EOL . print_r($_SESSION, true);
$logMessage .= '**************************************************************' . PHP_EOL . PHP_EOL;

// Write the log to a file
$logFile = __DIR__ . '/req_error.log';
file_put_contents($logFile, $logMessage, FILE_APPEND);

// Display a message instead of a blank page
echo "<h1>404 Not Found</h1>";
echo "The page that you have requested could not be found.";
exit();

/* EOF */

Per usarlo, basta caricare questo file nella cartella principale dell'applicazione e inserire la seguente riga nel tuo host virtuale o configurazione .htaccess:

ErrorDocument 404 /CustomError404.php

Potresti personalizzare ulteriormente questo script e provare a filtrare e registrare solo le richieste con le caratteristiche specifiche che ti interessano - in questo modo otterrai ciò che stai cercando nel file di log, senza dover filtrare tonnellate di richieste "buone" in più.

    
risposta data 23.07.2014 - 18:03
fonte
0

me lo ricorda:

char shellcode[] =
"\xeb\x2a\x5e\x89\x76\x08\xc6\x46\x07\x00\xc7\x46\x0c\x00\x00\x00"
"\x00\xb8\x0b\x00\x00\x00\x89\xf3\x8d\x4e\x08\x8d\x56\x0c\xcd\x80"
"\xb8\x01\x00\x00\x00\xbb\x00\x00\x00\x00\xcd\x80\xe8\xd1\xff\xff"
"\xff\x2f\x62\x69\x6e\x2f\x73\x68\x00\x89\xec\x5d\xc3";

void main() {
   int *ret;

   ret = (int *)&ret + 2;
   (*ret) = (int)shellcode;
}

Penso che ci siano alcune macchine che cercano di eseguire shellcode nel tuo sito web.

    
risposta data 23.07.2014 - 16:04
fonte

Leggi altre domande sui tag