mirror of
https://github.com/gchq/CyberChef.git
synced 2025-04-25 01:06:16 -04:00
Added 'Intensive mode' to the Magic operation, where it brute-forces various simple encodings like XOR or bit rotates.
This commit is contained in:
parent
544d78f461
commit
99ade42e9a
4 changed files with 83 additions and 14 deletions
|
@ -83,7 +83,7 @@ import URL_ from "../operations/URL.js";
|
|||
const OperationConfig = {
|
||||
"Magic": {
|
||||
module: "Default",
|
||||
description: "Attempts to detect what the input data is and which operations could help to make more sense of it.",
|
||||
description: "The Magic operation attempts to detect various properties of the input data and suggests which operations could help to make more sense of it.<br><br><b>Options</b><br><u>Depth:</u> If an operation appears to match the data, it will be run and the result will be analysed further. This argument controls the maximum number of levels of recursion.<br><br><u>Intensive mode:</u> When this is turned on, various encodings like XOR and bit rotates are brute-forced to attempt to detect valid data underneath. To improve performance, only the first 100 bytes of the data is brute-forced.<br><br><u>Extensive language support:</u> At each stage, the relative byte frequencies of the data will be compared to average frequencies for a number of languages. The default set consists of ~40 of the most commonly used languages on the Internet. The extensive list consists of 284 languages and can result in many languages matching the data if their byte frequencies are similar.",
|
||||
inputType: "ArrayBuffer",
|
||||
outputType: "html",
|
||||
flowControl: true,
|
||||
|
@ -93,6 +93,11 @@ const OperationConfig = {
|
|||
type: "number",
|
||||
value: 3
|
||||
},
|
||||
{
|
||||
name: "Intensive mode",
|
||||
type: "boolean",
|
||||
value: false
|
||||
},
|
||||
{
|
||||
name: "Extensive language support",
|
||||
type: "boolean",
|
||||
|
@ -1146,7 +1151,7 @@ const OperationConfig = {
|
|||
args: [],
|
||||
patterns: [
|
||||
{
|
||||
match: "%[\\da-f]{2}",
|
||||
match: ".*(?:%[\\da-f]{2}.*){4}",
|
||||
flags: "i",
|
||||
args: []
|
||||
},
|
||||
|
@ -1210,7 +1215,7 @@ const OperationConfig = {
|
|||
args: [],
|
||||
patterns: [
|
||||
{
|
||||
match: "(?:=[\\da-f]{2}|=\\n)(?:[\\x21-\\x3d\\x3f-\\x7e \\t]|=[\\da-f]{2}|=\\n)*$",
|
||||
match: "^[\\x21-\\x3d\\x3f-\\x7e \\t]*(?:=[\\da-f]{2}|=\\r?\\n)(?:[\\x21-\\x3d\\x3f-\\x7e \\t]|=[\\da-f]{2}|=\\r?\\n)*$",
|
||||
flags: "i",
|
||||
args: []
|
||||
},
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue