Кибер-швейцарский армейский нож - веб-приложение для шифрования, кодирования, сжатия и анализа данных.
CyberChef — это простое интуитивно понятное веб-приложение для выполнения всевозможных «кибер»-операций в веб-браузере. Эти операции включают простое кодирование, такое как XOR и Base64, более сложное шифрование, такое как AES, DES и Blowfish, создание бинарных и hex-дампов, сжатие и распаковку данных, вычисление хешей и контрольных сумм, разбор IPv6 и X.509, смену кодировок символов и многое другое.
Инструмент предназначен для того, чтобы дать возможность как техническим, так и нетехническим аналитикам манипулировать данными сложными способами, без необходимости иметь дело со сложными инструментами или алгоритмами. Он был задуман, спроектирован, создан и постепенно улучшался аналитиком в рамках его 10% времени на инновации в течение нескольких лет.
[Официальный сайт CyberChef можно найти здесь][1] — приятного использования!
Вы можете запустить CyberChef с помощью Docker (без необходимости в цепочке инструментов) или собрать его из исходного кода с помощью Node.js.
Предварительные требования
docker build --tag cyberchef --ulimit nofile=10000 .
docker run -it -p 8080:8080 cyberchef
http://localhost:8080 в вашем браузереЕсли вы предпочитаете пропустить процесс сборки, вы можете использовать готовый образ
docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
Как и раньше, перейдите по адресу http://localhost:8080 в вашем браузере.
Этот образ собирается и публикуется через наши GitHub Workflows.
Если вы хотите разрабатывать CyberChef или запускать его без Docker, вы можете собрать его напрямую с помощью Node.js.
Предварительные требования
v24 (см. поддержку Node.js)[!NOTE]
Вы можете использовать nvm для управления версиями Node.js и использовать текущую версию для разработки из этого проекта, чтобы избежать конфликтов с другими проектами на вашем компьютере.
Настройка
git clone https://github.com/gchq/CyberChef.git
cd CyberChef
npm install
Типовые задачи
| Command | Описание |
|---|---|
npm start | Запускает сервер разработки с автоматической перезагрузкой по адресу http://localhost:8080. |
npm run build | Создаёт production-сборку в каталоге build/prod. |
npm test | Запускает наборы тестов для Node.js и операций. |
npm run testui | Запускает браузерные (UI) тесты. |
npm run lint | Проверяет код на соответствие правилам линтинга. |
npm run newop | Создаёт каркас новой операции с помощью интерактивного скрипта быстрого старта. |
Если при сборке больших рецептов вы столкнулись с ошибкой нехватки памяти, увеличьте размер кучи Node.js с помощью npm run setheapsize.
В CyberChef есть четыре основные области:
Вы можете использовать любое количество операций простыми или сложными способами. Вот несколько примеров: