Commit Graph

174 Commits

Author SHA1 Message Date
n1474335 7f9a2eeb6b ESM: Tidied up IP operations 2018-05-29 00:48:30 +01:00
n1474335 3f3a3e0016 ESM: Tidied up recently added operations 2018-05-28 15:42:43 -07:00
Matt C 049656ec6b ESM: Ported PublicKey operations 2018-05-27 23:53:43 +01:00
n1474335 6768038a2f ESM: Tidied up recently ported ops 2018-05-27 16:13:18 +01:00
Matt C 905bc6699e ESM: Ported case converters, generic beautifier and syntax highlighting 2018-05-26 18:04:53 +01:00
Matt C 95f81ad740 Ported Bitwise operations
also enabled bitshift tests
2018-05-23 18:59:57 +01:00
n1474335 0d1e5311dc ESM: Changed thrown errors to OperationErrors 2018-05-21 18:34:52 +00:00
n1474335 28b24b725f ESM: Tidied up FlowControl ops 2018-05-21 11:39:10 +00:00
d98762625 10556f528f update comments 2018-05-21 11:12:58 +01:00
d98762625 046e1ebad9 Merge branch 'esm' into port-flowcontrol 2018-05-21 09:02:58 +01:00
n1474335 ee519c7352 Merged esm branch into feature-magic. Ported FileType ops. 2018-05-20 16:49:42 +01:00
d98762625 ec0ecf5151 add comments 2018-05-18 12:52:16 +01:00
d98762625 bfb405c4a6 Add Jump 2018-05-18 12:50:23 +01:00
n1474335 3fd1f4e6d9 ESM: Ported all Hash and Checksum operations 2018-05-17 15:11:34 +00:00
Callum Fraser 3ba12ae9ac Made variables non-private, and followed convention for the references to the IP lib. 2018-05-16 22:32:46 +01:00
Callum Fraser ea36687205 Merge branch 'esm' of https://github.com/gchq/CyberChef into ip-convert 2018-05-16 21:52:40 +01:00
Callum Fraser 1920e9c7fb Added more content to the Ip.mjs file, required for other functions. 2018-05-16 21:37:48 +01:00
n1474335 f26d175cad ESM: Ported Base58, Base and BCD operations 2018-05-16 16:25:05 +00:00
n1474335 84df055888 ESM: Ported MS and Entropy operations 2018-05-16 11:39:30 +01:00
n1474335 b760c2f1a0 ESM: Fixed OperationError detection and tidied up ops. 2018-05-16 10:17:49 +01:00
n1474335 acb8a342a7 Merge branch 'esmconversion' of https://github.com/artemisbot/CyberChef into esm 2018-05-16 09:28:24 +01:00
Callum Fraser 8d2adfaae7 Updated the Ip core file with more required functions/variables 2018-05-15 23:48:18 +01:00
Callum Fraser 39ba83eefb Created a Ip for now which contains all the helper functions, they may be moved into their corrosponding files in the future 2018-05-15 23:30:35 +01:00
Matt C b3ee251ee3 ESM: Port Extract.js module 2018-05-15 16:30:17 +01:00
n1474335 e41eb3d8a2 Merge branch 'port-arithmetic' of https://github.com/d98762625/CyberChef into esm 2018-05-15 15:16:56 +00:00
Matt C 285e512483 Actually made these ops work 2018-05-15 16:04:57 +01:00
n1474335 b8d3b33963 ESM: Ported CharEnc operations 2018-05-15 15:03:41 +00:00
d98762625 3bbfc130d4 create arithmetic specific delimiter options 2018-05-15 14:59:28 +01:00
d98762625 6ddc1b1c9c export Arithmetic funcs individually. Use existing Delim 2018-05-15 14:32:39 +01:00
d98762625 9de93022d6 port divide operation 2018-05-15 10:33:58 +01:00
d98762625 bf28410812 port multiply operation 2018-05-15 10:24:35 +01:00
Matt C 2b0c327001 Ported x86 Disassembler & PGP ops 2018-05-15 10:15:31 +01:00
n1474335 cbb5e7c611 Merge branch 'esmconversion' of https://github.com/artemisbot/CyberChef into esm 2018-05-14 17:49:57 +00:00
n1474335 bad45f19d6 ESM: Ported DateTime operations 2018-05-14 17:48:57 +00:00
Matt C 24e4e268dc Converted RC4, RC4Drop and Derive EVP 2018-05-14 18:30:52 +01:00
Matt C 4008dbf38a Merge remote-tracking branch 'upstream/esm' into esmconversion
Also removed substitute operation from legacy module
2018-05-14 18:09:21 +01:00
n1474335 037e2f3771 ESM: Ported StrUtils and NetBIOS operations. 2018-05-14 14:31:04 +00:00
n1474335 a98d37e61c Merged master into esm branch 2018-05-14 11:58:01 +00:00
Matt C 2d6a56343b Converted substitute operation, added tests & moved to OperationError 2018-05-11 16:32:19 +01:00
Matt C 789ec94eff Converted Bifid & moved over tests 2018-05-09 20:28:28 +01:00
Matt C f87666f659 Converted Affine/Atbash operations to mjs & added tests 2018-05-09 20:18:33 +01:00
n1474335 6987e6b1b9 ESM: Ported Bit shift, MAC address and Morse Code operations. 2018-05-07 12:12:58 +01:00
n1474335 be61419b80 ESM: Added remaining ByteRepr operations. 2018-05-06 13:18:41 +01:00
n1474335 fad4713a90 ESM: Tidied up Rotate operations 2018-04-06 12:40:39 +00:00
Matt C 4988ead918 Rotate module converted to ESM
4 Ops:
- ROT-13
- ROT-47
- Rotate left
- Rotate right
+ module containing common functions
2018-04-03 22:50:26 +01:00
n1474335 083d2d1cc4 ESM: Added Zlib ops and created a Zlib library. 2018-04-02 20:46:55 +01:00
n1474335 eeb1d0a891 ESM: Added Hex ops and created a Hex library. 2018-04-02 18:06:48 +01:00
n1474335 041cd9fb8e ESM: Added remaining Base64 ops and created a Base64 library. Added the prefer-const eslint rule. 2018-04-02 17:10:51 +01:00
n1474335 9b4fc3d3aa Converted the core to ES modules 2018-03-26 23:14:23 +01:00
n1474335 12c226f874 Updated DisassembleX86-64 library to fix issue with call instrution. Closes #246. 2018-03-23 20:01:56 +00:00
n1474335 da473de9f0 Switched from uas_parser.js to ua-parser-js library to improve library management and remove ReDos vulnerabilities. Also improved performance of two native regexes. Thanks to James Davis for raising awareness. 2018-02-28 16:40:15 +00:00
n1474335 56d33ea487 Magic operation now calculates the entropy of each option and displays tooltips explaining the properties. 2018-02-19 17:25:28 +00:00
n1474335 559741fd07 Fixed a few small bugs 2018-02-15 18:46:17 +00:00
n1474335 b3c52a8601 Magic operation now brute forces character encodings. Linted. 2018-02-15 17:38:39 +00:00
n1474335 27ec4aa923 Magic operation now recognises useful operations such as 'Render Image' even though their output cannot be analysed 2018-02-15 13:39:55 +00:00
n1474335 1760ab2305 Recipe errors are now ignored in the Magic operation 2018-02-14 17:00:14 +00:00
n1474335 99ade42e9a Added 'Intensive mode' to the Magic operation, where it brute-forces various simple encodings like XOR or bit rotates. 2018-02-14 16:08:59 +00:00
n1474335 544d78f461 The Magic operation now only checks the most commonly used Internet languages by default, to lower false positives and improve performance. 2018-02-14 13:08:03 +00:00
n1474335 2bc563b693 Added support for 238 languages to the Magic operation. 2018-02-10 17:53:59 +00:00
n1474335 23bdfd04a2 Magic operation now shows matching ops even if they are not run. 2018-02-10 15:31:50 +00:00
n1474335 6624f25a64 Magic operation now detects UTF8 and gives a probability score for each language 2018-02-10 15:10:53 +00:00
n1474335 865ee6a720 Magic operation tidying 2018-01-23 01:15:13 +00:00
n1474335 6947d2a7f3 Magic operation now displays an ordered table of the most likely decodings. 2018-01-22 23:34:24 +00:00
n1474335 28abd00d82 Added speculative execution of recipes to determine the most likely decodings. 2018-01-22 22:06:26 +00:00
n1474335 a1624a9215 Added detection patterns for non-standard Base64 alphabets, Base58 and Base32. 2018-01-14 17:28:56 +00:00
n1474335 fc2828fee3 Added Magic operation with the ability to detect language, file type and some encoding types. 2018-01-14 16:07:39 +00:00
n1474335 cd5265fad4 Added 'Disassemble x86' operation 2017-10-04 22:35:44 +01:00
David Moodie e4a91b5397 Use functions from utils 2017-06-07 21:41:02 +01:00
David Moodie 3bfe22c0f7 Remove piexifjs dep and extract removeEXIF to lib module 2017-06-07 19:49:44 +01:00
toby dd3b42fb53 Fix bug with UTF16LE in Encode/Decode ops 2017-05-19 16:11:08 -04:00
toby 2b7ba594fc Split "Text encoding" op into two ops
This commit splits "Text encoding" into two operations:
+ Encode text `string -> byteArray`
+ Decode text `byteArray -> string`

