Перевод README на английский

This commit is contained in:
serega6531
2020-03-13 01:48:38 +03:00
parent 8d327608ba
commit 065960dba1
4 changed files with 65 additions and 62 deletions

View File

@@ -12,14 +12,15 @@
* Подстрока * Подстрока
* Регулярное выражение * Регулярное выражение
* Бинарная подстрока * Бинарная подстрока
* Умеет сохранять пакеты в избранное и отображать только избранные пакеты * Умеет сохранять стримы в избранное и отображать только избранные стримы
* Работает с несколькими сервисами на разных портах * Работает с несколькими сервисами на разных портах, может отображать стримы для конкретных сервисов и паттернов
* Поддерживает навигацию по стримам с помощью горячих клавиш * Поддерживает навигацию по стримам с помощью горячих клавиш
* Позволяет копировать содержимое пакета в нужном формате
* Конкатенирует смежные пакеты * Конкатенирует смежные пакеты
* Автоматически проводит urldecode * Автоматически проводит urldecode
* Разархивирует GZIP в HTTP на лету * Разархивирует GZIP в HTTP на лету
![Скриншот главного окна](Screenshot.png) ![Скриншот главного окна](screenshots/Screenshot.png)
## Клонирование ## Клонирование
Поскольку этот репозиторий содержит фронтенд как git submodule, его необходимо клонировать так: Поскольку этот репозиторий содержит фронтенд как git submodule, его необходимо клонировать так:
```bash ```bash
@@ -69,7 +70,7 @@ sudo docker-compose up --build -d
После успешного входа необходимо открыть настройки кликом по шестеренкам в правом После успешного входа необходимо открыть настройки кликом по шестеренкам в правом
верхнем углу, затем ввести логин и пароль API, указанный при входе. верхнем углу, затем ввести логин и пароль API, указанный при входе.
![Скриншот настроек](Screenshot_Settings.png) ![Скриншот настроек](screenshots/Screenshot_Settings.png)
Все настройки сохраняются в local storage и теряются только при смене IP-адреса или порта сервера. Все настройки сохраняются в local storage и теряются только при смене IP-адреса или порта сервера.

View File

