Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IKTK-96_Lab3.2.1.4_.docx.docx
Скачиваний:
10
Добавлен:
31.12.2022
Размер:
669.04 Кб
Скачать
  1. Поиск файлов журналов в неизвестных системах

ВМ CyberOps Workstation включает в себя nginx — простой веб-сервер. В этом разделе будет показано, как найти и вывести файлы журналов nginx на ВМ CyberOps Workstation.

Примечание. Сервер nginx устанавливается на ВМ CyberOps Workstation с параметрами по умолчанию. По умолчанию его глобальный файл конфигурации находится по пути /etc/nginx/nginx.conf, файл журнала доступа /var/log/nginx/access.log, а ошибки переадресуются в окно терминала. Но часто аналитику безопасности приходится работать с компьютерами, где сведения об установке инструментов и служб неизвестны. В этом разделе описано (далеко не полностью), как найти такие файлы для nginx. Тем не менее поиск и просмотр файлов журналов в неизвестных системах будет неплохим заданием.

      1. При работе с новым ПО сначала нужно просмотреть документацию. В ней приведены важные сведения о программном обеспечении, включая сведения о том, где находятся его файлы журналов. С помощью команды man выведите страницу руководства по nginx:

[analyst@secOps ~]$ man nginx

NGINX(8) BSD System Manager's Manual NGINX(8)

NAME (ИМЯ)

nginx — HTTP и обратный прокси-сервер, почтовый прокси-сервер

КРАТКИЙ ОБЗОР

nginx [-?hqTtVv] [-c file] [-g directives] [-p prefix] [-s signal]

ОПИСАНИЕ

nginx (произносится как «engine x») — это HTTP-сервер, обратный прокси-сервер, а также почтовый

сервера. Он так называется за высокую производительность, стабильность, широкий набор функций, простоту конфигура‐

ции и низкий уровень потребления ресурсов.

<некоторые выходные данные пропущены>

      1. Прокрутите страницу вниз, чтобы найти в разделе nginx сведения о журналах. Документация объясняет, что nginx поддерживает ведение журналов, размещение файлов журналов определяется на этапе компиляции.

[ЧАСТЬ ВЫХОДНЫХ ДАННЫХ, ПОЛУЧЕННЫХ СО СТРАНИЦЫ РУКОВОДСТВА ПО NGINX]

ЖУРНАЛ ОТЛАДКИ

Для того чтобы включить журнал отладки, перенастройте nginx для сборки в режиме отладки.

./configure --with-debug ...

Затем задайте уровень отладки error_log.

error_log /path/to/log debug;

Можно также включить отладку для определенного IP-адреса.

events {

debug_connection 127.0.0.1;

}

      1. Страницы руководства также содержат информацию о файлах, используемых nginx. Прокрутите страницу вниз, чтобы отобразить рабочие файлы nginx в разделе «Файлы».

FILES

%%PID_PATH%%

Содержит идентификатор процесса nginx. Содержимое этого файла

не является конфиденциальным, поэтому он может быть доступен всем.

%%CONF_PATH%%

Главный файл конфигурации.

%%ERROR_LOG_PATH%%

Файл журнала ошибок.

Показанный выше вывод поможет вам сделать вывод, что nginx поддерживает ведение журналов и что они сохраняются в файлах. Он также указывает на наличие файла конфигурации для nginx.

      1. Прежде чем искать файлы nginx, с помощью команд grep и ps убедитесь, что сервер nginx запущен на данной виртуальной машине.

Примечание. С помощью man можно больше узнать о командах ps и grep.

[analyst@secOps ~]$ ps ax | grep nginx

415 ? Ss 0:00 nginx: master process /usr/bin/nginx -g pid /run/nginx.pid; error_log stderr;

416 ? S 0:00 nginx: worker process

1207 pts/0 S+ 0:00 grep nginx

Приведенные выше выходные данные подтверждают, что nginx запущен. Кроме того, выходные данные также содержат параметры, указанные при запуске nginx. Идентификатор процесса nginx хранится в файле /run/nginx.pid, а сообщения об ошибках перенаправляются в окно терминала.

