Назад | Перейти на главную страницу

Необычные попадания в журнал Apache для сайта localhost

У меня есть веб-сервер Apache 2.2, работающий в Windows 7 с шестью настроенными виртуальными хостами.

(псевдоадреса и пути)

Изменить: фактический порядок в конфигурации

Конец редактирования

У меня еще нет доменного имени E, поэтому на данный момент оно определено в моем файле hosts, и оно работает, когда я пытаюсь получить к нему доступ в браузере по имени домена.

Я внес несколько обширных изменений в структуру файлов и немного изменил свои виртуальные хосты, поэтому на данный момент каждый сайт просто показывает тестовую страницу, которая просто указывает, какой это сайт. Доменное имя A / B / C / и т. Д. У каждого сайта есть собственный журнал доступа и журнал ошибок. Все вроде бы простые вещи. Для меня в новинку иметь частный сайт на localhost. Раньше localhost, сетевой IP-адрес и доменное имя A указывали на мой основной сайт, поэтому конфиденциальность не принималась во внимание.

Сейчас меня беспокоит тот сайт 6, который должен быть доступен только localhost, 127.0.0.1 и 192.168.1.100, записывает обращения с внешних адресов в журнал доступа. Этот сайт отрицает все, кроме моих собственных адресов, и внешние запросы привели к 403, как и ожидалось, независимо от того, пытаются ли они получить доступ к реальным файлам, таким как index.html или чему-то поддельному, хотя несколько запросов привели к ошибке 400, которую я не знаком с. Когда возникают определенные распространенные ошибки, я перенаправляю на собственный сценарий ошибки с ?code=$HTTP_CODE для сброса данных% ENV в файл в надежде, что я смогу собрать полезную информацию об этих попаданиях, а также вернуть пользователю страницу с ошибкой. Для меня пока ничего не имеет смысла.

Я хочу знать, как / почему эти запросы доходят до моих внутренних адресов, если меня что-то беспокоит в ?:/.../urls/6/ быть видимым для общественности, если я что-то неправильно сконфигурировал в Apache, и если да, то как это исправить.

Вот несколько фрагментов, которые могут быть актуальны. Пути и мои веб-адреса были запутаны.

файл hosts

127.0.0.1        domain-name-E.com          # domain that i don't own yet
127.0.0.1        www.domain-name-E.com      # domain that i don't own yet

httpd-vhosts.conf Изменить: скорректировано для отображения фактического порядка VH

<Directory "?:/.../urls/">
    Order Deny,Allow
    Allow from all
</Directory>

NameVirtualHost *:80

# site 6: private
<VirtualHost *:80>
    DocumentRoot "?:/.../urls/6/www/"

    ServerName  localhost
    ServerAlias 127.0.0.1
    ServerAlias 192.168.1.100

    ScriptAlias /cgi/ "?:/.../urls/6/cgi/"
    <Directory "?:/.../urls/6/cgi/">
        AllowOverride All
    </Directory>

    ErrorLog  "?:/.../logs/errors-site6.log"

  # CustomLog "?:/.../logs/access-site6.log" common
    LogFormat "%{%Y/%m/%d (%a) at %H:%M:%S}t    %a  Login: %u   Sent: %B B in %D µs   Status: %s/%>s for %H %m %{Host}i%U%q Using: %{User-agent}i   From: %{Referer}i" custom
    CustomLog "?:/.../logs/access-site6.log" custom env=!dontlog

    SetEnvIf Remote_Addr "127\.0\.0\.1"       dontlog
    SetEnvIf Remote_Addr "192\.168\.1\..*"    dontlog
    SetEnvIf Remote_Addr "XXX\.XXX\.XXX\.XXX" dontlog # my public IP address
</VirtualHost>

# site 5 here
# site 1 here
# site 2 here
# site 3 here
# site 4 here

?: /.../ urls / 6 / .htaccess

# site 6: private

Deny from all
Allow from 127.0.0.1
Allow from 192.168.1
Allow from XXX.XXX.XXX.XXX # my public IP address

