In che modo un sito Web ottiene il mio firewall del server e tenta di collegarsi alle risorse del mio server?

0

Ero stumped quando ho visto le seguenti righe sul registro degli errori del mio server Apache questa mattina:

[authz_core:error] [client ::1:37317] AH01630: client denied by server configuration: /var/www/styles/style.css, referer: http://bd.adm.ijinshan.com/adm.html?adm=somehexdec&t=timestamp [authz_core:error] [client ::1:37317] AH01630: client denied by server configuration: /var/www/scripts/script.js, referer: http://bd.adm.ijinshan.com/adm.html?adm=somehexdec&t=timestamp

Potrei aver accesso ad alcuni forum che attivano il sito per contattare il mio server web. Ma il mio server ha un firewall che è configurato esplicitamente per consentire l'accesso solo da alcuni indirizzi IP interni. Sospetto che potrebbe essere la seguente riga nel mio iptables config che consente loro di accedere al mio server:

-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

È vero che se inavvertitamente ho contattato il server accedendo a un iframe nascosto in un forum, sto permettendo al sito web di accedere al mio server? Come ha indovinato la posizione del mio script e foglio di stile dato che potrebbero esserci migliaia di combinazioni di percorsi? E qual è l'intenzione di provare a collegarsi a loro? Potrebbe essere malizioso? Il sito web sembra una compagnia antivirus in Cina.

UPDATE:

Entrando nel registro di accesso del server, ho trovato la seguente riga:

127.0.0.1 GET /adm.html?adm=somehexdec&t=timestamp HTTP/1.1 404 http://snippet.pos.baidu.com/bfp/snippetcacher.php?qn=somehexdec

Ok, ora capisco che il mio server ha pubblicato una pagina di errore 404 personalizzata (ovviamente perché non c'è adm.html ) che contiene lo script e il file css. Quella parte del mistero è stata risolta. Inoltre, le regole del mio firewall sembrano funzionare correttamente poiché l'indirizzo IP 127.0.0.1 rappresenta localhost.

Ora il problema è identificare perché l'accesso a quella pagina su baidu attiva una ricerca sul mio localhost e se si tratta di un problema di sicurezza.

    
posta Question Overflow 18.12.2013 - 04:29
fonte

1 risposta

1

Se il tuo access.log afferma che esiste una connessione al tuo server Web da localhost (127.0.0.1), questo significa che alcuni processi in esecuzione sulla stessa macchina server hanno fatto quella connessione. Se si sta eseguendo un browser Web sulla stessa macchina, il browser potrebbe essere il colpevole. Allo stesso modo, se il tuo server non è la stessa macchina del tuo sistema desktop, ma usi quel server come proxy per il tuo browser (proxy SOCKS, proxy Web, VPN ...) tutte le tue attività di navigazione verranno visualizzate come connessioni da il tuo server.

Suppongo che tu sia in una delle due situazioni sopra descritte. Supponiamo ora che, con il browser Web, si sfoglia una pagina (ad esempio, in un forum Web) che contiene, nel relativo codice HTML, questo:

<img src="http://localhost/adm.html?adm=somehexdec&t=timestamp"/>

allorailtuobrowsertenteràdiligentementedicaricareidatisuquell'URLe,acausadellatuaconfigurazionedirete,ilnome"localhost" verrà risolto dal tuo server e puntato su se stesso. Quindi le voci del registro.

Ora, quale potrebbe essere il punto di un tale collegamento? Beh, potrebbe essere plausibilmente un tentativo di attacco. In teoria, c'è un sistema software, da qualche parte, che funziona tecnicamente come un server Web locale, accettando le connessioni solo da localhost, con un'interfaccia "amministrativa" per le connessioni al file "/adm.html". Se qualcuno che esegue tale sistema sul suo computer naviga su una pagina Web che contiene il link "localhost" mostrato sopra, il suo browser invierà un comando amministrativo al suo software, il comando scelto da chiunque abbia messo insieme la pagina Web.

Apparentemente non si esegue tale software (dal momento che il proprio server non conosce alcun "adm.html" e risponde con un 404). L'attacco non è contro di te. Tuttavia, questo mette in evidenza i limiti della sicurezza basata su firewall in un contesto Web: le pagine Web che si sfogliano possono possono fare connessioni con altre macchine arbitrarie, incluso "localhost", senza il tuo consenso, e poiché queste connessioni provengono dalla tua macchina, probabilmente passeranno attraverso le tue regole firewall.

(In questo caso, questo può essere visto come un esempio di falsificazione della richiesta Cross-site , l'obiettivo sito essendo "localhost".)

    
risposta data 18.12.2013 - 14:30
fonte

Leggi altre domande sui tag