Base64 and Hex support are removed "Encode text" and "Decode text" as
they have their own operations.

Encode and decode operations now have support for the following
encodings:
+ IBM EBCDIC US-Canada
+ IBM EBCDIC International
+ Windows-874 Thai
+ Japanese Shift-JIS
+ Simplified Chinese GBK
+ Korean
+ Traditional Chinese Big5
+ UTF-16, little endian
+ UTF-16, big endian
+ Windows-1250 Central European
+ Windows-1251 Cyrillic
+ Windows-1252 Latin
+ Windows-1253 Greek
+ Windows-1254 Turkish
+ Windows-1255 Hebrew
+ Windows-1256 Arabic
+ Windows-1257 Baltic
+ Windows-1258 Vietnam
+ US-ASCII
+ Russian Cyrillic KOI8-R
+ Simplified Chinese GB2312
+ KOI8-U Ukrainian Cyrillic
+ ISO-8859-1 Latin 1 (Western European)
+ ISO-8859-2 Latin 2 (Central European)
+ ISO-8859-3 Latin 3
+ ISO-8859-4 Baltic
+ ISO-8859-5 Cyrillic
+ ISO-8859-6 Arabic
+ ISO-8859-7 Greek
+ ISO-8859-8 Hebrew
+ ISO-8859-9 Turkish
+ ISO-8859-10 Latin 6
+ ISO-8859-11 Latin (Thai)
+ ISO-8859-13 Latin 7 (Estonian)
+ ISO-8859-14 Latin 8 (Celtic)
+ ISO-8859-15 Latin 9
+ ISO-8859-16 Latin 10
+ ISO-2022 JIS Japanese
+ EUC Japanese
+ EUC Korean
+ Simplified Chinese GB18030
+ UTF-7
+ UTF-8
2017-05-17 11:17:11 -04:00
toby 3c15bd9e29 Add "{To,From} EBCDIC" operations
This adds operations
+ "To EBCDIC"
+ "From EBCDIC"

This makes use of the npm codepage package but it is not installed as a
dependency.

Instead I used the `make.sh` script to export pages 37 and 500.

To my knowledge there is no way currently to only import individual code pages
from the npm package (hence the included script).

If we were to import the package directly it increases the build size by
2.7MB.
2017-05-07 18:07:56 -04:00
n1474335 131b3a83c1 Converted all modules from CommonJS to ES6 2017-03-23 17:52:20 +00:00
n1474335 0f2a5014be Restructured src files into a more logical hierarchy 2017-03-23 00:33:40 +00:00