?: /.../ logs / access-site6.log (выравнивание немного подобрано)

# timestamp                    # IP                                                                                   #  domain/path?query                # agent                                                             # referrer
2019/06/24 (Mon) at 18:50:52   61.219.11.153    Login: -   Sent:  226 B in   3001 µs   Status: 400/400 for HTTP/1.1 GET       -/                          Using: -                                                            From: -
2019/06/24 (Mon) at 19:08:14   104.152.52.22    Login: -   Sent: 1211 B in 512029 µs   Status: 403/403 for HTTP/1.0 GET       -/?code=403                 Using: masscan/1.0 (https://github.com/robertdavidgraham/masscan)   From: -
2019/06/25 (Tue) at 00:12:51   138.99.29.110    Login: -   Sent:  226 B in   3001 µs   Status: 400/400 for HTTP/1.1 GET       -/Login.htm                 Using: -                                                            From: -
2019/06/25 (Tue) at 02:26:21   122.116.24.230   Login: -   Sent:  226 B in   3000 µs   Status: 400/400 for HTTP/1.1 GET       -/Login.htm                 Using: -                                                            From: -
2019/06/25 (Tue) at 04:21:55   92.63.194.15     Login: -   Sent: 1211 B in 365021 µs   Status: 403/403 for HTTP/0.9 GET       -/?code=403                 Using: -                                                            From: -
2019/06/25 (Tue) at 09:28:05   89.248.169.12    Login: -   Sent: 1211 B in 309018 µs   Status: 403/403 for HTTP/1.1 GET      80/?code=403                 Using: Mozilla/5.0 zgrab/0.x                                        From: -
2019/06/25 (Tue) at 10:07:53   185.53.88.37     Login: -   Sent:    0 B in 384022 µs   Status: 403/403 for HTTP/1.0 GET       -/robots.txt?code=403       Using: -                                                            From: -
2019/06/25 (Tue) at 10:48:16   77.247.110.106   Login: -   Sent:    0 B in 464027 µs   Status: 403/403 for HTTP/1.0 GET       -/robots.txt?code=403       Using: -                                                            From: -
2019/06/25 (Tue) at 13:46:30   192.31.231.241   Login: -   Sent: 1211 B in 519029 µs   Status: 403/403 for HTTP/1.1 GET default/.html?code=403            Using: curl/7.64.1                                                  From: -
2019/06/25 (Tue) at 15:14:24   77.247.110.106   Login: -   Sent:    0 B in 375022 µs   Status: 403/403 for HTTP/1.0 GET       -/robots.txt?code=403       Using: -                                                            From: -
2019/06/25 (Tue) at 21:00:55   220.133.33.166   Login: -   Sent:  226 B in   3001 µs   Status: 400/400 for HTTP/1.1 GET       -/Login.htm                 Using: -                                                            From: -
2019/06/26 (Wed) at 01:33:22   110.249.212.46   Login: -   Sent:  226 B in   2000 µs   Status: 400/400 for HTTP/1.1 GET       -/testget?q=23333&port=80   Using: -                                                            From: -

?: /.../ журналы / ошибки-site6.log

[Mon Jun 24 18:50:52 2019] [error] [client 61.219.11.153]  client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /
[Mon Jun 24 19:08:14 2019] [error] [client 104.152.52.22]  client denied by server configuration: ?:/.../urls/6/www/
[Tue Jun 25 00:12:51 2019] [error] [client 138.99.29.110]  client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /Login.htm
[Tue Jun 25 02:26:21 2019] [error] [client 122.116.24.230] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /Login.htm
[Tue Jun 25 04:21:55 2019] [error] [client 92.63.194.15]   client denied by server configuration: ?:/.../urls/6/www/
[Tue Jun 25 09:28:05 2019] [error] [client 89.248.169.12]  client denied by server configuration: ?:/.../urls/6/www/
[Tue Jun 25 10:07:53 2019] [error] [client 185.53.88.37]   client denied by server configuration: ?:/.../urls/6/www/robots.txt
[Tue Jun 25 10:48:17 2019] [error] [client 77.247.110.106] client denied by server configuration: ?:/.../urls/6/www/robots.txt
[Tue Jun 25 13:46:30 2019] [error] [client 192.31.231.241] client denied by server configuration: ?:/.../urls/6/www/.html
[Tue Jun 25 15:14:24 2019] [error] [client 77.247.110.106] client denied by server configuration: ?:/.../urls/6/www/robots.txt
[Tue Jun 25 21:00:55 2019] [error] [client 220.133.33.166] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /Login.htm
[Wed Jun 26 01:33:22 2019] [error] [client 110.249.212.46] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /testget

?: /.../ logs / detail-site6.log (выравнивание немного исправлено, некоторые нерелевантные пары ключ / значение опущены)

2019/06/24 at 07:08:15 PM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'HTTP_ACCEPT'             => '*/*',
  'HTTP_USER_AGENT'         => 'masscan/1.0 (https://github.com/robertdavidgraham/masscan)',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'GET',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/',
  'REMOTE_ADDR'             => '104.152.52.22',
  'REMOTE_PORT'             => '48100',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 04:21:55 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => '',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/',
  'REMOTE_ADDR'             => '92.63.194.15',
  'REMOTE_PORT'             => '1468',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/0.9',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 09:28:05 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'HTTP_ACCEPT'             => '*/*',
  'HTTP_ACCEPT_ENCODING'    => 'gzip',
  'HTTP_HOST'               => '80',
  'HTTP_USER_AGENT'         => 'Mozilla/5.0 zgrab/0.x',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'GET',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/',
  'REMOTE_ADDR'             => '89.248.169.12',
  'REMOTE_PORT'             => '32902',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => '80',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.1',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 10:07:53 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'HEAD',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/robots.txt',
  'REMOTE_ADDR'             => '185.53.88.37',
  'REMOTE_PORT'             => '58418',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/robots.txt',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 10:48:17 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'HEAD',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/robots.txt',
  'REMOTE_ADDR'             => '77.247.110.106',
  'REMOTE_PORT'             => '54263',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/robots.txt',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 01:46:30 PM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'HTTP_ACCEPT'             => '*/*',
  'HTTP_HOST'               => 'default',
  'HTTP_USER_AGENT'         => 'curl/7.64.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'DKEMDIF&0',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/.html',
  'REMOTE_ADDR'             => '192.31.231.241',
  'REMOTE_PORT'             => '33716',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/.html',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'default',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.1',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 03:14:24 PM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'HEAD',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/robots.txt',
  'REMOTE_ADDR'             => '77.247.110.106',
  'REMOTE_PORT'             => '61954',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/robots.txt',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

Может быть, это неправильная конфигурация моего роутера? Или вредоносное ПО на моем компьютере или маршрутизаторе, звонящем домой? Если да, то как я могу это проверить и могу ли я остановить это раньше?

Или это всего лишь обычный хаотичный интернет-трафик, который я могу игнорировать и отдыхать, зная, что он никогда не увидит мой частный сайт?

Если вам нужен виртуальный хост, который отвечает только на запросы http://localhost не делайте этот виртуальный хост доступным на всех IP-адресах с шаблоном IP-адреса:

<VirtualHost *:80>
    ServerName  localhost

Видеть руководство по точным правилам сопоставления VHost но выполнение вышеизложенного дает Apache httpd только один дискриминатор, который можно использовать для выбора того, какие запросы должны обрабатываться этим виртуальным хостом, а именно, когда запрос включает Host: localhost заголовок, и он не будет проверять, что запрос был отправлен на localhost Айпи адрес 127.0.0.1 или петлевой сетевой интерфейс.

Вместо этого привяжите этот VHost к определенному IP-адресу localhost с помощью

<VirtualHost 127.0.0.1:80>
    ServerName  localhost

или эквивалент

<VirtualHost localhost:80>
    ServerName  localhost