Примечание. Если nginx не запущен, введите команду sudo /usr/sbin/nginx в командной строке, чтобы запустить эту службу с конфигурацией по умолчанию.

Примечание. Если нужно перезапустить nginx, остановите эту службу с помощью команды sudo pkill nginx. Для того чтобы запустить nginx с пользовательской конфигурацией из предыдущей лабораторной работы, выполните команду sudo nginx -c custom_server.conf и проверьте работу этого сервера, открыв веб-обозреватель и перейдя по URL-адресу 127.0.0.1:8080. Если вы хотите запустить nginx с конфигурацией по умолчанию, то это можно сделать с помощью команды sudo /usr/sbin/nginx. Затем откройте веб-обозреватель и перейдите по URL-адресу 127.0.0.1.

Поскольку расположение файлов журналов не указано, его нужно проверить по глобальному файлу конфигурации nginx.

      1. В ВМ CyberOps Workstation по возможности используются расположения и определения по умолчанию. Традиционно в каталоге /var/log хранятся файлы журналов различных приложений и служб, тогда как файлы конфигурации хранятся в каталоге /etc. Хотя на страницах руководства nginx не указано точное место хранения файлов журналов, это руководство подтверждает, что nginx поддерживает ведение журналов, и указывает расположение файла конфигурации. Поскольку расположение файлов журналов часто настраивается в файлах конфигурации, логично будет с помощью команды ls проверить, нет ли в каталоге /etc файла конфигурации nginx.

[analyst@secOps ~]$

adjtime host.conf mke2fs.conf rc_maps.cfg

apache-ant hostname mkinitcpio.conf request-key.conf

apparmor.d hosts mkinitcpio.d request-key.d

arch-release ifplugd modprobe.d resolv.conf

avahi initcpio modules-load.d resolvconf.conf

bash.bash_logout inputrc motd rpc

bash.bashrc iproute2 mtab rsyslog.conf

binfmt.d iptables nanorc securetty

ca-certificates issue netconfig security

crypttab java-7-openjdk netctl services

dbus-1 java-8-openjdk netsniff-ng shadow

default kernel nginx shadow-

depmod.d krb5.conf nscd.conf shells

dhcpcd.conf ld.so.cache nsswitch.conf skel

dhcpcd.duid ld.so.conf ntp.conf ssh

dkms ld.so.conf.d openldap ssl

drirc libnl openvswitch sudoers

elasticsearch libpaper.d os-release sudoers.d

environment lightdm pacman.conf sudoers.pacnew

ethertypes locale.conf pacman.conf.pacnew sysctl.d

<output omitted>

      1. Обратите внимание на папку nginx в папке /etc/etc в этих выходных данных. Снова с помощью команды ls мы находим несколько файлов, включая один под именем nginx.conf.

[analyst@secOps ~]$ ls -l /etc/nginx/

total 48

-rw-r--r-- 1 root root 2730 Mar 21 16:02 custom_server.conf

-rw-r--r-- 1 root root 1077 Nov 18 15:14 fastcgi.conf

-rw-r--r-- 1 root root 1007 Nov 18 15:14 fastcgi_params

-rw-r--r-- 1 root root 2837 Nov 18 15:14 koi-utf

-rw-r--r-- 1 root root 2223 Nov 18 15:14 koi-win

-rw-r--r-- 1 root root 2743 Jan 6 15:41 mal_server.conf

-rw-r--r-- 1 root root 3957 Nov 18 15:14 mime.types

-rw-r--r-- 1 root root 3264 Mar 22 13:34 nginx.conf

-rw-r--r-- 1 root root 3261 Oct 19 16:42 nginx.conf.working

-rw-r--r-- 1 root root 636 Nov 18 15:14 scgi_params

-rw-r--r-- 1 root root 664 Nov 18 15:14 uwsgi_params