@@ -4,93 +4,95 @@
</div> </div>
### [EN | [RU](README.md)] ### [EN | [RU](README.md)]
Утилита перехвата и анализа трафика для CTF. Advanced network traffic flow analyzer for A/D CTFs.
#### Фичи: #### Features:
* Поддерживает текстовые и бинарные сервисы * Supports binary and textual services
* Умеет отображать совпадения паттернов в пакетах цветом * Can highlight found patterns in packets
* Подстрока * Substring
* Регулярное выражение * Regular expression
* Бинарная подстрока (WIP) * Binary substring
* Умеет сохранять пакеты в избранное и отображать только избранные пакеты * Can make certain streams favorite and show only favorite streams
* Работает с несколькими сервисами на разных портах * Supports several simultaneous services, can show streams for a specific service or pattern
* Поддерживает навигацию по стримам с помощью горячих клавиш * Allows to navigate streams using shortcuts
* Конкатенирует смежные пакеты * Has the option to copy packet content in the required format
* Разархивирует GZIP в HTTP на лету * Can concatenate adjacent packets
* Can urldecode text automatically
* Can automatically decode GZIPed HTTP
![Скриншот главного окна](Screenshot.png) ![Main window](screenshots/Screenshot.png)
## Клонирование ## Cloning
Поскольку этот репозиторий содержит фронтенд как git submodule, его необходимо клонировать так: As this repository contains frontend part as git submodule, it has to be cloned like this:
```bash ```bash
git clone --recurse-submodules https://gitlab.com/binarybears_ctf/Packmate.git git clone --recurse-submodules https://gitlab.com/binarybears_ctf/Packmate.git
# Или, на старых версиях git # Or if you have older git
git clone --recursive https://gitlab.com/binarybears_ctf/Packmate.git git clone --recursive https://gitlab.com/binarybears_ctf/Packmate.git
``` ```
Если репозиторий уже был склонирован без подмодулей, необходимо выполнить: If the repository was already cloned without submodule, just run:
```bash ```bash
git pull # Забираем свежую версию мастер-репы из gitlab git pull
git submodule update --init --recursive git submodule update --init --recursive
``` ```
## Подготовка ## Preparation
В этом ПО используется Docker и docker-compose. В образ `packmate-app` пробрасывается This program uses Docker and docker-compose.
сетевой интерфейс хоста, его название указывается переменной окружения (об этом ниже).
`packmate-db` настроен на прослушивание порта 65001 с локальным IP. `packmate-db` will listen port 65001 at localhost.
При этом файлы БД не монтируются как volume, поэтому при пересоздании контейнера все стримы теряются. Database files do not mount as volume, so upon container recreation all data will be lost.
### Настройка ### Settings
Программа берет основные настройки из переменных окружения, поэтому для удобства This program retreives settings from environment variables,
можно создать env-файл. so it would be convenient to create env file;
Он должен называться `.env` и лежать в корневой директоии проекта. It must be called `.env` and located at the root of the project.
В файле необходимо прописать: Contents of the file:
```bash ```bash
PACKMATE_INTERFACE=wlan0 # Интерфейс, на котором производится перехват трафика PACKMATE_INTERFACE=wlan0 # Interface to capture on
PACKMATE_LOCAL_IP=192.168.1.124 # Локальный IP сервера на указанном интерфейсе PACKMATE_LOCAL_IP=192.168.1.124 # Local ip on said interface to tell incoming packets from outgoing
PACKMATE_WEB_LOGIN=SomeUser # Имя пользователя для web-авторизации PACKMATE_WEB_LOGIN=SomeUser # Username for web interface
PACKMATE_WEB_PASSWORD=SomeSecurePassword # Пароль для web-авторизации PACKMATE_WEB_PASSWORD=SomeSecurePassword # Password for web interface
``` ```
### Запуск ### Launch
После указания нужных настроек в env-файле, можно запустить приложение: After filling in env file you can launch the app:
```bash ```bash
sudo docker-compose up --build -d sudo docker-compose up --build -d
``` ```
При успешном запуске Packmate будет видно с любого хоста на порту `65000`. If everything went fine, Packmate will be available on port `65000` from any host
### Начало работы ### Accessing web interface
При попытке зайти в web-интерфейс впервые, браузер спросит логин и пароль, When you open web interface for the first time, you will be asked for login and password
который указывался в env-файле. you specified in the env file.
После успешного входа необходимо открыть настройки кликом по шестеренкам в правом After entering the credentials, open the settings by clicking on the cogs
верхнем углу, затем ввести логин и пароль API, указанный при входе. in the top right corner and enter login and password again.
![Скриншот настроек](Screenshot_Settings.png) ![Settings](screenshots/Screenshot_Settings.png)
Все настройки сохраняются в local storage и теряются только при смене IP-адреса или порта сервера. All settings are saved in the local storage and will be
lost only upon changing server ip or port.
## Использование ## Usage
Сначала нужно создать сервисы, находящиеся в игре. First of all you should create game services.
Для этого вызывается диалоговое окно по нажатию кнопки `+` в навбаре, To do that click `+` in the navbar,
где можно указать название и порт сервиса, а также дополнительные опции. then fill in service name, port and optimization to perform.
Система начнет автоматически захватывать стримы и отображать их в сайдбаре. System will start automatically capture streams and show them in a sidebar.
При нажатии на стрим в главном контейнере выводится список пакетов; Click at stream to view a list of packets;
между бинарным и текстовым представлением можно переключиться по кнопке в сайдбаре. you can click a button in the sidebar to switch between binary and text views.
Для удобного отлова флагов в приложении существует система паттернов. For a simple monitoring of flags there is a system of patterns.
Чтобы создать паттерн, нужно открыть выпадающее меню `Patterns` и нажать кнопку `+`, To create a pattern open `Patterns` dropdown menu, press `+`, then
затем указать нужный тип поиска, сам паттерн, цвет подсветки в тексте и прочее. specify the type of pattern, the pattern itself, highlight color and other things.
### Горячие клавиши ### Shortcuts
Для быстрой навигации по стримам можно использовать следующие горячие клавиши: To quickly navigate streams you can use the following shortcuts:
* `Ctrl+Up` -- переместиться на один стрим выше * `Ctrl+Up` -- go to next stream
* `Ctrl+Down` -- переместиться на один стрим ниже * `Ctrl+Down` -- go to previous stream
* `Ctrl+Home` -- перейти на последний стрим * `Ctrl+Home` -- go to latest stream
* `Ctrl+End` -- перейти на первый стрим * `Ctrl+End` -- go to first stream
<div align="right"> <div align="right">

View File

Before

Width:  |  Height:  |  Size: 103 KiB

After

Width:  |  Height:  |  Size: 103 KiB

View File

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB