wiki-js/sysadmin/other/CyberChef.html

28 lines
4.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--
title: CyberChef - преобразователь всего и вся
description:
published: true
date: 2024-07-09T09:51:00.476Z
tags:
editor: ckeditor
dateCreated: 2023-11-15T16:07:15.571Z
-->
<p>Садитесь поудобнее, рассказываю про шикарный сервис, который вы точно сохраните себе в закладки, потому что он может пригодиться не только в IT, но и во многих других делах.&nbsp;</p>
<p>CyberChef (<a href="https://gchq.github.io/CyberChef/">https://gchq.github.io/CyberChef/</a>) - преобразователь всего и вся. Когда его увидел, не проникся.</p>
<p>Да, много всяких сервисов в онлайне, которые и так уже умеют всё, что только можно. Но когда детальнее посмотрел, как всё это работает, оценил удобство.&nbsp;</p>
<p>Во-первых, там много всяких трансформаций. Во-вторых, они удобно выстраиваются в последовательность преобразований, где ими можно управлять: что-то отключать, добавлять новые и т.д.</p>
<p>Потом весь набор преобразований можно сохранить в рецепт к себе, а позже снова загрузить, когда нужно будет повторить операции.&nbsp;</p>
<p>Например, вам надо из текста убрать все пробелы и преобразовать его в нижний регистр. Собираете последовательность из двух действий: remove whitespace и to lower case. И получаете на выходе результат.&nbsp;</p>
<p>Можете сохранить и использовать рецепт по очищению конфигурационных файлов от пустых строк и комментариев.</p>
<p>Можете забирать http запросом json строку, извлекать из неё значения с помощью jpath, а потом ещё декодировать, если она в каком-то кодированном формате.</p>
<p>Вот пример <a href="https://gchq.github.io/CyberChef/#recipe=HTTP_request(%27GET%27,%27https://reqres.in/api/users/2%27,%27%27,%27Cross-Origin%20Resource%20Sharing%27,false)JPath_expression(%27$.data.email%27,%27%5C%5Cn%27,true)Extract_email_addresses(false,false,false)">рецепта</a>&nbsp;, где я:<br>▪️ Обращаюсь к тестовому API и получаю ответ в json формате<br>▪️ Извлекаю из результата только email адрес<br>▪️ Очищаю email от кавычек в начале и в конце.&nbsp;</p>
<p>Преобразований очень много. Я бегло изучил список и кое-что попробовал. Например, Networking -&gt; Group IP Adresses получает на вход список из IP адресов, а на выходе выводит список масок подсетей, которые охватывают все введённые адреса.</p>
<p>Преобразование Public Key -&gt; Parse X.509 certificate на входе принимает исходный текст сертификата, а на выходе показывает всю информацию по нему, как это делает утилита openssl с соответствующими ключами.</p>
<p>Я обычно в винде такие файлы сохраняю с расширением .cer и смотрю через проводник информацию о сертификате.&nbsp;</p>
<p>Сервис очень функциональный, а главное сделан удобно. Может стать помощником во многих делах. Можно его настроить для выполнения каких-то рутинных действия для людей, далёких от IT.</p>
<p>Они могут вообще не знать, что существуют такие готовые преобразователи данных.&nbsp;</p>
<p>Ко всему прочему это open source. Исходники доступны, сервис можно запустить у себя локально. Написан, понятное дело, на JavaScript.&nbsp;</p>
<figure class="image"><img src="/attachments/image2022-12-13_19-1-43.png"></figure>
<p>&nbsp;</p>