-rw-r--r-- 1 root root 3610 Nov 18 15:14 win-utf

      1. С помощью команды cat выведите содержимое файла /etc/nginx/nginx.conf. Можно также использовать команды more и less для просмотра файла либо редакторы nano и SciTE для его редактирования. Эти средства упрощают навигацию по длинным текстовым файлам (ниже показан только вывод команды cat).

[analyst@secOps ~]$ cat /etc/nginx/nginx.conf

#user html;

worker_processes 1;

#error_log logs/error.log;

#error_log logs/error.log notice;

#error_log logs/error.log info;

#pid logs/nginx.pid;

events {

worker_connections 1024;

}

Примечание. Строки, которые начинаются с символа #, являются комментариями и игнорируются nginx.

      1. Быстрый просмотр файла конфигурации показывает, что это файл конфигурации nginx. Поскольку в нем нет прямого указания на расположение файлов журналов, nginx, скорее всего, использует значения по умолчанию. Следуя соглашению о хранении файлов журналов в каталоге /var/log, с помощью команды ls выведите его содержимое.

[analyst@secOps ~]$ ls -l /var/log/

total 5708

-rw-r----- 1 root log 188962 Apr 19 10:35 auth.log

-rw-rw---- 1 root utmp 384 Apr 19 10:05 btmp

-rw-rw---- 1 root utmp 1536 Mar 22 08:50 btmp.1

-rw-r----- 1 root log 849038 Apr 19 10:05 daemon.log

-rw-r----- 1 root log 4416 Apr 19 09:45 errors.log

-rw-r----- 1 root log 1819814 Apr 19 10:05 everything.log

-rw------- 1 root root 32032 Apr 19 10:05 faillog

drwxr-sr-x+ 4 root systemd-journal 4096 Mar 20 15:28 journal

-rw-r----- 1 root log 927701 Apr 19 09:45 kernel.log

-rw-rw-r-- 1 root utmp 292292 Mar 26 11:03 lastlog

drwx--x--x 2 root lightdm 4096 Apr 19 09:45 lightdm

-rw-r--r-- 1 analyst analyst 24464 Apr 19 10:05 logstash-tutorial.log

-rw-r----- 1 root log 1673153 Apr 19 10:05 messages

drwxr-xr-x 2 root root 4096 Apr 19 10:28 nginx

-rw-r--r-- 1 http root 989 Apr 19 10:05 nginx-logstash.log

drwxr-xr-x 2 root root 4096 Jan 5 14:17 old

-rw-r--r-- 1 root root 97655 Apr 17 12:52 pacman.log

drwxr-xr-x 2 snort snort 4096 Mar 26 11:03 snort

-rw-r----- 1 root log 563 Apr 19 09:45 syslog.log

-rw------- 1 root root 64064 Mar 26 11:03 tallylog

-rw-r----- 1 root log 216 Apr 17 13:04 user.log

-rw-rw-r-- 1 root utmp 70272 Apr 19 09:45 wtmp

-rw-r--r-- 1 root root 24756 Apr 19 09:45 Xorg.0.log

-rw-r--r-- 1 root root 25585 Apr 17 14:43 Xorg.0.log.old

      1. Как видно, каталог /var/log содержит подкаталог с именем nginx. Снова выполните команду ls, чтобы вывести содержимое каталога /var/log/nginx.

Примечание. Поскольку каталог /var/log/nginx принадлежит пользователю http, то необходимо выполнять команду ls от имени пользователя root, предварив ее командой sudo.

[analyst@secOps ~] $ sudo ls -l /var/log/nginx

[sudo] пароль для analyst:

total 20

-rw-r----- 1 http log 2990 Mar 22 11:20 access.log

-rw-r----- 1 http log 141 Feb 28 15:57 access.log.1.gz

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

Примечание. Выходные данные могут отличаться. Показанные выше файлы журналов .GZ созданы службой ротации журналов. В системах Linux часто реализуются службы для ротации журналов, которая следит за тем, чтобы они не становились слишком большими. Служба ротации журналов берет последний журнал, сжимает его и сохраняет под другим именем (access.log.1.gz, access.log.2.gz и т. д.). Затем создается новый пустой файл журнала, который используется для сохранения новых записей журнала.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]